Skip to main content

3. Links

A link is a typed connection between two resources identified by IRIs (Internationalised Resource Identifiers).

A link is comprised of:

  • Context IRI - The source of the link
  • Link Relation Type - The semantics of the relationship (see Section 4)
  • Target IRI - The destination resource
  • Target Attributes (optional) - Additional metadata about the link or target

A link can be expressed as:

{context IRI} has a {relation type} resource at {target IRI}, 
which has {target attributes}

Implementation Notes

IRI vs URI

  • In common cases, context IRI will be a URI (RFC 3986)
  • Many protocols (e.g., HTTP) do not support dereferencing IRIs
  • Target IRIs are converted to URIs in serializations that don't support IRIs

This specification places no restrictions on:

  • Multiple links to/from a particular IRI
  • Multiple links of different types between two IRIs
  • Relative ordering of links between serializations

Target Attributes

  • Key/value pairs describing the link or its target
  • Examples: media type hints, language hints
  • Specification doesn't coordinate names/use globally
  • Common attributes defined for Link HTTP header (Section 5)

Syntax and Context

  • No general syntax mandated - left to serializations
  • No specific context required - defined by serialization
  • HTTP header serialization specified in Section 5

Related: