<?xml version="1.0"?>
<rdf:RDF
    xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
    xmlns:xsd="http://www.w3.org/2001/XMLSchema#"
    xmlns:rdfs="http://www.w3.org/2000/01/rdf-schema#"
    xmlns:owl="http://www.w3.org/2002/07/owl#"
    xmlns:seq="http://sswapmeet.sswap.info/sequence/"
    xmlns="http://sswapmeet.sswap.info/sequence/sequence.owl#"
  xml:base="http://sswapmeet.sswap.info/sequence/sequence.owl">
  <owl:Ontology rdf:about=""/>
  <owl:Class rdf:about="http://sswapmeet.sswap.info/sequence/Formats">
    <rdfs:comment rdf:datatype="http://www.w3.org/2001/XMLSchema#string"
    >Root format class. It is used to tag sequence objects as belonging to a specified format, as well as presenting a method for linking parsers and validators to the object. For example, a sequence object could belong to both classes Sequence and Fasta.  In that manner it could have the predicates hasParser and hasValidator each pointing to a parser and validator for the FASTA sequence.  The actual sequence data would be either at the resource (URL) of the object, or embedded as a string literal of the predicate sequenceStr.</rdfs:comment>
    <rdfs:subClassOf>
      <owl:Restriction>
        <owl:onProperty>
          <owl:ObjectProperty rdf:about="http://sswapmeet.sswap.info/sequence/hasValidator"/>
        </owl:onProperty>
        <owl:minCardinality rdf:datatype="http://www.w3.org/2001/XMLSchema#int"
        >0</owl:minCardinality>
      </owl:Restriction>
    </rdfs:subClassOf>
    <rdfs:subClassOf>
      <owl:Restriction>
        <owl:onProperty>
          <owl:ObjectProperty rdf:about="http://sswapmeet.sswap.info/sequence/hasParser"/>
        </owl:onProperty>
        <owl:minCardinality rdf:datatype="http://www.w3.org/2001/XMLSchema#int"
        >0</owl:minCardinality>
      </owl:Restriction>
    </rdfs:subClassOf>
    <rdfs:subClassOf>
      <owl:Class rdf:about="http://sswapmeet.sswap.info/sequence/Sequences"/>
    </rdfs:subClassOf>
  </owl:Class>
  <owl:Class rdf:about="http://sswapmeet.sswap.info/sequence/GenbankASN.1">
    <rdfs:comment rdf:datatype="http://www.w3.org/2001/XMLSchema#string"
    >GenBank ASN.1 record. See http://www.ncbi.nlm.nih.gov/IEB and links within.  See also http://www.ncbi.nlm.nih.gov/Sitemap/Summary/asn1.html.</rdfs:comment>
    <rdfs:subClassOf>
      <owl:Class rdf:about="http://sswapmeet.sswap.info/sequence/Genbank"/>
    </rdfs:subClassOf>
  </owl:Class>
  <owl:Class rdf:about="http://sswapmeet.sswap.info/sequence/Sequences">
    <rdfs:comment rdf:datatype="http://www.w3.org/2001/XMLSchema#string"
    >Root class for all concepts.</rdfs:comment>
  </owl:Class>
  <owl:Class rdf:about="http://sswapmeet.sswap.info/sequence/Sequence">
    <rdfs:comment rdf:datatype="http://www.w3.org/2001/XMLSchema#string"
    >High level Sequence class.

Sequences may have name(s) and accession number(s).  A sequence may be the resource itself (whereby its format can be tagged by aggregation with the Formats class), or it may be embedded as the string literal object for the predicate sequenceStr.

