Digital Object Gateway (DOG)

DOG is an abstraction layer for accessing Digital Objects that are referred to with a Persistent Identifier ( ) or URL.
The end user of DOG does not need to know the specifics of how to access one particular data repository. Instead, by sending the identifier of an object (typically the landing page) to the DOG, the DOG can perform a range of standard operations to explore and process the object.


A typical question to the DOG could be "give all direct links to the files that have been deposited with the doi:10.23728/b2share.d64361c0a6384760a8a8f32e0dc4a481".
Normally this would required some manual steps:
  • the user enters the URL-ified version of the DOI in the browser and opens the landing page
  • on the landing page, the user searches for the Files section and manually finds the URLs for each of the 3 files
With the DOG, the user
  • provides the DOI (as a plain DOI or in the URL-ified version)
  • gets a list of all 3 downloadable files, without the need to manually browse to the landing page
The image below links to a clickable PDF wireframe with the intended user interface of the DOG for this example:

More information

Prototype code:
  • DOGlib – python library
  • DOGapp service using the DOGlib and the web application using the REST service
Deployed alpha version: