<?xml version="1.0" encoding="UTF-8"?>

<!DOCTYPE rdf:RDF [
    <!ENTITY rdf   "http://www.w3.org/1999/02/22-rdf-syntax-ns#">
    <!ENTITY rdfs  "http://www.w3.org/2000/01/rdf-schema#">
    <!ENTITY owl   "http://www.w3.org/2002/07/owl#">
    <!ENTITY xsd   "http://www.w3.org/2001/XMLSchema#">
    <!ENTITY sswap "http://sswapmeet.sswap.info/sswap/">
]>

<rdf:RDF
    xmlns:rdf   = "&rdf;"
    xmlns:rdfs  = "&rdfs;"
    xmlns:owl   = "&owl;"
    xmlns:xsd   = "&xsd;"
    xmlns:sswap = "&sswap;"
    xmlns       = "&sswap;"
>

    <!-- Read in the SSWAP protocol to define all SSWAP terms -->
    <owl:Ontology rdf:about="&sswap;owlOntology">
        <owl:imports rdf:resource="&sswap;owlOntology"/>
    </owl:Ontology>

    <!-- Define this term using OWL + SSWAP semantics -->
    <owl:DatatypeProperty rdf:about="&sswap;oneLineDescription">

        <!-- Declare hierarchical relations -->
        <rdf:type rdf:resource="&owl;FunctionalProperty"/>
        <rdfs:subPropertyOf>
            <owl:DatatypeProperty rdf:about="&sswap;datatypeProperty"/>
        </rdfs:subPropertyOf>

        <!-- Self-documenting comment about this term -->
        <rdfs:comment rdf:datatype="&xsd;string"
            >A one line, human-readable description that programs may use to display brief information about a sswap:Resource or sswap:Provider.</rdfs:comment>

        <!-- rdfs:domain: the class of resources this property applies to -->
        <rdfs:domain>
            <owl:Class>
                <owl:unionOf rdf:parseType="Collection">
                    <owl:Class rdf:about="&sswap;Provider"/>
                    <owl:Class rdf:about="&sswap;Resource"/>
                </owl:unionOf>
            </owl:Class>
        </rdfs:domain>

        <!-- rdfs:range: the class of resources this property points to -->
        <rdfs:range rdf:resource="&xsd;string"/>

    </owl:DatatypeProperty>

</rdf:RDF>
