Metadata Harvesting in DDH
DDH uses the standard OAI-PMH protocol to share the diamond journals with the external world. The DDH protocol implementation supports both Dublin Core and JMEF format. JMEF allows external systems to harvest all of the journal metadata (including the diamond criteria) in DDH
Requests
Identify
| ADDRESS |
| https://ddh.diamas.org/oai/journals?verb=Identify |
| DESCRIPTION |
| Returns information about journals’ repository |
| RESPONSE |
| Identify object |
GetRecord
| ADDRESS |
| https://ddh.diamas.org/oai/journals?verb=GetRecord |
| DESCRIPTION |
| Returns single record with given identifier |
| RESPONSE |
| GetRecord object |
| PARAMETERS: | ||||
| name | type | mandatory | allowed values | description |
| matadataPrefix | dictionary | yes | oai_dc or oai_jmef | Metadata format in response |
| identifier | string | yes | valid identifier of the record | Identifier of single record to fetch |
ListIdentifiers
| ADDRESS |
| https://ddh.diamas.org/oai/journals?verb=ListIdentifiers |
| DESCRIPTION |
| Returns a list of headers containing identifiers existing in the system and the last modification time of the journal with the given identifier. Optionally, the response includes a resumptionToken. |
| RESPONSE |
| ListIdentifiers object |
| PARAMETERS | ||||
| name | type | mandatory | allowed values | description |
| matadataPrefix | dictionary | yes | oai_dc or oai_jmef | Metadata format in response |
| resumptionToken | string | no | resumption token string from previous response | Allows to download another portion of data. It is sent in response to a query and expires after the time specified in the expirationDate attribute. |
| from | string | no | date in format YYYY-MM-DD or timestamp in format YYYY-MM-DDThh:mm:ssZ | Limits the response to records whose modification date/timestamp is equal to or later than the specified one |
| until | string | no | date in format YYYY-MM-DD or timestamp in format YYYY-MM-DDThh:mm:ssZ | limits the response to records whose modification date/timestamp is equal to or earlier than the specified one |
| set | string | no | Name of the set that records will be filtered on. Currently not supported. |
ListRecords
| ADDRESS |
| https://ddh.diamas.org/oai/journals?verb=ListRecords |
| DESCRIPTION |
| Returns a list of records containing the headers and metadata in the selected format for all journals existing in the system. Optionally, the response includes a resumptionToken. |
| RESPONSE |
| ListRecords object |
| PARAMETERS | ||||
| name | type | mandatory | allowed values | description |
| matadataPrefix | dictionary | yes | oai_dc lub oai_jmef | Metadata format in response |
| resumptionToken | string | no | resumption token string from previous response | Allows to download another portion of data. It is sent in response to a query and expires after the time specified in the expirationDate attribute. |
| from | string | no | date in format YYYY-MM-DD or timestamp in format YYYY-MM-DDThh:mm:ssZ | Limits the response to records whose modification date/timestamp is equal to or later than the specified one |
| until | string | no | date in format YYYY-MM-DD or timestamp in format YYYY-MM-DDThh:mm:ssZ | Limits the response to records whose modification date/timestamp is equal to or earlier than the specified one |
| set | string | no | Name of the set that records will be filtered on. Currently not supported. |
ListMetadataFormats
| ADDRESS |
| https://ddh.diamas.org/oai/journals?verb=ListMetadataFormats |
| DESCRIPTION |
| Returns available metadata formats that can be used in response |
| RESPONSE |
| ListMetadataFormats object |
| PARAMETERS | ||||
| name | type | mandatory | allowed values | description |
| identifier | string | no | valid identifier of the record | Identifier of single record to fetch |
ListSets
| ADDRESS |
| https://ddh.diamas.org/oai/journals?verb=ListSets |
| DESCRIPTION |
| endpoint unimplemented |
Responses
GetRecord
| name | type | description | |
| elements: | record | object | Container for data (header and metadata) of single journal |
Identify
| name | type | description | |
| elements: | repositoryName | string | Name of the DDH journal repository |
| baseUrl | string | Base url of the journal repository | |
| protocolVersion | string | Version of protocol used. Currently 2.0 | |
| adminEmail | string | Email address to the admins of the repository | |
| earliestDatestamp | dateTime | Earliest date and time in repository records | |
| deletedRecord | dictionary | „persistent” | |
| granularity | string | currently: YYYY-MM-DDThh:mm:ssZ | |
| description | object | Object container for elements describing the repository in details |
ListIdentifiers
| name | type | description | |
| elements: | header | object | List of header objects, each header for single journal |
| resumptionToken | string | Token to use in case of resumption of search |
ListMetadataFormats
| name | type | description | |
| elements: | metadataFormat | object | Container for data describing supported metadata formats |
ListRecords
| name | type | description | |
| elements: | record | object | List of record objects, each record for single journal |
| resumptionToken | string | Token to use in case of resumption of search |
description
| name | type | description | |
| elements: | oai-identifier | object | Object describing detailed parts of oai identifier with its example |
header
| name | type | description | |
| attributes: | statud | dictionary | „deleted” – when given journal is deleted in system |
| elements: | identifier | string | Journal’s identifier in the system |
| datestamp | dateTime | Journal’s last modification timestamp |
journal
| name | type | description | |
| elements: | id | string | Journal’s identifier |
| title-group | object | Journal’s titles (main and others if exist) | |
| issn | string | ISSN / e-ISSN of the journal | |
| diamond-criteria | object | Journal’s diamondity criteria | |
| organizations | object | Journal’s publisher and other associated organizations if exist | |
| publication-policy | object | Information on journal’s review proces, licences, languages | |
| self-uri | string | Journal’s website url | |
| keywords | object | List of keywords assigned to the journal | |
| classifications | object | List of journal’s classifications (currently OECD-2007 is supported) |
metadata
| name | type | description | |
| elements: | oai_dc:dc | object | Container for Dublin Core metadata elements |
| or | |||
| journal | object | Container for JMEF metadata elements |
metadataFormat
| name | type | description | |
| elements: | metadataPrefix | dictionary | „oai_dc” for Dublin Core or „oai_jmef” for JMEF format |
| schema | string | url to validation schema of the format | |
| metadataNamespace | string | url to namespace of the format |
oai_dc:dc
| name | type | description | |
| elements: | dc:title | string | Journal’s title |
| dc:date | dateTime | Journal’s last modification timestamp | |
| dc:identifier | string | Journal’s identifier | |
| dc:language | dictionary | Journal’s language (ISO 639-2 code) | |
| dc:publisher | string | Journal’s publisher name | |
| dc:relation | string | Journal’s website url | |
| dc:type | dictionary | Always „journal” | |
| dc:subject | string | Journal’s subjects or keywords |
oai-identifier
| name | type | description | |
| elements: | scheme | dictionary | Always „oai” |
| repositoryIdentifier | string | repository identifier, example: ddh.diamas.org | |
| delimiter | string | delimiter character used in the identifier | |
| sampleIdentifier | string | example: „oai:ddh.diamas.org:234 |
record
| name | type | description | |
| elements: | header | object | Container for identifier and last modification timestamp of the journal |
| metadata | object | Metadata that describes the journal in Dublin Core or JMEF format |
resumptionToken
| name | type | description | |
| attributes: | expirationDate | dateTime | Timestamp describing when the resumption token expires |
id
| name | type | description | |
| attributes: | type | dictionary | ddh – id used in DDH system, doi – DOI identifier |
title-group
| name | type | description | |
| elements: | title | string | Main journal title |
| other-title | string | Additional jourlal titles like title translations, subtitles, alternative titles or other |
title
| name | type | description | |
| attributes: | language-iso2 | dictionary | Language code of the title |
other-title
| name | type | description | |
| attributes: | language-iso2 | dictionary | Language code of the title |
| type | dictionary | Type of the title: translation, subtitle, alternative, other |
issn
| name | type | description | |
| attributes: | publication-format | dictionary | „print” – for journals with ISSN number, „electronic” – for journals with e-ISSN number |
diamond-criteria
| name | type | description | |
| elements: | scholarly-journal | – | Scholarly-journal according to the guidelines for scholarly journals provided by EQSIP v2 |
| community-owned | – | Journal is owned by organization(s) (or parts thereof) that perform research or scholarship | |
| open-access-with-open-licenses | – | All outputs of the journal carry an open license that is included in the article-level metadata | |
| no-fees | – | Journal do not impose a mandatory fee of any kind as a condition for publication | |
| open-to-all-authors | – | The authorship in the journal is not limited to any type of affiliation |
scholarly-journal
| name | type | description | |
| attributes: | value | dictionary | true or false |
community-owned
| name | type | description | |
| attributes: | value | dictionary | true or false |
open-access-with-open-licenses
| name | type | description | |
| attributes: | value | dictionary | true or false |
no-fees
| name | type | description | |
| attributes: | value | dictionary | true or false |
open-to-all-authors
| name | type | description | |
| attributes: | value | dictionary | true or false |
organizations
| name | type | description | |
| elements: | publisher | object | Journal’s publisher details |
| other-organization | object | Other organizations associated with the journal |
publisher
| name | type | description | |
| elements: | name | string | Journal publisher’s name |
| location | object | Journal publisher’s location details |
location
| name | type | description | |
| elements: | country | string | Journal’s publisher or other organization location |
country
| name | type | description | |
| attributes: | iso3 | dictionary | Location country name |
other-organization
| name | type | description | |
| elements: | name | string | other organization name |
publication-policy
| name | type | description | |
| elements: | review-process | – | Review process type |
| languages | – | Container for journal’s languages | |
| licenses | object | Container for elements describing licences of the journal |
review-process
| name | type | description | |
| attributes: | type | dictionary | Type of review process |
languages
| name | type | description | |
| elements: | language | – | Language of the journal |
language
| name | type | description | |
| attributes: | iso2 | dictionary | language of the journal |
keywords
| name | type | description | |
| elements: | keyword | string | Keyword associated with the journal |
classifications
| name | type | description | |
| elements: | classification | object | Container for classification of given type. Currently only OECD-2007 type is supported. |
classification
| name | type | description | |
| attributes: | type | dictionary | Always „oecd-2007” |
| elements: | class | – | OECD-2007 class assigned to the journal |
class
| name | type | description | |
| attributes: | code | string | OECD-2007 class code |
| value | string | OECD-2007 class name |