Thursday, January 14, 2021

DOIs minted for contributions to Nomisma.org

At long last, I have finally put into production a feature in the Nomisma.org back-end to post dataset metadata to Crossref in order to mint a DOI for each Nomisma editor. The groundwork for this was laid almost exactly two years ago, in the blog post, Formalizing editors and a step toward minting DOIs for Nomisma. However, we have opted toward publishing datasets directly through Crossref's APIs, instead of DataCite, on which the Kerameikos.org project relies for the same functionality. The ANS is already a subscriber to Crossref for minting DOIs for publications in its Digital Library (and eventually its journals), and the subscription charges are more reasonable for such a small institution as the American Numismatic Society.

As I stated in the above blog post:

Nomisma.org data constitute an enormous body of collective intellectual effort, and it's increasingly important that scholarly digital works receive equal weight as traditional publications. Therefore, the creation of DOIs for Nomisma contributions would appear in the scholarly profile in ORCID. Just recently, the AIA issued updated guidelines for the considerations of tenure and promotion, with specific guidelines for the recognition of digital projects, and so our goal of formalizing this recognition within Nomisma keeps us on the cutting edge with respect modern modes of scholarly communication.

By integrating Nomisma.org contributions into the broader Linked Open Data cloud for scholarly communication, the intellectual labor behind creating, defining, and organizing Nomisma concepts is formalized through an ORCID profile, where datasets are joined with more traditional forms of publication, such as journal articles and monographs. It has long been a challenge within Digital Humanities projects to recognize participation in a context that non-digital peers can appreciate with regard to employment or promotion within the academic sphere. There are few examples of Digital Humanities projects being published as a DOI with ORCID integration; we hope that our work in Nomisma will set an example in other DH disciplines. Beyond Nomisma, we aim to mint DOIs for our other typological projects, like OCRE and Hellenistic Royal Coinages. This is particularly important, as both of these projects employed undergraduate students who have gone on to enroll in PhD programs or are early career scholars.


Under the Hood

This new process is relatively straightforward and almost entirely automated by interacting directly with Crossref's APIs.

The Crossref XML file is generated by a source Nomisma SPARQL query to gets a list of editors and the earliest and latest dates of their edits, as well as an optional ORCID URI:

PREFIX dcterms: <http://purl.org/dc/terms/>
PREFIX foaf: <http://xmlns.com/foaf/0.1/>
PREFIX org: <http://www.w3.org/ns/org#>
PREFIX rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#>
PREFIX skos: <http://www.w3.org/2004/02/skos/core#>
PREFIX xsd: <http://www.w3.org/2001/XMLSchema#>
PREFIX prov:	<http://www.w3.org/ns/prov#>

SELECT ?editor ?name ?orcid (min(?date) as ?creation) (max(?date) as ?update) WHERE {
  ?editor a foaf:Person ;
            skos:inScheme <http://nomisma.org/editor/> ;
            skos:prefLabel ?name .  
  OPTIONAL {?editor skos:exactMatch ?orcid FILTER contains(str(?orcid), "orcid.org")}
  OPTIONAL {
      ?activity a prov:Activity ;
                  prov:atTime ?date.
      {?activity prov:wasAssociatedWith ?editor
          FILTER NOT EXISTS {?activity prov:used ?spreadsheet}}
      UNION {
        ?activity prov:used ?spreadsheet.
        {?spreadsheet dcterms:creator ?editor }
        UNION {?spreadsheet dcterms:contributor ?editor}
      } }
} GROUP BY ?editor ?name ?orcid ORDER BY ?name

 

The SPARQL response is then transformed through an XSLT stylesheet into the XML file above. In the Nomisma XForms back-end, this Crossref XML file is sent to their API, and if successful, each editor RDF is updated to insert the DOI into a dcterms:identifier.

Tuesday, December 15, 2020

First Celtic numismatics Nomisma concepts have been minted

The first of many Celtic numismatic concepts yet to come have been added in Nomisma.org, as part of the Ancient British Coinage (ABC) and Celtic Coins Index projects that are being published by the Institute of Archaeology at the University of Oxford and overseen by Courtney Nimura. These include regions, rulers, and political entities pertinent to Celtic coinage in Britain. Celtic concepts from continental Europe will be published as part of a separate project. The ABC typology will go online by the end of this year or early 2021, with photographic coverage of all Celtic types. The Celtic Coins Index will be published online as an interlinked specimen catalog in 2021, and other numismatic collections (such as the American Numismatic Society) will contribute relevant material as they begin cataloging in new ABC URIs. The ABC type corpus will be published in the Numishare platform and function much like existing projects, like Online Coins of the Roman Empire and Hellenistic Royal Coinages.

Wednesday, December 2, 2020

