<?xml version="1.0"?>
<rdf:RDF
    xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
    xmlns:rdfs="http://www.w3.org/2000/01/rdf-schema#"
    xmlns:xsd="http://www.w3.org/2001/XMLSchema#"
    xmlns:owl="http://www.w3.org/2002/07/owl#"
    xmlns:sswap="http://sswapmeet.sswap.info/sswap/"
    xmlns="http://sswapmeet.sswap.info/sswap/sswap.owl#"
  xml:base="http://sswapmeet.sswap.info/sswap/sswap.owl">
  <owl:Ontology rdf:about="">
    <owl:versionInfo rdf:datatype="http://www.w3.org/2001/XMLSchema#string"
    >10.11</owl:versionInfo>
    <rdfs:comment rdf:datatype="http://www.w3.org/2001/XMLSchema#string"
    >SSWAP Protocol classes and properties.</rdfs:comment>
    <rdfs:label rdf:datatype="http://www.w3.org/2001/XMLSchema#string"
    >SSWAP Protocol</rdfs:label>
  </owl:Ontology>
  <owl:Class rdf:about="http://sswapmeet.sswap.info/sswap/Resource">
    <rdfs:subClassOf>
      <owl:Restriction>
        <owl:onProperty>
          <owl:FunctionalProperty rdf:about="http://sswapmeet.sswap.info/sswap/oneLineDescription"/>
        </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:maxCardinality rdf:datatype="http://www.w3.org/2001/XMLSchema#int"
        >1</owl:maxCardinality>
        <owl:onProperty>
          <owl:FunctionalProperty rdf:about="http://sswapmeet.sswap.info/sswap/inputURI"/>
        </owl:onProperty>
      </owl:Restriction>
    </rdfs:subClassOf>
    <owl:disjointWith>
      <owl:Class rdf:about="http://sswapmeet.sswap.info/sswap/Graph"/>
    </owl:disjointWith>
    <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/sswap/outputURI"/>
        </owl:onProperty>
      </owl:Restriction>
    </rdfs:subClassOf>
    <rdfs:subClassOf>
      <owl:Restriction>
        <owl:onProperty>
          <owl:DatatypeProperty rdf:about="http://sswapmeet.sswap.info/sswap/metadata"/>
        </owl:onProperty>
        <owl:minCardinality rdf:datatype="http://www.w3.org/2001/XMLSchema#int"
        >0</owl:minCardinality>
      </owl:Restriction>
    </rdfs:subClassOf>
    <rdfs:comment rdf:datatype="http://www.w3.org/2001/XMLSchema#string"
    >A sswap:Resource designates a semantically described web resource.

Resources that "do things" for example, transform some input to some output are called services. A sswap:Resource sswap:operatesOn one or more sswap:Graphs, where the sswap:Graph acts as a data structure for the mapping of some input (sswap:Subject) to some output (sswap:Object). A resource that is a sswap:Resource has the URI of its Resource Description Graph (RDG).

All sswap:Resources have a sole and unique sswap:Provider (indicated by the sswap:providedBy predicate) which claims ownership of the resource (reciprocated by the sswap:providesResource predicate). If the resource's URI is a lexical sub-path of the provider, then the provider does not have to reciprocate the sswap:providesResource claim. But if the resource is claiming ownership by a provider whose URI is not a lexical sub-path, then the provider must explicitly reciprocate the claim with sswap:providesResource. Similarly, if a provider claims a resource which is not in a sub-path, then the resource must reciprocate the claim.

        Required predicates: sswap:name, sswap:operatesOn, sswap:providedBy;

        Optional predicates: sswap:aboutURI, sswap:inputURI, sswap:metadata, sswap:oneLineDescription, sswap:outputURI.</rdfs:comment>
    <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/sswap/aboutURI"/>
        </owl:onProperty>
      </owl:Restriction>
    </rdfs:subClassOf>
    <owl:equivalentClass>
      <owl:Class>
        <owl:intersectionOf rdf:parseType="Collection">
          <owl:Restriction>
            <owl:onProperty>
              <owl:FunctionalProperty rdf:about="http://sswapmeet.sswap.info/sswap/name"/>
            </owl:onProperty>
            <owl:cardinality rdf:datatype="http://www.w3.org/2001/XMLSchema#int"
            >1</owl:cardinality>
          </owl:Restriction>
          <owl:Restriction>
            <owl:allValuesFrom>
              <owl:Class rdf:about="http://sswapmeet.sswap.info/sswap/Graph"/>
            </owl:allValuesFrom>
            <owl:onProperty>
              <owl:InverseFunctionalProperty rdf:about="http://sswapmeet.sswap.info/sswap/operatesOn"/>
            </owl:onProperty>
          </owl:Restriction>
          <owl:Restriction>
            <owl:someValuesFrom>
              <owl:Class rdf:about="http://sswapmeet.sswap.info/sswap/Graph"/>
            </owl:someValuesFrom>
            <owl:onProperty>
              <owl:InverseFunctionalProperty rdf:about="http://sswapmeet.sswap.info/sswap/operatesOn"/>
            </owl:onProperty>
          </owl:Restriction>
          <owl:Restriction>
            <owl:onProperty>
              <owl:FunctionalProperty rdf:about="http://sswapmeet.sswap.info/sswap/providedBy"/>
            </owl:onProperty>
            <owl:cardinality rdf:datatype="http://www.w3.org/2001/XMLSchema#int"
            >1</owl:cardinality>
          </owl:Restriction>
          <owl:Restriction>
            <owl:onProperty>
              <owl:FunctionalProperty rdf:about="http://sswapmeet.sswap.info/sswap/providedBy"/>
            </owl:onProperty>
            <owl:allValuesFrom>
              <owl:Class rdf:about="http://sswapmeet.sswap.info/sswap/Provider"/>
            </owl:allValuesFrom>
          </owl:Restriction>
        </owl:intersectionOf>
      </owl:Class>
    </owl:equivalentClass>
    <rdfs:subClassOf>
      <owl:Class rdf:about="http://sswapmeet.sswap.info/sswap/SSWAP"/>
    </rdfs:subClassOf>
    <rdfs:label rdf:datatype="http://www.w3.org/2001/XMLSchema#string"
    >Resource</rdfs:label>
  </owl:Class>
  <owl:Class rdf:about="http://sswapmeet.sswap.info/sswap/SSWAP">
    <rdfs:comment rdf:datatype="http://www.w3.org/2001/XMLSchema#string"
    >Root class of all SSWAP classes.

For more information on the protocol see http://sswap.info.</rdfs:comment>
    <rdfs:label rdf:datatype="http://www.w3.org/2001/XMLSchema#string"
    >SSWAP</rdfs:label>
  </owl:Class>
  <owl:Class rdf:about="http://sswapmeet.sswap.info/sswap/Object">
    <rdfs:subClassOf rdf:resource="http://sswapmeet.sswap.info/sswap/SSWAP"/>
    <rdfs:subClassOf>
      <owl:Restriction>
        <owl:minCardinality rdf:datatype="http://www.w3.org/2001/XMLSchema#int"
        >0</owl:minCardinality>
        <owl:onProperty>
          <owl:ObjectProperty rdf:about="http://sswapmeet.sswap.info/sswap/mapsTo"/>
        </owl:onProperty>
      </owl:Restriction>
    </rdfs:subClassOf>
    <rdfs:subClassOf>
      <owl:Restriction>
        <owl:onProperty>
          <owl:ObjectProperty rdf:about="http://sswapmeet.sswap.info/sswap/mapsTo"/>
        </owl:onProperty>
        <owl:allValuesFrom>
          <owl:Class rdf:about="http://sswapmeet.sswap.info/sswap/Subject"/>
        </owl:allValuesFrom>
      </owl:Restriction>
    </rdfs:subClassOf>
    <rdfs:label rdf:datatype="http://www.w3.org/2001/XMLSchema#string"
    >Object</rdfs:label>
    <rdfs:comment rdf:datatype="http://www.w3.org/2001/XMLSchema#string"
    >A sswap:Object is the object of a mapping; it is the data returned by (output from) the service.

