-
Notifications
You must be signed in to change notification settings - Fork 11
Implementation
Stefan Köhnen edited this page Mar 24, 2020
·
1 revision
We used JSON-Schema version 3.0.2 and draft-07 for implementing all versions of the SANDS metadata schemas. If you need more information on the used JSON-Schema syntax than what is stated below, please go to the official JSON-Schema (draft-01) documentation.
Each SANDS JSON-Schema is generally structured in the following way:
{
"$schema": "http://json-schema.org/draft-07/schema#",
"$id": "https://schema.hbp.eu/<<schema-version>>/<<schema-category>>/<<schema-label>>.schema.json",
"title": "<<schema-label>>",
"description": "<<schema-description>>",
"type": "object",
"additionalProperties": false,
"required": [
"@type",
"@id",
"<<property-label>>"
],
"properties": {
"@type": {
"const": "https://schema.hbp.eu/<<schema-version>>/<<node-type>>",
"description": "Metadata node type (schema)."
},
"@id": {
"type": "string",
"pattern": "<<schema-version>>/<<schema-category>>/<<schema-label>>/v1.0.0/([A-Za-z0-9_-]+).json",
"description": "Metadata node identifier."
},
"<<property-label>>": {
"type": "<<expected-entry-type>>",
"description": "<<property-description>>"
}
}
}
The SANDS JSON-Schemas can be used to generate and validate corresponding JSON-LD metadata files which, if correctly organized in a hierarchical collection, can be automatically digested into the Knowledge Graph (KG) database by the HBP/EBRAINS curation team ([email protected]). How the structure of each JSON-LD SANDS metadata file and a valid SANDS metadata collection of such files look like is described under Usage.