Roman Republican Die Project: Nomisma LOD models + IIIF annotation for die studies

By now, you might have heard of the launch of the Roman Republican Die Project (RRDP), overseen by Liv Yarrow and Lucia Carbone, and technically organized/developed by myself. This project represents a leap forward into a new Linked Open Data approach to numismatic die studies that had not yet been implemented in the Nomisma.org ecosystem. RRDP consists of several interlinked databases that form a cohesive research platform for Roman Republican die links, based on the massive accumulation of Richard Schaefer's coin cards and binders we published to Archer earlier this summer. The prototype for RRDP includes the dies and annotated coins only for RRC 15/1a and 15/1b so far, but we will expand to include all Republican types over the next few years. Here is a summary of the individual components that comprise RRDP.

  • The RRDP stand-alone site where all of the die URIs will be minted. Each die record will include a network graph and table of links and numeric counts for the die to the related obverse/reverse dies, as well as the obverse or reverse images that have been annotated (see IIIF annotation, below) with that die ID (the linkage is more precisely image URL->coin->obverse/reverse node->die ID).
  • Coinage of the Roman Republic Online will probably serve as the primary entry point to die research on the type level. CRRO has been extended to query the Nomisma.org SPARQL endpoint in order to read a list of die combinations and numeric counts (based on the total number of annotated coins so far, so this number will evolve as we continue to enter data!) and a network graph of obverse and reverse die links. RRC 15/1b has the most extensive graph of the two subtypes annotated in the prototype. You can click from these graphs and tables to view the record and visualizations for individual dies in the RRDP platform.
    Graph for RRC 15/1b


  • The ANS has launched a stand-alone database of auction catalog materials or collections that are not yet contributors in the Nomisma.org LOD ecosystem. A sort of "mirror" of the ANS database, MANTIS, SITNAM is a Numishare site with identical functionality intended, at the moment, to hold coins from Schaefer's clippings. It will eventually be used to publish private materials ad hoc for other digital aggregation projects. Like MANTIS, the numismatic RDF for SITNAM is exported into Nomisma.org's SPARQL endpoint, making these coins available in CRRO in the same manner as other collections. The coverage of RRC 15/1b has grown about 500% with the inclusion of Schaefer's binders. There are approximately 300,000 Republican coins in Schaefer's research materials, which will dramatically increase the coverage in CRRO (currently 50,000 coins from 40 museums or archaeological datasets). Many of Schaefer's coins include measurements, such as weight, that will enhance the research value of CRRO even beyond the die linking.
  • The die links themselves. The die IDs are not stored within the metadata for an individual specimen, but rather stand separately in a Nomisma model that integrates some properties from CIDOC-CRM that will enable multiple scholars to make different die attributions about the same coins, with each scholar's attributions bound to a Named Graph when posted into the Nomisma SPARQL endpoint. For example: 
@prefix nmo: <http://nomisma.org/ontology#> .
@prefix rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#> .
@prefix crm: <http://www.cidoc-crm.org/cidoc-crm/> .
@prefix void: <http://rdfs.org/ns/void#> .

<http://numismatics.org/collection/1969.83.3>
  a <http://nomisma.org/ontology#NumismaticObject> ;
  nmo:hasObverse [ nmo:hasDie [
      rdf:value <http://numismatics.org/rrdp/id/rrc-15.1.o.1> ;
      crm:P141i_was_assigned_by [
        a crm:E13_Attribute_Assignment ;
        crm:P14_carried_out_by <http://nomisma.org/editor/rschaefer>
      ]
    ] ] ;
  nmo:hasReverse [ nmo:hasDie [
      rdf:value <http://numismatics.org/rrdp/id/rrc-15.1.r.1> ;
      crm:P141i_was_assigned_by [
        a crm:E13_Attribute_Assignment ;
        crm:P14_carried_out_by <http://nomisma.org/editor/rschaefer>
      ]
    ] ] ;
  void:inDataset <http://numismatics.org/rrdp/> .

The above TTL binds an existing ANS URI http://numismatics.org/collection/1969.83.3 to an obverse and reverse with an nmo:hasDie blank node with an attribute assignment linking to a die URI attested by Schaefer. This annotation would be posted to the SPARQL endpoint to a Named Graph for http://nomisma.org/editor/rschaefer. Numishare has been extended submit SPARQL queries to Nomisma for die relationships for the type or individual die level. The network visualization uses d3plus (a simplified layer for d3js); the SPARQL results are serialized into JSON for display in d3plus.