In the concept of a service mapping an input to an output, the sswap:Object corresponds to the output. The property sswap:mapsTo explicitly demarcates the mapping (or transformation) from an input to this output. One can also use sswap:mapsTo to describe inverse mappings where the stated relationship is from a sswap:Object to a sswap:Subject.

        Required predicates: (none);

        Optional predicates: sswap:mapsTo.</rdfs:comment>
  </owl:Class>
  <owl:Class rdf:about="http://sswapmeet.sswap.info/sswap/Subject">
    <rdfs:subClassOf rdf:resource="http://sswapmeet.sswap.info/sswap/SSWAP"/>
    <rdfs:label rdf:datatype="http://www.w3.org/2001/XMLSchema#string"
    >Subject</rdfs:label>
    <owl:equivalentClass>
      <owl:Class>
        <owl:intersectionOf rdf:parseType="Collection">
          <owl:Restriction>
            <owl:onProperty>
              <owl:ObjectProperty rdf:about="http://sswapmeet.sswap.info/sswap/mapsTo"/>
            </owl:onProperty>
            <owl:someValuesFrom rdf:resource="http://sswapmeet.sswap.info/sswap/Object"/>
          </owl:Restriction>
          <owl:Restriction>
            <owl:allValuesFrom rdf:resource="http://sswapmeet.sswap.info/sswap/Object"/>
            <owl:onProperty>
              <owl:ObjectProperty rdf:about="http://sswapmeet.sswap.info/sswap/mapsTo"/>
            </owl:onProperty>
          </owl:Restriction>
        </owl:intersectionOf>
      </owl:Class>
    </owl:equivalentClass>
    <rdfs:comment rdf:datatype="http://www.w3.org/2001/XMLSchema#string"
    >A sswap:Subject is the subject of a mapping; it is the data consumed by (input to) the service.

In the concept of a service mapping an input to an output, the sswap:Subject corresponds to the input. The property sswap:mapsTo explicitly demarcates the mapping (or transformation) from this input to its output. One can also use sswap:mapsTo to describe inverse mappings where the stated relationship is from a sswap:Object to a sswap:Subject.

        Required predicates: sswap:mapsTo;

        Optional predicates: (none).</rdfs:comment>
  </owl:Class>
  <owl:Class rdf:about="http://sswapmeet.sswap.info/sswap/Provider">
    <rdfs:comment rdf:datatype="http://www.w3.org/2001/XMLSchema#string"
    >A sswap:Provider designates the provider of one or more resources.

Providers claim ownership of resources and are anticipated to be associated with actual organizations such as W3C, NCBI, etc. Providers may state that they provide multiple resources by using multiple sswap:providesResource properties. The resource that is a sswap:Provider is the URI of the provider's Provider Description Graph (PDG), and separate from the Resource Description Graphs (RDGs) of each service.

The owl:Restriction on sswap:providedBy defines the class so as to prohibit the inferrence that sswap:Provider is a rdfs:subClassOf sswap:Resource. The property sswap:providedBy is not a valid predicate for a sswap:Provide. See sswap:Resource for notes on sswap:providesResource and sswap:providedBy.

        Required predicates: sswap:name;

        Optional predicates: sswap:about, sswap:metadta, sswap:oneLineDescription, sswap:providesResource.</rdfs:comment>
    <rdfs:subClassOf>
      <owl:Restriction>
        <owl:onProperty>
          <owl:DatatypeProperty rdf:about="http://sswapmeet.sswap.info/sswap/metadata"/>
        </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/sswap/SSWAP"/>
    <rdfs:label rdf:datatype="http://www.w3.org/2001/XMLSchema#string"
    >Provider</rdfs:label>
    <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/sswap/aboutURI"/>
        </owl:onProperty>
      </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:InverseFunctionalProperty rdf:about="http://sswapmeet.sswap.info/sswap/providesResource"/>
        </owl:onProperty>
      </owl:Restriction>
    </rdfs:subClassOf>
    <owl:disjointWith>
      <owl:Class rdf:about="http://sswapmeet.sswap.info/sswap/Graph"/>
    </owl:disjointWith>
    <owl:equivalentClass>
      <owl:Class>
        <owl:intersectionOf rdf:parseType="Collection">
          <owl:Restriction>
            <owl:cardinality rdf:datatype="http://www.w3.org/2001/XMLSchema#int"
            >1</owl:cardinality>
            <owl:onProperty>
              <owl:FunctionalProperty rdf:about="http://sswapmeet.sswap.info/sswap/name"/>
            </owl:onProperty>
          </owl:Restriction>
          <owl:Restriction>
            <owl:cardinality rdf:datatype="http://www.w3.org/2001/XMLSchema#int"
            >0</owl:cardinality>
            <owl:onProperty>
              <owl:FunctionalProperty rdf:about="http://sswapmeet.sswap.info/sswap/providedBy"/>
            </owl:onProperty>
          </owl:Restriction>
          <owl:Restriction>
            <owl:onProperty>
              <owl:InverseFunctionalProperty rdf:about="http://sswapmeet.sswap.info/sswap/providesResource"/>
            </owl:onProperty>
            <owl:allValuesFrom rdf:resource="http://sswapmeet.sswap.info/sswap/Resource"/>
          </owl:Restriction>
        </owl:intersectionOf>
      </owl:Class>
    </owl:equivalentClass>
    <rdfs:subClassOf>
      <owl:Restriction>
        <owl:onProperty>
          <owl:FunctionalProperty rdf:about="http://sswapmeet.sswap.info/sswap/oneLineDescription"/>
        </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/sswap/Graph">
    <rdfs:subClassOf rdf:resource="http://sswapmeet.sswap.info/sswap/SSWAP"/>
    <owl:disjointWith rdf:resource="http://sswapmeet.sswap.info/sswap/Resource"/>
    <owl:disjointWith rdf:resource="http://sswapmeet.sswap.info/sswap/Provider"/>
    <rdfs:comment rdf:datatype="http://www.w3.org/2001/XMLSchema#string"
    >A sswap:Graph delineates an entry point for a suite of mappings.

For services, a "mapping" embeds the concept of taking some input and returning some output. An individual of this class is the RDF object of the sswap:hasMapping relationship from a sswap:Resource. By differentially using sswap:operatesOn and sswap:hasMapping, one can, for example, differentiate between a pair of lists and a list of pairs.

        Required predicates: sswap:hasMapping;

        Optional predicates: (none).</rdfs:comment>
    <owl:equivalentClass>
      <owl:Class>
        <owl:intersectionOf rdf:parseType="Collection">
          <owl:Restriction>
            <owl:onProperty>
              <owl:ObjectProperty rdf:about="http://sswapmeet.sswap.info/sswap/hasMapping"/>
            </owl:onProperty>
            <owl:allValuesFrom rdf:resource="http://sswapmeet.sswap.info/sswap/Subject"/>
          </owl:Restriction>
          <owl:Restriction>
            <owl:someValuesFrom rdf:resource="http://sswapmeet.sswap.info/sswap/Subject"/>
            <owl:onProperty>
              <owl:ObjectProperty rdf:about="http://sswapmeet.sswap.info/sswap/hasMapping"/>
            </owl:onProperty>
          </owl:Restriction>
        </owl:intersectionOf>
      </owl:Class>
    </owl:equivalentClass>
    <rdfs:label rdf:datatype="http://www.w3.org/2001/XMLSchema#string"
    >Graph</rdfs:label>
  </owl:Class>
  <owl:ObjectProperty rdf:about="http://sswapmeet.sswap.info/sswap/objectProperty">
    <rdfs:comment rdf:datatype="http://www.w3.org/2001/XMLSchema#string"
    >Super property for all SSWAP Object properties.  This property is not used directly so it has no domain and range.</rdfs:comment>
    <rdfs:label rdf:datatype="http://www.w3.org/2001/XMLSchema#string"
    >objectProperty</rdfs:label>
  </owl:ObjectProperty>
  <owl:ObjectProperty rdf:about="http://sswapmeet.sswap.info/sswap/hasMapping">
    <rdfs:range rdf:resource="http://sswapmeet.sswap.info/sswap/Subject"/>
    <rdfs:domain rdf:resource="http://sswapmeet.sswap.info/sswap/Graph"/>
    <rdfs:subPropertyOf rdf:resource="http://sswapmeet.sswap.info/sswap/objectProperty"/>
    <rdfs:label rdf:datatype="http://www.w3.org/2001/XMLSchema#string"
    >hasMapping</rdfs:label>
    <rdfs:comment rdf:datatype="http://www.w3.org/2001/XMLSchema#string"
    >A property that connects a sswap:Graph to a sswap:Subject. The sswap:Subject's subgraph then contains the relevant mappings of an input (sswap:Subject) to its output (sswap:Object).</rdfs:comment>
  </owl:ObjectProperty>
  <owl:ObjectProperty rdf:about="http://sswapmeet.sswap.info/sswap/mapsTo">
    <rdfs:comment rdf:datatype="http://www.w3.org/2001/XMLSchema#string"
    >A property that connects a sswap:Subject to a sswap:Object, or vice-versa. For services, this is usually used to establish the transformation from the input to the output. This property is directional (implies a mapping from the domain to the range), but can be used as its own inverse. So one may delineate a mapping from sswap:Subject to sswap:Object, and use another sswap:mapsTo to delineate a mapping from sswap:Object to sswap:Subject.</rdfs:comment>
    <rdfs:domain>
      <owl:Class>
        <owl:unionOf rdf:parseType="Collection">
          <owl:Class rdf:about="http://sswapmeet.sswap.info/sswap/Object"/>
          <owl:Class rdf:about="http://sswapmeet.sswap.info/sswap/Subject"/>
        </owl:unionOf>
      </owl:Class>
    </rdfs:domain>
    <rdfs:label rdf:datatype="http://www.w3.org/2001/XMLSchema#string"
    >mapsTo</rdfs:label>
    <rdfs:range>
      <owl:Class>
        <owl:unionOf rdf:parseType="Collection">
          <owl:Class rdf:about="http://sswapmeet.sswap.info/sswap/Object"/>
          <owl:Class rdf:about="http://sswapmeet.sswap.info/sswap/Subject"/>
        </owl:unionOf>
      </owl:Class>
    </rdfs:range>
    <rdfs:subPropertyOf rdf:resource="http://sswapmeet.sswap.info/sswap/objectProperty"/>
  </owl:ObjectProperty>
  <owl:DatatypeProperty rdf:about="http://sswapmeet.sswap.info/sswap/datatypeProperty">
    <rdfs:comment rdf:datatype="http://www.w3.org/2001/XMLSchema#string"
    >Super property for all SSWAP Datatype properties.  This property is not used directly so it has no domain and range.</rdfs:comment>
    <rdfs:label rdf:datatype="http://www.w3.org/2001/XMLSchema#string"
    >datatypeProperty</rdfs:label>
  </owl:DatatypeProperty>
  <owl:DatatypeProperty rdf:about="http://sswapmeet.sswap.info/sswap/metadata">
    <rdfs:comment rdf:datatype="http://www.w3.org/2001/XMLSchema#string"
    >Points to a URI that may contain words, phrases, or other such free text that programs may use to parse keywords to associated with the property's subject.</rdfs:comment>
    <rdfs:range rdf:resource="http://www.w3.org/2001/XMLSchema#anyURI"/>
    <rdfs:domain>
      <owl:Class>
        <owl:unionOf rdf:parseType="Collection">
          <owl:Class rdf:about="http://sswapmeet.sswap.info/sswap/Provider"/>
          <owl:Class rdf:about="http://sswapmeet.sswap.info/sswap/Resource"/>
        </owl:unionOf>
      </owl:Class>
    </rdfs:domain>
    <rdfs:subPropertyOf rdf:resource="http://sswapmeet.sswap.info/sswap/datatypeProperty"/>
    <rdfs:label rdf:datatype="http://www.w3.org/2001/XMLSchema#string"
    >metadata</rdfs:label>
  </owl:DatatypeProperty>
  <owl:FunctionalProperty rdf:about="http://sswapmeet.sswap.info/sswap/outputURI">
    <rdfs:label rdf:datatype="http://www.w3.org/2001/XMLSchema#string"
    >outputURI</rdfs:label>
    <rdfs:comment rdf:datatype="http://www.w3.org/2001/XMLSchema#string"
    >Resources may require special user interfaces to present output such as using web pages to display formated results to users. Programs that are handling a service's response may direct users to the URI pointed to by this property to handle the result graph.</rdfs:comment>
    <rdf:type rdf:resource="http://www.w3.org/2002/07/owl#DatatypeProperty"/>
    <rdfs:range rdf:resource="http://www.w3.org/2001/XMLSchema#anyURI"/>
    <rdfs:subPropertyOf rdf:resource="http://sswapmeet.sswap.info/sswap/datatypeProperty"/>
    <rdfs:domain rdf:resource="http://sswapmeet.sswap.info/sswap/Resource"/>
  </owl:FunctionalProperty>
  <owl:FunctionalProperty rdf:about="http://sswapmeet.sswap.info/sswap/inputURI">
    <rdfs:subPropertyOf rdf:resource="http://sswapmeet.sswap.info/sswap/datatypeProperty"/>
    <rdf:type rdf:resource="http://www.w3.org/2002/07/owl#DatatypeProperty"/>
    <rdfs:range rdf:resource="http://www.w3.org/2001/XMLSchema#anyURI"/>
    <rdfs:comment rdf:datatype="http://www.w3.org/2001/XMLSchema#string"
    >Resources may require special user interfaces to gather input such as using web pages to solicit input from users. Programs that are preparing to invoke a service may direct users to the URI pointed to by this property for the appropriate user interface.</rdfs:comment>
    <rdfs:domain rdf:resource="http://sswapmeet.sswap.info/sswap/Resource"/>
    <rdfs:label rdf:datatype="http://www.w3.org/2001/XMLSchema#string"
    >inputURI</rdfs:label>
  </owl:FunctionalProperty>
  <owl:FunctionalProperty rdf:about="http://sswapmeet.sswap.info/sswap/aboutURI">
    <rdfs:domain>
      <owl:Class>
        <owl:unionOf rdf:parseType="Collection">
          <owl:Class rdf:about="http://sswapmeet.sswap.info/sswap/Provider"/>
          <owl:Class rdf:about="http://sswapmeet.sswap.info/sswap/Resource"/>
        </owl:unionOf>
      </owl:Class>
    </rdfs:domain>
    <rdfs:label rdf:datatype="http://www.w3.org/2001/XMLSchema#string"
    >aboutURI</rdfs:label>
    <rdfs:comment rdf:datatype="http://www.w3.org/2001/XMLSchema#string"
    >Points to a URI for additional information. It is expected that the URI may resolve to a human-readable web page (an HTML resource). Programs may dereference the URI to provide users with additional information describing a sswap:Resource or sswap:Provider.</rdfs:comment>
    <rdfs:subPropertyOf rdf:resource="http://sswapmeet.sswap.info/sswap/datatypeProperty"/>
    <rdfs:range rdf:resource="http://www.w3.org/2001/XMLSchema#anyURI"/>
    <rdf:type rdf:resource="http://www.w3.org/2002/07/owl#DatatypeProperty"/>
  </owl:FunctionalProperty>
  <owl:FunctionalProperty rdf:about="http://sswapmeet.sswap.info/sswap/name">
    <rdfs:subPropertyOf rdf:resource="http://sswapmeet.sswap.info/sswap/datatypeProperty"/>
    <rdfs:range rdf:resource="http://www.w3.org/2001/XMLSchema#string"/>
    <rdfs:label rdf:datatype="http://www.w3.org/2001/XMLSchema#string"
    >name</rdfs:label>
    <rdf:type rdf:resource="http://www.w3.org/2002/07/owl#DatatypeProperty"/>
    <rdfs:domain>
      <owl:Class>
        <owl:unionOf rdf:parseType="Collection">
          <owl:Class rdf:about="http://sswapmeet.sswap.info/sswap/Provider"/>
          <owl:Class rdf:about="http://sswapmeet.sswap.info/sswap/Resource"/>
        </owl:unionOf>
      </owl:Class>
    </rdfs:domain>
    <rdfs:comment rdf:datatype="http://www.w3.org/2001/XMLSchema#string"
    >A human-readable name that services may use to name their sswap:Resource or sswap:Provider.</rdfs:comment>
  </owl:FunctionalProperty>
  <owl:FunctionalProperty rdf:about="http://sswapmeet.sswap.info/sswap/oneLineDescription">
    <rdfs:range rdf:resource="http://www.w3.org/2001/XMLSchema#string"/>
    <rdfs:label rdf:datatype="http://www.w3.org/2001/XMLSchema#string"
    >oneLineDescription</rdfs:label>
    <rdfs:comment rdf:datatype="http://www.w3.org/2001/XMLSchema#string"
    >A one line, human-readable description that services may use to describe brief information about their sswap:Resource or sswap:Provider.</rdfs:comment>
    <rdfs:domain>
      <owl:Class>
        <owl:unionOf rdf:parseType="Collection">
          <owl:Class rdf:about="http://sswapmeet.sswap.info/sswap/Provider"/>
          <owl:Class rdf:about="http://sswapmeet.sswap.info/sswap/Resource"/>
        </owl:unionOf>
      </owl:Class>
    </rdfs:domain>
    <rdfs:subPropertyOf rdf:resource="http://sswapmeet.sswap.info/sswap/datatypeProperty"/>
    <rdf:type rdf:resource="http://www.w3.org/2002/07/owl#DatatypeProperty"/>
  </owl:FunctionalProperty>
  <owl:FunctionalProperty rdf:about="http://sswapmeet.sswap.info/sswap/providedBy">
    <owl:inverseOf>
      <owl:InverseFunctionalProperty rdf:about="http://sswapmeet.sswap.info/sswap/providesResource"/>
    </owl:inverseOf>
    <rdfs:domain rdf:resource="http://sswapmeet.sswap.info/sswap/Resource"/>
    <rdf:type rdf:resource="http://www.w3.org/2002/07/owl#ObjectProperty"/>
    <rdfs:comment rdf:datatype="http://www.w3.org/2001/XMLSchema#string"
    >A property identifying the entity providing the Resource. The Resource's URI must be a lexical sub-path of the Provider, unless the Provider explicitly claims the Resource by including a sswap:providesResource statement, pointing at the Resource, in the Provider's Description Graph (PDG).</rdfs:comment>
    <rdfs:range rdf:resource="http://sswapmeet.sswap.info/sswap/Provider"/>
    <rdfs:label rdf:datatype="http://www.w3.org/2001/XMLSchema#string"
    >providedBy</rdfs:label>
    <rdfs:subPropertyOf rdf:resource="http://sswapmeet.sswap.info/sswap/objectProperty"/>
  </owl:FunctionalProperty>
  <owl:InverseFunctionalProperty rdf:about="http://sswapmeet.sswap.info/sswap/operatesOn">
    <rdfs:range rdf:resource="http://sswapmeet.sswap.info/sswap/Graph"/>
    <rdfs:subPropertyOf rdf:resource="http://sswapmeet.sswap.info/sswap/objectProperty"/>
    <rdfs:label rdf:datatype="http://www.w3.org/2001/XMLSchema#string"
    >operatesOn</rdfs:label>
    <rdf:type rdf:resource="http://www.w3.org/2002/07/owl#ObjectProperty"/>
    <rdfs:comment rdf:datatype="http://www.w3.org/2001/XMLSchema#string"
    >A property that connects a sswap:Resource to a sswap:Graph. The sswap:Graph's subgraph then contains the relevant mappings of an input (sswap:Subject) to its output (sswap:Object).</rdfs:comment>
    <rdfs:domain rdf:resource="http://sswapmeet.sswap.info/sswap/Resource"/>
  </owl:InverseFunctionalProperty>
  <owl:InverseFunctionalProperty rdf:about="http://sswapmeet.sswap.info/sswap/providesResource">
    <owl:inverseOf rdf:resource="http://sswapmeet.sswap.info/sswap/providedBy"/>
    <rdfs:range rdf:resource="http://sswapmeet.sswap.info/sswap/Resource"/>
    <rdf:type rdf:resource="http://www.w3.org/2002/07/owl#ObjectProperty"/>
    <rdfs:domain rdf:resource="http://sswapmeet.sswap.info/sswap/Provider"/>
    <rdfs:label rdf:datatype="http://www.w3.org/2001/XMLSchema#string"
    >providesResource</rdfs:label>
    <rdfs:comment rdf:datatype="http://www.w3.org/2001/XMLSchema#string"
    >A property identifying the provided Resource. The Resource's URI must be a lexical sub-path of the Provider, unless the Resource explicitly claims the Provider by including a sswap:providedBy statement, pointing at the Provider, in the Resource's Description Graph (RDG).</rdfs:comment>
    <rdfs:subPropertyOf rdf:resource="http://sswapmeet.sswap.info/sswap/objectProperty"/>
  </owl:InverseFunctionalProperty>
</rdf:RDF>

<!-- Created with Protege (with OWL Plugin 3.4.4, Build 579)  http://protege.stanford.edu -->

