previous next top contents index

OWL Web Ontology Language
Test Cases
7.2. By Issue


Contents


7.2. By Issue

7.2.1. Qualified Restrictions

Lite Illegal use of OWL namespace.001
Description: (informative) <I3.2/Manifest001#test>
The names used in a DAML+OIL qualified cardinality constraint are not defined the OWL namespace.
N3 format is informative.
Namespaces:
@prefix eg: <http://example.org/> .
FullIncorrect: <I3.2/bad001>
<!DOCTYPE rdf:RDF [ 
   <!ENTITY owl "http://www.w3.org/2002/07/owl#">
]> 

<rdf:RDF xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
         xmlns:eg="http://example.org/"
         xmlns:owl="&owl;"
         xml:base=
           'http://www.w3.org/2002/03owlt/I3.2/bad001'
    >

   <owl:Restriction owl:cardinalityQ="1">
      <owl:onProperty rdf:resource="#exampleProp"/>
      <owl:hasClassQ rdf:resource="#exampleClass"/>
   </owl:Restriction>
  
</rdf:RDF>
_:a rdf:type owl:Restriction .
_:a owl:cardinalityQ "1" .
_:a owl:onProperty first:exampleProp .
_:a owl:hasClassQ first:exampleClass .

Lite Illegal use of OWL namespace.002
Description: (informative) <I3.2/Manifest002#test>
The names used in a DAML+OIL qualified max cardinality constraint are not defined the OWL namespace.
N3 format is informative.
FullIncorrect: <I3.2/bad002>
<!DOCTYPE rdf:RDF [ 
   <!ENTITY owl "http://www.w3.org/2002/07/owl#">
]> 

<rdf:RDF xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
         xmlns:owl="&owl;"
         xml:base=
           'http://www.w3.org/2002/03owlt/I3.2/bad002'
    >
   <owl:Restriction owl:maxCardinalityQ="1">
      <owl:onProperty rdf:resource="#exampleProp"/>
      <owl:hasClassQ rdf:resource="#exampleClass"/>
   </owl:Restriction>
  
</rdf:RDF>
_:a rdf:type owl:Restriction .
_:a owl:maxCardinalityQ "1" .
_:a owl:onProperty first:exampleProp .
_:a owl:hasClassQ first:exampleClass .

Lite Illegal use of OWL namespace.003
Description: (informative) <I3.2/Manifest003#test>
The names used in a DAML+OIL qualified min cardinality constraint are not defined the OWL namespace.
N3 format is informative.
Namespaces:
@prefix eg: <http://example.org/> .
FullIncorrect: <I3.2/bad003>
<!DOCTYPE rdf:RDF [ 
   <!ENTITY owl "http://www.w3.org/2002/07/owl#">
]> 


<rdf:RDF xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
         xmlns:eg="http://example.org/"
         xmlns:owl="&owl;"
         xml:base=
           'http://www.w3.org/2002/03owlt/I3.2/bad003'
    >

   <owl:Restriction owl:minCardinalityQ="1">
      <owl:onProperty rdf:resource="#exampleProp"/>
      <owl:hasClassQ rdf:resource="#exampleClass"/>
   </owl:Restriction>
  
</rdf:RDF>
_:a rdf:type owl:Restriction .
_:a owl:minCardinalityQ "1" .
_:a owl:onProperty first:exampleProp .
_:a owl:hasClassQ first:exampleClass .

7.2.2. UnambiguousProperty

Lite Illegal use of OWL namespace.001
Description: (informative) <I3.4/Manifest001#test>
The name UnambiguousProperty is not defined in the OWL namespace. daml:UnambiguousProperty corresponds to owl:InverseFunctionalProperty.
N3 format is informative.
FullIncorrect: <I3.4/bad001>
<rdf:RDF xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
         xml:base=
           'http://www.w3.org/2002/03owlt/I3.4/bad001'
  xmlns:owl ="http://www.w3.org/2002/07/owl#" >
    <owl:UnambiguousProperty rdf:ID="Name"/>
</rdf:RDF>
first:Name rdf:type owl:UnambiguousProperty .

7.2.3. UniqueProp BadName

Lite Illegal use of OWL namespace.001
Description: (informative) <I4.1/Manifest001#test>
The name UniqueProperty is not defined in the OWL namespace. daml:UniqueProperty corresponds to owl:FunctionalProperty.
N3 format is informative.
FullIncorrect: <I4.1/bad001>
<rdf:RDF xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
         xml:base=
           'http://www.w3.org/2002/03owlt/I4.1/bad001'
  xmlns:owl ="http://www.w3.org/2002/07/owl#" >
    <owl:UniqueProperty rdf:ID="Name"/>
</rdf:RDF>
first:Name rdf:type owl:UniqueProperty .

7.2.4. InverseOf

DL Full Positive Entailment Test:001
Description: (informative) <I4.5/Manifest001#test>
An example combinging owl:oneOf and owl:inverseOf.
N3 format is informative.
DLPremises: <I4.5/premises001>
<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:owl="http://www.w3.org/2002/07/owl#"
    xmlns:first="http://www.w3.org/2002/03owlt/I4.5/premises001#"
    xml:base="http://www.w3.org/2002/03owlt/I4.5/premises001" >

    <owl:Class rdf:ID="EuropeanCountry" />
    <owl:Class rdf:ID="Person" />

    <owl:Class rdf:ID="EUCountry">
      <owl:oneOf rdf:parseType="Collection">
         <first:EuropeanCountry rdf:ID="UK"/>
         <first:EuropeanCountry rdf:ID="BE"/>
         <first:EuropeanCountry rdf:ID="ES"/>
         <first:EuropeanCountry rdf:ID="FR"/>
         <first:EuropeanCountry rdf:ID="NL"/>
         <first:EuropeanCountry rdf:ID="PT"/>
      </owl:oneOf>
    </owl:Class>

    <owl:ObjectProperty rdf:ID="hasEuroMP" >
      <rdfs:domain rdf:resource="#EUCountry"/>
    </owl:ObjectProperty>

    <owl:ObjectProperty rdf:ID="isEuroMPFrom" >
      <owl:inverseOf rdf:resource="#hasEuroMP"/>
    </owl:ObjectProperty>

    <owl:Class rdf:ID="EuroMP">
      <owl:equivalentClass>
        <owl:Restriction>
          <owl:onProperty rdf:resource="#isEuroMPFrom" />
          <owl:someValuesFrom rdf:resource="http://www.w3.org/2002/07/owl#Thing" />
        </owl:Restriction>
      </owl:equivalentClass>
    </owl:Class>

    <first:Person rdf:ID="Kinnock" />

    <first:EuropeanCountry rdf:about="#UK">
      <first:hasEuroMP rdf:resource="#Kinnock" />
    </first:EuropeanCountry>
  

</rdf:RDF>
first:EuropeanCountry rdf:type owl:Class .
first:Person rdf:type owl:Class .
first:EUCountry rdf:type owl:Class .
first:UK rdf:type first:EuropeanCountry .
first:BE rdf:type first:EuropeanCountry .
first:ES rdf:type first:EuropeanCountry .
first:FR rdf:type first:EuropeanCountry .
first:NL rdf:type first:EuropeanCountry .
first:PT rdf:type first:EuropeanCountry .
_:a rdf:first first:PT .
_:a rdf:rest rdf:nil .
_:c rdf:first first:NL .
_:c rdf:rest _:a .
_:e rdf:first first:FR .
_:e rdf:rest _:c .
_:g rdf:first first:ES .
_:g rdf:rest _:e .
_:i rdf:first first:BE .
_:i rdf:rest _:g .
_:k rdf:first first:UK .
_:k rdf:rest _:i .
first:EUCountry owl:oneOf _:k .
first:hasEuroMP rdf:type owl:ObjectProperty .
first:hasEuroMP rdfs:domain first:EUCountry .
first:isEuroMPFrom rdf:type owl:ObjectProperty .
first:isEuroMPFrom owl:inverseOf first:hasEuroMP .
first:EuroMP rdf:type owl:Class .
_:m rdf:type owl:Restriction .
_:m owl:onProperty first:isEuroMPFrom .
_:m owl:someValuesFrom owl:Thing .
first:EuroMP owl:equivalentClass _:m .
first:Kinnock rdf:type first:Person .
first:UK rdf:type first:EuropeanCountry .
first:UK first:hasEuroMP first:Kinnock .
LiteConclusions: <I4.5/conclusions001>
<rdf:RDF
    xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
    xmlns:first="http://www.w3.org/2002/03owlt/I4.5/premises001#"
    xmlns:owl="http://www.w3.org/2002/07/owl#"
    xml:base="http://www.w3.org/2002/03owlt/I4.5/conclusions001" >

  <first:EuroMP rdf:about="premises001#Kinnock" />
  <owl:Class rdf:about="premises001#EuroMP"/>

</rdf:RDF>
first:Kinnock rdf:type first:EuroMP .
first:EuroMP rdf:type owl:Class .

DL Full Inconsistent document.002
Description: (informative) <I4.5/Manifest002#test>
An example combining owl:oneOf and owl:inverseOf.
N3 format is informative.
DLInconsistent: <I4.5/inconsistent002>
<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:owl="http://www.w3.org/2002/07/owl#"
    xmlns:first="http://www.w3.org/2002/03owlt/I4.5/inconsistent002#"
    xml:base="http://www.w3.org/2002/03owlt/I4.5/inconsistent002" >

    <owl:Class rdf:ID="EuropeanCountry" />
    <owl:Class rdf:ID="Person" />

    <owl:Class rdf:ID="EUCountry">
      <owl:oneOf rdf:parseType="Collection">
         <first:EuropeanCountry rdf:ID="UK"/>
         <first:EuropeanCountry rdf:ID="BE"/>
         <first:EuropeanCountry rdf:ID="ES"/>
         <first:EuropeanCountry rdf:ID="FR"/>
         <first:EuropeanCountry rdf:ID="NL"/>
         <first:EuropeanCountry rdf:ID="PT"/>
      </owl:oneOf>
    </owl:Class>

    <owl:ObjectProperty rdf:ID="hasEuroMP" >
      <rdfs:domain rdf:resource="#EUCountry"/>
    </owl:ObjectProperty>

    <owl:ObjectProperty rdf:ID="isEuroMPFrom" >
      <owl:inverseOf rdf:resource="#hasEuroMP"/>
    </owl:ObjectProperty>

    <owl:Class rdf:ID="EuroMP">
      <owl:equivalentClass>
        <owl:Restriction>
          <owl:onProperty rdf:resource="#isEuroMPFrom" />
          <owl:someValuesFrom rdf:resource="http://www.w3.org/2002/07/owl#Thing" />
        </owl:Restriction>
      </owl:equivalentClass>
    </owl:Class>

    <first:Person rdf:ID="Kinnock" >
      <rdf:type>
         <owl:Class>
            <owl:complementOf rdf:resource="#EuroMP"/>
         </owl:Class>
      </rdf:type>
    </first:Person>

    <first:EuropeanCountry rdf:about="#UK">
      <first:hasEuroMP rdf:resource="#Kinnock" />
    </first:EuropeanCountry>
  

</rdf:RDF>
first:EuropeanCountry rdf:type owl:Class .
first:Person rdf:type owl:Class .
first:EUCountry rdf:type owl:Class .
first:UK rdf:type first:EuropeanCountry .
first:BE rdf:type first:EuropeanCountry .
first:ES rdf:type first:EuropeanCountry .
first:FR rdf:type first:EuropeanCountry .
first:NL rdf:type first:EuropeanCountry .
first:PT rdf:type first:EuropeanCountry .
_:a rdf:first first:PT .
_:a rdf:rest rdf:nil .
_:c rdf:first first:NL .
_:c rdf:rest _:a .
_:e rdf:first first:FR .
_:e rdf:rest _:c .
_:g rdf:first first:ES .
_:g rdf:rest _:e .
_:i rdf:first first:BE .
_:i rdf:rest _:g .
_:k rdf:first first:UK .
_:k rdf:rest _:i .
first:EUCountry owl:oneOf _:k .
first:hasEuroMP rdf:type owl:ObjectProperty .
first:hasEuroMP rdfs:domain first:EUCountry .
first:isEuroMPFrom rdf:type owl:ObjectProperty .
first:isEuroMPFrom owl:inverseOf first:hasEuroMP .
first:EuroMP rdf:type owl:Class .
_:m rdf:type owl:Restriction .
_:m owl:onProperty first:isEuroMPFrom .
_:m owl:someValuesFrom owl:Thing .
first:EuroMP owl:equivalentClass _:m .
first:Kinnock rdf:type first:Person .
_:o rdf:type owl:Class .
_:o owl:complementOf first:EuroMP .
first:Kinnock rdf:type _:o .
first:UK rdf:type first:EuropeanCountry .
first:UK first:hasEuroMP first:Kinnock .

7.2.5. EquivalentTo

Full Positive Entailment Test:003
Description: (informative) <I4.6/Manifest003#test>
owl:sameAs is stronger than owl:equivalentClass.
N3 format is informative.
FullPremises: <I4.6/premises003>
<rdf:RDF
    xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
    xmlns:owl="http://www.w3.org/2002/07/owl#"
    xml:base="http://www.w3.org/2002/03owlt/I4.6/premises003" >
    <owl:Class rdf:ID="C1">
       <owl:sameAs>
           <owl:Class rdf:ID="C2"/>
       </owl:sameAs>
    </owl:Class>
</rdf:RDF>
first:C1 rdf:type owl:Class .
first:C2 rdf:type owl:Class .
first:C1 owl:sameAs first:C2 .
LiteConclusions: <I4.6/conclusions003>
<rdf:RDF
    xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
    xmlns:owl="http://www.w3.org/2002/07/owl#"
    xml:base="http://www.w3.org/2002/03owlt/I4.6/conclusions003" >
    <owl:Class rdf:about="premises003#C1">
       <owl:equivalentClass>
           <owl:Class rdf:about="premises003#C2"/>
       </owl:equivalentClass>
    </owl:Class>


</rdf:RDF>
first:C1 rdf:type owl:Class .
first:C2 rdf:type owl:Class .
first:C1 owl:equivalentClass first:C2 .

Full (EC) Negative Entailment Test:004
Description: (informative) <I4.6/Manifest004#test>
owl:sameAs is stronger than owl:equivalentClass.
N3 format is informative.
LitePremises: <I4.6/premises004>
<rdf:RDF
    xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
    xmlns:owl="http://www.w3.org/2002/07/owl#"
    xml:base="http://www.w3.org/2002/03owlt/I4.6/premises004" >
    <owl:Class rdf:about="nonconclusions004#C1">
       <owl:equivalentClass>
           <owl:Class rdf:about="nonconclusions004#C2"/>
       </owl:equivalentClass>
    </owl:Class>
</rdf:RDF>
second:C1 rdf:type owl:Class .
second:C2 rdf:type owl:Class .
second:C1 owl:equivalentClass second:C2 .
FullConclusions: <I4.6/nonconclusions004>
<rdf:RDF
    xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
    xmlns:owl="http://www.w3.org/2002/07/owl#"
    xml:base="http://www.w3.org/2002/03owlt/I4.6/nonconclusions004" >
    <owl:Class rdf:ID="C1">
       <owl:sameAs>
           <owl:Class rdf:ID="C2"/>
       </owl:sameAs>
    </owl:Class>
</rdf:RDF>
second:C1 rdf:type owl:Class .
second:C2 rdf:type owl:Class .
second:C1 owl:sameAs second:C2 .

Lite Full Negative Entailment Test:005
Description: (informative) <I4.6/Manifest005#test>
owl:equivalentClass is not related to annotations on classes.
N3 format is informative.
LitePremises: <I4.6/premises005>
<rdf:RDF
    xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
    xmlns:owl="http://www.w3.org/2002/07/owl#"
    xmlns:rdfs="http://www.w3.org/2000/01/rdf-schema#"
    xml:base="http://www.w3.org/2002/03owlt/I4.6/premises005" >
    <owl:Class rdf:about="nonconclusions005#C1">
       <rdfs:comment>An example class.</rdfs:comment>
       <owl:equivalentClass>
           <owl:Class rdf:about="nonconclusions005#C2"/>
       </owl:equivalentClass>
    </owl:Class>
</rdf:RDF>
second:C1 rdf:type owl:Class .
second:C1 rdfs:comment "An example class." .
second:C2 rdf:type owl:Class .
second:C1 owl:equivalentClass second:C2 .
LiteConclusions: <I4.6/nonconclusions005>
<rdf:RDF
    xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
    xmlns:owl="http://www.w3.org/2002/07/owl#"
    xmlns:rdfs="http://www.w3.org/2000/01/rdf-schema#"
    xml:base="http://www.w3.org/2002/03owlt/I4.6/nonconclusions005" >
    <owl:Class rdf:ID="C2">
       <rdfs:comment>An example class.</rdfs:comment>
    </owl:Class>
</rdf:RDF>
second:C2 rdf:type owl:Class .
second:C2 rdfs:comment "An example class." .

Lite Illegal use of OWL namespace.006
Description: (informative) <I4.6/Manifest006#test>
owl:sameIndividualAs is not an OWL property.
N3 format is informative.
FullIncorrect: <I4.6/bad006>
<rdf:RDF
    xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
    xmlns:owl="http://www.w3.org/2002/07/owl#"
    xml:base="http://www.w3.org/2002/03owlt/I4.6/bad006" >
    <owl:Thing rdf:ID="a">
     <owl:sameIndividualAs>
       <owl:Thing rdf:ID="b"/>
     </owl:sameIndividualAs>
    </owl:Thing>
</rdf:RDF>
first:a rdf:type owl:Thing .
first:b rdf:type owl:Thing .
first:a owl:sameIndividualAs first:b .

Lite Illegal use of OWL namespace.007
Description: (informative) <I4.6/Manifest007#test>
owl:sameClassAs is not an OWL property.
N3 format is informative.
FullIncorrect: <I4.6/bad007>
<rdf:RDF
    xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
    xmlns:owl="http://www.w3.org/2002/07/owl#"
    xml:base="http://www.w3.org/2002/03owlt/I4.6/bad007" >
    <owl:Class rdf:ID="a">
     <owl:sameClassAs>
       <owl:Class rdf:ID="b"/>
     </owl:sameClassAs>
    </owl:Class>
</rdf:RDF>
first:a rdf:type owl:Class .
first:b rdf:type owl:Class .
first:a owl:sameClassAs first:b .

Lite Illegal use of OWL namespace.008
Description: (informative) <I4.6/Manifest008#test>
owl:samePropertyAs is not an OWL property.
N3 format is informative.
FullIncorrect: <I4.6/bad008>
<rdf:RDF
    xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
    xmlns:owl="http://www.w3.org/2002/07/owl#"
    xml:base="http://www.w3.org/2002/03owlt/I4.6/bad008" >
    <owl:ObjectProperty rdf:ID="a">
     <owl:samePropertyAs>
       <owl:ObjectProperty rdf:ID="b"/>
     </owl:samePropertyAs>
    </owl:ObjectProperty>
</rdf:RDF>
first:a rdf:type owl:ObjectProperty .
first:b rdf:type owl:ObjectProperty .
first:a owl:samePropertyAs first:b .

7.2.6. Uniform treatment of literal data values

Full Positive Entailment Test:001
Description: (informative) <I5.1/Manifest001#test>
stateCode example using an inverseFunctionalProperty and literals
N3 format is informative.
Namespaces:
@prefix NS0: <http://example.org/vocab#> .
FullPremises: <I5.1/premises001>
<rdf:RDF
  xmlns:rdf='http://www.w3.org/1999/02/22-rdf-syntax-ns#'
         xml:base=
           'http://www.w3.org/2002/03owlt/I5.1/premises001'
  xmlns:NS0='http://example.org/vocab#'
 >
  <rdf:Description rdf:nodeID='A0'>
    <NS0:stateCode>KS</NS0:stateCode>
    <NS0:population>2688418</NS0:population>
  </rdf:Description>
  <rdf:Description rdf:about='http://example.org/vocab#stateCode'>
    <rdf:type rdf:resource='http://www.w3.org/2002/07/owl#InverseFunctionalProperty'/>
  </rdf:Description>
  <rdf:Description rdf:nodeID='A1'>
    <NS0:stateCode>KS</NS0:stateCode>
    <NS0:stateBird rdf:resource='http://example.org/vocab#WesternMeadowlark'/>
  </rdf:Description>
