Skip to content

Commit

Permalink
Reconcile ontologies from Fedora3, hardcoded in baseline, and this On…
Browse files Browse the repository at this point in the history
…tology repository

Resolves: https://www.pivotaltracker.com/story/show/50895969
* Changing namespace URIs and size/digest predicates to match RdfLexicon, adding other properties from RdfLexicon and fcrepo3 rels-ext ontology
* Changing namespaces of RELS-EXT properties
* Changing namespace to http://fcrepo.org/ontology and adding owl:sameAs links to old RELS-EXT info:fedora URIs for backwards compat
* Separating repository, rest-api and relations into three separate ontologies
  • Loading branch information
escowles authored and Andrew Woods committed Aug 15, 2013
1 parent 9b07104 commit 9c5b40b
Show file tree
Hide file tree
Showing 4 changed files with 372 additions and 73 deletions.
2 changes: 2 additions & 0 deletions .gitignore
@@ -0,0 +1,2 @@
# ignore protege work files
catalog-v001.xml
151 changes: 151 additions & 0 deletions fedora-rels-ext.rdf
@@ -0,0 +1,151 @@
<?xml version="1.0"?>
<!DOCTYPE rdf:RDF [
<!ENTITY owl "http://www.w3.org/2002/07/owl#" >
<!ENTITY xsd "http://www.w3.org/2001/XMLSchema#" >
<!ENTITY rdfs "http://www.w3.org/2000/01/rdf-schema#" >
<!ENTITY rdf "http://www.w3.org/1999/02/22-rdf-syntax-ns#" >
]>
<rdf:RDF
xml:base="fedora"
xmlns:rdfs="http://www.w3.org/2000/01/rdf-schema#"
xmlns:owl="http://www.w3.org/2002/07/owl#"
xmlns:xsd="http://www.w3.org/2001/XMLSchema#"
xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#">
<owl:Ontology rdf:about="http://fcrepo.org/repository/relations#">
<rdfs:label xml:lang="en">Fedora Commons Relations Ontology</rdfs:label>
<rdfs:comment xml:lang="en">Describes relationships between Fedora Commons Repository objects.</rdfs:comment>
</owl:Ontology>

