diff --git a/dcat/rdf/dcat-prov.ttl b/dcat/rdf/dcat-prov.ttl index 344a623dd..8bb00e774 100644 --- a/dcat/rdf/dcat-prov.ttl +++ b/dcat/rdf/dcat-prov.ttl @@ -14,8 +14,84 @@ @prefix skos: . @prefix xsd: . +dct:contributor + rdfs:subPropertyOf prov:wasAttributedTo ; + owl:propertyChainAxiom ( + [ + rdf:type owl:ObjectProperty ; + rdfs:range [ + rdf:type owl:Class ; + rdfs:subClassOf prov:Attribution ; + rdfs:subClassOf [ + rdf:type owl:Restriction ; + owl:hasValue ; + owl:onProperty dcat:hadRole ; + ] ; + ] ; + rdfs:subPropertyOf prov:qualifiedAttribution ; + ] + prov:agent + ) ; +. +dct:creator + owl:propertyChainAxiom ( + [ + rdf:type owl:ObjectProperty ; + rdfs:range [ + rdf:type owl:Class ; + rdfs:subClassOf prov:Attribution ; + rdfs:subClassOf [ + rdf:type owl:Restriction ; + owl:hasValue ; + owl:onProperty dcat:hadRole ; + ] ; + ] ; + rdfs:subPropertyOf prov:qualifiedAttribution ; + ] + prov:agent + ) ; +. +dct:hasFormat + rdfs:subPropertyOf prov:alternateOf ; +. +dct:isFormatOf + rdfs:subPropertyOf prov:alternateOf ; +. +dct:isVersionOf + rdfs:subPropertyOf prov:wasRevisionOf ; +. dct:publisher rdfs:subPropertyOf prov:wasAttributedTo ; + owl:propertyChainAxiom ( + [ + rdf:type owl:ObjectProperty ; + rdfs:range [ + rdf:type owl:Class ; + rdfs:subClassOf prov:Attribution ; + rdfs:subClassOf [ + rdf:type owl:Restriction ; + owl:hasValue ; + owl:onProperty dcat:hadRole ; + ] ; + ] ; + rdfs:subPropertyOf prov:qualifiedAttribution ; + ] + prov:agent + ) ; +. +dct:references + rdfs:subPropertyOf prov:wasDerivedFrom ; +. +dct:source + rdfs:subPropertyOf prov:wasDerivedFrom ; +. +dcat:Catalog + rdfs:subClassOf prov:Collection ; + rdfs:subClassOf [ + rdf:type owl:Restriction ; + owl:allValuesFrom dcat:Resource ; + owl:onProperty prov:hadMember ; + ] ; . dcat:CatalogRecord rdfs:subClassOf prov:Entity ; @@ -24,6 +100,15 @@ https://github.com/w3c/dxwg/issues/71 https://github.com/w3c/dxwg/issues/66 https://github.com/w3c/dxwg/issues/76""" ; . +dcat:Distribution + rdfs:subClassOf prov:Entity ; +. +dcat:QualifiedRelationship + rdf:type owl:Class ; + rdfs:comment "An instance of dcat:QualifiedRelationship provides additional descriptions about the binary dct:relation relation from some Entity to a related Entity."@en ; + rdfs:label "Qualified relation" ; + prov:unqualifiedForm dct:relation ; +. dcat:Resource rdfs:subClassOf prov:Entity ; skos:editorialNote """2018-02-28 AGB: Links to requirements mentioned above in the github tracker to follow the discussions @@ -31,6 +116,45 @@ https://github.com/w3c/dxwg/issues/71 https://github.com/w3c/dxwg/issues/66 https://github.com/w3c/dxwg/issues/76""" ; . +dcat:Role + rdf:type owl:Class ; + rdfs:label "Role" ; + rdfs:seeAlso prov:hadRole ; + prov:category "qualified" ; + prov:definition "A role is the function of an entity or agent with respect to an entity."@en ; +. +dcat:catalog + rdfs:subPropertyOf prov:hadMember ; +. +dcat:dataset + rdfs:subPropertyOf prov:hadMember ; +. +dcat:hadRole + rdf:type owl:ObjectProperty ; + rdfs:comment "The _optional_ Role that an Agent or other Entity assumed in the context of an Entity."@en ; + rdfs:domain [ + rdf:type owl:Class ; + owl:unionOf ( + prov:Attribution + dcat:QualifiedRelationship + ) ; + ] ; + rdfs:label "had role" ; + rdfs:range prov:Role ; + prov:category "qualified" ; +. +dcat:qualifiedRelation + rdf:type owl:ObjectProperty ; + rdfs:comment "If this Entity dct:relation Entity :e, then it can qualify how it was derived using dcat:qualifiedRelation [ a dcat:QualifiedRelationship ; prov:entity :e; :foo :bar ]."@en ; + rdfs:domain prov:Entity ; + rdfs:range dcat:QualifiedRelationship ; + rdfs:subPropertyOf prov:qualifiedInfluence ; + prov:category "qualified" ; + prov:unqualifiedForm dct:relation ; +. +dcat:service + rdfs:subPropertyOf prov:hadMember ; +. rdf:type owl:Ontology ; dct:created "2018-02-19"^^xsd:date ; @@ -50,6 +174,9 @@ prov:Agent rdfs:comment "prov:Agent is modeled as a subclass of foaf:Agent since it is the subset of agents that are involved in prov:Activity individuals" ; rdfs:subClassOf foaf:Agent ; . +prov:hadMember + rdfs:subPropertyOf dct:hasPart ; +. rdf:type foaf:Agent ; rdfs:label "W3C Data Exchange Working Group" ;