</rdf:RDF>
_:a NS0:stateCode "KS" .
_:a NS0:population "2688418" .
NS0:stateCode rdf:type owl:InverseFunctionalProperty .
_:c NS0:stateCode "KS" .
_:c NS0:stateBird NS0:WesternMeadowlark .
FullConclusions: <I5.1/conclusions001>
<rdf:RDF
  xmlns:rdf='http://www.w3.org/1999/02/22-rdf-syntax-ns#'
  xmlns:NS0='http://example.org/vocab#'
         xml:base=
           'http://www.w3.org/2002/03owlt/I5.1/conclusions001'
 >
  <rdf:Description rdf:nodeID='A0'>
    <NS0:population>2688418</NS0:population>
    <NS0:stateBird rdf:resource='http://example.org/vocab#WesternMeadowlark'/>
  </rdf:Description>
</rdf:RDF>
_:a NS0:population "2688418" .
_:a NS0:stateBird NS0:WesternMeadowlark .

Full (EC) Consistent document.010
Description: (informative) <I5.1/Manifest010#test>
There are 128 different bytes that are also unsigned integers; and hence also 127.
Datatypes that may or may not be supported: xsd:byte, xsd:unsignedInt,
N3 format is informative.
FullConsistent: <I5.1/consistent010>
<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:owl="http://www.w3.org/2002/07/owl#"
    xml:base="http://www.w3.org/2002/03owlt/I5.1/consistent010" >

    <owl:DatatypeProperty rdf:ID="p">
        <rdfs:range 
         rdf:resource="http://www.w3.org/2001/XMLSchema#byte"/>
    </owl:DatatypeProperty>
    <owl:InverseFunctionalProperty rdf:about="#p"/>
    <owl:ObjectProperty rdf:ID="q">
        <owl:inverseOf>
           <owl:ObjectProperty rdf:ID="invQ"/>
        </owl:inverseOf>
    </owl:ObjectProperty>
    <owl:Thing rdf:ID="spy">
       <rdf:type>
          <owl:Restriction>
             <owl:onProperty rdf:resource="#invQ"/>
             <owl:cardinality rdf:datatype=
"http://www.w3.org/2001/XMLSchema#nonNegativeInteger"
             >127</owl:cardinality>
          </owl:Restriction>
        </rdf:type>
    </owl:Thing>
  
    <owl:Restriction>
       <owl:onProperty rdf:resource="#p"/>
       <owl:someValuesFrom 
         rdf:resource="http://www.w3.org/2001/XMLSchema#unsignedInt"/>
       <owl:equivalentClass>
          <owl:Restriction>
             <owl:onProperty rdf:resource="#q"/>
             <owl:hasValue rdf:resource="#spy"/>
          </owl:Restriction>
       </owl:equivalentClass>
    </owl:Restriction>

</rdf:RDF>
first:p rdf:type owl:DatatypeProperty .
first:p rdfs:range xsd:byte .
first:p rdf:type owl:InverseFunctionalProperty .
first:q rdf:type owl:ObjectProperty .
first:invQ rdf:type owl:ObjectProperty .
first:q owl:inverseOf first:invQ .
first:spy rdf:type owl:Thing .
_:a rdf:type owl:Restriction .
_:a owl:onProperty first:invQ .
_:a owl:cardinality "127"^^xsd:nonNegativeInteger  .
first:spy rdf:type _:a .
_:c rdf:type owl:Restriction .
_:c owl:onProperty first:p .
_:c owl:someValuesFrom xsd:unsignedInt .
_:e rdf:type owl:Restriction .
_:e owl:onProperty first:q .
_:e owl:hasValue first:spy .
_:c owl:equivalentClass _:e .

7.2.7. Language Compliance Levels

Lite Full Consistent document.001
Description: (informative) <I5.2/Manifest001#test>
A class like owl:Nothing can be defined using OWL Lite restrictions.
N3 format is informative.
LiteConsistent: <I5.2/consistent001>
<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:owl="http://www.w3.org/2002/07/owl#"
    xmlns:first="http://www.w3.org/2002/03owlt/I5.2/consistent001#"
    xml:base="http://www.w3.org/2002/03owlt/I5.2/consistent001" >
   <owl:Class rdf:ID="Nothing">
       <rdfs:subClassOf>
         <owl:Restriction>
            <owl:onProperty>
                <owl:ObjectProperty rdf:about="#p"/>
            </owl:onProperty>
            <owl:minCardinality rdf:datatype=
"http://www.w3.org/2001/XMLSchema#nonNegativeInteger"
            >1</owl:minCardinality>
         </owl:Restriction>
       </rdfs:subClassOf>
       <rdfs:subClassOf>
         <owl:Restriction>
            <owl:onProperty>
                <owl:ObjectProperty rdf:about="#p"/>
            </owl:onProperty>
            <owl:maxCardinality rdf:datatype=
"http://www.w3.org/2001/XMLSchema#nonNegativeInteger"
            >0</owl:maxCardinality>
         </owl:Restriction>
       </rdfs:subClassOf>
   </owl:Class>
</rdf:RDF>
first:Nothing rdf:type owl:Class .
_:a rdf:type owl:Restriction .
first:p rdf:type owl:ObjectProperty .
_:a owl:onProperty first:p .
_:a owl:minCardinality "1"^^xsd:nonNegativeInteger  .
first:Nothing rdfs:subClassOf _:a .
_:c rdf:type owl:Restriction .
first:p rdf:type owl:ObjectProperty .
_:c owl:onProperty first:p .
_:c owl:maxCardinality "0"^^xsd:nonNegativeInteger  .
first:Nothing rdfs:subClassOf _:c .

Lite Full Positive Entailment Test:002
Description: (informative) <I5.2/Manifest002#test>
A class like owl:Nothing can be defined using OWL Lite restrictions.
N3 format is informative.
LitePremises: <I5.2/premises002>
<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:owl="http://www.w3.org/2002/07/owl#"
    xml:base="http://www.w3.org/2002/03owlt/I5.2/premises002" >

   <owl:Class rdf:ID="Nothing">
       <rdfs:subClassOf>
         <owl:Restriction>
            <owl:onProperty>
                <owl:ObjectProperty rdf:about="#p"/>
            </owl:onProperty>
            <owl:minCardinality rdf:datatype=
"http://www.w3.org/2001/XMLSchema#nonNegativeInteger"
            >1</owl:minCardinality>
         </owl:Restriction>
       </rdfs:subClassOf>
       <rdfs:subClassOf>
         <owl:Restriction>
            <owl:onProperty>
                <owl:ObjectProperty rdf:about="#p"/>
            </owl:onProperty>
            <owl:maxCardinality rdf:datatype=
"http://www.w3.org/2001/XMLSchema#nonNegativeInteger"
            >0</owl:maxCardinality>
         </owl:Restriction>
       </rdfs:subClassOf>
   </owl:Class>
</rdf:RDF>
first:Nothing rdf:type owl:Class .
_:a rdf:type owl:Restriction .
first:p rdf:type owl:ObjectProperty .
_:a owl:onProperty first:p .
_:a owl:minCardinality "1"^^xsd:nonNegativeInteger  .
first:Nothing rdfs:subClassOf _:a .
_:c rdf:type owl:Restriction .
first:p rdf:type owl:ObjectProperty .
_:c owl:onProperty first:p .
_:c owl:maxCardinality "0"^^xsd:nonNegativeInteger  .
first:Nothing rdfs:subClassOf _:c .
LiteConclusions: <I5.2/conclusions002>
<rdf:RDF
    xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
    xmlns:owl="http://www.w3.org/2002/07/owl#"
    xml:base="http://www.w3.org/2002/03owlt/I5.2/conclusions002" >
   <owl:Class rdf:about="premises002#Nothing">
       <owl:equivalentClass>
         <owl:Class rdf:about="http://www.w3.org/2002/07/owl#Nothing" />
       </owl:equivalentClass>
   </owl:Class>
</rdf:RDF>
first:Nothing rdf:type owl:Class .
owl:Nothing rdf:type owl:Class .
first:Nothing owl:equivalentClass owl:Nothing .

Lite Full Consistent document.003
Description: (informative) <I5.2/Manifest003#test>
The complement of a class can be defined using OWL Lite restrictions.
N3 format is informative.
LiteConsistent: <I5.2/consistent003>
<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:owl="http://www.w3.org/2002/07/owl#"
    xmlns:first="http://www.w3.org/2002/03owlt/I5.2/consistent003#"
    xml:base="http://www.w3.org/2002/03owlt/I5.2/consistent003" >
  <owl:Class rdf:ID="Nothing">
       <rdfs:subClassOf>
         <owl:Restriction>
            <owl:onProperty>
                <owl:ObjectProperty rdf:about="#p"/>
            </owl:onProperty>
            <owl:minCardinality rdf:datatype=
"http://www.w3.org/2001/XMLSchema#nonNegativeInteger"
            >1</owl:minCardinality>
         </owl:Restriction>
       </rdfs:subClassOf>
       <rdfs:subClassOf>
         <owl:Restriction>
            <owl:onProperty>
                <owl:ObjectProperty rdf:about="#p"/>
            </owl:onProperty>
            <owl:maxCardinality rdf:datatype=
"http://www.w3.org/2001/XMLSchema#nonNegativeInteger"
            >0</owl:maxCardinality>
         </owl:Restriction>
       </rdfs:subClassOf>
   </owl:Class>
 <owl:Class rdf:ID="A">
   <owl:equivalentClass>
     <owl:Restriction>
       <owl:onProperty>
         <owl:ObjectProperty rdf:about="#q"/>
       </owl:onProperty>
       <owl:someValuesFrom>
         <owl:Class rdf:about="http://www.w3.org/2002/07/owl#Thing"/>
       </owl:someValuesFrom>
     </owl:Restriction>
   </owl:equivalentClass>
 </owl:Class>
 <owl:Class rdf:ID="notA">
   <owl:equivalentClass>
     <owl:Restriction>
       <owl:onProperty>
         <owl:ObjectProperty rdf:about="#q"/>
       </owl:onProperty>
       <owl:allValuesFrom>
         <owl:Class rdf:about="#Nothing"/>
       </owl:allValuesFrom>
     </owl:Restriction>
   </owl:equivalentClass>
 </owl:Class>

