210 likes | 293 Views
Technical Highlights. 25th August 2011. Sebastian Peters. German National Library of Science and Technology. DevCoreGroup. Developer Core Group was founded in September 2010 to build a central registration infrastructure for DataCite
E N D
Technical Highlights 25th August 2011 Sebastian Peters German National Library of Science and Technology
DevCoreGroup • Developer Core Group was founded in September 2010 to build a central registration infrastructure for DataCite • Implementation of services in cooperation with DataCite’s Service Group • Developers from BL, CDL, CISTI, TIB • All projects are open source • Source Code is hosted on GitHub • https://github.com/datacite
Services • Production state: • Metadata Store (MDS, DOI/Metadata management) • Beta state: • Metadata Export (OAI) • Search • Future development: • Content Negotiation
Metadata Store (MDS) Overview I • MDS is DataCite’s central infrastructure for DOI Management: • Minting/Updating of DOIs • Storing of metadata • Releases: • December 2010 (public beta) • June 1st 2011 (v2, production state) • MDS is only accessible by DataCite members (and their datacentres): • https://mds.datacite.org
Metadata Store (MDS) Overview II • User Roles: • Allocators (=DataCite Member) can create and manage accounts for associated datacentres • Datacentres can mint/update DOIs and store metadata • Interfaces: • User interface (UI) • Programmatic interface (API)
Metadata Store (MDS) Infrastructure
Metadata Store (MDS) Metadata Handling • We only accept XML • Metadata must validate to one of DataCite Metadata Schemas (http://schema.datacite.org) • Every single version is stored (a dataset can have multiple versions of metadata – the last one is the „real” one) • XML is stored as it comes (no transformation)
Metadata Store (MDS) Quality Assurance • Restrictions per datacentre: • List of valid domain names of landing pages • DOI prefix(es) • Metadata must be valid • Periodically checking if landing pages exists (coming soon)
Metadata Store (MDS) User Interface • Best for low volume operations • Maintain DOIs and metadata with simple web forms • Optimal for datacentres with only a small amount of DOIs
Metadata Store (MDS) API • Best for bulk operations • Can be integrated in existing infrastructures • Simple RESTful API • All the traffic goes via HTTPS • All requests require HTTP Basic authentication • API documentation: https://mds.datacite.org/static/apidoc PUT /metadata/10.5072/TEST HTTP/1.1 Host: mds.datacite.org Authorization: Basic Rk9PLkJBUjoxMjM0NTY3OA== Content-Type: application/xml;charset=UTF-8 <?xml version=“1.0“ encoding=“UTF-8“> …
Datacentres can access MDS directly if allowed by its allocator Favored e.g. by BL,TIB Allocator can use MDS via API and develop custom frontend for datacentres Favored e.g. by CDL Metadata Store (MDS) Direct Access or Custom Frontend?
Metadata Export (OAI) OAI-PMH • Service for 3rd parties to harvest metadata stored in the DataCite Metadata Store (MDS) • using the Open Archives Initiative Protocol for Metadata Harvesting (OAI-PMH). • Metadata formats so far: Dublin Core, DataCite Metadata Schema • Sets for each allocator and datacentre for easy harvesting • Beta version is available at • http://oai.datacite.org
Metadata Export (OAI) Example
Metadata Search Overview • Open service to search metadata stored in the DataCite Metadata Store (MDS) • Based on Lucene Solr • User Interface • Complex boolean query language • Facets (Drilldown) • API • Beta version available at • http://search.datacite.org
Metadata Search Home Page
Metadata Search Result List
Metadata Search Drilldown
Metadata Search Advanced Search • Special form for advanced search • We also support complex lucene query syntax, e.g. • title:laser OR subject:laser • publicationYear:[1990 TO 1995]
Content Negotiation for DOIs Inspired By CrossRef • Service for getting metadata of a DOI • Uses DOI proxy (http://dx.doi.org) • First implemented by CNRI and CrossRef: • “but the beauty of the setup is that from now on, any DOI registration agency can enable content negotiation for their constituencies as well. DataCite- we're looking at you ;-) .”(Geoffrey Bilder on CrossTech blog) • Prototype (for some selective prefixes) is running at • http://data.datacite.org
Content Negotiation for DOIs What is Conneg? • HTTP Content Negotiation is a simple way for HTTP clients to get different representations of the same resource. • Client only needs to know the internet media type (MIME type) • We will expose metadata in DataCite Format viaapplication/x-datacite+xml • Other media types will follow (Dublin Core, RDF, BibTex, etc.) • Could also be used to link directly to the dataset Getting Metadata: GET /10.5072/TEST HTTP/1.1 Host: dx.doi.org Accept: application/x-datacite+xml Resolving DOI: GET /10.5072/TEST HTTP/1.1 Host: dx.doi.org