@prefix bibo: <http://purl.org/ontology/bibo/> .
@prefix dcat: <http://www.w3.org/ns/dcat#> .
@prefix dcterms: <http://purl.org/dc/terms/> .
@prefix foaf: <http://xmlns.com/foaf/0.1/> .
@prefix mdr: <https://w3id.org/mdr#> .
@prefix org: <http://www.w3.org/ns/org#> .
@prefix owl: <http://www.w3.org/2002/07/owl#> .
@prefix prov: <http://www.w3.org/ns/prov#> .
@prefix rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#> .
@prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> .
@prefix vann: <http://purl.org/vocab/vann/> .
@prefix void: <http://rdfs.org/ns/void#> .
@prefix vs: <http://www.w3.org/2003/06/sw-vocab-status/ns#> .
@prefix xsd: <http://www.w3.org/2001/XMLSchema#> .

<https://w3id.org/mdr>
  a owl:Ontology ;
  rdfs:label "MDR"@en ;
  dcterms:title "The Metadata Registry ontology"@en ;
  dcterms:description "A metadata vocabulary that extends DCAT to support actionable metadata concerning the representation, accessibility, and nature of RDF datasets."@en ;
  bibo:status <http://purl.org/ontology/bibo/status/published> ;
  owl:versionInfo "3.0.0" ;
  owl:versionIRI <https://w3id.org/mdr/3.0.0> ;
  owl:priorVersion <http://semanticturkey.uniroma2.it/ns/mdr-2.0.1> ;
  dcterms:created "2020-01-23"^^xsd:date ;
  dcterms:issued "2025-12-07"^^xsd:date ;
  dcterms:modified "2025-12-07"^^xsd:date ;
  dcterms:creator 
    [
	  a foaf:Person ;
      foaf:name "Armando stellato" ;
      foaf:homepage <https://art.uniroma2.it/stellato> ;
	  org:memberOf [
	    a foaf:Organization ;
		foaf:name "Università degli Studi di Roma Tor Vergata"@it ;
		foaf:homepage <https://web.uniroma2.it/>
	  ]
	], [
	  a foaf:Person ;
      foaf:name "Manuel Fiorelli" ;
      foaf:homepage <https://art.uniroma2.it/fiorelli> ;
	  org:memberOf [
	    a foaf:Organization ;
		foaf:name "Università degli Studi di Roma Tor Vergata"@it ;
		foaf:homepage <https://web.uniroma2.it/>
	  ]
	] ;
  bibo:doi "10.5281/zenodo.6522179" ;
  dcterms:rights "Copyright © 2020 ART Group @ Tor Vergata University of Rome. All rights reserved." ;
  dcterms:license <https://creativecommons.org/licenses/by/4.0/> ;
  vann:preferredNamespacePrefix "mdr" ;
  vann:preferredNamespaceUri "https://w3id.org/mdr#" ;
  owl:imports
    <http://www.w3.org/ns/dcat>,
	<http://rdfs.org/ns/void>,
	<http://www.w3.org/ns/lemon/lime>,
	<http://www.w3.org/ns/prov> .

mdr:DatasetArchetype
  a owl:Class ;
  rdfs:label "Dataset archetype"@en ;
  rdfs:comment "An abstract dataset, irrespective of its multiple, possibly mutable expressions."@en ;
  rdfs:subClassOf dcat:Dataset ;
  rdfs:isDefinedBy <https://w3id.org/mdr> ;
  vs:term_status "stable" .

mdr:DatasetRealization
  a owl:Class ;
  rdfs:label "Dataset realization"@en ;
  rdfs:comment "A versioned dataset that grounds a dataset archetype in a concrete expression while remaining independent of details pertaining to its accessible distributions."@en ;
  rdfs:subClassOf dcat:Dataset ;
  rdfs:isDefinedBy <https://w3id.org/mdr> ;
  vs:term_status "stable" .
  
mdr:MutableDatasetRealization
  a owl:Class ;
  rdfs:label "Mutable dataset realization"@en ;
  rdfs:comment "A dataset realization that can evolve over time instead of being one of the many immutable snapshots, each tied to a specific version."@en ;
  rdfs:subClassOf mdr:DatasetRealization ;
  rdfs:isDefinedBy <https://w3id.org/mdr> ;
  vs:term_status "stable" .

mdr:Linkset
  a owl:Class ;
  rdfs:label "Linkset"@en ;
  rdfs:comment "A collection of correspondences (i.e., links) between two datasets."@en ;
  rdfs:subClassOf dcat:Dataset ;
  rdfs:isDefinedBy <https://w3id.org/mdr> ;
  vs:term_status "stable" .

