<?xml version="1.0" encoding="UTF-8" ?>
<rdf:RDF
    xmlns:rss="http://purl.org/rss/1.0/"
    xmlns:dcterms="http://purl.org/dc/terms/"
    xmlns:jms="http://jena.hpl.hp.com/2003/08/jms#"
    xmlns:rddl="http://www.rddl.org/"
    xmlns:protege="http://protege.stanford.edu/plugins/owl/protege#"
    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:vcard="http://www.w3.org/2001/vcard-rdf/3.0#"
    xmlns="file:///Applications/Protege_2.1_beta/examples/atom/atom.owl#"
    xmlns:daml="http://www.daml.org/2001/03/daml+oil#"
    xmlns:dc="http://purl.org/dc/elements/1.1/"
  xml:base="file:///Applications/Protege_2.1_beta/examples/atom/atom.owl">
  <owl:Ontology rdf:about="">
    <owl:imports rdf:resource="http://purl.org/dc/elements/1.1/"/>
    <owl:imports rdf:resource="http://protege.stanford.edu/plugins/owl/protege"/>
    <owl:imports rdf:resource="http://purl.org/rss/1.0/"/>
    <rdfs:comment>Atom allows lists of information, known as syndication feeds, to be synchronised between publishers and consumers. Atom feeds are composed of a number of entries, each with an extensible set of associated metadata.</rdfs:comment>
  </owl:Ontology>
  <owl:Class rdf:ID="Feed">
    <rdfs:subClassOf>
      <owl:Restriction>
        <owl:onProperty>
          <owl:FunctionalProperty rdf:about="#hasTitle"/>
        </owl:onProperty>
        <owl:cardinality rdf:datatype="http://www.w3.org/2001/XMLSchema#int"
        >1</owl:cardinality>
      </owl:Restriction>
    </rdfs:subClassOf>
    <rdfs:subClassOf>
      <owl:Restriction>
        <owl:maxCardinality rdf:datatype="http://www.w3.org/2001/XMLSchema#int"
        >1</owl:maxCardinality>
        <owl:onProperty>
          <owl:DatatypeProperty rdf:about="#tagline"/>
        </owl:onProperty>
      </owl:Restriction>
    </rdfs:subClassOf>
    <rdfs:comment rdf:datatype="http://www.w3.org/2001/XMLSchema#string"
    >A feed 
The Atom entry id is the object's resource URI (So there is no id property) </rdfs:comment>
    <rdfs:subClassOf>
      <owl:Class rdf:about="#AtomConstruct"/>
    </rdfs:subClassOf>
    <rdfs:subClassOf>
      <owl:Restriction>
        <owl:onProperty>
          <owl:TransitiveProperty rdf:about="#author"/>
        </owl:onProperty>
        <owl:maxCardinality rdf:datatype="http://www.w3.org/2001/XMLSchema#int"
        >1</owl:maxCardinality>
      </owl:Restriction>
    </rdfs:subClassOf>
    <rdfs:subClassOf>
      <owl:Restriction>
        <owl:onProperty>
          <owl:FunctionalProperty rdf:about="#version"/>
        </owl:onProperty>
        <owl:cardinality rdf:datatype="http://www.w3.org/2001/XMLSchema#int"
        >1</owl:cardinality>
      </owl:Restriction>
    </rdfs:subClassOf>
    <rdfs:subClassOf>
      <owl:Restriction>
        <owl:minCardinality rdf:datatype="http://www.w3.org/2001/XMLSchema#int"
        >0</owl:minCardinality>
        <owl:onProperty>
          <owl:ObjectProperty rdf:about="#hasEntry"/>
        </owl:onProperty>
      </owl:Restriction>
    </rdfs:subClassOf>
    <rdfs:subClassOf>
      <owl:Restriction>
        <owl:onProperty>
          <owl:FunctionalProperty rdf:about="#copyright"/>
        </owl:onProperty>
        <owl:maxCardinality rdf:datatype="http://www.w3.org/2001/XMLSchema#int"
        >1</owl:maxCardinality>
      </owl:Restriction>
    </rdfs:subClassOf>
  </owl:Class>
  <owl:Class rdf:ID="Link">
    <rdfs:subClassOf>
      <owl:Class rdf:about="#AtomConstruct"/>
    </rdfs:subClassOf>
  </owl:Class>
  <owl:Class rdf:ID="Content">
    <rdfs:label xml:lang="en">content</rdfs:label>
    <rdfs:comment>Content</rdfs:comment>
    <rdfs:subClassOf>
      <owl:Class rdf:about="#AtomConstruct"/>
    </rdfs:subClassOf>
  </owl:Class>
  <owl:Class rdf:ID="Entry">
    <rdfs:subClassOf>
      <owl:Restriction>
        <owl:maxCardinality rdf:datatype="http://www.w3.org/2001/XMLSchema#int"
        >1</owl:maxCardinality>
        <owl:onProperty>
          <owl:DatatypeProperty rdf:about="#created"/>
        </owl:onProperty>
      </owl:Restriction>
    </rdfs:subClassOf>
    <rdfs:subClassOf>
      <owl:Class rdf:about="#AtomConstruct"/>
    </rdfs:subClassOf>
    <rdfs:comment rdf:datatype="http://www.w3.org/2001/XMLSchema#string"
    >represents an individual entry  that is contained by the feed.