</rdf:RDF>
first:Nothing rdf:type owl:Class .
_:a rdf:type owl:Restriction .
first:p rdf:type owl:ObjectProperty .
_:a owl:onProperty first:p .
_:a owl:minCardinality "1"^^xsd:nonNegativeInteger  .
first:Nothing rdfs:subClassOf _:a .
_:c rdf:type owl:Restriction .
first:p rdf:type owl:ObjectProperty .
_:c owl:onProperty first:p .
_:c owl:maxCardinality "0"^^xsd:nonNegativeInteger  .
first:Nothing rdfs:subClassOf _:c .
first:A rdf:type owl:Class .
_:e rdf:type owl:Restriction .
first:q rdf:type owl:ObjectProperty .
_:e owl:onProperty first:q .
owl:Thing rdf:type owl:Class .
_:e owl:someValuesFrom owl:Thing .
first:A owl:equivalentClass _:e .
first:notA rdf:type owl:Class .
_:g rdf:type owl:Restriction .
first:q rdf:type owl:ObjectProperty .
_:g owl:onProperty first:q .
first:Nothing rdf:type owl:Class .
_:g owl:allValuesFrom first:Nothing .
first:notA owl:equivalentClass _:g .

DL Full Positive Entailment Test:004
Description: (informative) <I5.2/Manifest004#test>
The complement of a class can be defined using OWL Lite restrictions.
N3 format is informative.
LitePremises: <I5.2/premises004>
<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:owl="http://www.w3.org/2002/07/owl#"
    xmlns:first="http://www.w3.org/2002/03owlt/I5.2/premises004#"
    xmlns:second="http://www.w3.org/2002/03owlt/I5.2/conclusions004#"
    xml:base="http://www.w3.org/2002/03owlt/I5.2/premises004" >

  <owl:Class rdf:ID="Nothing">
       <rdfs:subClassOf>
         <owl:Restriction>
            <owl:onProperty>
                <owl:ObjectProperty rdf:about="#p"/>
            </owl:onProperty>
            <owl:minCardinality rdf:datatype=
"http://www.w3.org/2001/XMLSchema#nonNegativeInteger"
            >1</owl:minCardinality>
         </owl:Restriction>
       </rdfs:subClassOf>
       <rdfs:subClassOf>
         <owl:Restriction>
            <owl:onProperty>
                <owl:ObjectProperty rdf:about="#p"/>
            </owl:onProperty>
            <owl:maxCardinality rdf:datatype=
"http://www.w3.org/2001/XMLSchema#nonNegativeInteger"
            >0</owl:maxCardinality>
         </owl:Restriction>
       </rdfs:subClassOf>
   </owl:Class>
 <owl:Class rdf:ID="A">
   <owl:equivalentClass>
     <owl:Restriction>
       <owl:onProperty>
         <owl:ObjectProperty rdf:about="#q"/>
       </owl:onProperty>
       <owl:someValuesFrom>
         <owl:Class rdf:about="http://www.w3.org/2002/07/owl#Thing"/>
       </owl:someValuesFrom>
     </owl:Restriction>
   </owl:equivalentClass>
 </owl:Class>
 <owl:Class rdf:ID="notA">
   <owl:equivalentClass>
     <owl:Restriction>
       <owl:onProperty>
         <owl:ObjectProperty rdf:about="#q"/>
       </owl:onProperty>
       <owl:allValuesFrom>
         <owl:Class rdf:about="#Nothing"/>
       </owl:allValuesFrom>
     </owl:Restriction>
   </owl:equivalentClass>
 </owl:Class>

</rdf:RDF>
first:Nothing rdf:type owl:Class .
_:a rdf:type owl:Restriction .
first:p rdf:type owl:ObjectProperty .
_:a owl:onProperty first:p .
_:a owl:minCardinality "1"^^xsd:nonNegativeInteger  .
first:Nothing rdfs:subClassOf _:a .
_:c rdf:type owl:Restriction .
first:p rdf:type owl:ObjectProperty .
_:c owl:onProperty first:p .
_:c owl:maxCardinality "0"^^xsd:nonNegativeInteger  .
first:Nothing rdfs:subClassOf _:c .
first:A rdf:type owl:Class .
_:e rdf:type owl:Restriction .
first:q rdf:type owl:ObjectProperty .
_:e owl:onProperty first:q .
owl:Thing rdf:type owl:Class .
_:e owl:someValuesFrom owl:Thing .
first:A owl:equivalentClass _:e .
first:notA rdf:type owl:Class .
_:g rdf:type owl:Restriction .
first:q rdf:type owl:ObjectProperty .
_:g owl:onProperty first:q .
first:Nothing rdf:type owl:Class .
_:g owl:allValuesFrom first:Nothing .
first:notA owl:equivalentClass _:g .
DLConclusions: <I5.2/conclusions004>
<rdf:RDF
    xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
    xmlns:owl="http://www.w3.org/2002/07/owl#"
    xml:base="http://www.w3.org/2002/03owlt/I5.2/conclusions004" >
  <owl:Class rdf:about="premises004#notA">
     <owl:complementOf>
        <owl:Class rdf:about="premises004#A"/>
     </owl:complementOf>
  </owl:Class>

</rdf:RDF>
first:notA rdf:type owl:Class .
first:A rdf:type owl:Class .
first:notA owl:complementOf first:A .

DL Full Consistent document.005
Description: (informative) <I5.2/Manifest005#test>
The union of two classes can be defined using OWL Lite restrictions, and owl:intersectionOf.
N3 format is informative.
LiteConsistent: <I5.2/consistent005>
<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:owl="http://www.w3.org/2002/07/owl#"
    xmlns:first="http://www.w3.org/2002/03owlt/I5.2/consistent005#"
    xml:base="http://www.w3.org/2002/03owlt/I5.2/consistent005" >

  <owl:Class rdf:ID="Nothing">
       <rdfs:subClassOf>
         <owl:Restriction>
            <owl:onProperty>
                <owl:ObjectProperty rdf:about="#p"/>
            </owl:onProperty>
            <owl:minCardinality rdf:datatype=
"http://www.w3.org/2001/XMLSchema#nonNegativeInteger"
            >1</owl:minCardinality>
         </owl:Restriction>
       </rdfs:subClassOf>
       <rdfs:subClassOf>
         <owl:Restriction>
            <owl:onProperty>
                <owl:ObjectProperty rdf:about="#p"/>
            </owl:onProperty>
            <owl:maxCardinality rdf:datatype=
"http://www.w3.org/2001/XMLSchema#nonNegativeInteger"
            >0</owl:maxCardinality>
         </owl:Restriction>
       </rdfs:subClassOf>
   </owl:Class>
 <owl:Class rdf:ID="A">
   <owl:equivalentClass>
     <owl:Restriction>
       <owl:onProperty>
         <owl:ObjectProperty rdf:about="#q"/>
       </owl:onProperty>
       <owl:someValuesFrom>
         <owl:Class rdf:about="http://www.w3.org/2002/07/owl#Thing"/>
       </owl:someValuesFrom>
     </owl:Restriction>
   </owl:equivalentClass>
 </owl:Class>
 <owl:Class rdf:ID="notA">
   <owl:equivalentClass>
     <owl:Restriction>
       <owl:onProperty>
         <owl:ObjectProperty rdf:about="#q"/>
       </owl:onProperty>
       <owl:allValuesFrom>
         <owl:Class rdf:about="#Nothing"/>
       </owl:allValuesFrom>
     </owl:Restriction>
   </owl:equivalentClass>
 </owl:Class>
 <owl:Class rdf:ID="B">
   <owl:equivalentClass>
     <owl:Restriction>
       <owl:onProperty>
         <owl:ObjectProperty rdf:about="#r"/>
       </owl:onProperty>
       <owl:someValuesFrom>
         <owl:Class rdf:about="http://www.w3.org/2002/07/owl#Thing"/>
       </owl:someValuesFrom>
     </owl:Restriction>
   </owl:equivalentClass>
 </owl:Class>
 <owl:Class rdf:ID="notB">
   <owl:equivalentClass>
     <owl:Restriction>
       <owl:onProperty>
         <owl:ObjectProperty rdf:about="#r"/>
       </owl:onProperty>
       <owl:allValuesFrom>
         <owl:Class rdf:about="#Nothing"/>
       </owl:allValuesFrom>
     </owl:Restriction>
   </owl:equivalentClass>
 </owl:Class>
 <owl:Class rdf:ID="notAorB">
   <owl:intersectionOf rdf:parseType="Collection">
    <owl:Class rdf:about="#notA"/>
    <owl:Class rdf:about="#notB"/>
   </owl:intersectionOf>
 </owl:Class>
 
 <owl:Class rdf:ID="AorB">
   <owl:equivalentClass>
     <owl:Restriction>
       <owl:onProperty>
         <owl:ObjectProperty rdf:about="#s"/>
       </owl:onProperty>
       <owl:someValuesFrom>
         <owl:Class rdf:about="http://www.w3.org/2002/07/owl#Thing"/>
       </owl:someValuesFrom>
     </owl:Restriction>
   </owl:equivalentClass>
 </owl:Class>
 <owl:Class rdf:about="#notAorB">
   <owl:equivalentClass>
     <owl:Restriction>
       <owl:onProperty>
         <owl:ObjectProperty rdf:about="#s"/>
       </owl:onProperty>
       <owl:allValuesFrom>
         <owl:Class rdf:about="#Nothing"/>
       </owl:allValuesFrom>
     </owl:Restriction>
   </owl:equivalentClass>
 </owl:Class>
</rdf:RDF>
first:Nothing rdf:type owl:Class .
_:a rdf:type owl:Restriction .
first:p rdf:type owl:ObjectProperty .
_:a owl:onProperty first:p .
_:a owl:minCardinality "1"^^xsd:nonNegativeInteger  .
first:Nothing rdfs:subClassOf _:a .
_:c rdf:type owl:Restriction .
first:p rdf:type owl:ObjectProperty .
_:c owl:onProperty first:p .
_:c owl:maxCardinality "0"^^xsd:nonNegativeInteger  .
first:Nothing rdfs:subClassOf _:c .
first:A rdf:type owl:Class .
_:e rdf:type owl:Restriction .
first:q rdf:type owl:ObjectProperty .
_:e owl:onProperty first:q .
owl:Thing rdf:type owl:Class .
_:e owl:someValuesFrom owl:Thing .
first:A owl:equivalentClass _:e .
first:notA rdf:type owl:Class .
_:g rdf:type owl:Restriction .
first:q rdf:type owl:ObjectProperty .
_:g owl:onProperty first:q .
first:Nothing rdf:type owl:Class .
_:g owl:allValuesFrom first:Nothing .
first:notA owl:equivalentClass _:g .
first:B rdf:type owl:Class .
_:i rdf:type owl:Restriction .
first:r rdf:type owl:ObjectProperty .
_:i owl:onProperty first:r .
owl:Thing rdf:type owl:Class .
_:i owl:someValuesFrom owl:Thing .
first:B owl:equivalentClass _:i .
first:notB rdf:type owl:Class .
_:k rdf:type owl:Restriction .
first:r rdf:type owl:ObjectProperty .
_:k owl:onProperty first:r .
first:Nothing rdf:type owl:Class .
_:k owl:allValuesFrom first:Nothing .
first:notB owl:equivalentClass _:k .
first:notAorB rdf:type owl:Class .
first:notA rdf:type owl:Class .
first:notB rdf:type owl:Class .
_:m rdf:first first:notB .
_:m rdf:rest rdf:nil .
_:o rdf:first first:notA .
_:o rdf:rest _:m .
first:notAorB owl:intersectionOf _:o .
first:AorB rdf:type owl:Class .
_:q rdf:type owl:Restriction .
first:s rdf:type owl:ObjectProperty .
_:q owl:onProperty first:s .
owl:Thing rdf:type owl:Class .
_:q owl:someValuesFrom owl:Thing .
first:AorB owl:equivalentClass _:q .
first:notAorB rdf:type owl:Class .
_:s rdf:type owl:Restriction .
first:s rdf:type owl:ObjectProperty .
_:s owl:onProperty first:s .
first:Nothing rdf:type owl:Class .
_:s owl:allValuesFrom first:Nothing .
first:notAorB owl:equivalentClass _:s .

DL Full Positive Entailment Test:006
Description: (informative) <I5.2/Manifest006#test>
The union of two classes can be defined using OWL Lite restrictions, and owl:intersectionOf.
N3 format is informative.
LitePremises: <I5.2/premises006>
<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:owl="http://www.w3.org/2002/07/owl#"
    xml:base="http://www.w3.org/2002/03owlt/I5.2/premises006" >

  <owl:Class rdf:ID="Nothing">
       <rdfs:subClassOf>
         <owl:Restriction>
            <owl:onProperty>
                <owl:ObjectProperty rdf:about="#p"/>
            </owl:onProperty>
            <owl:minCardinality rdf:datatype=
"http://www.w3.org/2001/XMLSchema#nonNegativeInteger"
            >1</owl:minCardinality>
         </owl:Restriction>
       </rdfs:subClassOf>
       <rdfs:subClassOf>
         <owl:Restriction>
            <owl:onProperty>
                <owl:ObjectProperty rdf:about="#p"/>
            </owl:onProperty>
            <owl:maxCardinality rdf:datatype=
"http://www.w3.org/2001/XMLSchema#nonNegativeInteger"
            >0</owl:maxCardinality>
         </owl:Restriction>
       </rdfs:subClassOf>
   </owl:Class>
 <owl:Class rdf:ID="A">
   <owl:equivalentClass>
     <owl:Restriction>
       <owl:onProperty>
         <owl:ObjectProperty rdf:about="#q"/>
       </owl:onProperty>
       <owl:someValuesFrom>
         <owl:Class rdf:about="http://www.w3.org/2002/07/owl#Thing"/>
       </owl:someValuesFrom>
     </owl:Restriction>
   </owl:equivalentClass>
 </owl:Class>
 <owl:Class rdf:ID="notA">
   <owl:equivalentClass>
     <owl:Restriction>
       <owl:onProperty>
         <owl:ObjectProperty rdf:about="#q"/>
       </owl:onProperty>
       <owl:allValuesFrom>
         <owl:Class rdf:about="#Nothing"/>
       </owl:allValuesFrom>
     </owl:Restriction>
   </owl:equivalentClass>
 </owl:Class>
 <owl:Class rdf:ID="B">
   <owl:equivalentClass>
     <owl:Restriction>
       <owl:onProperty>
         <owl:ObjectProperty rdf:about="#r"/>
       </owl:onProperty>
       <owl:someValuesFrom>
         <owl:Class rdf:about="http://www.w3.org/2002/07/owl#Thing"/>
       </owl:someValuesFrom>
     </owl:Restriction>
   </owl:equivalentClass>
 </owl:Class>
 <owl:Class rdf:ID="notB">
   <owl:equivalentClass>
     <owl:Restriction>
       <owl:onProperty>
         <owl:ObjectProperty rdf:about="#r"/>
       </owl:onProperty>
       <owl:allValuesFrom>
         <owl:Class rdf:about="#Nothing"/>
       </owl:allValuesFrom>
     </owl:Restriction>
   </owl:equivalentClass>
 </owl:Class>
 <owl:Class rdf:ID="notAorB">
   <owl:intersectionOf rdf:parseType="Collection">
    <owl:Class rdf:about="#notA"/>
    <owl:Class rdf:about="#notB"/>
   </owl:intersectionOf>
 </owl:Class>
 
 <owl:Class rdf:ID="AorB">
   <owl:equivalentClass>
     <owl:Restriction>
       <owl:onProperty>
         <owl:ObjectProperty rdf:about="#s"/>
       </owl:onProperty>
       <owl:someValuesFrom>
         <owl:Class rdf:about="http://www.w3.org/2002/07/owl#Thing"/>
       </owl:someValuesFrom>
     </owl:Restriction>
   </owl:equivalentClass>
 </owl:Class>
 <owl:Class rdf:about="#notAorB">
   <owl:equivalentClass>
     <owl:Restriction>
       <owl:onProperty>
         <owl:ObjectProperty rdf:about="#s"/>
       </owl:onProperty>
       <owl:allValuesFrom>
         <owl:Class rdf:about="#Nothing"/>
       </owl:allValuesFrom>
     </owl:Restriction>
   </owl:equivalentClass>
 </owl:Class>
</rdf:RDF>
first:Nothing rdf:type owl:Class .
_:a rdf:type owl:Restriction .
first:p rdf:type owl:ObjectProperty .
_:a owl:onProperty first:p .
_:a owl:minCardinality "1"^^xsd:nonNegativeInteger  .
first:Nothing rdfs:subClassOf _:a .
_:c rdf:type owl:Restriction .
first:p rdf:type owl:ObjectProperty .
_:c owl:onProperty first:p .
_:c owl:maxCardinality "0"^^xsd:nonNegativeInteger  .
first:Nothing rdfs:subClassOf _:c .
first:A rdf:type owl:Class .
_:e rdf:type owl:Restriction .
first:q rdf:type owl:ObjectProperty .
_:e owl:onProperty first:q .
owl:Thing rdf:type owl:Class .
_:e owl:someValuesFrom owl:Thing .
first:A owl:equivalentClass _:e .
first:notA rdf:type owl:Class .
_:g rdf:type owl:Restriction .
first:q rdf:type owl:ObjectProperty .
_:g owl:onProperty first:q .
first:Nothing rdf:type owl:Class .
_:g owl:allValuesFrom first:Nothing .
first:notA owl:equivalentClass _:g .
first:B rdf:type owl:Class .
_:i rdf:type owl:Restriction .
first:r rdf:type owl:ObjectProperty .
_:i owl:onProperty first:r .
owl:Thing rdf:type owl:Class .
_:i owl:someValuesFrom owl:Thing .
first:B owl:equivalentClass _:i .
first:notB rdf:type owl:Class .
_:k rdf:type owl:Restriction .
first:r rdf:type owl:ObjectProperty .
_:k owl:onProperty first:r .
first:Nothing rdf:type owl:Class .
_:k owl:allValuesFrom first:Nothing .
first:notB owl:equivalentClass _:k .
first:notAorB rdf:type owl:Class .
first:notA rdf:type owl:Class .
first:notB rdf:type owl:Class .
_:m rdf:first first:notB .
_:m rdf:rest rdf:nil .
_:o rdf:first first:notA .
_:o rdf:rest _:m .
first:notAorB owl:intersectionOf _:o .
first:AorB rdf:type owl:Class .
_:q rdf:type owl:Restriction .
first:s rdf:type owl:ObjectProperty .
_:q owl:onProperty first:s .
owl:Thing rdf:type owl:Class .
_:q owl:someValuesFrom owl:Thing .
first:AorB owl:equivalentClass _:q .
first:notAorB rdf:type owl:Class .
_:s rdf:type owl:Restriction .
first:s rdf:type owl:ObjectProperty .
_:s owl:onProperty first:s .
first:Nothing rdf:type owl:Class .
_:s owl:allValuesFrom first:Nothing .
first:notAorB owl:equivalentClass _:s .
DLConclusions: <I5.2/conclusions006>
<rdf:RDF
    xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
    xmlns:owl="http://www.w3.org/2002/07/owl#"
    xml:base="http://www.w3.org/2002/03owlt/I5.2/conclusions006" >
  <owl:Class rdf:about="premises006#AorB">
    <owl:unionOf rdf:parseType="Collection">
      <owl:Class rdf:about="premises006#A"/>
      <owl:Class rdf:about="premises006#B"/>
    </owl:unionOf>
  </owl:Class>

</rdf:RDF>
first:AorB rdf:type owl:Class .
first:A rdf:type owl:Class .
first:B rdf:type owl:Class .
_:a rdf:first first:B .
_:a rdf:rest rdf:nil .
_:c rdf:first first:A .
_:c rdf:rest _:a .
first:AorB owl:unionOf _:c .

Lite Full Consistent document.010
Description: (informative) <I5.2/Manifest010#test>
The informal semantics for RDF container vocabulary, indicated by the comment, are not respected by the formal machinery of OWL.
N3 format is informative.
LiteConsistent: <I5.2/consistent010>
<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:owl="http://www.w3.org/2002/07/owl#"
    xml:base="http://www.w3.org/2002/03owlt/I5.2/consistent010" >
  <owl:Class rdf:about=
 "http://www.w3.org/1999/02/22-rdf-syntax-ns#Bag" >
    <rdfs:comment>The class of unordered containers.</rdfs:comment>
  </owl:Class>
  <owl:ObjectProperty rdf:about=
 "http://www.w3.org/1999/02/22-rdf-syntax-ns#_1" />
  <rdf:Bag>
    <rdf:_1>
       <owl:Thing />
    </rdf:_1>
  </rdf:Bag>
</rdf:RDF>
rdf:Bag rdf:type owl:Class .
rdf:Bag rdfs:comment "The class of unordered containers." .
rdf:_1 rdf:type owl:ObjectProperty .
_:a rdf:type rdf:Bag .
_:c rdf:type owl:Thing .
_:a rdf:_1 _:c .

Lite Full Consistent document.011
Description: (informative) <I5.2/Manifest011#test>
The informal semantics indicated by comments concerning user defined classes are not respected by the formal machinery of OWL.
N3 format is informative.
Namespaces:
@prefix eg: <http://www.example.org/user#> .
LiteConsistent: <I5.2/consistent011>
<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:owl="http://www.w3.org/2002/07/owl#"
    xmlns:eg="http://www.example.org/user#"
    xml:base="http://www.w3.org/2002/03owlt/I5.2/consistent011" >
  <owl:Class rdf:about="http://www.example.org/user#Bag" >
    <rdfs:comment>The class of unordered containers.</rdfs:comment>
  </owl:Class>
  <owl:ObjectProperty rdf:about="http://www.example.org/user#_1" />
  <eg:Bag>
    <eg:_1>
       <owl:Thing />
    </eg:_1>
  </eg:Bag>
</rdf:RDF>
eg:Bag rdf:type owl:Class .
eg:Bag rdfs:comment "The class of unordered containers." .
eg:_1 rdf:type owl:ObjectProperty .
_:a rdf:type eg:Bag .
_:c rdf:type owl:Thing .
_:a eg:_1 _:c .

7.2.8. drop-disjointUnionOf

Lite Illegal use of OWL namespace.001
Description: (informative) <I5.21/Manifest001#test>
daml:disjointUnionOf did not make it into OWL.
N3 format is informative.
FullIncorrect: <I5.21/bad001>
<rdf:RDF
    xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
    xmlns:owl="http://www.w3.org/2002/07/owl#"
    xml:base="http://www.w3.org/2002/03owlt/I5.21/bad001" >
   <owl:Class rdf:ID="AandB">
     <owl:disjointUnionOf rdf:parseType="Collection">
       <owl:Class rdf:ID="A"/>
       <owl:Class rdf:ID="B"/>
     </owl:disjointUnionOf>
   </owl:Class>

</rdf:RDF>
first:AandB rdf:type owl:Class .
first:A rdf:type owl:Class .
first:B rdf:type owl:Class .
_:a rdf:first first:B .
_:a rdf:rest rdf:nil .
_:c rdf:first first:A .
_:c rdf:rest _:a .
first:AandB owl:disjointUnionOf _:c .

DL Full Positive Entailment Test:002
Description: (informative) <I5.21/Manifest002#test>
The construct used here shows how to express mutual disjointness between classes with O(N) triples.
N3 format is informative.
DLPremises: <I5.21/premises002>
<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:owl="http://www.w3.org/2002/07/owl#"
    xmlns:first="http://www.w3.org/2002/03owlt/I5.21/premises002#"
    xml:base="http://www.w3.org/2002/03owlt/I5.21/premises002" >

   <owl:Class rdf:ID="Reptile">
     <rdfs:subClassOf>
        <owl:Restriction>
           <owl:onProperty>
              <owl:DatatypeProperty rdf:ID="family-name"/>
           </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:about="#Amphisbaenidae">
      <rdfs:subClassOf rdf:resource="#Reptile" />
      <rdfs:subClassOf>
        <owl:Restriction>
          <owl:onProperty rdf:resource="#family-name"/>
          <owl:hasValue>Amphisbaenidae</owl:hasValue>
        </owl:Restriction>
      </rdfs:subClassOf>
    </owl:Class>

    <owl:Class rdf:about="#Agamidae">
      <rdfs:subClassOf rdf:resource="#Reptile" />
      <rdfs:subClassOf>
        <owl:Restriction>
          <owl:onProperty rdf:resource="#family-name"/>
          <owl:hasValue>Agamidae</owl:hasValue>
        </owl:Restriction>
      </rdfs:subClassOf>
    </owl:Class>

    <owl:Class rdf:about="#Anomalepidae">
      <rdfs:subClassOf rdf:resource="#Reptile" />
      <rdfs:subClassOf>
        <owl:Restriction>
          <owl:onProperty rdf:resource="#family-name"/>
          <owl:hasValue>Anomalepidae</owl:hasValue>
        </owl:Restriction>
      </rdfs:subClassOf>
    </owl:Class>
          
    <owl:Class rdf:about="#Emydidae">
      <rdfs:subClassOf rdf:resource="#Reptile" />
      <rdfs:subClassOf>
        <owl:Restriction>
          <owl:onProperty rdf:resource="#family-name"/>
          <owl:hasValue>Emydidae</owl:hasValue>
        </owl:Restriction>
      </rdfs:subClassOf>
    </owl:Class>

    <owl:Class rdf:about="#Crocodylidae">
      <rdfs:subClassOf rdf:resource="#Reptile" />
      <rdfs:subClassOf>
        <owl:Restriction>
          <owl:onProperty rdf:resource="#family-name"/>
          <owl:hasValue>Crocodylidae</owl:hasValue>
        </owl:Restriction>
      </rdfs:subClassOf>
    </owl:Class>

    <owl:Class rdf:about="#Gekkonidae">
      <rdfs:subClassOf rdf:resource="#Reptile" />
      <rdfs:subClassOf>
        <owl:Restriction>
          <owl:onProperty rdf:resource="#family-name"/>
          <owl:hasValue>Gekkonidae</owl:hasValue>
        </owl:Restriction>
      </rdfs:subClassOf>
    </owl:Class>

    <owl:Class rdf:about="#Sphenodontidae">
      <rdfs:subClassOf rdf:resource="#Reptile" />
      <rdfs:subClassOf>
        <owl:Restriction>
          <owl:onProperty rdf:resource="#family-name"/>
          <owl:hasValue>Sphenodontidae</owl:hasValue>
        </owl:Restriction>
      </rdfs:subClassOf>
    </owl:Class>

    <owl:Class rdf:about="#Cordylidae">
      <rdfs:subClassOf rdf:resource="#Reptile" />
      <rdfs:subClassOf>
        <owl:Restriction>
          <owl:onProperty rdf:resource="#family-name"/>
          <owl:hasValue>Cordylidae</owl:hasValue>
        </owl:Restriction>
      </rdfs:subClassOf>
    </owl:Class>

    <owl:Class rdf:about="#Bipedidae">
      <rdfs:subClassOf rdf:resource="#Reptile" />
      <rdfs:subClassOf>
        <owl:Restriction>
          <owl:onProperty rdf:resource="#family-name"/>
          <owl:hasValue>Bipedidae</owl:hasValue>
        </owl:Restriction>
      </rdfs:subClassOf>
    </owl:Class>

    <owl:Class rdf:about="#Leptotyphlopidae">
      <rdfs:subClassOf rdf:resource="#Reptile" />
      <rdfs:subClassOf>
        <owl:Restriction>
          <owl:onProperty rdf:resource="#family-name"/>
          <owl:hasValue>Leptotyphlopidae</owl:hasValue>
        </owl:Restriction>
      </rdfs:subClassOf>
    </owl:Class>

    <owl:Class rdf:about="#Xantusiidae">
      <rdfs:subClassOf rdf:resource="#Reptile" />
      <rdfs:subClassOf>
        <owl:Restriction>
          <owl:onProperty rdf:resource="#family-name"/>
          <owl:hasValue>Xantusiidae</owl:hasValue>
        </owl:Restriction>
      </rdfs:subClassOf>
    </owl:Class>

    <owl:Class rdf:about="#Loxocemidae">
      <rdfs:subClassOf rdf:resource="#Reptile" />
      <rdfs:subClassOf>
        <owl:Restriction>
          <owl:onProperty rdf:resource="#family-name"/>
          <owl:hasValue>Loxocemidae</owl:hasValue>
        </owl:Restriction>
      </rdfs:subClassOf>
    </owl:Class>


</rdf:RDF>
first:Reptile rdf:type owl:Class .
_:a rdf:type owl:Restriction .
first:family-name rdf:type owl:DatatypeProperty .
_:a owl:onProperty first:family-name .
_:a owl:cardinality "1"^^xsd:int  .
first:Reptile rdfs:subClassOf _:a .
first:Amphisbaenidae rdf:type owl:Class .
first:Amphisbaenidae rdfs:subClassOf first:Reptile .
_:c rdf:type owl:Restriction .
_:c owl:onProperty first:family-name .
_:c owl:hasValue "Amphisbaenidae" .
first:Amphisbaenidae rdfs:subClassOf _:c .
first:Agamidae rdf:type owl:Class .
first:Agamidae rdfs:subClassOf first:Reptile .
_:e rdf:type owl:Restriction .
_:e owl:onProperty first:family-name .
_:e owl:hasValue "Agamidae" .
first:Agamidae rdfs:subClassOf _:e .
first:Anomalepidae rdf:type owl:Class .
first:Anomalepidae rdfs:subClassOf first:Reptile .
_:g rdf:type owl:Restriction .
_:g owl:onProperty first:family-name .
_:g owl:hasValue "Anomalepidae" .
first:Anomalepidae rdfs:subClassOf _:g .
first:Emydidae rdf:type owl:Class .
first:Emydidae rdfs:subClassOf first:Reptile .
_:i rdf:type owl:Restriction .
_:i owl:onProperty first:family-name .
_:i owl:hasValue "Emydidae" .
first:Emydidae rdfs:subClassOf _:i .
first:Crocodylidae rdf:type owl:Class .
first:Crocodylidae rdfs:subClassOf first:Reptile .
_:k rdf:type owl:Restriction .
_:k owl:onProperty first:family-name .
_:k owl:hasValue "Crocodylidae" .
first:Crocodylidae rdfs:subClassOf _:k .
first:Gekkonidae rdf:type owl:Class .
first:Gekkonidae rdfs:subClassOf first:Reptile .
_:m rdf:type owl:Restriction .
_:m owl:onProperty first:family-name .
_:m owl:hasValue "Gekkonidae" .
first:Gekkonidae rdfs:subClassOf _:m .
first:Sphenodontidae rdf:type owl:Class .
first:Sphenodontidae rdfs:subClassOf first:Reptile .
_:o rdf:type owl:Restriction .
_:o owl:onProperty first:family-name .
_:o owl:hasValue "Sphenodontidae" .
first:Sphenodontidae rdfs:subClassOf _:o .
first:Cordylidae rdf:type owl:Class .
first:Cordylidae rdfs:subClassOf first:Reptile .
_:q rdf:type owl:Restriction .
_:q owl:onProperty first:family-name .
_:q owl:hasValue "Cordylidae" .
first:Cordylidae rdfs:subClassOf _:q .
first:Bipedidae rdf:type owl:Class .
first:Bipedidae rdfs:subClassOf first:Reptile .
_:s rdf:type owl:Restriction .
_:s owl:onProperty first:family-name .
_:s owl:hasValue "Bipedidae" .
first:Bipedidae rdfs:subClassOf _:s .
first:Leptotyphlopidae rdf:type owl:Class .
first:Leptotyphlopidae rdfs:subClassOf first:Reptile .
_:u rdf:type owl:Restriction .
_:u owl:onProperty first:family-name .
_:u owl:hasValue "Leptotyphlopidae" .
first:Leptotyphlopidae rdfs:subClassOf _:u .
first:Xantusiidae rdf:type owl:Class .
first:Xantusiidae rdfs:subClassOf first:Reptile .
_:w rdf:type owl:Restriction .
_:w owl:onProperty first:family-name .
_:w owl:hasValue "Xantusiidae" .
first:Xantusiidae rdfs:subClassOf _:w .
first:Loxocemidae rdf:type owl:Class .
first:Loxocemidae rdfs:subClassOf first:Reptile .
_:y rdf:type owl:Restriction .
_:y owl:onProperty first:family-name .
_:y owl:hasValue "Loxocemidae" .
first:Loxocemidae rdfs:subClassOf _:y .
DLConclusions: <I5.21/conclusions002>
<rdf:RDF
    xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
    xmlns:owl="http://www.w3.org/2002/07/owl#"
    xml:base="http://www.w3.org/2002/03owlt/I5.21/conclusions002" >

    <owl:Class rdf:about="premises002#Amphisbaenidae">
      <owl:disjointWith rdf:resource="premises002#Agamidae"/>
      <owl:disjointWith rdf:resource="premises002#Anomalepidae"/>
      <owl:disjointWith rdf:resource="premises002#Emydidae"/>
      <owl:disjointWith rdf:resource="premises002#Crocodylidae"/>
      <owl:disjointWith rdf:resource="premises002#Gekkonidae"/>
      <owl:disjointWith rdf:resource="premises002#Sphenodontidae"/>
      <owl:disjointWith rdf:resource="premises002#Cordylidae"/>
      <owl:disjointWith rdf:resource="premises002#Bipedidae"/>
      <owl:disjointWith rdf:resource="premises002#Leptotyphlopidae"/>
      <owl:disjointWith rdf:resource="premises002#Xantusiidae"/>
      <owl:disjointWith rdf:resource="premises002#Loxocemidae"/>
    </owl:Class>

    <owl:Class rdf:about="premises002#Agamidae">
      <owl:disjointWith rdf:resource="premises002#Anomalepidae"/>
      <owl:disjointWith rdf:resource="premises002#Emydidae"/>
      <owl:disjointWith rdf:resource="premises002#Crocodylidae"/>
      <owl:disjointWith rdf:resource="premises002#Gekkonidae"/>
      <owl:disjointWith rdf:resource="premises002#Sphenodontidae"/>
      <owl:disjointWith rdf:resource="premises002#Cordylidae"/>
      <owl:disjointWith rdf:resource="premises002#Bipedidae"/>
      <owl:disjointWith rdf:resource="premises002#Leptotyphlopidae"/>
      <owl:disjointWith rdf:resource="premises002#Xantusiidae"/>
      <owl:disjointWith rdf:resource="premises002#Loxocemidae"/>
    </owl:Class>

    <owl:Class rdf:about="premises002#Anomalepidae">
      <owl:disjointWith rdf:resource="premises002#Emydidae"/>
      <owl:disjointWith rdf:resource="premises002#Crocodylidae"/>
      <owl:disjointWith rdf:resource="premises002#Gekkonidae"/>
      <owl:disjointWith rdf:resource="premises002#Sphenodontidae"/>
      <owl:disjointWith rdf:resource="premises002#Cordylidae"/>
      <owl:disjointWith rdf:resource="premises002#Bipedidae"/>
      <owl:disjointWith rdf:resource="premises002#Leptotyphlopidae"/>
      <owl:disjointWith rdf:resource="premises002#Xantusiidae"/>
      <owl:disjointWith rdf:resource="premises002#Loxocemidae"/>
    </owl:Class>

    <owl:Class rdf:about="premises002#Emydidae">
      <owl:disjointWith rdf:resource="premises002#Crocodylidae"/>
      <owl:disjointWith rdf:resource="premises002#Gekkonidae"/>
      <owl:disjointWith rdf:resource="premises002#Sphenodontidae"/>
      <owl:disjointWith rdf:resource="premises002#Cordylidae"/>
      <owl:disjointWith rdf:resource="premises002#Bipedidae"/>
      <owl:disjointWith rdf:resource="premises002#Leptotyphlopidae"/>
      <owl:disjointWith rdf:resource="premises002#Xantusiidae"/>
      <owl:disjointWith rdf:resource="premises002#Loxocemidae"/>
    </owl:Class>

    <owl:Class rdf:about="premises002#Crocodylidae">
      <owl:disjointWith rdf:resource="premises002#Gekkonidae"/>
      <owl:disjointWith rdf:resource="premises002#Sphenodontidae"/>
      <owl:disjointWith rdf:resource="premises002#Cordylidae"/>
      <owl:disjointWith rdf:resource="premises002#Bipedidae"/>
      <owl:disjointWith rdf:resource="premises002#Leptotyphlopidae"/>
      <owl:disjointWith rdf:resource="premises002#Xantusiidae"/>
      <owl:disjointWith rdf:resource="premises002#Loxocemidae"/>
    </owl:Class>

    <owl:Class rdf:about="premises002#Gekkonidae">
      <owl:disjointWith rdf:resource="premises002#Sphenodontidae"/>
      <owl:disjointWith rdf:resource="premises002#Cordylidae"/>
      <owl:disjointWith rdf:resource="premises002#Bipedidae"/>
      <owl:disjointWith rdf:resource="premises002#Leptotyphlopidae"/>
      <owl:disjointWith rdf:resource="premises002#Xantusiidae"/>
      <owl:disjointWith rdf:resource="premises002#Loxocemidae"/>
    </owl:Class>

    <owl:Class rdf:about="premises002#Sphenodontidae">
      <owl:disjointWith rdf:resource="premises002#Cordylidae"/>
      <owl:disjointWith rdf:resource="premises002#Bipedidae"/>
      <owl:disjointWith rdf:resource="premises002#Leptotyphlopidae"/>
      <owl:disjointWith rdf:resource="premises002#Xantusiidae"/>
      <owl:disjointWith rdf:resource="premises002#Loxocemidae"/>
    </owl:Class>

    <owl:Class rdf:about="premises002#Cordylidae">
      <owl:disjointWith rdf:resource="premises002#Bipedidae"/>
      <owl:disjointWith rdf:resource="premises002#Leptotyphlopidae"/>
      <owl:disjointWith rdf:resource="premises002#Xantusiidae"/>
      <owl:disjointWith rdf:resource="premises002#Loxocemidae"/>
    </owl:Class>

    <owl:Class rdf:about="premises002#Bipedidae">
      <owl:disjointWith rdf:resource="premises002#Leptotyphlopidae"/>
      <owl:disjointWith rdf:resource="premises002#Xantusiidae"/>
      <owl:disjointWith rdf:resource="premises002#Loxocemidae"/>
    </owl:Class>

    <owl:Class rdf:about="premises002#Leptotyphlopidae">
      <owl:disjointWith rdf:resource="premises002#Xantusiidae"/>
      <owl:disjointWith rdf:resource="premises002#Loxocemidae"/>
    </owl:Class>

    <owl:Class rdf:about="premises002#Xantusiidae">
      <owl:disjointWith rdf:resource="premises002#Loxocemidae"/>
    </owl:Class>

    <owl:Class rdf:about="premises002#Loxocemidae">
    </owl:Class>

</rdf:RDF>
first:Amphisbaenidae rdf:type owl:Class .
first:Amphisbaenidae owl:disjointWith first:Agamidae .
first:Amphisbaenidae owl:disjointWith first:Anomalepidae .
first:Amphisbaenidae owl:disjointWith first:Emydidae .
first:Amphisbaenidae owl:disjointWith first:Crocodylidae .
first:Amphisbaenidae owl:disjointWith first:Gekkonidae .
first:Amphisbaenidae owl:disjointWith first:Sphenodontidae .
first:Amphisbaenidae owl:disjointWith first:Cordylidae .
first:Amphisbaenidae owl:disjointWith first:Bipedidae .
first:Amphisbaenidae owl:disjointWith first:Leptotyphlopidae .
first:Amphisbaenidae owl:disjointWith first:Xantusiidae .
first:Amphisbaenidae owl:disjointWith first:Loxocemidae .
first:Agamidae rdf:type owl:Class .
first:Agamidae owl:disjointWith first:Anomalepidae .
first:Agamidae owl:disjointWith first:Emydidae .
first:Agamidae owl:disjointWith first:Crocodylidae .
first:Agamidae owl:disjointWith first:Gekkonidae .
first:Agamidae owl:disjointWith first:Sphenodontidae .
first:Agamidae owl:disjointWith first:Cordylidae .
first:Agamidae owl:disjointWith first:Bipedidae .
first:Agamidae owl:disjointWith first:Leptotyphlopidae .
first:Agamidae owl:disjointWith first:Xantusiidae .
first:Agamidae owl:disjointWith first:Loxocemidae .
first:Anomalepidae rdf:type owl:Class .
first:Anomalepidae owl:disjointWith first:Emydidae .
first:Anomalepidae owl:disjointWith first:Crocodylidae .
first:Anomalepidae owl:disjointWith first:Gekkonidae .
first:Anomalepidae owl:disjointWith first:Sphenodontidae .
first:Anomalepidae owl:disjointWith first:Cordylidae .
first:Anomalepidae owl:disjointWith first:Bipedidae .
first:Anomalepidae owl:disjointWith first:Leptotyphlopidae .
first:Anomalepidae owl:disjointWith first:Xantusiidae .
first:Anomalepidae owl:disjointWith first:Loxocemidae .
first:Emydidae rdf:type owl:Class .
first:Emydidae owl:disjointWith first:Crocodylidae .
first:Emydidae owl:disjointWith first:Gekkonidae .
first:Emydidae owl:disjointWith first:Sphenodontidae .
first:Emydidae owl:disjointWith first:Cordylidae .
first:Emydidae owl:disjointWith first:Bipedidae .
first:Emydidae owl:disjointWith first:Leptotyphlopidae .
first:Emydidae owl:disjointWith first:Xantusiidae .
first:Emydidae owl:disjointWith first:Loxocemidae .
first:Crocodylidae rdf:type owl:Class .
first:Crocodylidae owl:disjointWith first:Gekkonidae .
first:Crocodylidae owl:disjointWith first:Sphenodontidae .
first:Crocodylidae owl:disjointWith first:Cordylidae .
first:Crocodylidae owl:disjointWith first:Bipedidae .
first:Crocodylidae owl:disjointWith first:Leptotyphlopidae .
first:Crocodylidae owl:disjointWith first:Xantusiidae .
first:Crocodylidae owl:disjointWith first:Loxocemidae .
first:Gekkonidae rdf:type owl:Class .
first:Gekkonidae owl:disjointWith first:Sphenodontidae .
first:Gekkonidae owl:disjointWith first:Cordylidae .
first:Gekkonidae owl:disjointWith first:Bipedidae .
first:Gekkonidae owl:disjointWith first:Leptotyphlopidae .
first:Gekkonidae owl:disjointWith first:Xantusiidae .
first:Gekkonidae owl:disjointWith first:Loxocemidae .
first:Sphenodontidae rdf:type owl:Class .
first:Sphenodontidae owl:disjointWith first:Cordylidae .
first:Sphenodontidae owl:disjointWith first:Bipedidae .
first:Sphenodontidae owl:disjointWith first:Leptotyphlopidae .
first:Sphenodontidae owl:disjointWith first:Xantusiidae .
first:Sphenodontidae owl:disjointWith first:Loxocemidae .
first:Cordylidae rdf:type owl:Class .
first:Cordylidae owl:disjointWith first:Bipedidae .
first:Cordylidae owl:disjointWith first:Leptotyphlopidae .
first:Cordylidae owl:disjointWith first:Xantusiidae .
first:Cordylidae owl:disjointWith first:Loxocemidae .
first:Bipedidae rdf:type owl:Class .
first:Bipedidae owl:disjointWith first:Leptotyphlopidae .
first:Bipedidae owl:disjointWith first:Xantusiidae .
first:Bipedidae owl:disjointWith first:Loxocemidae .
first:Leptotyphlopidae rdf:type owl:Class .
first:Leptotyphlopidae owl:disjointWith first:Xantusiidae .
first:Leptotyphlopidae owl:disjointWith first:Loxocemidae .
first:Xantusiidae rdf:type owl:Class .
first:Xantusiidae owl:disjointWith first:Loxocemidae .
first:Loxocemidae rdf:type owl:Class .

7.2.9. IF-or-IFF-property-properties

Full Positive Entailment Test:001
Description: (informative) <I5.24/Manifest001#test>
This entailment is similar to one that does not hold in RDFS.
N3 format is informative.
FullPremises: <I5.24/premises001>
<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:owl="http://www.w3.org/2002/07/owl#"
    xml:base="http://www.w3.org/2002/03owlt/I5.24/premises001" >

   <rdf:Property rdf:ID="prop">
     <rdfs:range>
        <owl:Class rdf:ID="A">
          <rdfs:subClassOf>
             <owl:Class rdf:ID="B"/>
          </rdfs:subClassOf>
        </owl:Class>
      </rdfs:range>
    </rdf:Property>

</rdf:RDF>
first:prop rdf:type rdf:Property .
first:A rdf:type owl:Class .
first:B rdf:type owl:Class .
first:A rdfs:subClassOf first:B .
first:prop rdfs:range first:A .
FullConclusions: <I5.24/conclusions001>
<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:owl="http://www.w3.org/2002/07/owl#"
    xml:base="http://www.w3.org/2002/03owlt/I5.24/conclusions001" >

   <rdf:Property rdf:about="premises001#prop">
     <rdfs:range>
        <owl:Class rdf:about="premises001#B"/>
     </rdfs:range>
   </rdf:Property>

</rdf:RDF>
first:prop rdf:type rdf:Property .
first:B rdf:type owl:Class .
first:prop rdfs:range first:B .

Full Positive Entailment Test:002
Description: (informative) <I5.24/Manifest002#test>
OWL, unlike RDFS, uses iff semantics for range.
N3 format is informative.
FullPremises: <I5.24/premises002>
<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:owl="http://www.w3.org/2002/07/owl#"
    xml:base="http://www.w3.org/2002/03owlt/I5.24/premises002" >

   <rdf:Property rdf:ID="prop">
     <rdfs:range rdf:resource="#A"/>
     <rdfs:range rdf:resource="#B"/>
   </rdf:Property>

</rdf:RDF>
first:prop rdf:type rdf:Property .
first:prop rdfs:range first:A .
first:prop rdfs:range first:B .
FullConclusions: <I5.24/conclusions002>
<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:owl="http://www.w3.org/2002/07/owl#"
    xml:base="http://www.w3.org/2002/03owlt/I5.24/conclusions002" >

   <rdf:Property rdf:about="premises002#prop">
     <rdfs:range>
        <owl:Class>
           <owl:intersectionOf rdf:parseType="Collection">
              <rdf:Description rdf:about="premises002#A"/>
              <rdf:Description rdf:about="premises002#B"/>
           </owl:intersectionOf>
        </owl:Class>
     </rdfs:range>
   </rdf:Property>

</rdf:RDF>
first:prop rdf:type rdf:Property .
_:a rdf:type owl:Class .
_:c rdf:first first:B .
_:c rdf:rest rdf:nil .
_:e rdf:first first:A .
_:e rdf:rest _:c .
_:a owl:intersectionOf _:e .
first:prop rdfs:range _:a .

Lite Full Positive Entailment Test:003
Description: (informative) <I5.24/Manifest003#test>
This is a typical definition of range from description logic.
N3 format is informative.
LitePremises: <I5.24/premises003>
<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:owl="http://www.w3.org/2002/07/owl#"
    xml:base="http://www.w3.org/2002/03owlt/I5.24/premises003" >
  <owl:ObjectProperty rdf:ID="prop">
     <rdfs:range>
        <owl:Class rdf:about="#A"/>
     </rdfs:range>
  </owl:ObjectProperty>
</rdf:RDF>
first:prop rdf:type owl:ObjectProperty .
first:A rdf:type owl:Class .
first:prop rdfs:range first:A .
LiteConclusions: <I5.24/conclusions003>
<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:owl="http://www.w3.org/2002/07/owl#"
    xml:base="http://www.w3.org/2002/03owlt/I5.24/conclusions003" >
  
   <owl:Class rdf:about="http://www.w3.org/2002/07/owl#Thing">
      <rdfs:subClassOf>
          <owl:Restriction>
             <owl:onProperty>
               <owl:ObjectProperty rdf:about="premises003#prop"/>
             </owl:onProperty>
             <owl:allValuesFrom>
               <owl:Class rdf:about="premises003#A"/>
              </owl:allValuesFrom>
          </owl:Restriction>
       </rdfs:subClassOf>
   </owl:Class>

</rdf:RDF>
owl:Thing rdf:type owl:Class .
_:a rdf:type owl:Restriction .
first:prop rdf:type owl:ObjectProperty .
_:a owl:onProperty first:prop .
first:A rdf:type owl:Class .
_:a owl:allValuesFrom first:A .
owl:Thing rdfs:subClassOf _:a .

Lite Full Positive Entailment Test:004
Description: (informative) <I5.24/Manifest004#test>
This is a typical definition of range from description logic. It works both ways.
N3 format is informative.
LitePremises: <I5.24/premises004>
<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:owl="http://www.w3.org/2002/07/owl#"
    xml:base="http://www.w3.org/2002/03owlt/I5.24/premises004" >
   <owl:Class rdf:about="http://www.w3.org/2002/07/owl#Thing">
      <rdfs:subClassOf>
          <owl:Restriction>
             <owl:onProperty>
               <owl:ObjectProperty rdf:about="conclusions004#prop"/>
             </owl:onProperty>
             <owl:allValuesFrom>
               <owl:Class rdf:about="conclusions004#A"/>
              </owl:allValuesFrom>
          </owl:Restriction>
       </rdfs:subClassOf>
   </owl:Class>

</rdf:RDF>
owl:Thing rdf:type owl:Class .
_:a rdf:type owl:Restriction .
second:prop rdf:type owl:ObjectProperty .
_:a owl:onProperty second:prop .
second:A rdf:type owl:Class .
_:a owl:allValuesFrom second:A .
owl:Thing rdfs:subClassOf _:a .
LiteConclusions: <I5.24/conclusions004>
<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:owl="http://www.w3.org/2002/07/owl#"
    xml:base="http://www.w3.org/2002/03owlt/I5.24/conclusions004" >
  <owl:ObjectProperty rdf:ID="prop">
     <rdfs:range>
        <owl:Class rdf:about="#A"/>
     </rdfs:range>
  </owl:ObjectProperty>
</rdf:RDF>
second:prop rdf:type owl:ObjectProperty .
second:A rdf:type owl:Class .
second:prop rdfs:range second:A .

7.2.10. OWL DL Sytntax

Full (EC) Consistent document.001
Description: (informative) <I5.26/Manifest001#test>
Structure sharing is not permitted in OWL DL, between a class description and a type triple.
N3 format is informative.
FullConsistent: <I5.26/consistent001>
<rdf:RDF
    xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
    xmlns:owl="http://www.w3.org/2002/07/owl#"
    xml:base="http://www.w3