Return to search results
The NIST Extensible Resource Data Model (NERDm): JSON schemas for rich description of data resources
The NIST Extensible Resource Data Model (NERDm) is a set of schemas for encoding in JSON format metadatathat describe digital resources. The variety of digital resources it can describe includes not onlydigital data sets and collections, but also software, digital services, web sites and portals, anddigital twins. It was created to serve as the internal metadata format used by the NIST Public DataRepository and Science Portal to drive rich presentations on the web and to enable discovery; however, itwas also designed to enable programmatic access to resources and their metadata by external users.Interoperability was also a key design aim: the schemas are defined using the JSON Schema standard,metadata are encoded as JSON-LD, and their semantics are tied to community ontologies, with an emphasison DCAT and the US federal Project Open Data (POD) models. Finally, extensibility is also central to itsdesign: the schemas are composed of a central core schema and various extension schemas. New extensionsto support richer metadata concepts can be added over time without breaking existing applications.Validation is central to NERDm's extensibility model. Consuming applications should be able to choosewhich metadata extensions they care to support and ignore terms and extensions they don't support.Furthermore, they should not fail when a NERDm document leverages extensions they don't recognize, evenwhen on-the-fly validation is required. To support this flexibility, the NERDm framework allowsdocuments to declare what extensions are being used and where. We have developed an optional extensionto the standard JSON Schema validation (see ejsonschema below) to support flexible validation: while astandard JSON Schema validater can validate a NERDm document against the NERDm core schema, our extensionwill validate a NERDm document against any recognized extensions and ignore those that are notrecognized.The NERDm data model is based around the concept of resource, semantically equivalent to a schema.orgResource, and as in schema.org, there can be different types of resources, such as data sets andsoftware. A NERDm document indicates what types the resource qualifies as via the JSON-LD "@type"property. All NERDm Resources are described by metadata terms from the core NERDm schema; however,different resource types can be described by additional metadata properties (often drawing on particularNERDm extension schemas). A Resource contains Components of various types (includingDCAT-defined Distributions) that are considered part of the Resource; specifically, these can include downloadable data files, hierachical datacollecitons, links to web sites (like software repositories), software tools, or other NERDm Resources.Through the NERDm extension system, domain-specific metadata can be included at either the resource orcomponent level. The direct semantic and syntactic connections to the DCAT, POD, and schema.org schemasis intended to ensure unambiguous conversion of NERDm documents into those schemas.As of this writing, the Core NERDm schema and its framework stands at version 0.7 and is compatible withthe "draft-04" version of JSON Schema. Version 1.0 is projected to be released in 2025. In thatrelease, the NERDm schemas will be updated to the "draft2020" version of JSON Schema. Other improvementswill include stronger support for RDF and the Linked Data Platform through its support of JSON-LD.
Complete Metadata
| @type | dcat:Dataset |
|---|---|
| accessLevel | public |
| bureauCode |
[
"006:55"
]
|
| conformsTo | http://json-schema.org/draft-04/schema |
| contactPoint |
{
"fn": "Raymond Plante",
"hasEmail": "mailto:raymond.plante@nist.gov"
}
|
| description | The NIST Extensible Resource Data Model (NERDm) is a set of schemas for encoding in JSON format metadatathat describe digital resources. The variety of digital resources it can describe includes not onlydigital data sets and collections, but also software, digital services, web sites and portals, anddigital twins. It was created to serve as the internal metadata format used by the NIST Public DataRepository and Science Portal to drive rich presentations on the web and to enable discovery; however, itwas also designed to enable programmatic access to resources and their metadata by external users.Interoperability was also a key design aim: the schemas are defined using the JSON Schema standard,metadata are encoded as JSON-LD, and their semantics are tied to community ontologies, with an emphasison DCAT and the US federal Project Open Data (POD) models. Finally, extensibility is also central to itsdesign: the schemas are composed of a central core schema and various extension schemas. New extensionsto support richer metadata concepts can be added over time without breaking existing applications.Validation is central to NERDm's extensibility model. Consuming applications should be able to choosewhich metadata extensions they care to support and ignore terms and extensions they don't support.Furthermore, they should not fail when a NERDm document leverages extensions they don't recognize, evenwhen on-the-fly validation is required. To support this flexibility, the NERDm framework allowsdocuments to declare what extensions are being used and where. We have developed an optional extensionto the standard JSON Schema validation (see ejsonschema below) to support flexible validation: while astandard JSON Schema validater can validate a NERDm document against the NERDm core schema, our extensionwill validate a NERDm document against any recognized extensions and ignore those that are notrecognized.The NERDm data model is based around the concept of resource, semantically equivalent to a schema.orgResource, and as in schema.org, there can be different types of resources, such as data sets andsoftware. A NERDm document indicates what types the resource qualifies as via the JSON-LD "@type"property. All NERDm Resources are described by metadata terms from the core NERDm schema; however,different resource types can be described by additional metadata properties (often drawing on particularNERDm extension schemas). A Resource contains Components of various types (includingDCAT-defined Distributions) that are considered part of the Resource; specifically, these can include downloadable data files, hierachical datacollecitons, links to web sites (like software repositories), software tools, or other NERDm Resources.Through the NERDm extension system, domain-specific metadata can be included at either the resource orcomponent level. The direct semantic and syntactic connections to the DCAT, POD, and schema.org schemasis intended to ensure unambiguous conversion of NERDm documents into those schemas.As of this writing, the Core NERDm schema and its framework stands at version 0.7 and is compatible withthe "draft-04" version of JSON Schema. Version 1.0 is projected to be released in 2025. In thatrelease, the NERDm schemas will be updated to the "draft2020" version of JSON Schema. Other improvementswill include stronger support for RDF and the Linked Data Platform through its support of JSON-LD. |
| distribution |
[
{
"title": "ejsonschema: Software for Validating JSON supporting extension schemas",
"format": "GitHub repository",
"accessURL": "https://github.com/usnistgov/ejsonschema",
"description": "This software repository provides Python software that extends the community software library, python-jsonschema (https://github.com/python-jsonschema/jsonschema) to support NERDm's extension framework. Use the scripts/validate script to validate NERDm documents on the command line. (Type "validate -h" for more information.)"
},
{
"title": "NERDm Support Software",
"format": "GitHub repository",
"accessURL": "https://github.com/usnistgov/oar-metadata",
"description": "This software repository includes a Python package, "nistoar.nerdm", that aids in creating and handling NERDm documents. In particular, it includes converters that convert NERDm instances into other formats (like POD, schema.org, and DCAT). It can also transform NERDm documents conforming to earlier versions of the schemas to that of the latest versions."
},
{
"title": "README",
"format": "text file",
"accessURL": "https://github.com/usnistgov/oar-metadata/blob/integration/model/README-NERDm.md",
"description": "A general overview of the NERDm schema design and files"
},
{
"title": "The NERDm JSON Schema Files",
"format": "GitHub folder",
"accessURL": "https://github.com/usnistgov/oar-metadata/tree/integration/model",
"description": "This directory contains the latest (and previous) versions of the core NERDm Schema and various extensions. All files with names of the form, "*-schema*.json" are JSON Schema definition files; those that do not include a version in the file name represent the latest versions. The latest version of the core schema is called "nerdm-schema.json", and schemas with names of the form, "nerdm-[ext]-schema.json", contain extension schemas. All NERDm schemas here are documented internally, including semantic definitions of all terms."
},
{
"title": "Example NERDm Documents",
"format": "GitHub folder",
"accessURL": "https://github.com/usnistgov/oar-metadata/tree/integration/model/examples",
"description": "This folder contains example NERDm documents that illustrate the NERDm data model and use of extension schemas. These all can be validated using the ejsonschema validate script."
}
]
|
| identifier | 5BD6C3C9109D1355E0531A570681CCEF1870 |
| issued | 2025-02-13 |
| keyword |
[
"FAIR",
"JSON-LD",
"data management",
"data repositories",
"metadata",
"schema"
]
|
| landingPage | https://data.nist.gov/od/id/5BD6C3C9109D1355E0531A570681CCEF1870 |
| language |
[
"en"
]
|
| license | https://www.nist.gov/open/license |
| modified | 2017-09-02 00:00:00 |
| programCode |
[
"006:045"
]
|
| publisher |
{
"name": "National Institute of Standards and Technology",
"@type": "org:Organization"
}
|
| references |
[
"https://doi.org/10.1007/978-3-540-24750-0_3",
"https://doi.org/10.1145/507533.507536",
"https://json-schema.org/",
"https://resources.data.gov/resources/dcat-us/",
"https://www.w3.org/TR/vocab-dcat-2/"
]
|
| theme |
[
"Information Technology:Data and informatics"
]
|
| title | The NIST Extensible Resource Data Model (NERDm): JSON schemas for rich description of data resources |