II · 12

Entities Overview

An OpenURL ContextObject has room for six entities. One is required; the other five are optional. Each describes one role in the request.

The OpenURL framework models a request as a set of Entities: the things and parties involved in a reference and in the request for services about it. A ContextObject must contain exactly one Referent; the other five Entities add context when the source has it.

The six Entities

EntityKEV prefixXML elementNumber (KEV / XML)Role
Referentrftreferent1 / 1The resource being referenced
ReferringEntityrfereferring-entity0–1 / 0–1The resource that contains the reference
Requesterreqrequester0–1 / 0–1The person or agent requesting services
ServiceTypesvcservice-type0–1 / 0+The kind of service requested
Resolverresresolver0–1 / 0+The target of the request
Referrerrfrreferrer0–1 / 0–1The system that generated the ContextObject

The standard's own SAP1 appendix gives scholarly examples: the Referent is "a referenced journal article", the ReferringEntity "a referencing article", the Requester "the user clicking an OpenURL", the ServiceType "fulltext, ILL, etc.", the Resolver "a library's OpenURL linking server", and the Referrer the database that produced the link.

Describing an Entity

Every Entity can be described by any combination of four Descriptors: Identifier (_id), By-Value Metadata (_val_fmt + .key), By-Reference Metadata (_ref_fmt + _ref) and Private Data (_dat). The KEV prefix ties each key to its Entity:

rft_val_fmt=info:ofi/fmt:kev:mtx:journal
&rft.atitle=Some+Article+Title
&rft.jtitle=Some+Journal
&rft_id=info:doi/10.1103/PhysRev.47.777
&rfe_id=info:doi/10.1006/mthe.2000.0239
&rfr_id=info:sid/example.com:source

What you typically see in practice

Most OpenURLs carry only two Entities:

  • Referent, always, with rft_val_fmt and rft.* metadata, an rft_id, or both.
  • Referrer, as rfr_id=info:sid/…, naming the database or service that made the link.

Publishers' reference lists sometimes add a ReferringEntity (the DOI of the citing article). Requester, ServiceType and Resolver are uncommon in ordinary links and appear more in machine-to-machine uses.

Sources