<owl:ObjectProperty rdf:about="http://fcrepo.org/repository/relations#fedoraRelationship">
<owl:sameAs rdf:resource="info:fedora/fedora-system:def/relations-external#fedoraRelationship"/>
<rdfs:comment xml:lang="en">The primitive property for all object-to-object relationships in the fedora ontology.</rdfs:comment>
<rdfs:domain rdf:resource="http://fcrepo.org/repository#Object"/>
<rdfs:range rdf:resource="http://fcrepo.org/repository#Object"/>
</owl:ObjectProperty>
<owl:ObjectProperty rdf:about="http://fcrepo.org/repository/relations#isPartOf">
<owl:sameAs rdf:resource="info:fedora/fedora-system:def/relations-external#isPartOf"/>
<rdfs:label xml:lang="en">is part of</rdfs:label>
<rdfs:comment xml:lang="en-US">A definition of the generic part/whole relationship between fedora objects. The subject is a fedora object representing a part and the predicate is a fedora object representing a whole.</rdfs:comment>
<rdfs:subPropertyOf rdf:resource="http://fcrepo.org/repository/relations#fedoraRelationship"/>
</owl:ObjectProperty>
<owl:ObjectProperty rdf:about="http://fcrepo.org/repository/relations#hasPart">
<owl:sameAs rdf:resource="info:fedora/fedora-system:def/relations-external#hasPart"/>
<rdfs:label xml:lang="en">has part</rdfs:label>
<rdfs:comment xml:lang="en-US">A definition of the generic part/whole relationship between fedora objects. The subject is a fedora object representing a whole and the predicate is a fedora object representing a part.</rdfs:comment>
<rdfs:subPropertyOf rdf:resource="http://fcrepo.org/repository/relations#fedoraRelationship"/>
</owl:ObjectProperty>
<owl:ObjectProperty rdf:about="http://fcrepo.org/repository/relations#isConstituentOf">
<owl:sameAs rdf:resource="info:fedora/fedora-system:def/relations-external#isConstituentOf"/>
<rdfs:label xml:lang="en">is constituent of</rdfs:label>
<rdfs:comment xml:lang="en-US">This is a refinement of the generic part/whole relationship in the "made of" sense with referential integrity implications. The subject is a fedora object representing a constituent part and the predicate is a fedora object representing a whole of which the subject is a constituent. The constituent part cannot stand alone in any meaningful way without reference to the whole. </rdfs:comment>
<rdfs:subPropertyOf rdf:resource="http://fcrepo.org/repository/relations#isPartOf"/>
</owl:ObjectProperty>
<owl:ObjectProperty rdf:about="http://fcrepo.org/repository/relations#hasConstituent">
<owl:sameAs rdf:resource="info:fedora/fedora-system:def/relations-external#hasConstituent"/>
<rdfs:label xml:lang="en">has constituent</rdfs:label>
<rdfs:comment xml:lang="en-US">This is a refinement of the generic part/whole relationship in the "made of" sense with referential integrity implications. The subject is a fedora object representing a whole that is made of constituent parts and the predicate is a fedora object representing one of the constituent parts. The whole loses its integrity if the constituent part is removed. </rdfs:comment>
<rdfs:subPropertyOf rdf:resource="http://fcrepo.org/repository/relations#hasPart"/>
</owl:ObjectProperty>
<owl:ObjectProperty rdf:about="http://fcrepo.org/repository/relations#isMemberOf">
<owl:sameAs rdf:resource="info:fedora/fedora-system:def/relations-external#isMemberOf"/>
<rdfs:label xml:lang="en">is member of</rdfs:label>
<rdfs:comment xml:lang="en-US">This is a refinement of the generic part/whole relationship that defines a set membership relationship between fedora objects. The subject is a fedora object representing a member of a set and the predicate is a fedora object representing a whole set of which the subject is a member. The member can be separated from the set and still stand alone as an object in its own right.</rdfs:comment>
<rdfs:subPropertyOf rdf:resource="http://fcrepo.org/repository/relations#isPartOf"/>
</owl:ObjectProperty>
<owl:ObjectProperty rdf:about="http://fcrepo.org/repository/relations#hasMember">
<owl:sameAs rdf:resource="info:fedora/fedora-system:def/relations-external#hasMember"/>
<rdfs:label xml:lang="en">has member</rdfs:label>
<rdfs:comment xml:lang="en-US">This is a refinement of the generic part/whole relationship that defines a set membership relationship between fedora objects. The subject is a fedora object representing a whole set and the predicate is a fedora object representing a member in the set. The set does not lose its integrity if a member is removed from the set. </rdfs:comment>
<rdfs:subPropertyOf rdf:resource="http://fcrepo.org/repository/relations#hasPart"/>
</owl:ObjectProperty>
<owl:ObjectProperty rdf:about="http://fcrepo.org/repository/relations#isSubsetOf">
<owl:sameAs rdf:resource="info:fedora/fedora-system:def/relations-external#isSubsetOf"/>
<rdfs:label xml:lang="en">is subset of</rdfs:label>
<rdfs:comment xml:lang="en-US">This is a refinement of the generic set membership relationship to indicate the notion of a subset. The subject is a fedora object that represents a subset and the predicate is a fedora object that represents the set of which the subject is a subset.</rdfs:comment>
<rdfs:subPropertyOf rdf:resource="http://fcrepo.org/repository/relations#isMemberOf"/>
</owl:ObjectProperty>
<owl:ObjectProperty rdf:about="http://fcrepo.org/repository/relations#hasSubset">
<owl:sameAs rdf:resource="info:fedora/fedora-system:def/relations-external#hasSubset"/>
<rdfs:label xml:lang="en">has subset</rdfs:label>
<rdfs:comment xml:lang="en-US">This is a refinement of the generic set membership to indicate the notion of a subset. The subject is a fedora object that represents a set of objects and the predicate is a fedora object that represents a subset of the subject set.</rdfs:comment>
<rdfs:subPropertyOf rdf:resource="http://fcrepo.org/repository/relations#hasMember"/>
</owl:ObjectProperty>
<owl:ObjectProperty rdf:about="http://fcrepo.org/repository/relations#isMemberOfCollection">
<owl:sameAs rdf:resource="info:fedora/fedora-system:def/relations-external#isMemberOfCollection"/>
<rdfs:label xml:lang="en">is member of collection</rdfs:label>
<rdfs:comment xml:lang="en-US">This is a refinement of the generic membership relationship to indicate the notion of a digital collection. The subject is a fedora object representing an item in a digital collection and the predicate is a fedora object representing a whole digital collection. </rdfs:comment>
<rdfs:subPropertyOf rdf:resource="http://fcrepo.org/repository/relations#isMemberOf"/>
</owl:ObjectProperty>
<owl:ObjectProperty rdf:about="http://fcrepo.org/repository/relations#hasCollectionMember">
<owl:sameAs rdf:resource="info:fedora/fedora-system:def/relations-external#hasCollectionMember"/>
<rdfs:label xml:lang="en">has collection member</rdfs:label>
<rdfs:comment xml:lang="en-US">This is a refinement of the generic membership to indicate the notion of a digital collection. The subject is a fedora object representing a whole digital collection and the predicate is a fedora object representing an item that is a member of the digital collection.</rdfs:comment>
<rdfs:subPropertyOf rdf:resource="http://fcrepo.org/repository/relations#hasMember"/>
</owl:ObjectProperty>
<owl:ObjectProperty rdf:about="http://fcrepo.org/repository/relations#isDerivationOf">
<owl:sameAs rdf:resource="info:fedora/fedora-system:def/relations-external#isDerivationOf"/>
<rdfs:label xml:lang="en">is derivation of</rdfs:label>
<rdfs:comment xml:lang="en-US">A definition of a generic derivation relationship between fedora objects. The subject is a fedora object that represents a derivation of the predicate which is another fedora object.</rdfs:comment>
<rdfs:subPropertyOf rdf:resource="http://fcrepo.org/repository/relations#fedoraRelationship"/>
</owl:ObjectProperty>
<owl:ObjectProperty rdf:about="http://fcrepo.org/repository/relations#hasDerivation">
<owl:sameAs rdf:resource="info:fedora/fedora-system:def/relations-external#hasDerivation"/>
<rdfs:label xml:lang="en">has derivation</rdfs:label>
<rdfs:comment xml:lang="en-US">A definition of a generic derivation relationship between fedora objects. The subject is a fedora object and the predicate is a fedora object that represents a derivation of the subject.</rdfs:comment>
<rdfs:subPropertyOf rdf:resource="http://fcrepo.org/repository/relations#fedoraRelationship"/>
</owl:ObjectProperty>
<owl:ObjectProperty rdf:about="http://fcrepo.org/repository/relations#isDependentOf">
<owl:sameAs rdf:resource="info:fedora/fedora-system:def/relations-external#isDependentOf"/>
<rdfs:label xml:lang="en">is dependent of</rdfs:label>
<rdfs:comment xml:lang="en-US">A definition of a generic dependency relationship between fedora objects. The subject is a fedora object that represents a dependent and the predicate is another fedora object that is depended upon by the subject.</rdfs:comment>
<rdfs:subPropertyOf rdf:resource="http://fcrepo.org/repository/relations#fedoraRelationship"/>
</owl:ObjectProperty>
<owl:ObjectProperty rdf:about="http://fcrepo.org/repository/relations#hasDependent">
<owl:sameAs rdf:resource="info:fedora/fedora-system:def/relations-external#hasDependent"/>
<rdfs:label xml:lang="en">has dependent</rdfs:label>
<rdfs:comment xml:lang="en-US">A definition of a generic dependency relationship between fedora objects. The subject is a fedora object that is depended upon and the predicate is a fedora object that represents a dependent of the subject.</rdfs:comment>
<rdfs:subPropertyOf rdf:resource="http://fcrepo.org/repository/relations#fedoraRelationship"/>
</owl:ObjectProperty>
<owl:ObjectProperty rdf:about="http://fcrepo.org/repository/relations#isDescriptionOf">
<owl:sameAs rdf:resource="info:fedora/fedora-system:def/relations-external#isDescriptionOf"/>
<rdfs:label xml:lang="en">is discription of</rdfs:label>
<rdfs:comment>A generic descriptive relationship between fedora objects. The subject is a fedora object that represents a descriptive entity and the predicate is a fedora object that is being described in some manner by the subject.</rdfs:comment>
<rdfs:subPropertyOf rdf:resource="http://fcrepo.org/repository/relations#fedoraRelationship"/>
</owl:ObjectProperty>
<owl:ObjectProperty rdf:about="http://fcrepo.org/repository/relations#hasDescription">
<owl:sameAs rdf:resource="info:fedora/fedora-system:def/relations-external#hasDescription"/>
<rdfs:label xml:lang="en">has description</rdfs:label>
<rdfs:comment>A generic descriptive relationship between fedora objects. The subject is a fedora object that is being described in some manner and the predicate is a fedora object that represents a descriptive entity that is about the subject. </rdfs:comment>
<rdfs:subPropertyOf rdf:resource="http://fcrepo.org/repository/relations#fedoraRelationship"/>
</owl:ObjectProperty>
<owl:ObjectProperty rdf:about="http://fcrepo.org/repository/relations#isMetadataFor">
<owl:sameAs rdf:resource="info:fedora/fedora-system:def/relations-external#isMetadataFor"/>
<rdfs:label xml:lang="en">is metadata for</rdfs:label>
<rdfs:comment>A refinement of the generic descriptive relationship indicating a metadata relationship between fedora objects. The subject is a fedora object that represents metadata and the predicate is a fedora object for which the subject serves as metadata.</rdfs:comment>
<rdfs:subPropertyOf rdf:resource="http://fcrepo.org/repository/relations#isDescriptionOf"/>
</owl:ObjectProperty>
<owl:ObjectProperty rdf:about="http://fcrepo.org/repository/relations#hasMetadata">
<owl:sameAs rdf:resource="info:fedora/fedora-system:def/relations-external#hasMetadata"/>
<rdfs:label xml:lang="en">has metadata</rdfs:label>
<rdfs:comment>A refinement of the generic descriptive relationship indicating a metadata relationship between fedora objects. The subject is a fedora object and the predicate is a fedora object that represents metadata about the subject. </rdfs:comment>
<rdfs:subPropertyOf rdf:resource="http://fcrepo.org/repository/relations#hasDescription"/>
</owl:ObjectProperty>
<owl:ObjectProperty rdf:about="http://fcrepo.org/repository/relations#isAnnotationOf">
<owl:sameAs rdf:resource="info:fedora/fedora-system:def/relations-external#isAnnotationOf"/>
<rdfs:label xml:lang="en">is annotation of</rdfs:label>
<rdfs:comment>A refinement of the generic descriptive relationship indicating a commentary relationship between fedora objects. The subject is a fedora object that represents an annotation or comment and the predicate is a fedora object that is being commented upon by the subject.</rdfs:comment>
<rdfs:subPropertyOf rdf:resource="http://fcrepo.org/repository/relations#isDescriptionOf"/>
</owl:ObjectProperty>
<owl:ObjectProperty rdf:about="http://fcrepo.org/repository/relations#hasAnnotation">
<owl:sameAs rdf:resource="info:fedora/fedora-system:def/relations-external#hasAnnotation"/>
<rdfs:label xml:lang="en">has annotation</rdfs:label>
<rdfs:comment>A refinement of the generic descriptive relationship indicating a commentary relationship between fedora objects. The subject is a fedora object that is being commented on and the predicate is a fedora object that represents an annotation or comment about the subject. </rdfs:comment>
<rdfs:subPropertyOf rdf:resource="http://fcrepo.org/repository/relations#hasDescription"/>
</owl:ObjectProperty>
<owl:ObjectProperty rdf:about="http://fcrepo.org/repository/relations#hasEquivalent">
<owl:sameAs rdf:resource="info:fedora/fedora-system:def/relations-external#hasEquivalent"/>
<rdfs:label xml:lang="en">has equivalent</rdfs:label>
<rdfs:comment xml:lang="en-US">A definition of a generic equivalence relationship between fedora objects. The subject is a fedora object that is equivalent to the predicate which is another fedora objects.</rdfs:comment>
<rdfs:subPropertyOf rdf:resource="http://fcrepo.org/repository/relations#fedoraRelationship"/>
</owl:ObjectProperty>
</rdf:RDF>
51 changes: 51 additions & 0 deletions fedora-rest-api.rdf
@@ -0,0 +1,51 @@
<?xml version="1.0"?>
<!DOCTYPE rdf:RDF [
<!ENTITY owl "http://www.w3.org/2002/07/owl#" >
<!ENTITY xsd "http://www.w3.org/2001/XMLSchema#" >
<!ENTITY rdfs "http://www.w3.org/2000/01/rdf-schema#" >
<!ENTITY rdf "http://www.w3.org/1999/02/22-rdf-syntax-ns#" >
]>
<rdf:RDF
xml:base="fedora"
xmlns:rdfs="http://www.w3.org/2000/01/rdf-schema#"
xmlns:owl="http://www.w3.org/2002/07/owl#"
xmlns:xsd="http://www.w3.org/2001/XMLSchema#"
xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#">
<owl:Ontology rdf:about="http://fcrepo.org/repository/rest-api">
<rdfs:label xml:lang="en">Fedora Commons REST API Ontology</rdfs:label>
<rdfs:comment xml:lang="en">Describes properties used within the Fedora Commons Repository REST API..</rdfs:comment>
</owl:Ontology>

