DH-crud

The DARIAH-DE CRUD Service is the core storage service for the DARIAH-DE Repository. It talks to both the DARIAH-DE OwnStorage and PublicStorage. Two instances of the DH-crud are in use within the DARIAH-DE Repository: An only internally used instance that actually is creating and importing objects (via Publikator) and an externally used instance (the documented one) that is delivering publicly available data and metadata to the users.

API Documentation

To retrieve data and metadata you would need an object’s Handle PID, such as

21.11113/0000-000B-C8EF-7

Access via DOI is not yet possible, and planned for the next release.

#VERSION

To check the current productive DH-crud version simply try:

and you get the currently deployed version of the productive and public DH-crud.

Content Negotiation

Access on root object level provides content negotiated responses depending on Request Accept Header:

  • Accept: text/html will provide the HTML landing page,
  • Accept: application/zip will provide the ZIPped BagIt bag, and finally
  • leaving out the Accept-header will return the data object itself in it’s original mimetype.

#GET Data

RESPONSE: A file object with appropriate Content-Type.

#GET Descriptive Metadata (DMD)

Descriptive metadata are in DC namespace and to be added by the user importing data into the repository. Only the dc:identifier tags holding the URL, DOI, and Handle PID are added by the DH-crud service.

RESPONSE: text/plain (TURTLE)

@prefix rdf:   <http://www.w3.org/1999/02/22-rdf-syntax-ns#> .
@prefix dariah: <http://de.dariah.eu/rdf/dataobjects/terms/> .
@prefix dc:    <http://purl.org/dc/elements/1.1/> .

<http://hdl.handle.net/21.11113/0000-000B-C8EF-7>
        a               dariah:Collection ;
        dc:creator      "DARIAH-DE" ;
        dc:description  "The collection containing the terms of use for the DARIAH-DE Repository." ;
        dc:format       "text/vnd.dariah.dhrep.collection+turtle" ;
        dc:identifier   <http://dx.doi.org/10.20375/0000-000B-C8EF-7> , <http://hdl.handle.net/21.11113/0000-000B-C8EF-7> ;
        dc:rights       "CC0" , "https://creativecommons.org/choose/zero/" ;
        dc:title        "DARIAH-DE Repository – Terms of Use" .

Different formats can be requested using

#GET Administrative Metadata (ADMMD)

Administrative metadata are in DCTERMS namespace and created by the DH-crud service itself at importing time.

RESPONSE: text/plain (TURTLE)

@prefix premis: <http://www.loc.gov/premis/rdf/v1#> .
@prefix rdf:   <http://www.w3.org/1999/02/22-rdf-syntax-ns#> .
@prefix dcterms: <http://purl.org/dc/terms/> .
@prefix dariah: <http://de.dariah.eu/rdf/dataobjects/terms/> .

<http://hdl.handle.net/21.11113/0000-000B-C8EF-7>
        a                            dariah:Collection ;
        dcterms:created              "2017-12-04T19:25:31.028" ;
        dcterms:creator              "StefanFunk@dariah.eu" ;
        dcterms:extent               "436" ;
        dcterms:format               "text/vnd.dariah.dhrep.collection+turtle" ;
        dcterms:identifier           <http://dx.doi.org/10.20375/0000-000B-C8EF-7> , <http://hdl.handle.net/21.11113/0000-000B-C8EF-7> ;
        dcterms:modified             "2017-12-04T19:25:31.028" ;
        dcterms:source               "https://cdstar.de.dariah.eu/dariah/EAEA0-4CA2-C619-F79F-0" ;
        premis:hasMessageDigest      "be66b89927c01eb13a0f924f1f7de5a0" ;
        premis:hasMessageDigestOriginator
                "dhcrud-base-7.36.0-DH.201712041055" ;
        premis:hasMessageDigestType  "md5" .

Different formats can be requested using

#GET Technical Metadata (TECHMD)

Technical metadata is extracted from each single object (content file) at import. A File Information Tool Set (FITS) service is used by the DH-crud.

