There are several ways of getting information about an EIDR ID:
- Resolution provides the metadata associated with a particular EIDR ID in various formats, which are:
- Traversal provides information about how the record fits into the object hierarchy, using inheritance, lightweight, and dependence relationships.
- Queries return records with metadata matching certain criteria.
- Matching returns information regarding potential duplicates for a given candidate record. Matching can be used prior to creating a new record as part of an external de-duplication process to help prevent duplicate registrations from reaching the registry.
Resolutionprovides various views of the metadata associated with a particular ID.
Content metadata can be requested in these formats:
Full: This gives an object’s complete metadata, filling in inherited fields and fully realizing any language additions or replacements.
DOIKernel: Returns metadata formatted according to the DOI Kernel metadata for a referentCreation. Please see EIDR Data Fields Reference for full details.
SelfDefined: Returns metadata found on the object itself, ignoring inheritance and language accumulation.
Inherited: Returns only metadata which has been inherited from an ancestor.
Simple: Returns minimal information, including the name, structural type, referent type, primary language, release date, and status of an object, along with skeletal descriptions of its relationships.
Provenance: Returns information about an object’s creation and modification history.
Party and Video Service metadata can be requested as Full or DOIKernel. See the EIDR DOI Mapping for details on the latter.
Traversals are used for discovering how the content record fits into the graph that represents its relationship to other objects.
Traversals stop at the first object for which the requester does not have read permission. The standard Permission error is used only for permission errors on the ID in the original request.
Traversals always follow aliases.
All traversals return results in depth-first order. With traversals you can perform the following operations:
- Find ancestors
- Get series ancestry
- Get remotest ancestor
- Find descendants
- Get leaf descendants
- Get parent
- Get children
- Get dependent objects
- Get lightweight relationships.
The query facility takes a set of metadata criteria expressed in XPath format as input and returns eidr:simpleDataInfoType for all objects that match those criteria. The simplest query tests a single metadata field. More complex queries can be built up by grouping simple queries together with standard logical expressions.
Queries can be based on the content record’s metadata, its modification history (provenance), and its virtual fields. For more information and examples of queries, see Appendix B: Text Processing and Queries.
This query finds all records with “Kung Fu” in the title:
(/FullMetadata/BaseObjectData/ResourceName "Kung Fu")
This query finds all records that were last modified in 2013:
(/ProvenanceMetadata/LastModificationDate = 2013)
You can perform a rooted query to get the descendants of a specified object, such as the Episodes for a Series or Season, as shown in the following example using the EIDR command-line tools:
To find all the Episodes registered for a Series with EIDR content ID 10.524/301C-0DFA-B184-5448-BB3E-I as the root object, create the file query-ep.txt containing
QueryTool -i query-ep.txt -r 10.5240/301C-0DFA-B184-5448-BB3E-I -t full
to see the full metadata for all the episodes of the Series.
QueryTool -i query-ep.txt -r 10.5240/301C-0DFA-B184-5448-BB3E-I -n
will tell you how many episodes the Series contains.
This example finds all items that are packaging of a particular record:
Other lightweight relationships (such as Promotion) are analogous. You can find anything that is a packaging of something else with: