Filter links without dropping subject metadata
04The rel query asks for links of selected relation types. It is an optimization that the server might not implement, so a client must inspect the response instead of assuming it contains only requested links.
Separate case: server ignores rel=author and returns A1, C, A2. The client selects A1/A2 for its use. The server has not violated a requirement by returning the copyright link.
Source for this drawing: RFC 7033 · Read RFC section 4.3 ↗
New to this? Start hereA quick picture + helpful background
A message needs an address.
Think of a packet as a small addressed envelope. Devices pass it onward; transport protocols decide what delivery promises an application gets.
Helpful first, if these ideas are unfamiliar
These pictures are analogies to help you learn. The linked RFC explains the actual rules.
Terms in this drawing
Related RFCs and changes
“Updates” changes part of an earlier RFC. “Obsoletes” replaces it. This list shows selected related documents.
Select links while retaining the known subject and all other metadata.
- A service SHOULD support rel. If it does not, it MUST ignore the parameter and process the request as though rel were absent. Extra returned link types do not by themselves make the response invalid.
- When supported, filtering returns links matching any requested rel value. rel MAY repeat. Other JRD information remains unchanged. The worked example preserves the order of selected links, which can express preference.
- No matching links for a known resource means an empty or absent links array. It does not become the 404 case where the service has no information about that resource.
- URI relations compare exactly; registered names compare without case distinctions. Syntactically valid properties and links the client does not understand SHOULD be ignored and SHOULD NOT cause an error (§8.5).
The offline filter clones its bounded JRD fixture and preserves values/order. It is not an HTTP server or complete JSON validator. Drawing labels A1/A2/C are annotations; no real account is queried.
Read the RFC section ↗