It is important to note that the canonical coin URI is stored in our specimen spreadsheet so that duplicate coins are not published to SITNAM. Therefore, when generating the die link RDF, we are able to make statements about existing coin URIs at a Named Graph that do not interfere with the collection-published RDF from the institution that contributed the data into Nomisma. For example, RRDP RRC 15/1 obverse die G will include two coins from SITNAM and one from the ANS, because Schaefer has made a statement about an ANS coin, and we can rely on the ANS's high resolution IIIF images rather than the scans of paper cut-outs.

Schaefer RRC 15/1 Obverse G

IIIF Annotation

It is important to preserve the Schaefer binders as archival research documents in their own right, complete with notes and labels, and so it will be possible to navigate from a specimen in SITNAM to its annotated binder page in Archer.

Since these binders have already been published to Archer, with the images served through our IIIF image server (and therefore, each binder has a IIIF manifest), I have deployed Simple Annotation Server, which is a bootstrapped version of Mirador connected to the latest version of Apache Solr (as the annotation store), running as a Tomcat webapp. Unique IDs for binder specimens are generated in a Google sheet, and then the obverse and reverse images for that coin are annotated with the ID appended with _obv or _rev. 

Annotating individual coins via IIIF

When processing the specimen spreadsheet for publication into SITNAM, my script reads the Solr index and extracts the annotation location and dimensions from the Web Annotation JSON-LD in order to store a IIIF URL pattern for the jpeg for each side of the coin, e.g., http://images.numismatics.org/archivesimages%2Farchive%2Fschaefer.rrdp.b01_0098.jpg/285,1332,476,515/full/0/default.jpg (for http://numismatics.org/sitnam/id/87c989a1). SITNAM links back to the relevant binder page in Archer. Eventually, the Mirador viewer in Archer itself will be plugged into these annotations in the front end, making it possible to navigate from binder pages back to SITNAM or, if applicable, the canonical URI for that coin in its home collection database.

Future Plans

RRDP has received $115,000 or so from the Arete Foundation to complete the project over the next few years. The ANS is going to hire a full-time employee to work on data entry and annotation, and as more coins go into the system, the more accurate and complete the network graphs and metrical analyses become. 

While the current visualizations in CRRO and RRDP are based on die->coin->type relationships alone, it is possible to increase the complexity of these SPARQL queries to dive into the descriptions of the types or other attributes of coins (for example, hoards or findspots). So it will be possible to display die linkages not just for a type, but, for example, all denarii minted from 100-75 BC or all types issued by the same moneyer, or die links for only those coins found in Britain (as recorded in the Portable Antiquities Scheme). As we begin to accumulate more data in RRDP (beyond RRC 15/1), I will begin providing more research examples and building out more sophisticated query interfaces in the RRDP platform. This is really just the tip of the iceberg for what will be possible in this new LOD-oriented die study infrastructure.

Tuesday, September 8, 2020

Deprecating TimeMap for Leaflet for type/hoard maps

At long last, I have decided to replace the TimeMap library that combined an OpenLayers map with the SIMILE Timeline widget. This library has been a part of OCRE (and other type corpora) since the earliest phase of the project (late 2012/early 2013) to display the geographic distribution of hoards related to a coin type, with a timeline of hoard closing dates. Scrolling through this timeline forces hoards to appear or disappear on the map. This form of visualization has a useful function in that it might show patterns of hoards appearing in particular locations in the same time period. However, most researchers want to see all of the hoards visible on the map at once by default, and there was no way to turn on or off the appearing and disappearing of findspots when scrolling the timeline.

 

TimeMap: only a few hoards visible at once for RRC 50/2.

 

RRC 50/2: all hoards are visible in Leaflet/GeoJSON

 

The GeoJSON for a coin type now includes Features for each hoard, conforming to Karl Grossner's GeoJSON-T extension for date ranges for the closing date. Ideally, I would like these closing dates to be represented as a histogram rather than a timeline, as demonstrated by a prototype of WebMaps-T here. This, I believe, is a more useful visualization of of the temporal distribution of coin types. WebMaps-T is not quite ready for production yet, but I have moved forward with deprecating TimeMap, replacing it with a Leaflet map that simply shows all hoards as points, without respect to their temporal component. This at least fulfills the primary research use case: showing all of the hoards simultaneously on the map.

Monday, August 31, 2020

First pass at mapping Nomisma.org to Linked Art JSON-LD

I have made some updates to both Numishare and Nomisma.org's back-ends to facilitate improved and more consistent content negotiation. I have applied a Content-Language header to the response for coin/type pages in Numishare, based on whether the language passed via request parameter (?lang) or content negotiation by the browser settings (Accept-Language) is present within the Numishare translations. 

More importantly, though, is that the Link header has been added into the requests for coin/type URIs in Numishare (as well as the browse page, because a user can request the Atom XML or untransformed Solr XML via content negotiation). The Link headers have also been applied to the URI for any concept or concept scheme in Nomisma.org. 