mdr:LinksetArchetype
  a owl:Class ;
  rdfs:label "Linkset archetype"@en ;
  rdfs:comment "An abstract linkset."@en ;
  rdfs:subClassOf
	mdr:DatasetArchetype,
    mdr:Linkset ;
  rdfs:isDefinedBy <https://w3id.org/mdr> ;
  vs:term_status "stable" .
 
mdr:LinksetRealization
  a owl:Class ;
  rdfs:label "Linkset realization"@en ;
  rdfs:comment "A versioned linkset."@en ;
  rdfs:subClassOf
    mdr:DatasetRealization,
	mdr:Linkset ;
  rdfs:isDefinedBy <https://w3id.org/mdr> ;
  vs:term_status "stable" .

mdr:Changeset
  a owl:Class ;
  rdfs:label "Changeset"@en ;
  rdfs:comment "A collection of changes between two datasets."@en ;
  rdfs:subClassOf dcat:Dataset ;
  rdfs:isDefinedBy <https://w3id.org/mdr> ;
  vs:term_status "stable" .

mdr:ChangesetArchetype
  a owl:Class ;
  rdfs:label "Changeset archetype"@en ;
  rdfs:comment "An abstract changeset."@en ;
  rdfs:subClassOf
    mdr:DatasetArchetype,
    mdr:Changeset ;
  rdfs:isDefinedBy <https://w3id.org/mdr> ;
  vs:term_status "stable" .
 
mdr:ChangesetRealization
  a owl:Class ;
  rdfs:label "Changeset realization"@en ;
  rdfs:comment "A versioned changeset."@en ;
  rdfs:subClassOf
    mdr:DatasetRealization,
	mdr:Changeset,
    [ a owl:Restriction ;
      owl:onProperty mdr:prechangeDataset ;
      owl:allValuesFrom mdr:DatasetRealization
    ],
    [ a owl:Restriction ;
      owl:onProperty mdr:postchangeDataset ;
      owl:allValuesFrom mdr:DatasetRealization
    ] ;
  rdfs:isDefinedBy <https://w3id.org/mdr> ;
  vs:term_status "stable" .
  
mdr:RDFDataset
  a owl:Class ;
  rdfs:label "RDF dataset"@en ;
  rdfs:comment "A set of triples, which can be published through different services and in different (serialization) formats."@en ;
  rdfs:subClassOf dcat:Distribution, void:Dataset ;
  rdfs:isDefinedBy <https://w3id.org/mdr> ;
  vs:term_status "stable" .

mdr:RDFLinkset
  a owl:Class ;
  rdfs:label "An RDF linkset"@en ;
  rdfs:comment "A linkset embodied as a set of triples."@en ;
  rdfs:subClassOf mdr:RDFDataset ;
  rdfs:isDefinedBy <https://w3id.org/mdr> ;
  vs:term_status "stable" .
  
mdr:RDFChangeset
  a owl:Class ;
  rdfs:label "An RDF changeset"@en ;
  rdfs:comment "A changeset embodied as a set of triples."@en ;
  rdfs:subClassOf
    mdr:RDFDataset,
    [ a owl:Restriction ;
      owl:onProperty mdr:prechangeDataset ;
      owl:allValuesFrom mdr:RDFDataset
    ],
    [ a owl:Restriction ;
      owl:onProperty mdr:postchangeDataset ;
      owl:allValuesFrom mdr:RDFDataset
    ] ;
  rdfs:isDefinedBy <https://w3id.org/mdr> ;
  vs:term_status "stable" .

mdr:DistributionScheme
  a owl:Class ;
  rdfs:label "Distribution scheme"@en ;
  rdfs:comment "A documented methodology to produce an RDF dataset, differentiating it from other datasets gathered within the same dataset realization."@en ;
  rdfs:isDefinedBy <https://w3id.org/mdr> ;
  vs:term_status "stable" .
  
mdr:Deployment
  a owl:Class ;
  rdfs:label "Deployment"@en ;
  rdfs:comment "A binding between services and distributions."@en ;
  rdfs:isDefinedBy <https://w3id.org/mdr> ;
  vs:term_status "stable" .  
  
mdr:DereferenciationSystem
  a owl:Class ;
  rdfs:label "Dereferenciation system"@en ;
  rdfs:comment "A method to dereference the identifiers defined by a dataset."@en ;
  rdfs:isDefinedBy <https://w3id.org/mdr> ;
  vs:term_status "stable" .
  
mdr:SPARQLEndpoint
  a owl:Class ;
  rdfs:label "SPARQL endpoint"@en ;
  rdfs:comment "A data service that conforms to the SPARQL Protocol over HTTP"@en ;
  rdfs:subClassOf 
    dcat:DataService,
	[ a owl:Restriction ;
      owl:onProperty dcterms:conformsTo ;
      owl:hasValue <https://www.w3.org/TR/sparql11-protocol/> 
    ] ;
  rdfs:isDefinedBy <https://w3id.org/mdr> ;
  vs:term_status "stable" .

mdr:SPARQLEndpointLimitation
  a owl:Class ;
  rdfs:label "SPARQL endpoint limitation"@en ;
  rdfs:comment "A limitation of some SPARQL endpoint. This class is an extension point for recording and subsequently reacting in an application-specific manner to any perceived limitation of an endpoint. The focus is on limitations that cannot objectively be defined a-priori, as they rather depend on a number of boundary conditions, such as the task, the underlying access technology and even the specific queries run to perform the task. Such limitations can then be defined in application-specific ontologies reusing this vocabulary."@en ;
  rdfs:isDefinedBy <https://w3id.org/mdr> ;
  vs:term_status "stable" .

mdr:DownloadFromCatalog
  a owl:Class ;
  rdfs:label "Download from catalog"@en ;
  rdfs:comment "The ingestion of a dataset from a catalog."@en ;
  rdfs:subClassOf prov:Activity ;
  rdfs:isDefinedBy <https://w3id.org/mdr> ;
  vs:term_status "stable" .

mdr:deployment
  a owl:ObjectProperty ;
  rdfs:label "deployment"@en ;
  rdfs:comment "It relates a distribution to a deployment that describes its binding to a data service."@en ;
  rdfs:domain dcat:Distribution ;
  rdfs:range mdr:Deployment ;
  owl:inverseOf mdr:deployedDistribution ;
  rdfs:isDefinedBy <https://w3id.org/mdr> ;
  vs:term_status "stable" .

mdr:deployedDistribution
  a owl:ObjectProperty ;
  rdfs:label "deployed distribution"@en ;
  rdfs:comment "It relates a deployment to the distribution that it binds to a data service."@en ;
  rdfs:domain mdr:Deployment ;
  rdfs:range dcat:Distribution ;
  owl:inverseOf mdr:deployment ;
  rdfs:isDefinedBy <https://w3id.org/mdr> ;
  vs:term_status "stable" .

mdr:locator
  a rdf:Property ;
  rdfs:label "locator"@en ;
  rdfs:comment "It holds a service-dependent description of the location of a given deployment within a data service."@en ;
  rdfs:domain mdr:Deployment ;
  rdfs:isDefinedBy <https://w3id.org/mdr> ;
  vs:term_status "stable" .
  
mdr:uriSpace
  a owl:DatatypeProperty ;
  rdfs:label "URI space"@en ;
  rdfs:comment "It holds the common URI prefix shared by resources defined in a dataset's concrete expressions."@en ;
  rdfs:domain mdr:DatasetArchetype ;
  rdfs:range xsd:string ;
  rdfs:isDefinedBy <https://w3id.org/mdr> ;
  vs:term_status "stable" .
  
mdr:dereferenciationSystem
  a owl:ObjectProperty ;
  rdfs:label "dereferenciation system"@en ;
  rdfs:comment "It relates a dataset archetype to a resource describing a method to dereference the identifiers defined by that dataset. Currently only two instances: mdr:standardDereferenciation and mdr:noDereferenciation are available, however this will be extended soon to account for versioning and other URI-transformation needs."@en ;
  rdfs:domain mdr:DatasetArchetype ;
  rdfs:range mdr:DereferenciationSystem ;
  rdfs:isDefinedBy <https://w3id.org/mdr> ;
  vs:term_status "stable" .
  
mdr:master
  a owl:ObjectProperty ;
  rdfs:label "master"@en ;
  rdfs:comment "It relates a dataset archetype to a development copy, usually hosted in editing applications."@en ;
  rdfs:domain mdr:DatasetArchetype ;
  rdfs:range mdr:MutableDatasetRealization ;
  rdfs:isDefinedBy <https://w3id.org/mdr> ;
  vs:term_status "stable" . 
  
mdr:lod
  a owl:ObjectProperty ;
  rdfs:label "lod"@en ;
  rdfs:comment "It relates a dataset archetype to its realization published as Linked Open Data (i.e., using resolvable URIs)."@en ;
  rdfs:domain mdr:DatasetArchetype ;
  rdfs:range mdr:MutableDatasetRealization ;
  rdfs:isDefinedBy <https://w3id.org/mdr> ;
  vs:term_status "stable" .
    
mdr:sparqlEndpointLimitation
  a owl:ObjectProperty ;
  rdfs:label "SPARQL endpoint limitation"@en ;
  rdfs:comment "It relates a SPARQL endpoint to a resource describing some limitation of that endpoint."@en ;
  rdfs:domain mdr:SPARQLEndpoint ;
  rdfs:range mdr:SPARQLEndpointLimitation ;
  rdfs:isDefinedBy <https://w3id.org/mdr> ;
  vs:term_status "stable" .
  
mdr:sourceDataset
  a owl:ObjectProperty ;
  rdfs:label "source dataset"@en ;
  rdfs:comment "It holds the dataset containing the source resources of a linkset."@en ;
  rdfs:domain [ a owl:Class ;
    owl:unionOf (mdr:LinksetRealization mdr:RDFLinkset)
  ] ;
  rdfs:range dcat:Dataset ;
  rdfs:isDefinedBy <https://w3id.org/mdr> ;
  vs:term_status "stable" .
  
mdr:targetDataset
  a owl:ObjectProperty ;
  rdfs:label "target dataset"@en ;
  rdfs:comment "It holds the dataset containing the target resources of a linkset."@en ;
  rdfs:domain [ a owl:Class ;
    owl:unionOf (mdr:LinksetRealization mdr:RDFLinkset)
  ] ;
  rdfs:range dcat:Dataset ;
  rdfs:isDefinedBy <https://w3id.org/mdr> ;
  vs:term_status "stable" .
  
mdr:prechangeDataset
  a owl:ObjectProperty ;
  rdfs:label "prechange dataset"@en ;
  rdfs:comment "It holds the the dataset before the changes described by a changeset."@en ;
  rdfs:domain [ a owl:Class ;
    owl:unionOf (mdr:ChangesetRealization mdr:RDFChangeset)
  ] ;
  rdfs:range [ a owl:Class ;
    owl:unionOf (mdr:DatasetRealization mdr:RDFDataset)
  ] ;
  rdfs:isDefinedBy <https://w3id.org/mdr> ;
  vs:term_status "stable" .
  
mdr:postchangeDataset
  a owl:ObjectProperty ;
  rdfs:label "target dataset"@en ;
  rdfs:comment "It holds the dataset containing the target resources of a linkset."@en ;
  rdfs:domain [ a owl:Class ;
    owl:unionOf (mdr:ChangesetRealization mdr:RDFChangeset)
  ] ;
  rdfs:range [ a owl:Class ;
    owl:unionOf (mdr:DatasetRealization mdr:RDFDataset)
  ] ;
  rdfs:isDefinedBy <https://w3id.org/mdr> ;
  vs:term_status "stable" .
  
mdr:versionAtOrigin
  a owl:DatatypeProperty ;
  rdfs:label "version at origin"@en ;
  rdfs:comment "It holds the version of the dataset downloaded from a catalog."@en ;
  rdfs:domain mdr:DownloadFromCatalog ;
  rdfs:range rdfs:Literal ;
  rdfs:isDefinedBy <https://w3id.org/mdr> ;
  vs:term_status "stable" .
  
mdr:dataAtOrigin
  a owl:DatatypeProperty ;
  rdfs:label "data at origin"@en ;
  rdfs:comment "It holds the identifier of the specific distribution of a dataset version downloaded from a catalog."@en ;
  rdfs:domain mdr:DownloadFromCatalog ;
  rdfs:range rdfs:Literal ;
  rdfs:isDefinedBy <https://w3id.org/mdr> ;
  vs:term_status "stable" .
  
mdr:datatypeForDatadumpID
  a owl:AnnotationProperty ;
  rdfs:label "datatype for datadump ID"@en ;
  rdfs:comment "It specifies the data type used for the identifiers of data dumps downloaded from a catalog."@en ;
  rdfs:range rdfs:Datatype ;
  rdfs:isDefinedBy <https://w3id.org/mdr> ;
  vs:term_status "stable" .
  
mdr:datatypeForDatasetAbstractionID
  a owl:AnnotationProperty ;
  rdfs:label "datatype for dataset abstraction ID"@en ;
  rdfs:comment "It specifies the data type used for the identifiers of dataset abstractions in a catalog."@en ;
  rdfs:range rdfs:Datatype ;
  rdfs:isDefinedBy <https://w3id.org/mdr> ;
  vs:term_status "stable" .

mdr:standardDereferenciation
  a mdr:DereferenciationSystem ;
  rdfs:label "standard dereferenciation"@en ;
  rdfs:comment "It uses the protocol implied by the IRI scheme to dereference the resource identifier. For example, it uses HTTP to retrieve a representation of a resource identified by an HTTP(S) IRI."@en ;
  rdfs:isDefinedBy <https://w3id.org/mdr> ;
  vs:term_status "stable" .
  
mdr:noDereferenciation
  a mdr:DereferenciationSystem ;
  rdfs:label "standard dereferenciation"@en ;
  rdfs:comment "It indicates that identifiers in a URI space cannot be dereferenced."@en ;
  rdfs:isDefinedBy <https://w3id.org/mdr> ;
  vs:term_status "stable" .