The Atom entry id is the object's resource URI (So there is no id property) </rdfs:comment>
    <rdfs:subClassOf>
      <owl:Restriction>
        <owl:onProperty>
          <owl:ObjectProperty rdf:about="#hasLink"/>
        </owl:onProperty>
        <owl:minCardinality rdf:datatype="http://www.w3.org/2001/XMLSchema#int"
        >1</owl:minCardinality>
      </owl:Restriction>
    </rdfs:subClassOf>
    <rdfs:subClassOf>
      <owl:Restriction>
        <owl:onProperty>
          <owl:DatatypeProperty rdf:about="#summary"/>
        </owl:onProperty>
        <owl:maxCardinality rdf:datatype="http://www.w3.org/2001/XMLSchema#int"
        >1</owl:maxCardinality>
      </owl:Restriction>
    </rdfs:subClassOf>
    <rdfs:subClassOf>
      <owl:Restriction>
        <owl:onProperty>
          <owl:FunctionalProperty rdf:about="#hasTitle"/>
        </owl:onProperty>
        <owl:cardinality rdf:datatype="http://www.w3.org/2001/XMLSchema#int"
        >1</owl:cardinality>
      </owl:Restriction>
    </rdfs:subClassOf>
    <rdfs:subClassOf>
      <owl:Restriction>
        <owl:cardinality rdf:datatype="http://www.w3.org/2001/XMLSchema#int"
        >1</owl:cardinality>
        <owl:onProperty>
          <owl:TransitiveProperty rdf:about="#author"/>
        </owl:onProperty>
      </owl:Restriction>
    </rdfs:subClassOf>
    <rdfs:subClassOf>
      <owl:Restriction>
        <owl:onProperty>
          <owl:DatatypeProperty rdf:about="#modified"/>
        </owl:onProperty>
        <owl:maxCardinality rdf:datatype="http://www.w3.org/2001/XMLSchema#int"
        >1</owl:maxCardinality>
      </owl:Restriction>
    </rdfs:subClassOf>
    <rdfs:subClassOf>
      <owl:Restriction>
        <owl:cardinality rdf:datatype="http://www.w3.org/2001/XMLSchema#int"
        >1</owl:cardinality>
        <owl:onProperty>
          <owl:DatatypeProperty rdf:about="#issued"/>
        </owl:onProperty>
      </owl:Restriction>
    </rdfs:subClassOf>
    <rdfs:subClassOf>
      <owl:Restriction>
        <owl:onProperty>
          <owl:ObjectProperty rdf:about="#hasContent"/>
        </owl:onProperty>
        <owl:minCardinality rdf:datatype="http://www.w3.org/2001/XMLSchema#int"
        >1</owl:minCardinality>
      </owl:Restriction>
    </rdfs:subClassOf>
  </owl:Class>
  <owl:Class rdf:ID="AtomConstruct">
    <rdfs:comment>common Atom structure</rdfs:comment>
  </owl:Class>
  <owl:Class rdf:ID="Person">
    <rdfs:subClassOf rdf:resource="#AtomConstruct"/>
  </owl:Class>
  <owl:ObjectProperty rdf:ID="hasLink">
    <rdfs:domain>
      <owl:Class>
        <owl:unionOf rdf:parseType="Collection">
          <owl:Class rdf:about="#Entry"/>
          <owl:Class rdf:about="#Feed"/>
        </owl:unionOf>
      </owl:Class>
    </rdfs:domain>
    <rdfs:range rdf:resource="#Link"/>
  </owl:ObjectProperty>
  <owl:ObjectProperty rdf:ID="hasEntry">
    <rdfs:comment>an individual entry that is contained by the feed</rdfs:comment>
    <rdfs:domain rdf:resource="#Feed"/>
    <rdfs:range rdf:resource="#Entry"/>
    <rdfs:label xml:lang="en">hasEntry</rdfs:label>
  </owl:ObjectProperty>
  <owl:ObjectProperty rdf:ID="hasChild"/>
  <owl:ObjectProperty rdf:ID="hasContent">
    <rdfs:range rdf:resource="#Content"/>
    <rdfs:domain rdf:resource="#Entry"/>
    <rdfs:label xml:lang="en">hasContent</rdfs:label>
  </owl:ObjectProperty>
  <owl:ObjectProperty rdf:ID="contributor">
    <rdfs:comment>indicates a person or other entity who contributes to the feed</rdfs:comment>
    <rdfs:domain>
      <owl:Class>
        <owl:unionOf rdf:parseType="Collection">
          <owl:Class rdf:about="#Entry"/>
          <owl:Class rdf:about="#Feed"/>
        </owl:unionOf>
      </owl:Class>
    </rdfs:domain>
    <rdf:type rdf:resource="http://www.w3.org/2002/07/owl#TransitiveProperty"/>
    <rdfs:range rdf:resource="#Person"/>
  </owl:ObjectProperty>
  <owl:DatatypeProperty rdf:ID="url">
    <rdfs:range rdf:resource="http://www.w3.org/2001/XMLSchema#string"/>
    <rdfs:domain rdf:resource="#Person"/>
    <rdfs:comment>a URI associated with the person</rdfs:comment>
    <rdf:type rdf:resource="http://www.w3.org/2002/07/owl#FunctionalProperty"/>
  </owl:DatatypeProperty>
  <owl:DatatypeProperty rdf:ID="href">
    <rdfs:domain rdf:resource="#Link"/>
    <rdfs:range rdf:resource="http://www.w3.org/2001/XMLSchema#anyURI"/>
    <rdfs:label xml:lang="en">href</rdfs:label>
    <rdf:type rdf:resource="http://www.w3.org/2002/07/owl#FunctionalProperty"/>
  </owl:DatatypeProperty>
  <owl:DatatypeProperty rdf:ID="value">
    <rdfs:comment>a W3C Date-Time</rdfs:comment>
    <rdfs:range rdf:resource="http://www.w3.org/2001/XMLSchema#dateTime"/>
    <rdf:type rdf:resource="http://www.w3.org/2002/07/owl#FunctionalProperty"/>
  </owl:DatatypeProperty>
  <owl:DatatypeProperty rdf:ID="issued">
    <rdfs:comment rdf:datatype="http://www.w3.org/2001/XMLSchema#string"
    >Issue Date</rdfs:comment>
    <rdfs:domain rdf:resource="#Entry"/>
    <rdfs:range rdf:resource="http://www.w3.org/2001/XMLSchema#dateTime"/>
    <rdf:type rdf:resource="http://www.w3.org/2002/07/owl#FunctionalProperty"/>
  </owl:DatatypeProperty>
  <owl:DatatypeProperty rdf:ID="lang">
    <rdfs:range rdf:resource="http://www.w3.org/2001/XMLSchema#string"/>
    <rdfs:domain rdf:resource="#Feed"/>
    <rdfs:comment rdf:datatype="http://www.w3.org/2001/XMLSchema#string"
    >the default language of the feed</rdfs:comment>
  </owl:DatatypeProperty>
  <owl:DatatypeProperty rdf:ID="data">
    <rdfs:range rdf:resource="http://www.w3.org/2001/XMLSchema#string"/>
    <rdfs:domain rdf:resource="#Content"/>
  </owl:DatatypeProperty>
  <owl:DatatypeProperty rdf:ID="generator">
    <rdfs:comment rdf:datatype="http://www.w3.org/2001/XMLSchema#string"
    > indentifies the  software agent used to generate the feed, for debugging and  other purposes.</rdfs:comment>
    <rdfs:domain rdf:resource="#Feed"/>
    <rdfs:label xml:lang="en">generator</rdfs:label>
    <rdfs:range rdf:resource="http://www.w3.org/2001/XMLSchema#string"/>
  </owl:DatatypeProperty>
  <owl:DatatypeProperty rdf:ID="type">
    <rdfs:comment rdf:datatype="http://www.w3.org/2001/XMLSchema#string"
    >indicates the media type of the content. The atom spec says that most of these will be
