Perseus Stable URIs

Perseus is working towards making all of its data available according to Linked Data Best Practices. Our first step towards that is to publish stable URIs for citations and texts. These URIs leverage Canonical Text Services URNs, enabling us to take advantage of the CTS data model while still supporting Linked Data standards.

All Perseus data URIs are published under the http://data.perseus.org URI prefix.

Individual citations can be retrieved at URIs which adhere to the following syntax:

http://data.perseus.org/citations/<CTS PASSAGE URN>[/format]

CTS PASSAGE URNs which include subreferences (e.g. urn:cts:greekLit:tlg0012.tlg001.perseus-grc1:1.1@μῆνιν[1]) are not yet supported but will be in the future.

Currently supported data formats for citations are HTML and XML. In the future RDF/XML and JSON-LD may also be supported.

The URI syntax for an entire text, without a citation is

http://data.perseus.orgs/texts/<CTS TEXT URN>[/format]

HTML is the only currently supported format for full text URIs, but the XML format will be available in the future.

Combining CTS and URI standards

This is best illustrated by example.

urn:cts:greekLit:tlg0012.tlg001.perseus-grc1

Identifies the unique resource which is Perseus’ TEI XML version of Homer’s Iliad that is identified in the Perseus CTS inventory as ‘perseus-grc1′. (This TEI XML version was based on the Oxford 1920 edition, which information can currently be found out by looking at the description of the version in the GetCapabilities response, but may soon also be reported in the header of the GetPassage response. But see more below on this topic).

urn:cts:greekLit:tlg0012.tlg001.perseus-grc1:1.1 identifies line 1.1 of this version

If you make a GetPassage request directly to the Perseus CTS API (at http://www.perseus.tufts.edu/hopper/CTS) for this resource you will get back a CTS GetPassage response which contains the TEI XML for line 1.1 of this version.

If you make a GetPassage request directly to the Perseus CTS API (at http://www.perseus.tufts.edu/hopper/CTS) for line 1.1 of the notional work the Iliad (identified by urn:cts:greekLit:tlg0012.tlg001:1.1) you will also get back a CTS GetPassage response which contains the TEI XML for line 1.1 of this same edition, because Perseus has decided to make this specific Greek edition the default version it returns if a version hasn’t specifically been requested. (We don’t currently identify the specific version returned in the GetPassage response, but we will soon).

The stable URI for this specific line of this resource is

http://data.perseus.org/citations/urn:cts:greekLit:tlg0012.tlg001.perseus-grc1:1.1

If your request for this resource includes an HTTP Accept header which includes text/html then the response is currently an HTTP 302 redirect to the HTML display for the page that contains this line of text in the Perseus interface.

If your request for this resource does NOT indicate via its HTTP Accept header that it accepts text/html, then currently the response is an HTTP 200 that contains the results of the CTS GetPassage request, but we will be changing this to be an HTTP 302 redirect to the GetPassage response, in order to be consistent with linked data recommendations.

We  also now support the following alternative request syntax for citations which doesn’t require use of the HTTP Accept header:

http://data.perseus.org/citations/urn:cts:greekLit:tlg0012.tlg001.perseus-grc1:1.1/html
http://data.perseus.org/citations/urn:cts:greekLit:tlg0012.tlg001.perseus-grc1:1.1/xml

If you issue a request for a resource via CTS urn that Perseus does NOT have, you will be redirected  (via an HTTP 303 See Other redirect) to the Perseus Catalog. If the requested text is available at that urn in the Catalog, then you be brought directly to the corresponding catalog record, which may contain links to other locations at which you can find the actual text (such as the Internet Archive or Google Books, etc.). Although not yet supported, in the future, if you request a text which is not listed in the catalog, you will be offered the opportunity to add bibliographic information and links for that text to the Catalog.

Adding a subreference (e.g. @μῆνιν[1]) to any of the above requests, when supported, won’t change way the redirect to the response happens.

Reference

Stable URIs are also under development for other resources in the Perseus Digital Library. The following table provides a summary.

Entity Type Urispace Example Status
Person http://data.perseus.org/people/ http://data.perseus.org/people/smith:alexander-1 Enabled for Smiths Biography; Others Pending; Support for /xml and /html data format URI extensions also pending.
Place http://data.perseus.org/places/ http://data.perseus.org/places/smith:alexandreia-2 Not yet implemented.
Artifact http://data.perseus.org/artifacts/[sculpture|vase|building|gem|site|coin]/ http://data.perseus.org/artifacts/sculpture/Diadoumenos Implemented. Support for /xml and /html and /CIDOC data format URI extensions also pending.
Lexical http://data.perseus.org/lexical/ http://data.perseus.org/lexical/urn:cite:perseus:lexentity.lex1234 Pending
Citations http://data.perseus.org/citations/ http://data.perseus.org/citations/urn:cts:greekLit:tlg0012.tlg001:1.1 Beta Implementation. Excludes passage subreferences and not all texts are supported. See CTS API for further details.
Text http://data.perseus.org/texts/ http://data.perseus.org/texts/urn:cts:greekLit:tlg0012.tlg001.perseus-grc1 Implemented, including support for /html format extension. Support for xml format extension pending.
Annotations http://data.perseus.org/annotations/ http://data.perseus.org/annotations/occur/places:pleiades/urn:cts:greekLit:tlg0551.tlg017.perseus-grc1 In Progress. Support for /rdf URI format extension pending.

Comments are closed.