This follows examples established W3C Content Negotiation by Profile draft.

A `curl -I` of a URI includes a a Link to itself as a text/html resource with rel="canonical", but it will also include a list of other comma separated  rel="alternate" resources found at the same URI, but with an array of acceptable content types (different serializations of RDF, the NUDS/XML document, KML, and/or GeoJSON) and, in some cases, an additional profile URI. 

 

Requesting headers for http://nomisma.org/id/rome

For most serializations of RDF that are available (RDF/XML, Turtle, and JSON-LD), the profile URI is set to http://nomisma.org/ontology#, to reflect the Nomisma data model for coins, types, and SKOS concepts. Another JSON-LD serialization is available in the Linked Art profile, https://linked.art/ns/v1/linked-art.json. It is now possible to request this profile for a Nomisma concept through content negotiation, e.g.:

curl -H "Accept: application/ld+json;profile=\"https://linked.art/ns/v1/linked-art.json\""
    http://nomisma.org/id/rome


Content negotiation was already possible in Numishare, but now the Link headers indicate to a script or robot that additional content types and profiles are available for consumption.

The Nomisma.org Linked Art JSON-LD follows the spec for People and Organizations (including dynasties) and Places. For other types of concepts in Nomisma, they are defined generally as crm:E55_Type, but are not distinguished further by material, denomination, object type, etc. We will implement these classifications as they are documented in the Linked Art specification. Here's a representation of Seleucus I according to this model: https://gist.github.com/ewg118/8ccab36087a42b71ef15ece7b160f09a. This includes the preferred label in English, the English definition, matching URIs, and memberships in the Seleucid Empire and Seleucid Dynasty. A further conneg request of the latter two URIs include further context about those organizations, including the formation and dissolution dates.

In theory, a parser capable of reading Linked Art JSON-LD for a Human Made Object (for example, a coin in our collection) can crawl from the object data into any associated Nomisma.org concept. A parser can request the HEAD for a Nomisma URI, read that a serialization for the Linked Art profile exists, request the data via content negotiation for the content type and profile, and then harvest or display additional contextual information about the entities related to the object.

I got these serializations up and running in about a day, and my next tasks will be to copy and paste these new functions into Kerameikos.org's back-end and xEAC, so that it will be possible to serialize EAC-CPF archival authorities into Linked Art JSON-LD for broader reuse in Linked Open Data systems.

Wednesday, August 12, 2020

About 3,000 BnF coins linked to Coin Hoards

I recently received an update from Julien Olivier at the Bibliothèque nationale de France of coins linked to Inventory of Greek Coin Hoards URIs from the Coin Hoards project. About 3,000 of more than 10,000 Greek coins now link to hoard URIs, about a third of which are Hellenistic coins that were already published through Hellenistic Royal Coinages. A further 2,000 or so were not connected to coin type URIs, and are therefore newly integrated into the Nomisma.org numismatic Linked Open Data ecosystem. In total, these 3,000 coins link to 95 hoards.

One of the hoards the BnF's collection covers most prominently is the Auriol Hoard (IGCH 2352), a large Archaic hoard found near Marseilles, France in 1867. It consists mainly of coins from the Greek colony of Massilia itself. This particular hoard draws 651 specimens from several collections, about 500 of which are held by the BnF.


This particular hoard is briefly mentioned in a section in Sidney Noe's 1920 Coin Hoards, which was digitized and published in the ANS Digital Library as part of the NEH-Mellon Foundation Open Humanities Book Program. The link to digital archival or bibliographic resources is under the specimen list.

Coincidentally, a proof-of-concept ID for the Auriol Hoard (http://nomisma.org/id/auriol_hoard) had been created in Nomisma.org very early in the project's history (by 2011), even though it also existed in Nomisma.org as an IGCH URI. This morning, I deprecated this ID and forwarded it to its Coin Hoards URI (by inserting a dcterms:isReplacedBy URI into the RDF that will generate an HTTP 303 See Other redirect in Nomisma's software architecture).

Tuesday, August 11, 2020

MK Berlin fully linked to Antigonid Coins Online, plus updates

Karsten Dahmen at the M√ľnzkabinett Berlin has fully cataloged all of their coins of Demetrius Poliorcetes with the newly-published URIs from Antigonid Coins Online, which is based on Edward T. Newell's 1927 corpus. There are 119 in total from Berlin, accompanying more than 400 coins from 10 other museums. One of the most diversely represented types is Demetrius 22, which is linked to eight specimens in five museums, including three coins from Berlin.



In addition to the expansion of Berlin's coverage, some other minor fixes have occurred within the underlying data: some updates to type descriptions or other minor errors in transcription.