Table of Contents

A straw-man to start discussion.

Goals:

  • expression of existing properties and classes in an OWL-Lite ontology
 <?xml version="1.0" encoding="UTF-8"?>
<rdf:RDF base="info:fedora/fedora-system:def/model#"
 xmlns:fedora-model="info:fedora/fedora-system:def/model#"
 xmlns:fedora-ext="info:fedora/fedora-system:def/relations-external#"
 xmlns:fedora-view="info:fedora/fedora-system:def/view#"
 xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
 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#"
>
  <owl:Ontology rdf:about="info:fedora/fedora-system:def/model#">
    <rdfs:comment xml:lang="en-US">
      Derived from:
      fedora.common.rdf.FedoraModelNamespace
      http://fedora-commons.org/confluence/display/FCR30/Triples+in+the+Resource+Index
      info:fedora/fedora-system:def/foxml#
    </rdfs:comment>
  </owl:Ontology>


  <owl:Class rdf:about="info:fedora/fedora-system:def/model#FedoraThing">
    <rdfs:subClassOf rdf:resource="http://www.w3.org/2002/07/owl#Thing" />
  </owl:Class>

  <owl:Class rdf:about="info:fedora/fedora-system:def/model#FedoraObject">
    <rdfs:subClassOf rdf:resource="info:fedora/fedora-system:def/model#FedoraThing" />
    <rdfs:comment xml:lang="en-US">Defined in FedoraModelNamespace</rdfs:comment>
  </owl:Class>

  <owl:Class rdf:about="info:fedora/fedora-system:def/model#Datastream">
    <rdfs:subClassOf rdf:resource="info:fedora/fedora-system:def/model#FedoraThing" />
    <rdfs:comment xml:lang="en-US">Not defined in existing resources</rdfs:comment>
    <rdfs:subClassOf>
      <owl:Restriction>
        <owl:onProperty rdf:resource="info:fedora/fedora-system:def/relations-external#isConstituentOf" />
        <owl:cardinality rdf:datatype="http://www.w3.org/2001/XMLSchema#integer">1</owl:cardinality>
      </owl:Restriction>
    </rdfs:subClassOf>
    <rdfs:subClassOf>
      <owl:Restriction>
        <owl:onProperty rdf:resource="info:fedora/fedora-system:def/relations-external#isConstituentOf" />
        <owl:allValuesFrom rdf:resource="info:fedora/fedora-system:def/model#FedoraObject" />
      </owl:Restriction>
    </rdfs:subClassOf>
  </owl:Class>

  <owl:Class rdf:about="info:fedora/fedora-system:def/model#DatastreamVersion">
    <rdfs:subClassOf rdf:resource="info:fedora/fedora-system:def/model#FedoraThing" />
    <rdfs:comment xml:lang="en-US">Not defined in existing resources</rdfs:comment>
    <rdfs:subClassOf>
      <owl:Restriction>
        <owl:onProperty rdf:resource="info:fedora/fedora-system:def/relations-external#isDerivationOf" />
        <owl:cardinality rdf:datatype="http://www.w3.org/2001/XMLSchema#integer">1</owl:cardinality>
      </owl:Restriction>
    </rdfs:subClassOf>
    <rdfs:subClassOf>
      <owl:Restriction>
        <owl:onProperty rdf:resource="info:fedora/fedora-system:def/relations-external#isDerivationOf" />
        <owl:allValuesFrom rdf:resource="info:fedora/fedora-system:def/model#Datastream" />
      </owl:Restriction>
    </rdfs:subClassOf>
  </owl:Class>

  <owl:Class rdf:about="info:fedora/fedora-system:def/model#State">
    <rdfs:isDefinedBy rdf:resource="info:fedora/fedora-system:def/model#" />
  </owl:Class>
  <fedora-model:State rdf:about="info:fedora/fedora-system:def/model#Active" />
  <fedora-model:State rdf:about="info:fedora/fedora-system:def/model#Inactive" />
  <fedora-model:State rdf:about="info:fedora/fedora-system:def/model#Deleted" />

  <owl:Class rdf:about="info:fedora/fedora-system:def/model#DigestAlgorithm">
    <rdfs:isDefinedBy rdf:resource="info:fedora/fedora-system:def/model#" />
  </owl:Class>
  <fedora-model:DigestAlgorithm rdf:about="info:fedora/fedora-system:def/model#MD5" />
  <fedora-model:DigestAlgorithm rdf:about="info:fedora/fedora-system:def/model#SHA-1" />
  <fedora-model:DigestAlgorithm rdf:about="info:fedora/fedora-system:def/model#SHA-256" />
  <fedora-model:DigestAlgorithm rdf:about="info:fedora/fedora-system:def/model#SHA-384" />
  <fedora-model:DigestAlgorithm rdf:about="info:fedora/fedora-system:def/model#SHA-512" />
  <fedora-model:DigestAlgorithm rdf:about="info:fedora/fedora-system:def/model#HAVAL" />
  <fedora-model:DigestAlgorithm rdf:about="info:fedora/fedora-system:def/model#TIGER" />
  <fedora-model:DigestAlgorithm rdf:about="info:fedora/fedora-system:def/model#WHIRLPOOL" />
  <fedora-model:DigestAlgorithm rdf:about="info:fedora/fedora-system:def/model#DISABLED" />

  <owl:Class rdf:about="info:fedora/fedora-system:def/model#ExtProperty">
    <owl:intersectionOf rdf:parseType="Collection">
      <owl:Restriction>
        <owl:onProperty rdf:resource="info:fedora/fedora-system:def/model#extPropertyName" />
        <owl:cardinality rdf:datatype="http://www.w3.org/2001/XMLSchema#nonNegativeInteger">1</owl:cardinality>
      </owl:Restriction>
      <owl:Restriction>
        <owl:onProperty rdf:resource="info:fedora/fedora-system:def/model#extPropertyValue" />
        <owl:cardinality rdf:datatype="http://www.w3.org/2001/XMLSchema#nonNegativeInteger">1</owl:cardinality>
      </owl:Restriction>
    </owl:intersectionOf>
    <rdfs:isDefinedBy rdf:resource="info:fedora/fedora-system:def/model#" />
  </owl:Class>

  <owl:Class rdf:about="info:fedora/fedora-system:def/model#ContentDigest">
    <owl:intersectionOf rdf:parseType="Collection">
      <owl:Restriction>
        <owl:onProperty rdf:resource="info:fedora/fedora-system:def/model#digest" />
        <owl:cardinality rdf:datatype="http://www.w3.org/2001/XMLSchema#nonNegativeInteger">1</owl:cardinality>
      </owl:Restriction>
      <owl:Restriction>
        <owl:onProperty rdf:resource="info:fedora/fedora-system:def/model#digestType" />
        <owl:cardinality rdf:datatype="http://www.w3.org/2001/XMLSchema#nonNegativeInteger">1</owl:cardinality>
      </owl:Restriction>
    </owl:intersectionOf>
    <rdfs:isDefinedBy rdf:resource="info:fedora/fedora-system:def/model#" />
  </owl:Class>

  <owl:DatatypeProperty rdf:about="info:fedora/fedora-system:def/model#digest">
    <rdfs:label xml:lang="en-US">Digest</rdfs:label>
    <rdfs:comment xml:lang="en-US">A digest or checksum for verifying datastream integrity.</rdfs:comment>
    <rdfs:domain rdf:resource="info:fedora/fedora-system:def/model#ContentDigest" />
    <rdfs:range rdf:resource="http://www.w3.org/2001/XMLSchema#base64Binary" />
    <rdfs:isDefinedBy rdf:resource="info:fedora/fedora-system:def/model#" />
  </owl:DatatypeProperty>
  <owl:ObjectProperty rdf:about="info:fedora/fedora-system:def/model#digestType">
    <rdfs:label xml:lang="en-US">Digest Type</rdfs:label>
    <rdfs:comment xml:lang="en-US">Digest or checksum hash algorithm. Default is "DISABLED".
      "DISABLED" is ignored; other values are acted upon as supported by java.security.MessageDigest
      as defined in http://java.sun.com/j2se/1.5.0/docs/guide/security/CryptoSpec.html#AppA
    </rdfs:comment>
    <rdfs:domain rdf:resource="info:fedora/fedora-system:def/model#ContentDigest" />
    <rdfs:range rdf:resource="info:fedora/fedora-system:def/model#DigestAlgorithm" />
    <rdfs:isDefinedBy rdf:resource="info:fedora/fedora-system:def/model#" />
  </owl:ObjectProperty>

  <!-- Fedora Object Properties -->

  <owl:DatatypeProperty rdf:about="info:fedora/fedora-system:def/model#createdDate">
    <rdfs:label xml:lang="en-US">Created Date</rdfs:label>
    <rdfs:comment xml:lang="en-US">The date a fedora object was created in UTC.</rdfs:comment>
    <rdfs:isDefinedBy rdf:resource="info:fedora/fedora-system:def/model#" />
    <rdfs:domain rdf:resource="info:fedora/fedora-system:def/model#FedoraObject" />
    <rdfs:range rdf:resource="http://www.w3.org/2001/XMLSchema#dateTime" />
  </owl:DatatypeProperty>
  <owl:ObjectProperty rdf:about="info:fedora/fedora-system:def/model#state">
    <rdfs:label xml:lang="en-US">Object or Datastream State</rdfs:label>
    <rdfs:comment></rdfs:comment>
    <rdfs:domain rdf:resource="info:fedora/fedora-system:def/model#FedoraThing" />
    <rdfs:range rdf:resource="info:fedora/fedora-system:def/model#State" />
    <rdfs:isDefinedBy rdf:resource="info:fedora/fedora-system:def/model#" />
  </owl:ObjectProperty>
  <owl:DatatypeProperty rdf:about="info:fedora/fedora-system:def/model#ownerId">
    <rdfs:label xml:lang="en-US">Owner</rdfs:label>
    <rdfs:comment xml:lang="en-US"></rdfs:comment>
    <rdfs:isDefinedBy rdf:resource="info:fedora/fedora-system:def/model#" />
  </owl:DatatypeProperty>
  <owl:DatatypeProperty rdf:about="info:fedora/fedora-system:def/model#label">
    <rdfs:label xml:lang="en-US">Label</rdfs:label>
    <rdfs:comment xml:lang="en-US"></rdfs:comment>
    <rdfs:isDefinedBy rdf:resource="info:fedora/fedora-system:def/model#" />
  </owl:DatatypeProperty>
  <owl:ObjectProperty rdf:about="info:fedora/fedora-system:def/model#extProperty">
    <rdfs:label xml:lang="en-US">External Property</rdfs:label>
    <rdfs:comment xml:lang="en-US">
      In FOXML, extproperty elements indicate object properties with arbitrary names and values (both xsd:string).
      The Fedora system object properties are named with URIs in the fedora-model namespace, and so can be expressed
      here as simple Datatype properties.  extproperty data, however, must be reified to make sense as part of an OWL
      ontology.
    </rdfs:comment>
    <rdfs:range rdf:resource="info:fedora/fedora-system:def/model#ExtProperty" />
    <rdfs:isDefinedBy rdf:resource="info:fedora/fedora-system:def/model#" />
  </owl:ObjectProperty>

  <!-- Fedora Datastream Properties -->

  <owl:DatatypeProperty rdf:about="info:fedora/fedora-system:def/model#controlGroup">
    <rdfs:label xml:lang="en-US"></rdfs:label>
    <rdfs:comment xml:lang="en-US">
      Intended to be an enumeration of values from [E,M,R,X].
      Unlike the State values, the enumerated values here are never expressed as a URI.
    </rdfs:comment>
    <rdfs:domain rdf:resource="info:fedora/fedora-system:def/model#Datastream" />
    <rdfs:range rdf:resource="http://www.w3.org/2001/XMLSchema#string" />
    <rdfs:isDefinedBy rdf:resource="info:fedora/fedora-system:def/model#" />
  </owl:DatatypeProperty>

  <owl:DatatypeProperty rdf:about="info:fedora/fedora-system:def/model#versionable">
    <rdfs:label xml:lang="en-US">Versionable</rdfs:label>
    <rdfs:comment xml:lang="en-US">indicates whether a datastream should store a version history</rdfs:comment>
    <rdfs:domain rdf:resource="info:fedora/fedora-system:def/model#Datastream" />
    <rdfs:range rdf:resource="http://www.w3.org/2001/XMLSchema#boolean" />
    <rdfs:isDefinedBy rdf:resource="info:fedora/fedora-system:def/model#" />
  </owl:DatatypeProperty>

  <owl:DatatypeProperty rdf:about="info:fedora/fedora-system:def/model#downloadFilename">
    <rdfs:label xml:lang="en-US">Download Filename</rdfs:label>
    <rdfs:comment xml:lang="en-US">Used to set content disposition headers when Datastream content is downloaded</rdfs:comment>
    <rdfs:domain rdf:resource="info:fedora/fedora-system:def/model#Datastream" />
    <rdfs:range rdf:resource="http://www.w3.org/2001/XMLSchema#string" />
    <rdfs:isDefinedBy rdf:resource="info:fedora/fedora-system:def/model#" />
  </owl:DatatypeProperty>

  <!-- Fedora Datastream Version Properties -->

  <owl:DatatypeProperty rdf:about="info:fedora/fedora-system:def/model#altIds">
    <rdfs:label xml:lang="en-US">Datastream Version Alternate IDs</rdfs:label>
    <rdfs:comment xml:lang="en-US">How to model xsd:list of xsd:anyURI into OWL-LITE?</rdfs:comment>
    <rdfs:domain rdf:resource="info:fedora/fedora-system:def/model#DatastreamVersion" />
    <rdfs:range rdf:resource="http://www.w3.org/2001/XMLSchema#string" />
    <rdfs:isDefinedBy rdf:resource="info:fedora/fedora-system:def/model#" />
  </owl:DatatypeProperty>

  <owl:ObjectProperty rdf:about="info:fedora/fedora-system:def/model#contentDigest">
    <rdfs:label xml:lang="en-US">has Content Digest</rdfs:label>
    <rdfs:comment xml:lang="en-US">
      In FOXML, contentDigest elements indicate a digest algorithm and digest value for the content
      of a datastream version.   It must be reified to make sense as part of an OWL ontology.
    </rdfs:comment>
    <rdfs:domain rdf:resource="info:fedora/fedora-system:def/model#DatastreamVersion" />
    <rdfs:range rdf:resource="info:fedora/fedora-system:def/model#ContentDigest" />
    <rdfs:isDefinedBy rdf:resource="info:fedora/fedora-system:def/model#" />
  </owl:ObjectProperty>

  <owl:DatatypeProperty rdf:about="info:fedora/fedora-system:def/model#formatURI">
    <rdfs:label xml:lang="en-US">Datastream Format URI</rdfs:label>
    <rdfs:comment xml:lang="en-US"></rdfs:comment>
    <rdfs:domain rdf:resource="info:fedora/fedora-system:def/model#DatastreamVersion" />
    <rdfs:range rdf:resource="http://www.w3.org/2001/XMLSchema#anyURI" />
    <rdfs:isDefinedBy rdf:resource="info:fedora/fedora-system:def/model#" />
  </owl:DatatypeProperty>
  <owl:DatatypeProperty rdf:about="info:fedora/fedora-system:def/model#length">
    <rdfs:label xml:lang="en-US">Length</rdfs:label>
    <rdfs:comment xml:lang="en-US">Number of octets in a datastream version</rdfs:comment>
    <rdfs:comment xml:lang="en-US">Defined in FedoraModelNamespace</rdfs:comment>
    <rdfs:domain rdf:resource="info:fedora/fedora-system:def/model#DatastreamVersion" />
    <rdfs:range rdf:resource="http://www.w3.org/2001/XMLSchema#nonNegativeInteger" />
    <rdfs:isDefinedBy rdf:resource="info:fedora/fedora-system:def/model#" />
  </owl:DatatypeProperty>

