@twin.org/standards-w3c-dcat
Version:
Models which define the structure of W3C DCAT Standard
269 lines (268 loc) • 9.15 kB
JSON
{
"$schema": "https://json-schema.org/draft/2020-12/schema",
"$id": "https://schema.twindev.org/w3c-dcat/Distribution",
"description": "Interface for DCAT Distribution. A specific representation of a dataset. A dataset might be available in multiple serializations that may differ in various ways.",
"type": "object",
"properties": {
"@context": {
"description": "The DCAT JSON-LD context type. Supports the DCAT context URL or arrays with additional context definitions.",
"type": "object",
"additionalProperties": {
"anyOf": [
{
"$ref": "https://schema.twindev.org/json-ld/JsonLdExpandedTermDefinition"
},
{
"type": [
"null",
"string"
]
}
]
},
"properties": {
"@base": {
"type": [
"string",
"null"
]
},
"@direction": {
"type": [
"string",
"null"
],
"enum": [
"ltr",
"rtl",
null
]
},
"@import": {
"type": "string"
},
"@language": {
"type": "string"
},
"@propagate": {
"type": "boolean"
},
"@protected": {
"type": "boolean"
},
"@type": {
"type": "object",
"properties": {
"@container": {
"type": "string",
"const": "@set"
},
"@protected": {
"type": "boolean"
}
},
"required": [
"@container"
],
"additionalProperties": false
},
"@version": {
"type": "string",
"const": "1.1"
},
"@vocab": {
"type": [
"string",
"null"
]
},
"dcat": {
"type": "string",
"const": "http://www.w3.org/ns/dcat#"
},
"dcterms": {
"type": "string",
"const": "http://purl.org/dc/terms/"
}
},
"required": [
"dcat",
"dcterms"
]
},
"@id": {
"anyOf": [
{
"type": "string"
},
{
"type": "array",
"items": {
"type": "string"
}
}
]
},
"@included": {
"$ref": "https://schema.twindev.org/json-ld/JsonLdIncludedBlock"
},
"@graph": {
"anyOf": [
{
"$ref": "https://schema.twindev.org/json-ld/JsonLdNodeObject"
},
{
"type": "array",
"items": {
"$ref": "https://schema.twindev.org/json-ld/JsonLdNodeObject"
}
}
]
},
"@nest": {
"anyOf": [
{
"$ref": "https://schema.twindev.org/json-ld/JsonLdJsonObject"
},
{
"type": "array",
"items": {
"$ref": "https://schema.twindev.org/json-ld/JsonLdJsonObject"
}
}
]
},
"@type": {
"type": "string",
"const": "Distribution",
"description": "The type identifier, typically \"Distribution\"."
},
"@reverse": {
"type": "object",
"additionalProperties": {
"type": "string"
}
},
"@index": {
"type": "string"
},
"dcterms:title": {
"$ref": "https://schema.twindev.org/w3c-dcat/LiteralType",
"description": "A name given to the distribution."
},
"dcterms:description": {
"$ref": "https://schema.twindev.org/w3c-dcat/LiteralType",
"description": "A free-text account of the distribution."
},
"dcterms:issued": {
"$ref": "https://schema.twindev.org/w3c-dcat/DateTimeType",
"description": "Date of formal issuance of the distribution."
},
"dcterms:modified": {
"$ref": "https://schema.twindev.org/w3c-dcat/DateTimeType",
"description": "Most recent date on which the distribution was changed, updated or modified."
},
"dcterms:license": {
"type": "string",
"description": "A legal document under which the distribution is made available."
},
"dcterms:accessRights": {
"type": "string",
"description": "Information about who can access the distribution."
},
"dcterms:rights": {
"type": "string",
"description": "Information about rights held in and over the distribution."
},
"dcat:accessURL": {
"type": "string",
"description": "A URL of the resource that gives access to a distribution of the dataset."
},
"dcat:accessService": {
"type": "string",
"description": "A data service that gives access to the distribution."
},
"dcat:downloadURL": {
"type": "string",
"description": "The URL of the downloadable file in a given format."
},
"dcat:byteSize": {
"$ref": "https://schema.twindev.org/w3c-dcat/NonNegativeIntegerType",
"description": "The size of the distribution in bytes."
},
"dcat:spatialResolutionInMeters": {
"$ref": "https://schema.twindev.org/w3c-dcat/DecimalType",
"description": "The minimum spatial separation resolvable in a distribution, measured in meters."
},
"dcat:temporalResolution": {
"$ref": "https://schema.twindev.org/w3c-dcat/DurationType",
"description": "Minimum time period resolvable in the distribution."
},
"dcterms:conformsTo": {
"description": "Object or array data type",
"anyOf": [
{
"type": "string"
},
{
"type": "array",
"items": {
"type": "string"
}
}
]
},
"dcat:mediaType": {
"type": "string",
"description": "The media type of the distribution as defined by IANA."
},
"dcterms:format": {
"type": "string",
"description": "The file format of the distribution."
},
"dcat:compressFormat": {
"type": "string",
"description": "The compression format of the distribution."
},
"dcat:packageFormat": {
"type": "string",
"description": "The package format of the distribution."
},
"spdx:checksum": {
"type": "string",
"description": "The checksum property provides a mechanism to verify the data integrity."
},
"odrl:hasPolicy": {
"$ref": "https://schema.twindev.org/w3c-odrl/OdrlPolicy",
"description": "An ODRL conformant policy expressing the rights associated with the distribution."
}
},
"required": [
"@type"
],
"additionalProperties": {
"anyOf": [
{
"$ref": "https://schema.twindev.org/json-ld/JsonLdNodePrimitive"
},
{
"$ref": "https://schema.twindev.org/json-ld/JsonLdLanguageMap"
},
{
"$ref": "https://schema.twindev.org/json-ld/JsonLdIndexMap"
},
{
"$ref": "https://schema.twindev.org/json-ld/JsonLdIncludedBlock"
},
{
"$ref": "https://schema.twindev.org/json-ld/JsonLdIdMap"
},
{
"$ref": "https://schema.twindev.org/json-ld/JsonLdTypeMap"
},
{
"type": "array"
}
]
}
}