<?xml version="1.0"?>
<rdf:RDF
    xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
    xmlns="http://ontology.ist-spice.org/mobile-ontology/1/0/services/0/SPATEL_OWL.owl#"
    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#"
  xml:base="http://ontology.ist-spice.org/mobile-ontology/1/0/services/0/SPATEL_OWL.owl">
  <owl:Ontology rdf:about=""/>
  <owl:Class rdf:ID="Comment">
    <rdfs:subClassOf>
      <owl:Class rdf:ID="Element"/>
    </rdfs:subClassOf>
  </owl:Class>
  <owl:Class rdf:ID="MultiplicityElement">
    <rdfs:subClassOf>
      <owl:Class rdf:about="#Element"/>
    </rdfs:subClassOf>
  </owl:Class>
  <owl:Class rdf:ID="Operation">
    <rdfs:subClassOf>
      <owl:Restriction>
        <owl:onProperty>
          <owl:TransitiveProperty rdf:ID="hasPart"/>
        </owl:onProperty>
        <owl:allValuesFrom>
          <owl:Class rdf:ID="Parameter"/>
        </owl:allValuesFrom>
      </owl:Restriction>
    </rdfs:subClassOf>
    <rdfs:subClassOf rdf:resource="#MultiplicityElement"/>
    <rdfs:subClassOf rdf:resource="http://www.w3.org/2002/07/owl#Thing"/>
    <rdfs:subClassOf>
      <owl:Class rdf:ID="TypedElement"/>
    </rdfs:subClassOf>
  </owl:Class>
  <owl:Class rdf:about="#TypedElement">
    <rdfs:subClassOf>
      <owl:Class rdf:ID="NamedElement"/>
    </rdfs:subClassOf>
  </owl:Class>
  <owl:Class rdf:ID="Enumeration">
    <rdfs:subClassOf>
      <owl:Class rdf:ID="Type"/>
    </rdfs:subClassOf>
    <rdfs:subClassOf>
      <owl:Restriction>
        <owl:allValuesFrom>
          <owl:Class rdf:ID="EnumerationLiteral"/>
        </owl:allValuesFrom>
        <owl:onProperty>
          <owl:TransitiveProperty rdf:about="#hasPart"/>
        </owl:onProperty>
      </owl:Restriction>
    </rdfs:subClassOf>
  </owl:Class>
  <owl:Class rdf:ID="Property">
    <rdfs:subClassOf rdf:resource="#MultiplicityElement"/>
    <rdfs:subClassOf rdf:resource="#TypedElement"/>
    <rdfs:subClassOf rdf:resource="http://www.w3.org/2002/07/owl#Thing"/>
  </owl:Class>
  <owl:Class rdf:ID="Tag"/>
  <owl:Class rdf:ID="ServiceConnection">
    <rdfs:subClassOf>
      <owl:Class rdf:ID="ServiceElement"/>
    </rdfs:subClassOf>
  </owl:Class>
  <owl:Class rdf:ID="ServiceCollaboration">
    <rdfs:subClassOf>
      <owl:Restriction>
        <owl:allValuesFrom>
          <owl:Class rdf:ID="ServiceInteraction"/>
        </owl:allValuesFrom>
        <owl:onProperty>
          <owl:TransitiveProperty rdf:about="#hasPart"/>
        </owl:onProperty>
      </owl:Restriction>
    </rdfs:subClassOf>
    <rdfs:subClassOf>
      <owl:Class rdf:about="#ServiceElement"/>
    </rdfs:subClassOf>
  </owl:Class>
  <owl:Class rdf:ID="ServiceContract">
    <rdfs:subClassOf>
      <owl:Restriction>
        <owl:allValuesFrom rdf:resource="#ServiceContract"/>
        <owl:onProperty>
          <owl:TransitiveProperty rdf:about="#hasPart"/>
        </owl:onProperty>
      </owl:Restriction>
    </rdfs:subClassOf>
    <rdfs:subClassOf>
      <owl:Class rdf:about="#ServiceElement"/>
    </rdfs:subClassOf>
  </owl:Class>
  <owl:Class rdf:ID="OntologyUsage">
    <rdfs:subClassOf>
      <owl:Class rdf:about="#ServiceElement"/>
    </rdfs:subClassOf>
  </owl:Class>
  <owl:Class rdf:about="#Type">
    <rdfs:subClassOf>
      <owl:Class rdf:about="#NamedElement"/>
    </rdfs:subClassOf>
  </owl:Class>
  <owl:Class rdf:ID="DataType">
    <rdfs:subClassOf rdf:resource="#Type"/>
  </owl:Class>
  <owl:Class rdf:ID="SemanticTag">
    <rdfs:subClassOf rdf:resource="#Tag"/>
    <rdfs:subClassOf>
      <owl:Class rdf:about="#ServiceElement"/>
    </rdfs:subClassOf>
  </owl:Class>
  <owl:Class rdf:ID="ServiceInterface">
    <rdfs:subClassOf>
      <owl:Class rdf:about="#ServiceElement"/>
    </rdfs:subClassOf>
    <rdfs:subClassOf>
      <owl:Restriction>
        <owl:allValuesFrom>
          <owl:Class>
            <owl:unionOf rdf:parseType="Collection">
              <owl:Class rdf:ID="ServiceAttribute"/>
              <owl:Class rdf:about="#OntologyUsage"/>
              <owl:Class rdf:about="#ServiceContract"/>
              <owl:Class rdf:ID="ServiceOperation"/>
            </owl:unionOf>
          </owl:Class>
        </owl:allValuesFrom>
        <owl:onProperty>
          <owl:TransitiveProperty rdf:about="#hasPart"/>
        </owl:onProperty>
      </owl:Restriction>
    </rdfs:subClassOf>
    <rdfs:subClassOf rdf:resource="#Type"/>
  </owl:Class>
  <owl:Class rdf:ID="ServiceStream">
    <rdfs:subClassOf>
      <owl:Class rdf:about="#ServiceElement"/>
    </rdfs:subClassOf>
  </owl:Class>
  <owl:Class rdf:ID="StateMachine">
    <rdfs:subClassOf>
      <owl:Class rdf:ID="ServiceBehavior"/>
    </rdfs:subClassOf>
  </owl:Class>
  <owl:Class rdf:about="#ServiceBehavior">
    <rdfs:subClassOf>
      <owl:Class rdf:about="#ServiceElement"/>
    </rdfs:subClassOf>
    <rdfs:subClassOf>
      <owl:Class rdf:ID="Class"/>
    </rdfs:subClassOf>
  </owl:Class>
  <owl:Class rdf:ID="ServicePort">
    <rdfs:subClassOf>
      <owl:Restriction>
        <owl:onProperty>
          <owl:TransitiveProperty rdf:about="#hasPart"/>
        </owl:onProperty>
        <owl:allValuesFrom rdf:resource="#ServiceConnection"/>
      </owl:Restriction>
    </rdfs:subClassOf>
    <rdfs:subClassOf>
      <owl:Class rdf:about="#ServiceElement"/>
    </rdfs:subClassOf>
  </owl:Class>
  <owl:Class rdf:about="#ServiceElement">
    <rdfs:subClassOf>
      <owl:Class rdf:about="#NamedElement"/>
    </rdfs:subClassOf>
    <rdfs:subClassOf>
      <owl:Restriction>
        <owl:onProperty>
          <owl:DatatypeProperty rdf:ID="semanticPattern"/>
        </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:DatatypeProperty rdf:ID="semanticType"/>
        </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:allValuesFrom>
          <owl:Class>
            <owl:unionOf rdf:parseType="Collection">
              <owl:Class rdf:about="#SemanticTag"/>
              <owl:Class rdf:ID="NonFunctionalTag"/>
            </owl:unionOf>
          </owl:Class>
        </owl:allValuesFrom>
        <owl:onProperty>
          <owl:TransitiveProperty rdf:about="#hasPart"/>
        </owl:onProperty>
      </owl:Restriction>
    </rdfs:subClassOf>
  </owl:Class>
  <owl:Class rdf:ID="ServiceParameter">
    <rdfs:subClassOf>
      <owl:Class rdf:about="#Parameter"/>
    </rdfs:subClassOf>
    <rdfs:subClassOf rdf:resource="#TypedElement"/>
    <rdfs:subClassOf rdf:resource="#ServiceElement"/>
  </owl:Class>
  <owl:Class rdf:ID="ServiceEvent">
    <rdfs:subClassOf rdf:resource="#ServiceElement"/>
    <rdfs:subClassOf>
      <owl:Restriction>
        <owl:onProperty>
          <owl:TransitiveProperty rdf:about="#hasPart"/>
        </owl:onProperty>
        <owl:allValuesFrom rdf:resource="#ServiceParameter"/>
      </owl:Restriction>
    </rdfs:subClassOf>
    <rdfs:subClassOf>
      <owl:Class rdf:about="#Class"/>
    </rdfs:subClassOf>
  </owl:Class>
  <owl:Class rdf:ID="Package">
    <rdfs:subClassOf>
      <owl:Class rdf:about="#NamedElement"/>
    </rdfs:subClassOf>
    <rdfs:subClassOf>
      <owl:Restriction>
        <owl:allValuesFrom rdf:resource="#Type"/>
        <owl:onProperty>
          <owl:TransitiveProperty rdf:about="#hasPart"/>
        </owl:onProperty>
      </owl:Restriction>
    </rdfs:subClassOf>
  </owl:Class>
  <owl:Class rdf:about="#EnumerationLiteral">
    <rdfs:subClassOf>
      <owl:Class rdf:about="#NamedElement"/>
    </rdfs:subClassOf>
  </owl:Class>
  <owl:Class rdf:ID="ServiceException">
    <rdfs:subClassOf rdf:resource="#ServiceElement"/>
    <rdfs:subClassOf rdf:resource="#Type"/>
  </owl:Class>
  <owl:Class rdf:about="#ServiceInteraction">
    <rdfs:subClassOf rdf:resource="#ServiceElement"/>
    <rdfs:subClassOf>
      <owl:Restriction>
        <owl:onProperty>
          <owl:ObjectProperty rdf:ID="hasSource"/>
        </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:ObjectProperty rdf:ID="hasTarget"/>
        </owl:onProperty>
      </owl:Restriction>
    </rdfs:subClassOf>
    <rdfs:subClassOf>
      <owl:Restriction>
        <owl:onProperty>
          <owl:ObjectProperty rdf:ID="hasConnection"/>
        </owl:onProperty>
        <owl:cardinality rdf:datatype="http://www.w3.org/2001/XMLSchema#int"
        >1</owl:cardinality>
      </owl:Restriction>
    </rdfs:subClassOf>
  </owl:Class>
  <owl:Class rdf:ID="ServiceLibrary">
    <rdfs:subClassOf rdf:resource="#Package"/>
    <rdfs:subClassOf>
      <owl:Restriction>
        <owl:onProperty>
          <owl:TransitiveProperty rdf:about="#hasPart"/>
        </owl:onProperty>
        <owl:allValuesFrom>
          <owl:Class>
            <owl:unionOf rdf:parseType="Collection">
              <owl:Class rdf:about="#ServiceInterface"/>
              <owl:Class rdf:ID="ServiceComponent"/>
            </owl:unionOf>
          </owl:Class>
        </owl:allValuesFrom>
      </owl:Restriction>
    </rdfs:subClassOf>
    <rdfs:subClassOf>
      <owl:Class rdf:ID="ServiceNamespace"/>
    </rdfs:subClassOf>
    <rdfs:subClassOf rdf:resource="#ServiceElement"/>
  </owl:Class>
  <owl:Class rdf:about="#NonFunctionalTag">
    <rdfs:subClassOf rdf:resource="#ServiceElement"/>
  </owl:Class>
  <owl:Class rdf:ID="ChangeEvent">
    <rdfs:subClassOf>
      <owl:Restriction>
        <owl:onProperty>
          <owl:TransitiveProperty rdf:ID="hasA"/>
        </owl:onProperty>
        <owl:allValuesFrom>
          <owl:Class rdf:ID="OCLExpression"/>
        </owl:allValuesFrom>
      </owl:Restriction>
    </rdfs:subClassOf>
    <rdfs:subClassOf rdf:resource="#ServiceEvent"/>
  </owl:Class>
  <owl:Class rdf:ID="ServiceEntity">
    <rdfs:subClassOf rdf:resource="#ServiceElement"/>
    <rdfs:subClassOf>
      <owl:Class rdf:about="#Class"/>
    </rdfs:subClassOf>
    <rdfs:subClassOf>
      <owl:Restriction>
        <owl:maxCardinality rdf:datatype="http://www.w3.org/2001/XMLSchema#int"
        >1</owl:maxCardinality>
        <owl:onProperty>
          <owl:ObjectProperty rdf:ID="representsType"/>
        </owl:onProperty>
      </owl:Restriction>
    </rdfs:subClassOf>
  </owl:Class>
  <owl:Class rdf:ID="PrimitiveType">
    <rdfs:subClassOf rdf:resource="#DataType"/>
  </owl:Class>
  <owl:Class rdf:ID="ServiceMethod">
    <rdfs:subClassOf rdf:resource="#ServiceElement"/>
    <rdfs:subClassOf>
      <owl:Restriction>
        <owl:onProperty>
          <owl:TransitiveProperty rdf:about="#hasA"/>
        </owl:onProperty>
        <owl:allValuesFrom rdf:resource="#ServiceBehavior"/>
      </owl:Restriction>
    </rdfs:subClassOf>
    <rdfs:subClassOf rdf:resource="#Operation"/>
    <rdfs:subClassOf>
      <owl:Restriction>
        <owl:onProperty>
          <owl:ObjectProperty rdf:ID="realizesOperation"/>
        </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="ServiceSideEffect">
    <rdfs:subClassOf rdf:resource="#ServiceElement"/>
  </owl:Class>
  <owl:Class rdf:about="#ServiceNamespace">
    <rdfs:subClassOf>
      <owl:Class rdf:about="#NamedElement"/>
    </rdfs:subClassOf>
    <rdfs:subClassOf>
      <owl:Restriction>
        <owl:onProperty>
          <owl:TransitiveProperty rdf:about="#hasPart"/>
        </owl:onProperty>
        <owl:allValuesFrom>
          <owl:Class>
            <owl:unionOf rdf:parseType="Collection">
              <owl:Class rdf:about="#ServiceEntity"/>
              <owl:Class rdf:about="#ServiceEvent"/>
              <owl:Class rdf:about="#ServiceException"/>
              <owl:Class rdf:about="#ServiceStream"/>
              <owl:Class rdf:about="#ServiceSideEffect"/>
            </owl:unionOf>
          </owl:Class>
        </owl:allValuesFrom>
      </owl:Restriction>
    </rdfs:subClassOf>
  </owl:Class>
  <owl:Class rdf:ID="Trigger">
    <rdfs:subClassOf>
      <owl:Class rdf:about="#NamedElement"/>
    </rdfs:subClassOf>
    <rdfs:subClassOf>
      <owl:Restriction>
        <owl:onProperty>
          <owl:TransitiveProperty rdf:about="#hasA"/>
        </owl:onProperty>
        <owl:allValuesFrom rdf:resource="#ServiceEvent"/>
      </owl:Restriction>
    </rdfs:subClassOf>
  </owl:Class>
  <owl:Class rdf:about="#ServiceOperation">
    <rdfs:subClassOf rdf:resource="#TypedElement"/>
    <rdfs:subClassOf>
      <owl:Restriction>
        <owl:onProperty>
          <owl:TransitiveProperty rdf:about="#hasPart"/>
        </owl:onProperty>
        <owl:allValuesFrom rdf:resource="#ServiceParameter"/>
      </owl:Restriction>
    </rdfs:subClassOf>
    <rdfs:subClassOf rdf:resource="#Operation"/>
    <rdfs:subClassOf rdf:resource="#ServiceElement"/>
  </owl:Class>
  <owl:Class rdf:about="#ServiceComponent">
    <rdfs:subClassOf rdf:resource="#ServiceElement"/>
    <rdfs:subClassOf>
      <owl:Restriction>
        <owl:onProperty>
          <owl:TransitiveProperty rdf:about="#hasPart"/>
        </owl:onProperty>
        <owl:allValuesFrom>
          <owl:Class>
            <owl:unionOf rdf:parseType="Collection">
              <owl:Class rdf:about="#ServiceMethod"/>
              <owl:Class rdf:about="#ServiceAttribute"/>
              <owl:Class rdf:about="#ServicePort"/>
              <owl:Class rdf:about="#ServiceMethod"/>
              <owl:Class rdf:about="#ServiceCollaboration"/>
              <owl:Class rdf:about="#ServiceComponent"/>
            </owl:unionOf>
          </owl:Class>
        </owl:allValuesFrom>
      </owl:Restriction>
    </rdfs:subClassOf>
    <rdfs:subClassOf rdf:resource="#ServiceNamespace"/>
    <rdfs:subClassOf>
      <owl:Restriction>
        <owl:minCardinality rdf:datatype="http://www.w3.org/2001/XMLSchema#int"
        >1</owl:minCardinality>
        <owl:onProperty>
          <owl:ObjectProperty rdf:ID="implementsInterface"/>
        </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:ObjectProperty rdf:ID="representsComponent"/>
        </owl:onProperty>
      </owl:Restriction>
    </rdfs:subClassOf>
  </owl:Class>
  <owl:Class rdf:about="#Element">
    <rdfs:subClassOf rdf:resource="http://www.w3.org/2002/07/owl#Thing"/>
    <rdfs:subClassOf>
      <owl:Restriction>
        <owl:allValuesFrom>
          <owl:Class>
            <owl:unionOf rdf:parseType="Collection">
              <owl:Class rdf:about="#Comment"/>
              <owl:Class rdf:about="#Tag"/>
            </owl:unionOf>
          </owl:Class>
        </owl:allValuesFrom>
        <owl:onProperty>
          <owl:TransitiveProperty rdf:about="#hasPart"/>
        </owl:onProperty>
      </owl:Restriction>
    </rdfs:subClassOf>
  </owl:Class>
  <owl:Class rdf:about="#OCLExpression">
    <rdfs:subClassOf rdf:resource="#TypedElement"/>
  </owl:Class>
  <owl:Class rdf:ID="TimeEvent">
    <rdfs:subClassOf>
      <owl:Restriction>
        <owl:onProperty>
          <owl:TransitiveProperty rdf:about="#hasA"/>
        </owl:onProperty>
        <owl:allValuesFrom rdf:resource="#OCLExpression"/>
      </owl:Restriction>
    </rdfs:subClassOf>
    <rdfs:subClassOf rdf:resource="#ServiceEvent"/>
  </owl:Class>
  <owl:Class rdf:about="#Class">
    <rdfs:subClassOf rdf:resource="#Type"/>
    <rdfs:subClassOf>
      <owl:Restriction>
        <owl:onProperty>
          <owl:TransitiveProperty rdf:about="#hasPart"/>
        </owl:onProperty>
        <owl:allValuesFrom>
          <owl:Class>
            <owl:unionOf rdf:parseType="Collection">
              <owl:Class rdf:about="#Operation"/>
              <owl:Class rdf:about="#Property"/>
            </owl:unionOf>
          </owl:Class>
        </owl:allValuesFrom>
      </owl:Restriction>
    </rdfs:subClassOf>
  </owl:Class>
  <owl:Class rdf:about="#Parameter">
    <rdfs:subClassOf rdf:resource="http://www.w3.org/2002/07/owl#Thing"/>
    <rdfs:subClassOf rdf:resource="#MultiplicityElement"/>
    <rdfs:subClassOf rdf:resource="#TypedElement"/>
  </owl:Class>
  <owl:Class rdf:about="#ServiceAttribute">
    <rdfs:subClassOf rdf:resource="#TypedElement"/>
    <rdfs:subClassOf rdf:resource="#Property"/>
    <rdfs:subClassOf rdf:resource="#ServiceElement"/>
  </owl:Class>
  <owl:Class rdf:about="#NamedElement">
    <rdfs:subClassOf rdf:resource="#Element"/>
  </owl:Class>
  <owl:ObjectProperty rdf:ID="receiveEvent">
    <rdfs:domain rdf:resource="#ServiceOperation"/>
    <rdfs:range rdf:resource="#ServiceEvent"/>
  </owl:ObjectProperty>
  <owl:ObjectProperty rdf:about="#hasTarget">
    <rdfs:domain rdf:resource="#ServiceInteraction"/>
    <rdfs:range rdf:resource="#ServiceElement"/>
  </owl:ObjectProperty>
  <owl:ObjectProperty rdf:about="#representsType">
    <rdfs:range rdf:resource="#Type"/>
    <rdfs:domain>
      <owl:Class>
        <owl:unionOf rdf:parseType="Collection">
          <owl:Class rdf:about="#ServiceEntity"/>
          <owl:Class rdf:about="#TypedElement"/>
        </owl:unionOf>
      </owl:Class>
    </rdfs:domain>
  </owl:ObjectProperty>
  <owl:ObjectProperty rdf:ID="hasOutStream">
    <rdfs:domain rdf:resource="#ServiceOperation"/>
    <rdfs:range rdf:resource="#ServiceStream"/>
  </owl:ObjectProperty>
  <owl:ObjectProperty rdf:ID="produce">
    <rdfs:domain rdf:resource="#ServiceOperation"/>
    <rdfs:range rdf:resource="#ServiceSideEffect"/>
  </owl:ObjectProperty>
  <owl:ObjectProperty rdf:about="#hasConnection">
    <rdfs:range rdf:resource="#ServiceConnection"/>
    <rdfs:domain rdf:resource="#ServiceInteraction"/>
  </owl:ObjectProperty>
  <owl:ObjectProperty rdf:ID="triggers">
    <owl:inverseOf>
      <owl:ObjectProperty rdf:ID="isTriggeredBy"/>
    </owl:inverseOf>
    <rdfs:domain rdf:resource="#ServiceEvent"/>
    <rdfs:range rdf:resource="#ServiceOperation"/>
  </owl:ObjectProperty>
  <owl:ObjectProperty rdf:ID="hasInStream">
    <rdfs:domain rdf:resource="#ServiceOperation"/>
    <rdfs:range rdf:resource="#ServiceStream"/>
  </owl:ObjectProperty>
  <owl:ObjectProperty rdf:ID="hasDefaultOperation">
    <rdfs:range rdf:resource="#ServiceOperation"/>
    <rdfs:domain rdf:resource="#ServiceInterface"/>
  </owl:ObjectProperty>
  <owl:ObjectProperty rdf:about="#hasSource">
    <rdfs:range rdf:resource="#ServiceElement"/>
    <rdfs:domain rdf:resource="#ServiceInteraction"/>
  </owl:ObjectProperty>
  <owl:ObjectProperty rdf:about="#isTriggeredBy">
    <rdfs:domain rdf:resource="#ServiceOperation"/>
    <rdfs:range rdf:resource="#ServiceEvent"/>
    <owl:inverseOf rdf:resource="#triggers"/>
  </owl:ObjectProperty>
  <owl:ObjectProperty rdf:about="#representsComponent">
    <rdfs:range rdf:resource="#ServiceComponent"/>
    <rdfs:domain rdf:resource="#ServiceComponent"/>
  </owl:ObjectProperty>
  <owl:ObjectProperty rdf:about="#implementsInterface">
    <rdfs:range rdf:resource="#ServiceInterface"/>
    <rdfs:domain rdf:resource="#ServiceComponent"/>
  </owl:ObjectProperty>
  <owl:ObjectProperty rdf:about="#realizesOperation">
    <rdfs:domain rdf:resource="#ServiceMethod"/>
    <rdfs:range rdf:resource="#ServiceOperation"/>
  </owl:ObjectProperty>
  <owl:ObjectProperty rdf:ID="generateEvent">
    <rdfs:range rdf:resource="#ServiceEvent"/>
    <rdfs:domain rdf:resource="#ServiceInterface"/>
  </owl:ObjectProperty>
  <owl:ObjectProperty rdf:ID="raiseException">
    <rdfs:range>
      <owl:Class>
        <owl:unionOf rdf:parseType="Collection">
          <owl:Class rdf:about="#ServiceException"/>
          <owl:Class rdf:about="#Type"/>
        </owl:unionOf>
      </owl:Class>
    </rdfs:range>
    <rdfs:domain>
      <owl:Class>
        <owl:unionOf rdf:parseType="Collection">
          <owl:Class rdf:about="#ServiceInterface"/>
          <owl:Class rdf:about="#Operation"/>
        </owl:unionOf>
      </owl:Class>
    </rdfs:domain>
  </owl:ObjectProperty>
  <owl:ObjectProperty rdf:ID="sendEvent">
    <rdfs:domain rdf:resource="#ServiceOperation"/>
    <rdfs:range rdf:resource="#ServiceEvent"/>
  </owl:ObjectProperty>
  <owl:DatatypeProperty rdf:ID="criterion">
    <rdfs:range rdf:resource="http://www.w3.org/2001/XMLSchema#string"/>
    <rdfs:domain rdf:resource="#NonFunctionalTag"/>
  </owl:DatatypeProperty>
  <owl:DatatypeProperty rdf:about="#semanticPattern">
    <rdfs:range rdf:resource="http://www.w3.org/2001/XMLSchema#string"/>
    <rdfs:domain rdf:resource="#ServiceElement"/>
  </owl:DatatypeProperty>
  <owl:DatatypeProperty rdf:ID="upper">
    <rdfs:range rdf:resource="http://www.w3.org/2001/XMLSchema#int"/>
    <rdfs:domain rdf:resource="#MultiplicityElement"/>
  </owl:DatatypeProperty>
  <owl:DatatypeProperty rdf:ID="isDelegation">
    <rdfs:domain rdf:resource="#ServiceConnection"/>
    <rdfs:range rdf:resource="http://www.w3.org/2001/XMLSchema#boolean"/>
  </owl:DatatypeProperty>
  <owl:DatatypeProperty rdf:about="#semanticType">
    <rdfs:domain rdf:resource="#ServiceElement"/>
    <rdfs:range rdf:resource="http://www.w3.org/2001/XMLSchema#string"/>
  </owl:DatatypeProperty>
  <owl:TransitiveProperty rdf:about="#hasA">
    <rdf:type rdf:resource="http://www.w3.org/2002/07/owl#FunctionalProperty"/>
    <rdf:type rdf:resource="http://www.w3.org/2002/07/owl#SymmetricProperty"/>
    <rdf:type rdf:resource="http://www.w3.org/2002/07/owl#ObjectProperty"/>
    <owl:inverseOf rdf:resource="#hasA"/>
  </owl:TransitiveProperty>
  <owl:TransitiveProperty rdf:ID="partOf">
    <owl:inverseOf>
      <owl:TransitiveProperty rdf:about="#hasPart"/>
    </owl:inverseOf>
    <rdf:type rdf:resource="http://www.w3.org/2002/07/owl#ObjectProperty"/>
    <rdfs:comment rdf:datatype="http://www.w3.org/2001/XMLSchema#string"
    >Composition relation: same as part Of</rdfs:comment>
  </owl:TransitiveProperty>
  <owl:TransitiveProperty rdf:ID="inheritsFrom">
    <rdf:type rdf:resource="http://www.w3.org/2002/07/owl#ObjectProperty"/>
    <rdfs:domain rdf:resource="#Class"/>
    <rdfs:range rdf:resource="#Class"/>
  </owl:TransitiveProperty>
  <owl:TransitiveProperty rdf:about="#hasPart">
    <owl:inverseOf rdf:resource="#partOf"/>
    <rdfs:comment rdf:datatype="http://www.w3.org/2001/XMLSchema#string"
    >Composition relation: same as Include</rdfs:comment>
    <rdf:type rdf:resource="http://www.w3.org/2002/07/owl#ObjectProperty"/>
  </owl:TransitiveProperty>
  <owl:FunctionalProperty rdf:ID="isOpaque">
    <rdfs:domain rdf:resource="#ServiceMethod"/>
    <rdfs:range rdf:resource="http://www.w3.org/2001/XMLSchema#boolean"/>
    <rdf:type rdf:resource="http://www.w3.org/2002/07/owl#DatatypeProperty"/>
  </owl:FunctionalProperty>
  <owl:FunctionalProperty rdf:ID="isID">
    <rdfs:domain rdf:resource="#Property"/>
    <rdfs:range rdf:resource="http://www.w3.org/2001/XMLSchema#boolean"/>
    <rdf:type rdf:resource="http://www.w3.org/2002/07/owl#DatatypeProperty"/>
  </owl:FunctionalProperty>
  <owl:FunctionalProperty rdf:ID="direction">
    <rdfs:domain>
      <owl:Class>
        <owl:unionOf rdf:parseType="Collection">
          <owl:Class rdf:about="#ServiceParameter"/>
          <owl:Class rdf:about="#ServicePort"/>
        </owl:unionOf>
      </owl:Class>
    </rdfs:domain>
    <rdf:type rdf:resource="http://www.w3.org/2002/07/owl#DatatypeProperty"/>
    <rdfs:range rdf:resource="http://www.w3.org/2001/XMLSchema#string"/>
  </owl:FunctionalProperty>
  <owl:FunctionalProperty rdf:ID="name">
    <rdf:type rdf:resource="http://www.w3.org/2002/07/owl#DatatypeProperty"/>
    <rdfs:domain rdf:resource="#Tag"/>
    <rdfs:range rdf:resource="http://www.w3.org/2001/XMLSchema#string"/>
  </owl:FunctionalProperty>
  <owl:FunctionalProperty rdf:ID="isPure">
    <rdfs:domain rdf:resource="#ServiceComponent"/>
    <rdfs:range rdf:resource="http://www.w3.org/2001/XMLSchema#boolean"/>
    <rdf:type rdf:resource="http://www.w3.org/2002/07/owl#DatatypeProperty"/>
  </owl:FunctionalProperty>
  <owl:FunctionalProperty rdf:ID="kind">
    <rdfs:range rdf:resource="http://www.w3.org/2001/XMLSchema#string"/>
    <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="#ServiceAttribute"/>
          <owl:Class rdf:about="#ServiceEvent"/>
          <owl:Class rdf:about="#ServiceOperation"/>
          <owl:Class rdf:about="#ServiceSideEffect"/>
          <owl:Class rdf:about="#SemanticTag"/>
          <owl:Class rdf:about="#ServiceComponent"/>
        </owl:unionOf>
      </owl:Class>
    </rdfs:domain>
  </owl:FunctionalProperty>
  <owl:FunctionalProperty rdf:ID="isDynamic">
    <rdf:type rdf:resource="http://www.w3.org/2002/07/owl#DatatypeProperty"/>
    <rdfs:range rdf:resource="http://www.w3.org/2001/XMLSchema#boolean"/>
    <rdfs:domain rdf:resource="#NonFunctionalTag"/>
  </owl:FunctionalProperty>
  <owl:FunctionalProperty rdf:ID="category">
    <rdf:type rdf:resource="http://www.w3.org/2002/07/owl#DatatypeProperty"/>
    <rdfs:domain rdf:resource="#NonFunctionalTag"/>
    <rdfs:range rdf:resource="http://www.w3.org/2001/XMLSchema#string"/>
  </owl:FunctionalProperty>
  <owl:FunctionalProperty rdf:ID="opposite">
    <rdf:type rdf:resource="http://www.w3.org/2002/07/owl#ObjectProperty"/>
    <rdfs:range rdf:resource="#Property"/>
    <rdfs:domain rdf:resource="#Property"/>
  </owl:FunctionalProperty>
  <owl:FunctionalProperty rdf:ID="refersTo">
    <rdf:type rdf:resource="http://www.w3.org/2002/07/owl#ObjectProperty"/>
    <rdfs:range rdf:resource="#ServiceElement"/>
    <rdfs:domain rdf:resource="#ServicePort"/>
  </owl:FunctionalProperty>
  <owl:FunctionalProperty rdf:ID="isOrdered">
    <rdfs:domain rdf:resource="#MultiplicityElement"/>
    <rdf:type rdf:resource="http://www.w3.org/2002/07/owl#DatatypeProperty"/>
    <rdfs:range rdf:resource="http://www.w3.org/2001/XMLSchema#boolean"/>
  </owl:FunctionalProperty>
  <owl:FunctionalProperty rdf:ID="default">
    <rdfs:range rdf:resource="http://www.w3.org/2001/XMLSchema#string"/>
    <rdfs:domain rdf:resource="#Property"/>
    <rdf:type rdf:resource="http://www.w3.org/2002/07/owl#DatatypeProperty"/>
  </owl:FunctionalProperty>
  <owl:FunctionalProperty rdf:ID="isReadOnly">
    <rdfs:range rdf:resource="http://www.w3.org/2001/XMLSchema#boolean"/>
    <rdf:type rdf:resource="http://www.w3.org/2002/07/owl#DatatypeProperty"/>
    <rdfs:domain rdf:resource="#Property"/>
  </owl:FunctionalProperty>
  <owl:FunctionalProperty rdf:ID="lower">
    <rdfs:domain rdf:resource="#MultiplicityElement"/>
    <rdf:type rdf:resource="http://www.w3.org/2002/07/owl#DatatypeProperty"/>
    <rdfs:range rdf:resource="http://www.w3.org/2001/XMLSchema#int"/>
  </owl:FunctionalProperty>
  <owl:FunctionalProperty rdf:ID="isUnique">
    <rdf:type rdf:resource="http://www.w3.org/2002/07/owl#DatatypeProperty"/>
    <rdfs:range rdf:resource="http://www.w3.org/2001/XMLSchema#boolean"/>
    <rdfs:domain rdf:resource="#MultiplicityElement"/>
  </owl:FunctionalProperty>
  <owl:FunctionalProperty rdf:ID="uri">
    <rdfs:range rdf:resource="http://www.w3.org/2001/XMLSchema#string"/>
    <rdf:type rdf:resource="http://www.w3.org/2002/07/owl#DatatypeProperty"/>
    <rdfs:domain rdf:resource="#OntologyUsage"/>
  </owl:FunctionalProperty>
  <owl:FunctionalProperty rdf:ID="value">
    <rdfs:range rdf:resource="http://www.w3.org/2001/XMLSchema#string"/>
    <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="#SemanticTag"/>
          <owl:Class rdf:about="#NonFunctionalTag"/>
          <owl:Class rdf:about="#Tag"/>
        </owl:unionOf>
      </owl:Class>
    </rdfs:domain>
  </owl:FunctionalProperty>
  <owl:FunctionalProperty rdf:ID="isDerived">
    <rdfs:domain rdf:resource="#Property"/>
    <rdfs:range rdf:resource="http://www.w3.org/2001/XMLSchema#boolean"/>
    <rdf:type rdf:resource="http://www.w3.org/2002/07/owl#DatatypeProperty"/>
  </owl:FunctionalProperty>
  <owl:FunctionalProperty rdf:ID="instanceType">
    <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="#ServiceAttribute"/>
          <owl:Class rdf:about="#ServiceParameter"/>
        </owl:unionOf>
      </owl:Class>
    </rdfs:domain>
    <rdfs:range rdf:resource="http://www.w3.org/2001/XMLSchema#string"/>
  </owl:FunctionalProperty>
  <owl:FunctionalProperty rdf:ID="isFlat">
    <rdfs:range rdf:resource="http://www.w3.org/2001/XMLSchema#boolean"/>
    <rdf:type rdf:resource="http://www.w3.org/2002/07/owl#DatatypeProperty"/>
    <rdfs:domain rdf:resource="#ServiceComponent"/>
  </owl:FunctionalProperty>
  <owl:AnnotationProperty rdf:ID="LogicViews.owlbelongsToView">
    <rdf:type rdf:resource="http://www.w3.org/2002/07/owl#DatatypeProperty"/>
  </owl:AnnotationProperty>
  <owl:AnnotationProperty rdf:ID="LogicViews.owlhasColor">
    <rdf:type rdf:resource="http://www.w3.org/2002/07/owl#DatatypeProperty"/>
  </owl:AnnotationProperty>
</rdf:RDF>

<!-- Created with Protege (with OWL Plugin 3.3.1, Build 430)  http://protege.stanford.edu -->