A sequence object can also point to the sequence or a record about the sequence using the recordURL predicate.</rdfs:comment>
    <rdfs:subClassOf rdf:resource="http://sswapmeet.sswap.info/sequence/Sequences"/>
    <rdfs:subClassOf>
      <owl:Restriction>
        <owl:minCardinality rdf:datatype="http://www.w3.org/2001/XMLSchema#int"
        >0</owl:minCardinality>
        <owl:onProperty>
          <owl:DatatypeProperty rdf:about="http://sswapmeet.sswap.info/sequence/accessionID"/>
        </owl:onProperty>
      </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:FunctionalProperty rdf:about="http://sswapmeet.sswap.info/sequence/sequenceStr"/>
        </owl:onProperty>
      </owl:Restriction>
    </rdfs:subClassOf>
    <rdfs:subClassOf>
      <owl:Restriction>
        <owl:onProperty>
          <owl:DatatypeProperty rdf:about="http://sswapmeet.sswap.info/sequence/name"/>
        </owl:onProperty>
        <owl:minCardinality rdf:datatype="http://www.w3.org/2001/XMLSchema#int"
        >0</owl:minCardinality>
      </owl:Restriction>
    </rdfs:subClassOf>
    <rdfs:subClassOf>
      <owl:Restriction>
        <owl:onProperty>
          <owl:FunctionalProperty rdf:about="http://sswapmeet.sswap.info/sequence/recordURL"/>
        </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:about="http://sswapmeet.sswap.info/sequence/Genbank">
    <rdfs:subClassOf rdf:resource="http://sswapmeet.sswap.info/sequence/Formats"/>
    <rdfs:comment rdf:datatype="http://www.w3.org/2001/XMLSchema#string"
    >Tags sequences as being in one of many GenBank formats. See http://www.ncbi.nlm.nih.gov/IEB and links within.</rdfs:comment>
  </owl:Class>
  <owl:Class rdf:about="http://sswapmeet.sswap.info/sequence/FASTA">
    <rdfs:comment rdf:datatype="http://www.w3.org/2001/XMLSchema#string"
    >Tags resources as being in FASTA format.</rdfs:comment>
    <rdfs:subClassOf>
      <owl:Restriction>
        <owl:onProperty>
          <owl:DatatypeProperty rdf:about="http://sswapmeet.sswap.info/sequence/fastaHeader"/>
        </owl:onProperty>
        <owl:minCardinality rdf:datatype="http://www.w3.org/2001/XMLSchema#int"
        >0</owl:minCardinality>
      </owl:Restriction>
    </rdfs:subClassOf>
    <rdfs:subClassOf rdf:resource="http://sswapmeet.sswap.info/sequence/Formats"/>
  </owl:Class>
  <owl:Class rdf:about="http://sswapmeet.sswap.info/sequence/GenbankXML">
    <rdfs:comment rdf:datatype="http://www.w3.org/2001/XMLSchema#string"
    >GenBank XML record. See http://www.ncbi.nlm.nih.gov/IEB and links within.</rdfs:comment>
    <rdfs:subClassOf rdf:resource="http://sswapmeet.sswap.info/sequence/Genbank"/>
  </owl:Class>
  <owl:Class rdf:about="http://sswapmeet.sswap.info/sequence/GenbankFlatFile">
    <rdfs:comment rdf:datatype="http://www.w3.org/2001/XMLSchema#string"
    >GenBank Flat File record. See http://www.ncbi.nlm.nih.gov/IEB and links within.  See also http://www.ncbi.nlm.nih.gov/Sitemap/samplerecord.html.</rdfs:comment>
    <rdfs:subClassOf rdf:resource="http://sswapmeet.sswap.info/sequence/Genbank"/>
  </owl:Class>
  <owl:ObjectProperty rdf:about="http://sswapmeet.sswap.info/sequence/hasValidator">
    <rdfs:comment rdf:datatype="http://www.w3.org/2001/XMLSchema#string"
    >A predicate for associating a validator with the Formats object; for example, a link to a FASTA validator.  The hasValidator predicate is an objectProperty (instead of a datatypeProperty with range xsd:anyURI) so that the object of the predicate can be itself the validator suitable for invocation.</rdfs:comment>
    <rdfs:subPropertyOf>
      <owl:ObjectProperty rdf:about="http://sswapmeet.sswap.info/sequence/formatHelpers"/>
    </rdfs:subPropertyOf>
  </owl:ObjectProperty>
  <owl:ObjectProperty rdf:about="http://sswapmeet.sswap.info/sequence/hasSequence">
    <rdfs:range rdf:resource="http://sswapmeet.sswap.info/sequence/Sequence"/>
    <rdfs:comment rdf:datatype="http://www.w3.org/2001/XMLSchema#string"
    >A predicate allowing any "thing" to assert a relationship to a Sequence object.</rdfs:comment>
    <rdfs:subPropertyOf>
      <owl:ObjectProperty rdf:about="http://sswapmeet.sswap.info/sequence/objectProperties"/>
    </rdfs:subPropertyOf>
  </owl:ObjectProperty>
  <owl:ObjectProperty rdf:about="http://sswapmeet.sswap.info/sequence/hasParser">
    <rdfs:subPropertyOf>
      <owl:ObjectProperty rdf:about="http://sswapmeet.sswap.info/sequence/formatHelpers"/>
    </rdfs:subPropertyOf>
    <rdfs:comment rdf:datatype="http://www.w3.org/2001/XMLSchema#string"
    >A predicate for associating a parser with the Formats object; for example, a link to a FASTA parser.  The hasParser predicate is an objectProperty (instead of a datatypeProperty with range xsd:anyURI) so that the object of the predicate can be itself the parser suitable for invocation.</rdfs:comment>
  </owl:ObjectProperty>
  <owl:ObjectProperty rdf:about="http://sswapmeet.sswap.info/sequence/objectProperties">
    <rdfs:comment rdf:datatype="http://www.w3.org/2001/XMLSchema#string"
    >Super property for all Sequences object properties.</rdfs:comment>
  </owl:ObjectProperty>
  <owl:ObjectProperty rdf:about="http://sswapmeet.sswap.info/sequence/formatHelpers">
    <rdfs:subPropertyOf rdf:resource="http://sswapmeet.sswap.info/sequence/objectProperties"/>
    <rdfs:domain rdf:resource="http://sswapmeet.sswap.info/sequence/Formats"/>
    <rdfs:comment rdf:datatype="http://www.w3.org/2001/XMLSchema#string"
    >Root predicate for parsing and validating formats.  For example, a sequence object could belong to both classes Sequence and Fasta.  In that manner it could have hasParser and hasValidator each pointing to a parser and validator for the FASTA sequence.  The actual sequence data would be either at the resource (URL) of the object, or embedded as a string literal of the predicate sequenceStr.</rdfs:comment>
  </owl:ObjectProperty>
  <owl:DatatypeProperty rdf:about="http://sswapmeet.sswap.info/sequence/name">
    <rdfs:subPropertyOf>
      <owl:DatatypeProperty rdf:about="http://sswapmeet.sswap.info/sequence/datatypeProperties"/>
    </rdfs:subPropertyOf>
    <rdfs:domain rdf:resource="http://sswapmeet.sswap.info/sequence/Sequence"/>
    <rdfs:comment rdf:datatype="http://www.w3.org/2001/XMLSchema#string"
    >Al name(s) for the sequence.</rdfs:comment>
    <rdfs:range rdf:resource="http://www.w3.org/2001/XMLSchema#string"/>
  </owl:DatatypeProperty>
  <owl:DatatypeProperty rdf:about="http://sswapmeet.sswap.info/sequence/genbankGI">
    <rdfs:range rdf:resource="http://www.w3.org/2001/XMLSchema#string"/>
    <rdfs:comment rdf:datatype="http://www.w3.org/2001/XMLSchema#string"
    >GenBank 'GI' [Gen Info] number.  See http://www.ncbi.nlm.nih.gov/Sitemap/samplerecord.html#GInB.</rdfs:comment>
    <rdfs:subPropertyOf>
      <owl:DatatypeProperty rdf:about="http://sswapmeet.sswap.info/sequence/accessionID"/>
    </rdfs:subPropertyOf>
  </owl:DatatypeProperty>
  <owl:DatatypeProperty rdf:about="http://sswapmeet.sswap.info/sequence/accessionID">
    <rdfs:comment rdf:datatype="http://www.w3.org/2001/XMLSchema#string"
    >Generic accession id.</rdfs:comment>
    <rdfs:subPropertyOf>
      <owl:DatatypeProperty rdf:about="http://sswapmeet.sswap.info/sequence/datatypeProperties"/>
    </rdfs:subPropertyOf>
  </owl:DatatypeProperty>
  <owl:DatatypeProperty rdf:about="http://sswapmeet.sswap.info/sequence/datatypeProperties">
    <rdfs:comment rdf:datatype="http://www.w3.org/2001/XMLSchema#string"
    >Super property for all Sequences datatype properties.</rdfs:comment>
  </owl:DatatypeProperty>
  <owl:DatatypeProperty rdf:about="http://sswapmeet.sswap.info/sequence/fastaHeader">
    <rdfs:domain rdf:resource="http://sswapmeet.sswap.info/sequence/FASTA"/>
    <rdfs:comment rdf:datatype="http://www.w3.org/2001/XMLSchema#string"
    >FASTA header line.</rdfs:comment>
    <rdfs:range rdf:resource="http://www.w3.org/2001/XMLSchema#string"/>
    <rdfs:subPropertyOf rdf:resource="http://sswapmeet.sswap.info/sequence/datatypeProperties"/>
  </owl:DatatypeProperty>
  <owl:DatatypeProperty rdf:about="http://sswapmeet.sswap.info/sequence/genbankAccessionNumber">
    <rdfs:subPropertyOf rdf:resource="http://sswapmeet.sswap.info/sequence/accessionID"/>
    <rdfs:comment rdf:datatype="http://www.w3.org/2001/XMLSchema#string"
    >GenBank accession number.  See http://www.ncbi.nlm.nih.gov/Sitemap/samplerecord.html#AccessionB.</rdfs:comment>
    <rdfs:range rdf:resource="http://www.w3.org/2001/XMLSchema#string"/>
  </owl:DatatypeProperty>
  <owl:FunctionalProperty rdf:about="http://sswapmeet.sswap.info/sequence/recordURL">
    <rdfs:comment rdf:datatype="http://www.w3.org/2001/XMLSchema#string"
    >A link to a URL (record) associated with or for the sequence.</rdfs:comment>
    <rdfs:range rdf:resource="http://www.w3.org/2001/XMLSchema#anyURI"/>
    <rdfs:subPropertyOf rdf:resource="http://sswapmeet.sswap.info/sequence/datatypeProperties"/>
    <rdfs:domain rdf:resource="http://sswapmeet.sswap.info/sequence/Sequence"/>
    <rdf:type rdf:resource="http://www.w3.org/2002/07/owl#DatatypeProperty"/>
  </owl:FunctionalProperty>
  <owl:FunctionalProperty rdf:about="http://sswapmeet.sswap.info/sequence/sequenceStr">
    <rdfs:subPropertyOf rdf:resource="http://sswapmeet.sswap.info/sequence/datatypeProperties"/>
    <rdfs:domain rdf:resource="http://sswapmeet.sswap.info/sequence/Sequence"/>
    <rdfs:comment rdf:datatype="http://www.w3.org/2001/XMLSchema#string"
    >The actual sequence serialized as a string.</rdfs:comment>
    <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>
</rdf:RDF>

<!-- Created with Protege (with OWL Plugin 3.4, Build 122)  http://protege.stanford.edu -->
