the new schema for the dumped result

This commit is contained in:
Miriam Baglioni 2020-08-06 11:05:56 +02:00
parent adf0ca5aa7
commit 6dbadcf181
1 changed files with 80 additions and 78 deletions

View File

@ -1,9 +1,5 @@
{ {
"$schema": "http://json-schema.org/draft-07/schema", "$schema": "http://json-schema.org/draft-07/schema#",
"$id": "https://www.openaire.eu/schema/json/1.0/openaire-schema.json",
"type": "object",
"title": "OpenAIRE Json dump schema v1.0",
"description": "This json schema describes the format of the dumps of research results provided by OpenAIRE",
"definitions": { "definitions": {
"AccessRight": { "AccessRight": {
"type": "object", "type": "object",
@ -27,11 +23,11 @@
"properties": { "properties": {
"scheme": { "scheme": {
"type": "string", "type": "string",
"description": "Description of scheme" "description": "The scheme for the resource"
}, },
"value": { "value": {
"type": "string", "type": "string",
"description": "Description of value" "description": "the value in the scheme"
} }
} }
}, },
@ -47,6 +43,19 @@
"description": "Description of value" "description": "Description of value"
} }
} }
},
"Provenance": {
"type": "object",
"properties": {
"provenance": {
"type": "string",
"description": "The provenance of the information"
},
"trust": {
"type": "string",
"description": "The trust associated to the information"
}
}
} }
}, },
"type": "object", "type": "object",
@ -74,22 +83,23 @@
"description": "First name of the author" "description": "First name of the author"
}, },
"pid": { "pid": {
"description": "Persistent identifier of the author (e.g. ORCID)",
"type": "array",
"items": {
"type": "object", "type": "object",
"properties": { "properties": {
"scheme": { "id": {
"type": "string", "allOf": [
"description": "PID scheme. For authors, OpenAIRE currently supports 'ORCID' " {"$ref": "#/definitions/ControlledField"},
{"description": "The author's id and scheme. OpenAIRE currently supports 'ORCID'"}
]
}, },
"value": { "provenance": {
"type": "string", "allOf": [
"description": "The PID of the author" {"$ref": "#/definitions/Provenance"},
} {"description": "The provenance of the author's pid"}
} ]
} }
}, },
"description": "Persistent identifier of the author (e.g. ORCID)"
},
"rank": { "rank": {
"type": "integer", "type": "integer",
"description": "Order in which the author appears in the authors list" "description": "Order in which the author appears in the authors list"
@ -104,12 +114,8 @@
}, },
"bestaccessright": { "bestaccessright": {
"allOf": [ "allOf": [
{ {"$ref": "#/definitions/AccessRight"},
"$ref": "#/definitions/AccessRight" {"description": "The openest access right associated to the manifestations of this research results"}
},
{
"description": "The openest access right associated to the manifestations of this research results"
}
] ]
}, },
"codeRepositoryUrl": { "codeRepositoryUrl": {
@ -121,12 +127,8 @@
"type": "array", "type": "array",
"items": { "items": {
"allOf": [ "allOf": [
{ {"$ref": "#/definitions/KeyValue"},
"$ref": "#/definitions/KeyValue" {"description": "Key is the OpenAIRE identifier of the data source, value is its name"}
},
{
"description": "Key is the OpenAIRE identifier of the data source, value is its name"
}
] ]
} }
}, },
@ -169,7 +171,7 @@
}, },
"issnLinking": { "issnLinking": {
"type": "string", "type": "string",
"description": "Journal linking issn" "description": "Description of issnLinking"
}, },
"issnOnline": { "issnOnline": {
"type": "string", "type": "string",
@ -209,10 +211,13 @@
"description": "Label of the RI/RC" "description": "Label of the RI/RC"
}, },
"provenance": { "provenance": {
"description": "Why this result is relevant for the RI/RC.", "description": "Why this result is associated to the RI/RC.",
"type": "array", "type": "array",
"items": { "items": {
"type": "string" "allOf": [
{"$ref": "#/definitions/Provenance"}
]
} }
} }
} }
@ -240,8 +245,10 @@
"description": "English label of the country" "description": "English label of the country"
}, },
"provenance": { "provenance": {
"type": "string", "allOf": [
"description": "Why this result is associated to the country." {"$ref": "#/definitions/Provenance"},
{"description": "Why this result is associated to the country."}
]
} }
} }
} }
@ -267,6 +274,7 @@
"type": "array", "type": "array",
"items": { "items": {
"type": "string" "type": "string"
} }
}, },
"embargoenddate": { "embargoenddate": {
@ -283,12 +291,10 @@
"type": "string" "type": "string"
}, },
"provenance": { "provenance": {
"type": "string", "allOf": [
"description": "Why this result is linked to the external resource" {"$ref": "#/definitions/Provenance"},
}, {"description": "Why this result is linked to the external resource"}
"trust": { ]
"type": "string",
"description": "Level of confidence that the link is correct"
}, },
"typology": { "typology": {
"type": "string" "type": "string"
@ -300,6 +306,7 @@
} }
}, },
"format": { "format": {
"type": "array", "type": "array",
"items": { "items": {
"type": "string" "type": "string"
@ -335,28 +342,20 @@
"properties": { "properties": {
"accessright": { "accessright": {
"allOf": [ "allOf": [
{ {"$ref": "#/definitions/AccessRight"},
"$ref": "#/definitions/AccessRight" {"description": "Access right of this instance"}
},
{
"description": "Access right of this instance"
}
] ]
}, },
"collectedfrom": { "collectedfrom": {
"description": "Information about the source from which the instance has been collected. Key is the OpenAIRE identifier of the data source, value is its name",
"allOf": [ "allOf": [
{ {"$ref": "#/definitions/KeyValue"},
"$ref": "#/definitions/KeyValue" {"description": "Information about the source from which the instance has been collected. Key is the OpenAIRE identifier of the data source, value is its name"}
}
] ]
}, },
"hostedby": { "hostedby": {
"description": "Information about the source from which the instance can be viewed or downloaded. Key is the OpenAIRE identifier of the data source, value is its name",
"allOf": [ "allOf": [
{ {"$ref": "#/definitions/KeyValue"},
"$ref": "#/definitions/KeyValue" {"description": "Information about the source from which the instance can be viewed or downloaded. Key is the OpenAIRE identifier of the data source, value is its name"}
}
] ]
}, },
"license": { "license": {
@ -417,17 +416,10 @@
"description": "Persistent identifiers of the result", "description": "Persistent identifiers of the result",
"type": "array", "type": "array",
"items": { "items": {
"type": "object", "allOf": [
"properties": { {"$ref": "#/definitions/ControlledField"},
"scheme": { {"description": "scheme: list of available schemes are at https://api.openaire.eu/vocabularies/dnet:pid_types, value: the PID of the result "}
"type": "string", ]
"description": "PID scheme. List of available schemes are at https://api.openaire.eu/vocabularies/dnet:pid_types "
},
"value": {
"type": "string",
"description": "The PID of the result"
}
}
} }
}, },
"programmingLanguage": { "programmingLanguage": {
@ -474,6 +466,12 @@
"type": "string", "type": "string",
"description": "OpenAIRE identifier of the project" "description": "OpenAIRE identifier of the project"
}, },
"provenance": {
"allOf": [
{"$ref": "#/definitions/Provenance"},
{"description": "Why this project is associated to the result"}
]
},
"title": { "title": {
"type": "string", "type": "string",
"description": "Title of the project" "description": "Title of the project"
@ -500,19 +498,23 @@
"type": "string" "type": "string"
} }
}, },
"subject": { "subjects": {
"description": "Keywords associated to the result", "description": "Keywords associated to the result",
"type": "array", "type": "array",
"items": { "items": {
"type": "object", "type": "object",
"properties": { "properties": {
"scheme": { "provenance": {
"type": "string", "allOf": [
"description": "Subject classification scheme. List of available schemes are at https://api.openaire.eu/vocabularies/dnet:subject_classification_typologies. When the scheme is 'keyword', it means that the subject is free-text (i.e. not a term from a controlled vocabulary). " {"$ref": "#/definitions/Provenance"},
{"description": "Why this subject is associated to the result"}
]
}, },
"value": { "subject": {
"type": "string", "allOf": [
"description": "The subject term" {"$ref": "#/definitions/ControlledField"},
{"description": "OpenAIRE subject classification scheme (https://api.openaire.eu/vocabularies/dnet:subject_classification_typologies) and value. When the scheme is 'keyword', it means that the subject is free-text (i.e. not a term from a controlled vocabulary). "}
]
} }
} }
} }