II · 17

Resolver (res)

The Resolver entity names the service that should handle the request. Usually implicit in the base URL — but explicit when the source needs to point at a specific resolver.

The Resolver entity names the target of the OpenURL — the service that should process the ContextObject. In KEV form the prefix is res. The Resolver is optional. In the KEV format at most one Resolver may be described; the XML format allows several.

Implicit vs. explicit

In nearly every OpenURL emitted in practice, the Resolver is implicit: it is whatever resolver lives at the base URL of the OpenURL. An explicit Resolver entity is needed only in unusual scenarios:

  • The request travels through a relay or directory, and the body of the request must indicate the final destination.
  • The source wishes to suggest a resolver to a client (a browser extension, for example) that will then construct an HTTP request.
  • The ContextObject is carried in a form other than an HTTP URL — for example, embedded in an XML document — and the URL of the target resolver must travel alongside it.

Example

res_id=https://resolver.example.edu/openurl

The identifier is the URL of the resolver. Descriptive metadata about the resolver is also permitted but rarely seen.

Sources