"application/x.atom+xml"</rdfs:comment>
    <rdfs:domain>
      <owl:Class>
        <owl:unionOf rdf:parseType="Collection">
          <owl:Class rdf:about="#Content"/>
          <owl:Class rdf:about="#Link"/>
        </owl:unionOf>
      </owl:Class>
    </rdfs:domain>
    <rdfs:range>
      <owl:DataRange>
        <owl:oneOf rdf:parseType="Resource">
          <rdf:first rdf:datatype="http://www.w3.org/2001/XMLSchema#string"
          >alternate</rdf:first>
          <rdf:rest rdf:parseType="Resource">
            <rdf:rest rdf:parseType="Resource">
              <rdf:rest rdf:parseType="Resource">
                <rdf:first rdf:datatype="http://www.w3.org/2001/XMLSchema#string"
                >prev</rdf:first>
                <rdf:rest rdf:parseType="Resource">
                  <rdf:first rdf:datatype="http://www.w3.org/2001/XMLSchema#string"
                  >service.edit</rdf:first>
                  <rdf:rest rdf:parseType="Resource">
                    <rdf:first rdf:datatype="http://www.w3.org/2001/XMLSchema#string"
                    >service.post</rdf:first>
                    <rdf:rest rdf:parseType="Resource">
                      <rdf:rest rdf:resource="http://www.w3.org/1999/02/22-rdf-syntax-ns#nil"/>
                      <rdf:first rdf:datatype="http://www.w3.org/2001/XMLSchema#string"
                      >service.feed</rdf:first>
                    </rdf:rest>
                  </rdf:rest>
                </rdf:rest>
              </rdf:rest>
              <rdf:first rdf:datatype="http://www.w3.org/2001/XMLSchema#string"
              >next</rdf:first>
            </rdf:rest>
            <rdf:first rdf:datatype="http://www.w3.org/2001/XMLSchema#string"
            >start</rdf:first>
          </rdf:rest>
        </owl:oneOf>
      </owl:DataRange>
    </rdfs:range>
  </owl:DatatypeProperty>
  <owl:DatatypeProperty rdf:ID="summary">
    <rdfs:comment>a short summary, abstract or excerpt of the entry</rdfs:comment>
    <rdf:type rdf:resource="http://www.w3.org/2002/07/owl#FunctionalProperty"/>
    <rdfs:range rdf:resource="http://www.w3.org/2001/XMLSchema#string"/>
  </owl:DatatypeProperty>
  <owl:DatatypeProperty rdf:ID="name">
    <rdfs:range rdf:resource="http://www.w3.org/2001/XMLSchema#string"/>
    <rdfs:domain rdf:resource="#Person"/>
    <rdfs:comment>human-readable name for the person, corporation or other entity</rdfs:comment>
  </owl:DatatypeProperty>
  <owl:DatatypeProperty rdf:ID="modified">
    <rdfs:domain>
      <owl:Class>
        <owl:unionOf rdf:parseType="Collection">
          <owl:Class rdf:about="#Feed"/>
          <owl:Class rdf:about="#Entry"/>
        </owl:unionOf>
      </owl:Class>
    </rdfs:domain>
    <rdfs:range rdf:resource="http://www.w3.org/2001/XMLSchema#dateTime"/>
    <rdfs:comment rdf:datatype="http://www.w3.org/2001/XMLSchema#string"
    >the date and time at which the Entry was modified in W3 format</rdfs:comment>
  </owl:DatatypeProperty>
  <owl:DatatypeProperty rdf:ID="rel">
    <rdfs:label xml:lang="en">rel</rdfs:label>
    <rdfs:range>
      <owl:DataRange>
        <owl:oneOf rdf:parseType="Resource">
          <rdf:rest rdf:parseType="Resource">
            <rdf:first rdf:datatype="http://www.w3.org/2001/XMLSchema#string"
            >start</rdf:first>
            <rdf:rest rdf:parseType="Resource">
              <rdf:rest rdf:parseType="Resource">
                <rdf:first rdf:datatype="http://www.w3.org/2001/XMLSchema#string"
                >prev</rdf:first>
                <rdf:rest rdf:parseType="Resource">
                  <rdf:rest rdf:parseType="Resource">
                    <rdf:rest rdf:parseType="Resource">
                      <rdf:rest rdf:resource="http://www.w3.org/1999/02/22-rdf-syntax-ns#nil"/>
                      <rdf:first rdf:datatype="http://www.w3.org/2001/XMLSchema#string"
                      >service.feed</rdf:first>
                    </rdf:rest>
                    <rdf:first rdf:datatype="http://www.w3.org/2001/XMLSchema#string"
                    >service.post</rdf:first>
                  </rdf:rest>
                  <rdf:first rdf:datatype="http://www.w3.org/2001/XMLSchema#string"
                  >service.edit</rdf:first>
                </rdf:rest>
              </rdf:rest>
              <rdf:first rdf:datatype="http://www.w3.org/2001/XMLSchema#string"
              >next</rdf:first>
            </rdf:rest>
          </rdf:rest>
          <rdf:first rdf:datatype="http://www.w3.org/2001/XMLSchema#string"
          >alternate</rdf:first>
        </owl:oneOf>
      </owl:DataRange>
    </rdfs:range>
    <rdfs:domain rdf:resource="#Link"/>
    <rdfs:comment>the type of relationship that the link represents</rdfs:comment>
  </owl:DatatypeProperty>
  <owl:DatatypeProperty rdf:ID="tagline">
    <rdfs:range rdf:resource="http://www.w3.org/2001/XMLSchema#string"/>
    <rdf:type rdf:resource="http://www.w3.org/2002/07/owl#FunctionalProperty"/>
    <rdfs:comment>a human-readable description or tagline for the feed</rdfs:comment>
    <rdfs:domain rdf:resource="#Feed"/>
  </owl:DatatypeProperty>
  <owl:DatatypeProperty rdf:ID="created">
    <rdfs:comment rdf:datatype="http://www.w3.org/2001/XMLSchema#string"
    >indicates the time that the entry was created. (must have a timeZone in UTC according to atom spec, but check what the dateTime spec requires)</rdfs:comment>
    <rdfs:range rdf:resource="http://www.w3.org/2001/XMLSchema#dateTime"/>
    <rdfs:domain rdf:resource="#Entry"/>
  </owl:DatatypeProperty>
  <owl:TransitiveProperty rdf:ID="author">
    <rdf:type rdf:resource="http://www.w3.org/2002/07/owl#ObjectProperty"/>
    <rdfs:domain>
      <owl:Class>
        <owl:unionOf rdf:parseType="Collection">
          <owl:Class rdf:about="#Entry"/>
          <owl:Class rdf:about="#Feed"/>
        </owl:unionOf>
      </owl:Class>
    </rdfs:domain>
    <rdfs:comment>indicates the default author of the feed</rdfs:comment>
    <rdfs:range rdf:resource="#Person"/>
    <rdf:type rdf:resource="http://www.w3.org/2002/07/owl#FunctionalProperty"/>
  </owl:TransitiveProperty>
  <owl:FunctionalProperty rdf:ID="hasTitle">
    <rdfs:range rdf:resource="#Content"/>
    <rdfs:domain>
      <owl:Class>
        <owl:unionOf rdf:parseType="Collection">
          <owl:Class rdf:about="#Feed"/>
          <owl:Class rdf:about="#Entry"/>
        </owl:unionOf>
      </owl:Class>
    </rdfs:domain>
    <rdfs:comment rdf:datatype="http://www.w3.org/2001/XMLSchema#string"
    > a human-readable title</rdfs:comment>
    <rdf:type rdf:resource="http://www.w3.org/2002/07/owl#ObjectProperty"/>
  </owl:FunctionalProperty>
  <owl:FunctionalProperty rdf:ID="mode">
    <rdfs:comment>indicates the method used to encode the content</rdfs:comment>
    <rdfs:domain rdf:resource="#Content"/>
    <rdf:type rdf:resource="http://www.w3.org/2002/07/owl#DatatypeProperty"/>
    <rdfs:range>
      <owl:DataRange>
        <owl:oneOf rdf:parseType="Resource">
          <rdf:first rdf:datatype="http://www.w3.org/2001/XMLSchema#string"
          >xml</rdf:first>
          <rdf:rest rdf:parseType="Resource">
            <rdf:first rdf:datatype="http://www.w3.org/2001/XMLSchema#string"
            >escaped</rdf:first>
            <rdf:rest rdf:parseType="Resource">
              <rdf:first rdf:datatype="http://www.w3.org/2001/XMLSchema#string"
              >base64</rdf:first>
              <rdf:rest rdf:resource="http://www.w3.org/1999/02/22-rdf-syntax-ns#nil"/>
            </rdf:rest>
          </rdf:rest>
        </owl:oneOf>
      </owl:DataRange>
    </rdfs:range>
  </owl:FunctionalProperty>
  <owl:FunctionalProperty rdf:ID="copyright">
    <rdfs:range rdf:resource="http://www.w3.org/2001/XMLSchema#string"/>
    <rdfs:comment>a human-readable copyright statement for the feed</rdfs:comment>
    <rdf:type rdf:resource="http://www.w3.org/2002/07/owl#DatatypeProperty"/>
    <rdfs:domain rdf:resource="#Feed"/>
  </owl:FunctionalProperty>
  <owl:FunctionalProperty rdf:ID="version">
    <rdfs:domain rdf:resource="#Feed"/>
    <rdfs:range rdf:resource="http://www.w3.org/2001/XMLSchema#string"/>
    <rdfs:comment rdf:datatype="http://www.w3.org/2001/XMLSchema#string"
    > Indicates the version of the Atom specification that  the construct conforms to.</rdfs:comment>
    <rdf:type rdf:resource="http://www.w3.org/2002/07/owl#DatatypeProperty"/>
  </owl:FunctionalProperty>
  <owl:FunctionalProperty rdf:ID="info">
    <rdfs:comment>conveys a human-readable explanation of the feed format itself</rdfs:comment>
    <rdfs:label xml:lang="en">info</rdfs:label>
    <rdfs:domain rdf:resource="#Feed"/>
    <rdfs:range rdf:resource="http://www.w3.org/2001/XMLSchema#string"/>
    <rdf:type rdf:resource="http://www.w3.org/2002/07/owl#DatatypeProperty"/>
  </owl:FunctionalProperty>
  <owl:FunctionalProperty rdf:ID="email">
    <rdfs:range rdf:resource="http://www.w3.org/2001/XMLSchema#anyURI"/>
    <rdfs:domain rdf:resource="#Person"/>
    <rdfs:comment>e-mail address associated with the person</rdfs:comment>
    <rdf:type rdf:resource="http://www.w3.org/2002/07/owl#DatatypeProperty"/>
  </owl:FunctionalProperty>
  <Link rdf:ID="link_to_first_entry">
    <href rdf:datatype="http://www.w3.org/2001/XMLSchema#anyURI"
    >http://bblfish.net/snip/snap/blog1/entry1</href>
  </Link>
  <Content rdf:ID="firstContent">
    <rdfs:comment rdf:datatype="http://www.w3.org/2001/XMLSchema#string"
    >I think the field for entering the content itself is missing here...</rdfs:comment>
  </Content>
  <Entry rdf:ID="entry1">
    <author>
      <Person rdf:ID="HenryStory">
        <email rdf:datatype="http://www.w3.org/2001/XMLSchema#anyURI"
        >henry.story@bblfish.net</email>
        <url rdf:datatype="http://www.w3.org/2001/XMLSchema#string"
        >http://bblfish.net</url>
      </Person>
    </author>
    <hasLink rdf:resource="#link_to_first_entry"/>
    <hasContent rdf:resource="#firstContent"/>
  </Entry>
</rdf:RDF>

<!-- Created with Protege (with OWL Plugin 1.1 beta, Build 121)  http://protege.stanford.edu -->