<owl:ObjectProperty rdf:about="http://fcrepo.org/repository/rest-api#hasFixity">
<rdfs:label xml:lang="en">has fixity</rdfs:label>
</owl:ObjectProperty>
<owl:ObjectProperty rdf:about="http://fcrepo.org/repository/rest-api#hasNamespaces">
<rdfs:label xml:lang="en">has namespaces</rdfs:label>
</owl:ObjectProperty>
<owl:ObjectProperty rdf:about="http://fcrepo.org/repository/rest-api#hasWorkspaces">
<rdfs:label xml:lang="en">has workspaces</rdfs:label>
</owl:ObjectProperty>
<owl:ObjectProperty rdf:about="http://fcrepo.org/repository/rest-api#hasVersions">
<rdfs:label xml:lang="en">has versions</rdfs:label>
</owl:ObjectProperty>

<owl:DatatypeProperty rdf:about="http://fcrepo.org/repository/rest-api#digest">
<rdfs:label xml:lang="en">digest</rdfs:label>
</owl:DatatypeProperty>
<owl:DatatypeProperty rdf:about="http://fcrepo.org/repository/rest-api#exportsAs">
<rdfs:label xml:lang="en">exports as</rdfs:label>
<rdfs:range rdf:resource="&xsd;anyURI"/>
</owl:DatatypeProperty>
<owl:DatatypeProperty rdf:about="http://fcrepo.org/repository/rest-api#hasMoreResults">
<rdfs:label xml:lang="en">has more results</rdfs:label>
<rdfs:range rdf:resource="&xsd;boolean"/>
</owl:DatatypeProperty>
<owl:DatatypeProperty rdf:about="http://fcrepo.org/repository/rest-api#hasTransactionProvider">
<rdfs:label xml:lang="en">has transaction provider</rdfs:label>
</owl:DatatypeProperty>
<owl:DatatypeProperty rdf:about="http://fcrepo.org/repository/rest-api#size">
<rdfs:label xml:lang="en">size </rdfs:label>
<rdfs:range rdf:resource="&xsd;long"/>
</owl:DatatypeProperty>

</rdf:RDF>

0 comments on commit 9c5b40b

Please sign in to comment.