<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE rdf:RDF [
  <!ENTITY xsd "http://www.w3.org/2001/XMLSchema#">
  <!ENTITY dc "http://purl.org/dc/elements/1.1/">
  <!ENTITY xforms "http://www.w3.org/2002/xforms#">
  <!ENTITY owl "http://www.w3.org/2002/07/owl#">
  <!ENTITY rdfs "http://www.w3.org/2000/01/rdf-schema#">
  <!ENTITY rdf "http://www.w3.org/1999/02/22-rdf-syntax-ns#">
  <!ENTITY fschema "http://schemas.4suite.org/4ss#">
  <!ENTITY ftss "http://xmlns.4suite.org/reserved">
]>
<rdf:RDF 
  xml:base="&fschema;"
  xmlns:xs="http://www.w3.org/2001/XMLSchema" 
  xmlns:dc="http://purl.org/dc/elements/1.1/" 
  xmlns:owl="http://www.w3.org/2002/07/owl#" 
  xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" 
  xmlns:rdfs="http://www.w3.org/2000/01/rdf-schema#">
  <owl:Ontology rdf:about="ftss:///ccf/owl/Repository.owl">
    <rdfs:comment>Ontology model of 4Suite Repository</rdfs:comment>
    <rdfs:label>Repository Ontology</rdfs:label>
  </owl:Ontology>
  <owl:Class rdf:ID="Resource">
    <rdfs:label>4Suite Resource</rdfs:label>
    <rdfs:comment>A resource in the 4Suite repository</rdfs:comment>
  </owl:Class>
  <owl:Class rdf:ID="user">
    <rdfs:label>4Suite User</rdfs:label>
    <rdfs:comment>A 4Suite user in the repository</rdfs:comment>
    <rdfs:subClassOf rdf:resource="#xmldocument"/>
  </owl:Class>
  <owl:Class rdf:ID="group">
    <rdfs:label>4Suite Group</rdfs:label>
    <rdfs:comment>A 4Suite group in the repository</rdfs:comment>
    <rdfs:subClassOf rdf:resource="#xmldocument"/>
  </owl:Class>
  <owl:Class rdf:ID="rawfile">
    <rdfs:label>Raw File</rdfs:label>
    <rdfs:comment>A raw file in the repository</rdfs:comment>
    <rdfs:subClassOf rdf:resource="#Resource"/>
  </owl:Class>
  <owl:Class rdf:ID="xmldocument">
    <rdfs:label>XML Document</rdfs:label>
    <rdfs:comment>An XML Document in the repository</rdfs:comment>
    <rdfs:subClassOf rdf:resource="#Resource"/>
  </owl:Class>
  <owl:Class rdf:ID="alias">
    <rdfs:label>Alias</rdfs:label>
    <rdfs:comment>An alias to a resource</rdfs:comment>
    <rdfs:subClassOf rdf:resource="#Resource"/>
  </owl:Class>
  <owl:Class rdf:ID="server">
    <rdfs:label>4Suite Repository Server</rdfs:label>
    <rdfs:comment>A 4Suite Repository Server (FTP,HTTP,SOAP,or FTRCP)</rdfs:comment>
    <rdfs:subClassOf rdf:resource="#xmldocument"/>
  </owl:Class>
  <owl:Class rdf:ID="command">
    <rdfs:label>4Suite Repository Command</rdfs:label>
    <rdfs:comment>Represents a 4Suite Repository FTRPC command</rdfs:comment>
    <rdfs:subClassOf rdf:resource="#xmldocument"/>
  </owl:Class>
  <owl:Class rdf:ID="xsltdocument">
    <rdfs:label>XSLT Document</rdfs:label>
    <rdfs:comment>An XML Document in the repository</rdfs:comment>
    <rdfs:subClassOf rdf:resource="#xmldocument"/>
  </owl:Class>
  <owl:Class rdf:ID="container">
    <rdfs:label>Repository Container</rdfs:label>
    <rdfs:comment>A container (folder) in the repository</rdfs:comment>
    <rdfs:subClassOf rdf:resource="#xmldocument"/>
  </owl:Class>
  <owl:Class rdf:ID="repository">
    <rdfs:label>Repository</rdfs:label>
    <rdfs:comment>The actual repository (root container)</rdfs:comment>
    <rdfs:subClassOf rdf:resource="#container"/>
  </owl:Class>
  <owl:Class rdf:ID="documentdefinition">
    <rdfs:label>Document Definition</rdfs:label>
    <rdfs:comment>A 4Suite Document Definition</rdfs:comment>
    <rdfs:subClassOf rdf:resource="#xmldocument"/>
  </owl:Class>
  <owl:Class rdf:ID="xsltdocumentdefinition">
    <rdfs:label>XSLT Doc Def</rdfs:label>
    <rdfs:comment>A 4Suite XSLT Document Definition</rdfs:comment>
    <rdfs:subClassOf rdf:resource="#documentdefinition"/>
    <rdfs:subClassOf rdf:resource="#xsltdocument"/>
  </owl:Class>
  <owl:Class rdf:ID="xpathdocumentdefinition">
    <rdfs:label>XPath Doc Def</rdfs:label>
    <rdfs:comment>A 4Suite XPath Document Definition</rdfs:comment>
    <rdfs:subClassOf rdf:resource="#documentdefinition"/>
  </owl:Class>
  <owl:ObjectProperty rdf:ID="type">
    <rdfs:range rdf:resource="#Resource"/>
    <owl:equivalentProperty rdf:resource="&rdf;type"/>
  </owl:ObjectProperty>
  <owl:ObjectProperty rdf:about="#owner">
    <rdfs:domain rdf:resource="#Resource"/>
    <rdfs:range rdf:resource="&fschema;user"/>
  </owl:ObjectProperty>
  <owl:DatatypeProperty rdf:ID="creation_date">
    <rdfs:domain rdf:resource="#Resource"/>
    <rdfs:range rdf:resource="&xsd;dateTime"/>
  </owl:DatatypeProperty>
  <owl:DatatypeProperty rdf:ID="modified_date">
    <rdfs:domain rdf:resource="#Resource"/>
    <rdfs:range rdf:resource="&xsd;dateTime"/>
  </owl:DatatypeProperty>
  <owl:DatatypeProperty rdf:ID="rawfile.imt">
    <rdfs:domain rdf:resource="#Resource"/>
    <rdfs:range rdf:resource="&xsd;string"/>
  </owl:DatatypeProperty>
  <owl:DatatypeProperty rdf:ID="rawfile.size">
    <rdfs:domain rdf:resource="#Resource"/>
    <rdfs:range rdf:resource="&xsd;int"/>
  </owl:DatatypeProperty>
  <owl:DatatypeProperty rdf:ID="time_to_live">
    <rdfs:domain rdf:resource="#Resource"/>
    <rdfs:range rdf:resource="&xsd;int"/>
  </owl:DatatypeProperty>
  <owl:ObjectProperty rdf:ID="xmldocument.document_definition">
    <rdfs:domain rdf:resource="#xmldocument"/>
    <rdfs:range rdf:resource="#xmldocument"/>
  </owl:ObjectProperty>
  <owl:DatatypeProperty rdf:ID="server.name">
    <rdfs:domain rdf:resource="#server"/>
    <rdfs:range rdf:resource="&xsd;string"/>
  </owl:DatatypeProperty>
  <owl:DatatypeProperty rdf:ID="user.name">
    <rdfs:domain rdf:resource="#user"/>
    <rdfs:range rdf:resource="&xsd;string"/>
  </owl:DatatypeProperty>
  <owl:DatatypeProperty rdf:ID="documentdefinition.xslt_extension_module">
    <rdfs:domain rdf:resource="#documentdefinition"/>
    <rdfs:range rdf:resource="&xsd;string"/>
  </owl:DatatypeProperty>
  <owl:ObjectProperty rdf:ID="documentdefinition.base_docdef">
    <rdfs:domain rdf:resource="#documentdefinition"/>
    <rdfs:range rdf:resource="#documentdefinition"/>
  </owl:ObjectProperty>
  <owl:DatatypeProperty rdf:ID="server.handler">
    <rdfs:domain rdf:resource="#server"/>
    <rdfs:range rdf:resource="&xsd;string"/>
  </owl:DatatypeProperty>

  <owl:DatatypeProperty rdf:ID="command.name">
    <rdfs:domain rdf:resource="#command"/>
    <rdfs:range rdf:resource="&xsd;string"/>
  </owl:DatatypeProperty>

  <owl:DatatypeProperty rdf:ID="command.full_name">
    <rdfs:domain rdf:resource="#command"/>
    <rdfs:range rdf:resource="&xsd;string"/>
  </owl:DatatypeProperty>

  <owl:DatatypeProperty rdf:ID="server.running">
    <rdfs:domain rdf:resource="#server"/>
    <rdfs:range rdf:resource="&xsd;boolean"/>
  </owl:DatatypeProperty>
  <owl:ObjectProperty rdf:ID="alias.reference">
    <rdfs:domain rdf:resource="#alias"/>
    <rdfs:range rdf:resource="#Resource"/>
  </owl:ObjectProperty>

</rdf:RDF>

