<?xml version="1.0"?>
<!DOCTYPE rdf:RDF [
  <!ENTITY rdfs 'http://www.w3.org/2000/01/rdf-schema#'>
  <!ENTITY xsd 'http://www.w3.org/2001/XMLSchema#'>
  <!ENTITY data 'http://sswapmeet.sswap.info/data/'>
  <!ENTITY owl 'http://www.w3.org/2002/07/owl#'>
  <!ENTITY rdf 'http://www.w3.org/1999/02/22-rdf-syntax-ns#'>]>
<rdf:RDF
    xmlns:rdf="&rdf;"
    xmlns:owl="&owl;"
    xmlns:data="&data;"
    xmlns:xsd="&xsd;"
    xmlns:rdfs="&rdfs;">
    <owl:Ontology rdf:about="&data;owlOntology">
        <owl:imports rdf:resource="&data;owlOntology"/>
    </owl:Ontology>
    <owl:Class rdf:about="&data;Parser">
        <rdfs:label rdf:datatype="&xsd;string">Parser</rdfs:label>
        <rdfs:comment rdf:datatype="&xsd;string">Super class for resources that can parse data; for example, given the relations:

MyDataFormat rdfs:subClassOf data:DataFormat
myData rdf:type MyDataFormat
myData data:hasParser myParser

Sending the URI of myData to myParser should parse the data.  For example, given the format FASTA (http://en.wikipedia.org/wiki/FASTA_format), a parser may create objects with rdfs:comment set to the FASTA comment line (lines starting with '&gt;') and tag the sequence as a Sequence Ontology type.  Another parser may attempt to extract the species name and gene information from the '&gt;' header, so it may parse these items into semantically tagged taxon and gene properties. Thus a single data URI may be associated with different parsers for different purposes.

There is no requirement that parsers return semantically tagged RDF/XML.  Indeed, in many cases it is useful if a parser does not return RDF/XML, but returns data itself (e.g., as text value, image file, etc.).  For HTTP responses, MIME types may be useful. Parsers are free to define their mode of invocation and behavior.</rdfs:comment>
        <rdfs:subClassOf>
            <owl:Class rdf:about="&data;Data"/>
        </rdfs:subClassOf>
    </owl:Class>
</rdf:RDF>