RESPONSE: text/xml (FITS XML)

<?xml version="1.0" encoding="UTF-8"?>
<fits xmlns="http://hul.harvard.edu/ois/xml/ns/fits/fits_output" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://hul.harvard.edu/ois/xml/ns/fits/fits_output http://hul.harvard.edu/ois/xml/xsd/fits/fits_output.xsd" version="1.1.0" timestamp="12/4/17 7:25 PM">
  <identification>
    <identity format="Plain text" mimetype="text/plain" toolname="FITS" toolversion="1.1.0">
      <tool toolname="Droid" toolversion="6.1.5" />
      <tool toolname="Jhove" toolversion="1.16" />
      <tool toolname="file utility" toolversion="5.14" />
      <externalIdentifier toolname="Droid" toolversion="6.1.5" type="puid">x-fmt/111</externalIdentifier>
    </identity>
  </identification>
  <fileinfo>
    <size toolname="Jhove" toolversion="1.16">436</size>
    <filepath toolname="OIS File Information" toolversion="0.2" status="SINGLE_RESULT">/tmp/tomcat-crud-tmp/dhrep_c8de478714e64a69a60a01d6e8354f88/dhrep_21.11113_0000-000B-C8EF-7.bagit/data.txt</filepath>
    <filename toolname="OIS File Information" toolversion="0.2" status="SINGLE_RESULT">data.txt</filename>
    <md5checksum toolname="OIS File Information" toolversion="0.2" status="SINGLE_RESULT">be66b89927c01eb13a0f924f1f7de5a0</md5checksum>
    <fslastmodified toolname="OIS File Information" toolversion="0.2" status="SINGLE_RESULT">1512411931000</fslastmodified>
  </fileinfo>
  <filestatus>
    <well-formed toolname="Jhove" toolversion="1.16" status="SINGLE_RESULT">true</well-formed>
    <valid toolname="Jhove" toolversion="1.16" status="SINGLE_RESULT">true</valid>
  </filestatus>
  <metadata>
    <text>
      <linebreak toolname="Jhove" toolversion="1.16" status="SINGLE_RESULT">LF</linebreak>
      <charset toolname="Jhove" toolversion="1.16">US-ASCII</charset>
      <standard>
        <textMD:textMD xmlns:textMD="info:lc/xmlns/textMD-v3">
          <textMD:character_info>
            <textMD:charset>US-ASCII</textMD:charset>
            <textMD:linebreak>LF</textMD:linebreak>
          </textMD:character_info>
        </textMD:textMD>
      </standard>
    </text>
  </metadata>
  <statistics fitsExecutionTime="66">
    <tool toolname="MediaInfo" toolversion="0.7.75" status="did not run" />
    <tool toolname="OIS Audio Information" toolversion="0.1" status="did not run" />
    <tool toolname="ADL Tool" toolversion="0.1" status="did not run" />
    <tool toolname="VTT Tool" toolversion="0.1" status="did not run" />
    <tool toolname="Droid" toolversion="6.1.5" executionTime="5" />
    <tool toolname="Jhove" toolversion="1.16" executionTime="44" />
    <tool toolname="file utility" toolversion="5.14" executionTime="56" />
    <tool toolname="Exiftool" toolversion="10.00" status="did not run" />
    <tool toolname="NLNZ Metadata Extractor" toolversion="3.6GA" status="did not run" />
    <tool toolname="OIS File Information" toolversion="0.2" executionTime="21" />
    <tool toolname="OIS XML Metadata" toolversion="0.2" status="did not run" />
    <tool toolname="ffident" toolversion="0.2" executionTime="23" />
    <tool toolname="Tika" toolversion="1.10" executionTime="32" />
  </statistics>
</fits>

#GET Provenance Metadata (PROVMD)

The DARIAH-DE Repository is not yet using provenance matadata.

RESPONSE: HTTP 500 – Internal Server Error (not yet implemented)

Sources

See dhcrud_sources

Bugtracking

See dhcrud_bugtracking

License

See LICENCE