<!-- CMA Relationships -->
  <owl:ObjectProperty rdf:about="info:fedora/fedora-system:def/relations-external#fedoraRelationship">
    <rdfs:comment>The primitive property for all object-to-object relationships in the fedora ontology</rdfs:comment>
    <rdfs:isDefinedBy rdf:resource="info:fedora/fedora-system:def/relations-external#" />
  </owl:ObjectProperty>
  <owl:ObjectProperty rdf:about="info:fedora/fedora-system:def/relations-external#isConstituentOf">
    <rdfs:label xml:lang="en-US">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="info:fedora/fedora-system:def/relations-external#fedoraRelationship"/>
    <rdfs:isDefinedBy rdf:resource="info:fedora/fedora-system:def/relations-external#" />
  </owl:ObjectProperty>
  <owl:ObjectProperty rdf:about="info:fedora/fedora-system:def/relations-external#isDerivationOf">
    <rdfs:label xml:lang="en-US">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="info:fedora/fedora-system:def/relations-external#fedoraRelationship"/>
    <rdfs:isDefinedBy rdf:resource="info:fedora/fedora-system:def/relations-external#" />
  </owl:ObjectProperty>
  <owl:ObjectProperty rdf:about="info:fedora/fedora-system:def/model#hasModel">
    <rdfs:label xml:lang="en-US">Has Model</rdfs:label>
    <rdfs:comment xml:lang="en-US">Domain: Object; Range: CModel</rdfs:comment>
    <rdfs:subPropertyOf rdf:resource="info:fedora/fedora-system:def/relations-external#fedoraRelationship"/>
    <rdfs:isDefinedBy rdf:resource="info:fedora/fedora-system:def/model#" />
  </owl:ObjectProperty>
  <owl:ObjectProperty rdf:about="info:fedora/fedora-system:def/model#hasService">
    <rdfs:label xml:lang="en-US">Has Service</rdfs:label>
    <rdfs:comment xml:lang="en-US">Domain: CModel; Range: SDef</rdfs:comment>
    <rdfs:subPropertyOf rdf:resource="info:fedora/fedora-system:def/relations-external#fedoraRelationship"/>
    <rdfs:isDefinedBy rdf:resource="info:fedora/fedora-system:def/model#" />
  </owl:ObjectProperty>
  <owl:ObjectProperty rdf:about="info:fedora/fedora-system:def/model#isDeploymentOf">
    <rdfs:label xml:lang="en-US">Is Deployment Of</rdfs:label>
    <rdfs:comment xml:lang="en-US">Domain: SDep; Range: SDef</rdfs:comment>
    <rdfs:subPropertyOf rdf:resource="info:fedora/fedora-system:def/relations-external#fedoraRelationship"/>
    <rdfs:isDefinedBy rdf:resource="info:fedora/fedora-system:def/model#" />
  </owl:ObjectProperty>
  <owl:ObjectProperty rdf:about="info:fedora/fedora-system:def/model#isContractorOf">
    <rdfs:label xml:lang="en-US">Is Contractor Of</rdfs:label>
    <rdfs:comment xml:lang="en-US">Domain: SDep; Range: CModel</rdfs:comment>
    <rdfs:subPropertyOf rdf:resource="info:fedora/fedora-system:def/relations-external#fedoraRelationship"/>
    <rdfs:isDefinedBy rdf:resource="info:fedora/fedora-system:def/model#" />
  </owl:ObjectProperty>
  <owl:DatatypeProperty rdf:about="info:fedora/fedora-system:def/model#definesMethod">
    <rdfs:label xml:lang="en-US">Defines Method</rdfs:label>
    <rdfs:comment xml:lang="en-US">Domain: SDef; Range: Abstract method name</rdfs:comment>
    <rdfs:isDefinedBy rdf:resource="info:fedora/fedora-system:def/model#" />
  </owl:DatatypeProperty>

  <owl:DatatypeProperty rdf:about="info:fedora/fedora-system:def/model#extPropertyName">
    <rdfs:domain rdf:resource="info:fedora/fedora-system:def/model#ExtProperty" />
    <rdfs:range rdf:resource="http://www.w3.org/2001/XMLSchema#string" />
    <rdfs:isDefinedBy rdf:resource="info:fedora/fedora-system:def/model#" />
  </owl:DatatypeProperty>
  <owl:DatatypeProperty rdf:about="info:fedora/fedora-system:def/model#extPropertyValue">
    <rdfs:domain rdf:resource="info:fedora/fedora-system:def/model#ExtProperty" />
    <rdfs:range rdf:resource="http://www.w3.org/2001/XMLSchema#string" />
    <rdfs:isDefinedBy rdf:resource="info:fedora/fedora-system:def/model#" />
  </owl:DatatypeProperty>

</rdf:RDF>

#trackbackRdf ($trackbackUtils.getContentIdentifier($page) $page.title $trackbackUtils.getPingUrl($page))
  • No labels