W3C

OWL Web Ontology Language
Test Cases

W3C Recommendation 10 February 2004 (alternative version)

This version:
http://www.w3.org/TR/2004/REC-owl-test-20040210/
Latest version:
http://www.w3.org/TR/owl-test/
Previous version:
http://www.w3.org/TR/2003/PR-owl-test-20031215/
Editors:
Jeremy J. Carroll, HP <jjc@hpl.hp.com>
Jos De Roo, AGFA,<jos.deroo@agfa.com>

Please refer to the errata for this document, which may include some normative corrections.

The normative version of this document is a compound document. Non-normative versions consisting of a single HTML file are available in three sizes: medium, large (this version), and extra large. The tests of this document are also available in these non-normative formats: Zip archive of approved tests, the test Web site.

See also translations.


Abstract

This document contains and presents test cases for the Web Ontology Language (OWL) approved by the Web Ontology Working Group. Many of the test cases illustrate the correct usage of the Web Ontology Language (OWL), and the formal meaning of its constructs. Other test cases illustrate the resolution of issues considered by the Working Group. Conformance for OWL documents and OWL document checkers is specified.

Status of this document

See the normative compound HTML document for document status.


Table of Contents


1. Introduction

As part of the definition of the Web Ontology Language (OWL) the Web Ontology Working Group provides a set of test cases. This document presents those test cases. They are intended to provide examples for, and clarification of, the normative definition of OWL found in [OWL Semantics and Abstract Syntax] to which this document is subsidiary.

This document is one component of the description of OWL, the Web Ontology Language, being produced by the W3C Web Ontology Working Group. The Document Roadmap section of the [OWL Overview] describes each of the different parts and how they fit together.

This document describes the various types of test used and the format in which the tests are presented. Alternative formats of the test collection are provided. These are intended to be suitable for use by OWL developers in test harnesses, possibly as part of a test driven development process, such as Extreme Programming [XP]. The format of the Manifest files used as part of these alternative formats is described.

In the non-normative appendices, this document also describes the process for creation and approval of these tests.

1.1. Conformance and Scope

Various conformance levels are defined in this document in terms of [OWL Semantics and Abstract Syntax].

However, the test cases do not constitute a conformance test suite for OWL, since they are silent on several important issues. This document cannot be considered a complete specification of OWL.

The tests illustrate issue resolutions, and illustrate the use and meaning of the terms in the OWL namespace.

There are other miscellaneous tests: some arising in the literature, and in preexisting systems; others intending to show the difficulty of complete implementations of OWL Full.

2. Deliverables (Normative)

The deliverables included as part of the test cases are:

Note: Other files can be found under the top URL of the Web site which are not part of the deliverable.

2.1. Normative Status

Of the deliverables the only normative tests are those included in this document. All other deliverables are informative. Moreover, the recommendation document is informative except for the conformance statements, the test data (specified in RDF/XML [RDF Syntax]), and the supporting documentation.

2.2. Extra Credit Tests

The Web Ontology Working Group has seen adequate implementation experience of most of the tests in this document. Some, however, are particularly difficult to implement efficiently. These are labelled as extra credit tests. Such tests indicate the semantics of OWL, but may use features that are not sufficiently widely implemented to provide good interoperability.

A general case of extra credit tests is that all OWL Full nonentailments and consistency tests are extra credit tests. This is because typical OWL Full implementations prove entailments but cannot prove nonentailments.

Extra credit tests are labelled with "EC" within this document and with status EXTRACREDIT in the manifest files.

The name indicates that there is no expectation that any implementation will successfully run such tests and any that do gain extra credit.

3. Test Types (Normative)

Each test consists of one or more RDF/XML documents and a Manifest file. Tests of one document indicate some property of that document when viewed as an OWL knowledge base. Tests of two or more documents indicate a relationship between the two documents when viewed as OWL knowledge bases.

The Manifest file is named ManifestNNN.rdf (The NNN is replaced by the test number). It contains metadata (in RDF) indicating the test type, and describing the test.

The metadata also indicates the language levels appropriate for each test and each document in each test. For each RDF/XML document, one language level is indicated, being OWL Lite, OWL DL or OWL Full, as given by the syntactic rules in [OWL Semantics and Abstract Syntax]. For semantic tests, one or two language levels are indicated. If the language level OWL Full is indicated for a semantic test, then the test holds according to the RDF-Compatible Model-Theoretic Semantics in [OWL Semantics and Abstract Syntax]. If the language level OWL Lite or OWL DL is indicated for a semantic test, then the test holds according to the Direct Model-Theoretic Semantics in [OWL Semantics and Abstract Syntax]. If the language level OWL Lite is indicated for a semantic test, then the test only uses features within the OWL Lite sublanguage.

Some of the tests require that certain datatypes are, or are not, supported in the datatype map [OWL Semantics and Abstract Syntax]. These are indicated with the test. Other datatypes which are used in the test are also indicated: the test applies whether or not these are supported in the datatype map . The datatypes xsd:integer, xsd:string from [XML Schema Datatypes] are not indicated, even when used or required, since they must be supported.

3.1. Tests for Incorrect Use of OWL Namespace

These tests use one document. It is named badNNN.rdf. This document includes a use of the OWL namespace with a local name that is not defined by the OWL recommendation. An OWL Syntax checker SHOULD give a warning.

Note: These tests are intended to help migration from DAML+OIL [DAML+OIL], since the local names chosen are defined in the DAML+OIL namespace.

3.2. Entailment Tests

These tests use two documents. One is named premisesNNN.rdf, the other is named conclusionsNNN.rdf. The conclusions are entailed by the premises. Such entailment is defined by the OWL semantics [OWL Semantics and Abstract Syntax], (see also OWL Full entailment).

3.3. Non-Entailment Tests

These tests use two documents. One is named premisesNNN.rdf, the other is named nonconclusionsNNN.rdf. The nonconclusions are not entailed by the premises. Such entailment is defined by the OWL semantics [OWL Semantics and Abstract Syntax], (see also OWL Full entailment).

Exceptionally, test imports-002 includes a third document.

3.4. True Tests

These tests use one document. It is named conclusionsNNN.rdf. The conclusions follow from the OWL semantics [OWL Semantics and Abstract Syntax]. These tests are a special case of the entailment tests in which the premises are empty.

3.5. OWL for OWL Tests

These tests use one document. It is named conclusionsNNN.rdf. These are a special case of true tests. The conclusions follow from the OWL Full semantics [OWL Semantics and Abstract Syntax]. The tests are intended to illustrate how OWL Full can be used to describe its own properties and classes.

3.6. Consistency Tests

These tests use one document. It is named consistentNNN.rdf. The document is consistent as defined by the OWL Semantics [OWL Semantics and Abstract Syntax], (see also OWL Full consistency).

3.7. Inconsistency Tests

These tests use one document. It is named inconsistentNNN.rdf. The document is not consistent as defined by the OWL semantics [OWL Semantics and Abstract Syntax], (see also OWL Full consistency).

3.8. Import Entailment Tests

These tests use more than two documents. One is named premisesNNN.rdf, another is named conclusionsNNN.rdf, the rest have names like supportNNN-A.rdf. The support documents are in the imports closure of the premises document. The conclusions are entailed by the imports closure of the premises. Such entailment is defined by the OWL semantics [OWL Semantics and Abstract Syntax], (see also OWL Full entailment).

3.9. Import Level Tests

These tests use two documents. One is named importsNNN.rdf, the other is named mainNNN.rdf. These tests indicate the interaction between owl:imports and the sublanguage levels of the main document.

4. Conformance (Normative)

4.1. Document Conformance

4.1.1. Syntactic Conformance

An OWL Full document is any RDF/XML document [RDF Syntax].

An OWL DL document is an OWL Full document such that the imports closure [OWL Semantics and Abstract Syntax] of the corresponding RDF graph [RDF Concepts] is an OWL DL ontology in RDF graph form.

An OWL Lite document is an OWL Full document such that the imports closure [OWL Semantics and Abstract Syntax] of the corresponding RDF graph [RDF Concepts] is an OWL Lite ontology in RDF graph form.

4.1.2. Semantic Conformance

An OWL Lite or OWL DL document D is OWL DL consistent with respect to a datatype map T if and only if there is some abstract OWL interpretation I with respect to T such that I satisfies an abstract ontology O corresponding to D, in which O has a separated vocabulary; (see [OWL Semantics and Abstract Syntax]).

An OWL Full document D is OWL Full consistent with respect to a datatype map T, if and only if there is some OWL Full interpretation I with respect to T such that I satisfies all the RDF graphs in some imports closed collection containing an RDF graph corresponding to D.

4.2. Document Checker Conformance

This section uses the words MUST, MUST NOT, SHOULD and MAY as in [RFC 2119].

4.2.1. Syntax Checker

An OWL syntax checker takes a document as input, and returns one word being one of Lite, DL, Full, Other.

The return value MUST conform with the following:

Lite
The input document is an OWL Lite document.
DL
The input document is an OWL DL document but not an OWL Lite document.
Full
The input document is an OWL Full document but not an OWL DL document.
Other
The input document is not an OWL Full document.

In addition, an OWL Syntax Checker SHOULD report a warning if the RDF graph [RDF Concepts] corresponding to the document uses any URI references starting with the prefix http://www.w3.org/2002/07/owl# except those found in the [RDF Schema for OWL].

An OWL syntax checker SHOULD report network errors occurring during the computation of the imports closure.

4.2.2. Consistency Checker

An OWL consistency checker takes a document as input, and returns one word being Consistent, Inconsistent, or Unknown.

An OWL consistency checker SHOULD report network errors occurring during the computation of the imports closure.

An OWL consistency checker MUST provide a means to determine the datatypes supported by its datatype map, [OWL Semantics and Abstract Syntax]; for example, by listing them in its supporting documentation.

An OWL consistency checker MUST provide a means to determine the model theory [OWL Semantics and Abstract Syntax], it uses (either the Direct Model-Theoretic Semantics or the RDF-Compatible Model-Theoretic Semantics); for example, in its supporting documentation.

An OWL consistency checker MUST be sound: it MUST return Consistent only when the input document is consistent and Inconsistent only when the input document is not consistent, with respect to the datatype map of the checker.

If an input document uses datatypes that are not supported by the datatype map of an OWL consistency checker then it MAY report a warning.

An OWL consistency checker is complete and terminating, if, given sufficient (but finite) resources (CPU cycles and memory) and the absence of network errors, it will always return either Consistent or Inconsistent. It has been shown that for OWL Lite and DL it is possible to construct a complete and terminating consistency checker (the languages are decidable), and that for OWL full it is not possible to construct a complete and terminating consistency checker (the language is undecidable, [Practical Reasoning]).

The datatype map of an OWL consistency checker MUST minimally support at least xsd:integer, xsd:string from [XML Schema Datatypes].

An OWL consistency checker SHOULD NOT return Unknown. Unknown, while sometimes needed, is not a desired response.

Four different conformance classes of OWL consistency checker are defined.

An OWL Lite consistency checker is an OWL consistency checker that takes an OWL Lite document as input, and uses the Direct Model-Theoretic Semantics.

An OWL DL consistency checker is an OWL consistency checker that takes an OWL DL document as input and uses the Direct Model-Theoretic Semantics.

An OWL Full consistency checker is an OWL consistency checker that takes an OWL Full document as input and uses the RDF-Compatible Model-Theoretic Semantics.

The datatype map of an OWL Full consistency checker MUST also support rdf:XMLLiteral from [RDF Concepts], see [RDF Semantics].

A complete OWL Lite consistency checker is an OWL Lite consistency checker that is complete and terminating.

Note: An OWL Full consistency checker may indicate that an OWL DL document is inconsistent, while an OWL DL consistency checker indicates that the same document is consistent, (for example: compare test Thing-005 with Thing-004 or compare AnnotationProperty-001 with AnnotationProperty-002). Every OWL DL consistency checker is also an OWL Lite consistency checker.

Note: A complete OWL Lite consistency checker MAY return Unknown for an OWL Lite document in the case where a resource limit has been exceeded.

Note: The usage of the word 'complete' in this section follows the conventions of the description logic community. In some other communities the word 'complete' is used in a weaker sense, refering to the detection of inconsistency by logical inference systems.

5. Testing an OWL Implementation (Informative)

5.1. OWL Syntax Checkers

An OWL syntax checker when presented with any of the test files must return the indicated result. This includes the extra credit tests.

5.2. OWL Consistency Checker

An OWL consistency checker can be tested using appropriate consistency and inconsistency tests. Appropriate tests are those of an appropriate level and for which the checker has appropriate datatype support. The level of the test indicates the semantic theory being used, which may differ from the level of the file. For example, test Thing-004 contains an OWL DL file which is consistent as an OWL DL consistency test, but inconsistent as an OWL Full consistency test.

An OWL consistency checker has appropriate datatype support for a test if both:

An OWL Lite consistency checker with appropriate datatype support, when presented with a file from an OWL Lite consistency test, must return Consistent or Unknown.

An OWL DL consistency checker with appropriate datatype support, when presented with a file from an OWL DL or OWL Lite consistency test, must return Consistent or Unknown.

An OWL Full consistency checker with appropriate datatype support, when presented with a file from an OWL Full consistency test, must return Consistent or Unknown.

The corresponding inconsistency tests must return Inconsistent or Unknown.

A complete OWL Lite consistency checker should not return Unknown on the OWL Lite consistency or inconsistency tests, regardless of the use of unsupported datatypes.

The above constraints also apply to extra credit tests. Consistency checkers that return the correct answer (i.e. not Unknown) gain the extra credit.

6. Manifest Files (Informative)

The Manifest file follows the RDF schema developed for the RDF Test Cases [RDF Tests].

This is augmented by a few new properties and types which are declared in the OWL Test Ontology, found at http://www.w3.org/2002/03owlt/testOntology.

Specifically each test has its own Manifest file, and is identified from the URI reference formed from the Manifest file's URL with a fragment test.

The test has one rdf:type explicit, and this is one of:

otest:NotOwlFeatureTest
A test for the incorrect use of the OWL namespace name.
otest:PositiveEntailmentTest
An entailment test.
otest:NegativeEntailmentTest
A non-entailment test.
otest:TrueTest
A true test.
otest:OWLforOWLTest
An OWL for OWL test.
otest:ConsistencyTest
A consistency test.
otest:InconsistencyTest
An inconsistency test.
otest:ImportEntailmentTest
An import entailment test.
otest:ImportLevelTest
An import level test.

Where otest is bound to http://www.w3.org/2002/03owlt/testOntology# and rtest is bound to http://www.w3.org/2000/10/rdf-tests/rdfcore/testSchema#.

The name of the original author of the test is shown using a dc:creator property, see [Dublin Core].

A description of the test is given (using XHTML markup [XHTML]) as the value of the rtest:description property.

An issue, if any, from the OWL Issues list [OWL Issues], is the value of a rtest:issue property.

An appropriate language feature, from the OWL namespace, if any, is the value of the otest:feature property.

The input documents with the test data are found as the value of the rtest:inputDocument property or as the value of both the rtest:premiseDocument and the rtest:conclusionDocument. The support files for import entailment tests, import level tests and test imports-002 are found as the values of otest:importedPremiseDocument.

The conformance levels associated with both files and tests are given with the otest:level property. The value for each document is one of otest:Full, otest:DL, otest:Lite or otest:Other. Each test is explicitly associated with one or two levels. If it is associated with otest:Lite then it is implicitly suitable for otest:DL.

The datatypes used in the test are given with the otest:usedDatatype property or with one of its subproperties: otest:supportedDatatype or otest:notSupportedDatatype. These indicate that the test is only valid when the datatype is supported or not supported respectively by the datatype map being used.

The rtest:status of the test reflects the process of appendix A. It is given as one of the following levels:

APPROVED
This indicates that the test has been approved by the Web Ontology Working Group, and that implementors are expected to implement such functionality.
EXTRACREDIT
This indicates that the test has been approved by the Web Ontology Working Group, but that implementors are not expected to implement such functionality.
PROPOSED
This indicates that the test is awaiting approval.
OBSOLETED
The test, which was proposed or approved, has ceased to be appropriate.
REJECTED
The Web Ontology Working Group rejected the test (not used).

7. The OWL Tests (Normative)

7.1. By Function

7.1.1. owl:AllDifferent

Full Positive Entailment Test:001
Description: (informative) <AllDifferent/Manifest001#test>
using AllDifferent to derive differentFrom
N3 format is informative.
FullPremises: <AllDifferent/premises001>
<rdf:RDF
    xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
    xmlns:owl="http://www.w3.org/2002/07/owl#"
    xmlns:first="http://www.w3.org/2002/03owlt/AllDifferent/premises001#"
    xml:base="http://www.w3.org/2002/03owlt/AllDifferent/premises001" >

    <owl:AllDifferent> 
      <owl:distinctMembers rdf:parseType="Collection">
        <first:Person rdf:about="#Fred" />
        <first:Person rdf:about="#Wilma" />
        <first:Person rdf:about="#Barney" />
        <first:Person rdf:about="#Betty" />
      </owl:distinctMembers>
    </owl:AllDifferent> 

</rdf:RDF>
_:a rdf:type owl:AllDifferent .
first:Fred rdf:type first:Person .
first:Wilma rdf:type first:Person .
first:Barney rdf:type first:Person .
first:Betty rdf:type first:Person .
_:c rdf:first first:Betty .
_:c rdf:rest rdf:nil .
_:e rdf:first first:Barney .
_:e rdf:rest _:c .
_:g rdf:first first:Wilma .
_:g rdf:rest _:e .
_:i rdf:first first:Fred .
_:i rdf:rest _:g .
_:a owl:distinctMembers _:i .
FullConclusions: <AllDifferent/conclusions001>
<rdf:RDF
    xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
    xmlns:owl="http://www.w3.org/2002/07/owl#"
    xmlns:first="http://www.w3.org/2002/03owlt/AllDifferent/premises001#"
    xml:base="http://www.w3.org/2002/03owlt/AllDifferent/conclusions001" >

    <rdf:Description rdf:about="premises001#Barney">
        <owl:differentFrom rdf:resource="premises001#Fred"/>
    </rdf:Description>

</rdf:RDF>
first:Barney owl:differentFrom first:Fred .

7.1.2. owl:AnnotationProperty

Lite Negative Entailment Test:001
Description: (informative) <AnnotationProperty/Manifest001#test>
The semantics of annotations in the direct semantics strictly distinguishes class valued annotations from individual valued annotations.
N3 format is informative.
LitePremises: <AnnotationProperty/premises001>
<rdf:RDF
    xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
    xmlns:owl="http://www.w3.org/2002/07/owl#"
    xmlns:first="http://www.w3.org/2002/03owlt/AnnotationProperty/premises001#"
    xml:base="http://www.w3.org/2002/03owlt/AnnotationProperty/premises001" >

  <owl:Class rdf:ID="A">
    <first:ap>
       <owl:Class rdf:ID="B"/>
    </first:ap>
  </owl:Class>
  <owl:AnnotationProperty rdf:ID="ap"/>

</rdf:RDF>
first:A rdf:type owl:Class .
first:B rdf:type owl:Class .
first:A first:ap first:B .
first:ap rdf:type owl:AnnotationProperty .
LiteConclusions: <AnnotationProperty/nonconclusions001>
<rdf:RDF
    xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
    xmlns:owl="http://www.w3.org/2002/07/owl#"
    xmlns:first="http://www.w3.org/2002/03owlt/AnnotationProperty/premises001#"
    xml:base="http://www.w3.org/2002/03owlt/AnnotationProperty/nonconclusions001" >

  <owl:Class rdf:about="premises001#A">
    <first:ap>
       <owl:Thing />
    </first:ap>
  </owl:Class>
  <owl:AnnotationProperty rdf:about="premises001#ap"/>

</rdf:RDF>
first:A rdf:type owl:Class .
_:a rdf:type owl:Thing .
first:A first:ap _:a .
first:ap rdf:type owl:AnnotationProperty .

Full Positive Entailment Test:002
Description: (informative) <AnnotationProperty/Manifest002#test>
Under the rdfs compatible semantics, the previous non-entailment is, in fact, an entailment.
N3 format is informative.
LitePremises: <AnnotationProperty/premises002>
<rdf:RDF
    xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
    xmlns:owl="http://www.w3.org/2002/07/owl#"
    xmlns:first="http://www.w3.org/2002/03owlt/AnnotationProperty/premises002#"
    xml:base="http://www.w3.org/2002/03owlt/AnnotationProperty/premises002" >

  <owl:Class rdf:ID="A">
    <first:ap>
       <owl:Class rdf:ID="B"/>
    </first:ap>
  </owl:Class>
  <owl:AnnotationProperty rdf:ID="ap"/>

</rdf:RDF>
first:A rdf:type owl:Class .
first:B rdf:type owl:Class .
first:A first:ap first:B .
first:ap rdf:type owl:AnnotationProperty .
LiteConclusions: <AnnotationProperty/conclusions002>
<rdf:RDF
    xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
    xmlns:owl="http://www.w3.org/2002/07/owl#"
    xmlns:first="http://www.w3.org/2002/03owlt/AnnotationProperty/premises002#"
    xml:base="http://www.w3.org/2002/03owlt/AnnotationProperty/conclusions002" >

  <owl:Class rdf:about="premises002#A">
    <first:ap>
       <owl:Thing />
    </first:ap>
  </owl:Class>
  <owl:AnnotationProperty rdf:about="premises002#ap"/>

</rdf:RDF>
first:A rdf:type owl:Class .
_:a rdf:type owl:Thing .
first:A first:ap _:a .
first:ap rdf:type owl:AnnotationProperty .

Full (EC) Consistent document.003
Description: (informative) <AnnotationProperty/Manifest003#test>
URI references used in annotations don't need to be typed.
N3 format is informative.
LiteConsistent: <AnnotationProperty/consistent003>
<rdf:RDF
    xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
    xmlns:owl="http://www.w3.org/2002/07/owl#"
    xmlns:first="http://www.w3.org/2002/03owlt/AnnotationProperty/consistent003#"
    xml:base="http://www.w3.org/2002/03owlt/AnnotationProperty/consistent003" >

  <owl:AnnotationProperty rdf:ID="ap"/>

  <owl:Class rdf:ID="A">
    <first:ap>
       <rdf:Description rdf:ID="B"/>
    </first:ap>
  </owl:Class>

</rdf:RDF>
first:ap rdf:type owl:AnnotationProperty .
first:A rdf:type owl:Class .
first:A first:ap first:B .

Full (EC) Consistent document.004
Description: (informative) <AnnotationProperty/Manifest004#test>
AnnotationProperty's in OWL Lite and OWL DL, may not have range constraints.
N3 format is informative.
FullConsistent: <AnnotationProperty/consistent004>
<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/AnnotationProperty/consistent004" >

   <owl:AnnotationProperty rdf:ID="ap">
     <rdfs:range rdf:resource=
  "http://www.w3.org/2001/XMLSchema#string"/>
   </owl:AnnotationProperty>
</rdf:RDF>
first:ap rdf:type owl:AnnotationProperty .
first:ap rdfs:range xsd:string .

7.1.3. owl:Class

Full OWL described in OWL.001
Description: (informative) <Class/Manifest001#test>
In OWL Full every rdfs:Class is an owl:Class, in particular rdfs:Class is an owl:Class.
N3 format is informative.
FullTrue: <Class/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/Class/conclusions001" >
   <owl:Class rdf:about="http://www.w3.org/2000/01/rdf-schema#Class">
     <owl:equivalentClass>
       <rdfs:Class rdf:about="http://www.w3.org/2002/07/owl#Class"/>
     </owl:equivalentClass>
   </owl:Class>
</rdf:RDF>
rdfs:Class rdf:type owl:Class .
owl:Class rdf:type rdfs:Class .
rdfs:Class owl:equivalentClass owl:Class .

Full Positive Entailment Test:002
Description: (informative) <Class/Manifest002#test>
In OWL Full, the triple in the premises is synonymous with the triple in the conclusions.
N3 format is informative.
FullPremises: <Class/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#"
    xml:base="http://www.w3.org/2002/03owlt/Class/premises002" >
   <rdfs:Class rdf:ID="ex"/>

</rdf:RDF>
first:ex rdf:type rdfs:Class .
LiteConclusions: <Class/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/Class/conclusions002" >
   <owl:Class rdf:about="premises002#ex"/>

</rdf:RDF>
first:ex rdf:type owl:Class .

Full Positive Entailment Test:003
Description: (informative) <Class/Manifest003#test>
In OWL Full, the triple in the premises is synonymous with the triple in the conclusions.
N3 format is informative.
LitePremises: <Class/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/Class/premises003" >
   <owl:Class rdf:ID="ex"/>

</rdf:RDF>
first:ex rdf:type owl:Class .
FullConclusions: <Class/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#"
    xml:base="http://www.w3.org/2002/03owlt/Class/conclusions003" >
   <rdfs:Class rdf:about="premises003#ex"/>

</rdf:RDF>
first:ex rdf:type rdfs:Class .

Full (EC) Negative Entailment Test:004
Description: (informative) <Class/Manifest004#test>
Annotations about owl:Class are not related to those about rdfs:Class.
N3 format is informative.
Namespaces:
@prefix dc: <http://purl.org/dc/elements/1.0/> .
FullPremises: <Class/premises004>
<rdf:RDF
    xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
    xmlns:owl="http://www.w3.org/2002/07/owl#"
    xmlns:first="http://www.w3.org/2002/03owlt/Class/premises004#"
    xmlns:dc='http://purl.org/dc/elements/1.0/'
    xml:base="http://www.w3.org/2002/03owlt/Class/premises004" >
   <owl:Class rdf:ID="WorkingGroup"/>
   <owl:Class rdf:about="http://www.w3.org/2000/01/rdf-schema#Class">
     <dc:creator>
        <first:WorkingGroup 
          rdf:about="http://www.w3.org/RDF/Group/Schema/members" />
     </dc:creator>
   </owl:Class>
</rdf:RDF>
first:WorkingGroup rdf:type owl:Class .
rdfs:Class rdf:type owl:Class .
<http://www.w3.org/RDF/Group/Schema/members> rdf:type first:WorkingGroup .
rdfs:Class dc:creator <http://www.w3.org/RDF/Group/Schema/members> .
FullConclusions: <Class/nonconclusions004>
<rdf:RDF
    xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
    xmlns:owl="http://www.w3.org/2002/07/owl#"
    xmlns:first="http://www.w3.org/2002/03owlt/Class/premises004#"
    xmlns:dc='http://purl.org/dc/elements/1.0/'
    xml:base="http://www.w3.org/2002/03owlt/Class/nonconclusions004" >
   <owl:Class rdf:about="premises004#WorkingGroup"/>
   <owl:Class rdf:about="http://www.w3.org/2002/07/owl#Class">
     <dc:creator>
        <first:WorkingGroup  />
     </dc:creator>
   </owl:Class>
</rdf:RDF>
first:WorkingGroup rdf:type owl:Class .
owl:Class rdf:type owl:Class .
_:a rdf:type first:WorkingGroup .
owl:Class dc:creator _:a .

DL Full Negative Entailment Test:005
Description: (informative) <Class/Manifest005#test>
This test shows a potential misapplication of OWL Full comprehension rules. It also shows optional type triples on an owl:Class.
N3 format is informative.
LitePremises: <Class/premises005>
<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/Class/premises005" >
  <owl:Thing rdf:ID="x"/>
</rdf:RDF>
first:x rdf:type owl:Thing .
DLConclusions: <Class/nonconclusions005>
<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/Class/nonconclusions005" >

  <owl:Class rdf:ID="c"/>
  <rdf:Description rdf:about="premises005#x">
    <rdf:type>
      <rdf:Description>
        <rdf:type 
    rdf:resource="http://www.w3.org/2002/07/owl#Class"/>
        <rdf:type 
    rdf:resource="http://www.w3.org/2000/01/rdf-schema#Class"/>
        <owl:unionOf rdf:parseType="Collection">
          <rdf:Description rdf:about="#c" />
          <owl:Class>
            <owl:complementOf rdf:resource="#c"/>
          </owl:Class>
        </owl:unionOf>
      </rdf:Description>
    </rdf:type>
  </rdf:Description>
               
</rdf:RDF>
second:c rdf:type owl:Class .
_:a rdf:type owl:Class .
_:a rdf:type rdfs:Class .
_:c rdf:type owl:Class .
_:c owl:complementOf second:c .
_:e rdf:first _:c .
_:e rdf:rest rdf:nil .
_:g rdf:first second:c .
_:g rdf:rest _:e .
_:a owl:unionOf _:g .
first:x rdf:type _:a .

Full Positive Entailment Test:006
Description: (informative) <Class/Manifest006#test>
This test shows a correct application of OWL Full comprehension rules. It also shows that use of rdfs:Class instead of owl:Class may make a file fall outside OWL DL.
N3 format is informative.
LitePremises: <Class/premises006>
<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/Class/premises006" >
  <owl:Thing rdf:ID="x"/>
  <owl:Class rdf:ID="c"/>
</rdf:RDF>
first:x rdf:type owl:Thing .
first:c rdf:type owl:Class .
FullConclusions: <Class/conclusions006>
<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/Class/conclusions006" >

  <rdf:Description rdf:about="premises006#x">
    <rdf:type>
      <owl:Class>
        <owl:unionOf rdf:parseType="Collection">
          <owl:Class rdf:about="premises006#c" />
          <rdfs:Class>
            <owl:complementOf rdf:resource="premises006#c"/>
          </rdfs:Class>
        </owl:unionOf>
      </owl:Class>
    </rdf:type>
  </rdf:Description>
               
</rdf:RDF>
_:a rdf:type owl:Class .
first:c rdf:type owl:Class .
_:c rdf:type rdfs:Class .
_:c owl:complementOf first:c .
_:e rdf:first _:c .
_:e rdf:rest rdf:nil .
_:g rdf:first first:c .
_:g rdf:rest _:e .
_:a owl:unionOf _:g .
first:x rdf:type _:a .

7.1.4. owl:DatatypeProperty

Full (EC) Consistent document.001
Description: (informative) <DatatypeProperty/Manifest001#test>
DatatypeProperty's may be used to related typed literals to typed literals, in OWL Full.
N3 format is informative.
FullConsistent: <DatatypeProperty/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/DatatypeProperty/consistent001#"
    xml:base="http://www.w3.org/2002/03owlt/DatatypeProperty/consistent001" >
  <owl:DatatypeProperty rdf:ID="convertedAbsoluteValue">
    <rdfs:domain rdf:resource="http://www.w3.org/2001/XMLSchema#integer"/>
    <rdfs:range rdf:resource=
        "http://www.w3.org/2001/XMLSchema#nonNegativeInteger" />
  </owl:DatatypeProperty>
  <rdf:Description>
     <owl:sameAs rdf:datatype=
      "http://www.w3.org/2001/XMLSchema#integer"
     >-3</owl:sameAs>
     <first:convertedAbsoluteValue rdf:datatype=
     "http://www.w3.org/2001/XMLSchema#nonNegativeInteger"
     >3</first:convertedAbsoluteValue>
  </rdf:Description>
</rdf:RDF>
first:convertedAbsoluteValue rdf:type owl:DatatypeProperty .
first:convertedAbsoluteValue rdfs:domain xsd:integer .
first:convertedAbsoluteValue rdfs:range xsd:nonNegativeInteger .
_:a owl:sameAs "-3"^^xsd:integer  .
_:a first:convertedAbsoluteValue "3"^^xsd:nonNegativeInteger  .

7.1.5. owl:FunctionalProperty

Full Positive Entailment Test:001
Description: (informative) <FunctionalProperty/Manifest001#test>
If prop belongs to owl:FunctionalProperty, and subject denotes a resource which is the subject of two prop triples, then the objects of these triples have the same denotation.
N3 format is informative.
FullPremises: <FunctionalProperty/premises001>
<rdf:RDF xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
  xmlns:owl ="http://www.w3.org/2002/07/owl#"
  xmlns:first="http://www.w3.org/2002/03owlt/FunctionalProperty/premises001#" 
  xml:base="http://www.w3.org/2002/03owlt/FunctionalProperty/premises001" >
    <owl:FunctionalProperty rdf:ID="prop"/>
    <rdf:Description rdf:ID="subject">
      <first:prop rdf:resource="#object1" />
      <first:prop rdf:resource="#object2" />
    </rdf:Description>
</rdf:RDF>
first:prop rdf:type owl:FunctionalProperty .
first:subject first:prop first:object1 .
first:subject first:prop first:object2 .
FullConclusions: <FunctionalProperty/conclusions001>
<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/FunctionalProperty/conclusions001" >
    <rdf:Description rdf:about="premises001#object1">
      <owl:sameAs rdf:resource="premises001#object2" />
    </rdf:Description>
</rdf:RDF>
first:object1 owl:sameAs first:object2 .

Full Positive Entailment Test:002
Description: (informative) <FunctionalProperty/Manifest002#test>
If prop belongs to owl:FunctionalProperty, and subject denotes a resource which is the subject of two prop triples, then the objects of these triples have the same denotation.Hence any assertion made using one of them can be transferred to the other.
N3 format is informative.
Namespaces:
@prefix eg: <http://www.example.org/> .
FullPremises: <FunctionalProperty/premises002>
<rdf:RDF xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
  xmlns:owl ="http://www.w3.org/2002/07/owl#"
  xmlns:eg ="http://www.example.org/"
  xmlns:first="http://www.w3.org/2002/03owlt/FunctionalProperty/premises002#" 
  xml:base="http://www.w3.org/2002/03owlt/FunctionalProperty/premises002" >
    <owl:FunctionalProperty rdf:ID="prop"/>
    <rdf:Description rdf:ID="subject">
      <first:prop>
          <rdf:Description rdf:ID="object1">
            <eg:prop2>value</eg:prop2>
          </rdf:Description>
      </first:prop>
      <first:prop rdf:resource="#object2" />
    </rdf:Description>
</rdf:RDF>
first:prop rdf:type owl:FunctionalProperty .
first:object1 eg:prop2 "value" .
first:subject first:prop first:object1 .
first:subject first:prop first:object2 .
FullConclusions: <FunctionalProperty/conclusions002>
<rdf:RDF xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
  xmlns:eg ="http://www.example.org/"
  xml:base="http://www.w3.org/2002/03owlt/FunctionalProperty/conclusions002" >
    <rdf:Description rdf:about="premises002#object2" >
        <eg:prop2>value</eg:prop2>
    </rdf:Description>
</rdf:RDF>
first:object2 eg:prop2 "value" .

Full Positive Entailment Test:003
Description: (informative) <FunctionalProperty/Manifest003#test>
If prop is an owl:FunctionalProperty, then its inverse is an owl:InverseFunctionalProperty.
N3 format is informative.
FullPremises: <FunctionalProperty/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/FunctionalProperty/premises003" >
    <owl:FunctionalProperty rdf:ID="prop">
      <owl:inverseOf rdf:resource="#inv"/>
    </owl:FunctionalProperty>
</rdf:RDF>
first:prop rdf:type owl:FunctionalProperty .
first:prop owl:inverseOf first:inv .
LiteConclusions: <FunctionalProperty/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/FunctionalProperty/conclusions003" >
    <owl:InverseFunctionalProperty rdf:about="premises003#inv"/>
</rdf:RDF>
first:inv rdf:type owl:InverseFunctionalProperty .

Full Positive Entailment Test:004
Description: (informative) <FunctionalProperty/Manifest004#test>
If the range of prop is a singleton set then it is necessarily functional, (i.e. every member of its domain has a single value) and so it is an owl:FunctionalProperty.
N3 format is informative.
FullPremises: <FunctionalProperty/premises004>
<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/FunctionalProperty/premises004" >
    <owl:ObjectProperty rdf:ID="prop">
      <rdfs:range rdf:resource="#Singleton"/>
    </owl:ObjectProperty>
    <rdfs:Class rdf:ID="Singleton">
      <owl:oneOf rdf:parseType="Collection">
          <rdf:Description/>
      </owl:oneOf>
    </rdfs:Class>
</rdf:RDF>
first:prop rdf:type owl:ObjectProperty .
first:prop rdfs:range first:Singleton .
first:Singleton rdf:type rdfs:Class .
_:a rdf:first _:b .
_:a rdf:rest rdf:nil .
first:Singleton owl:oneOf _:a .
FullConclusions: <FunctionalProperty/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/FunctionalProperty/conclusions004" >
    <owl:FunctionalProperty rdf:about="premises004#prop"/>
</rdf:RDF>
first:prop rdf:type owl:FunctionalProperty .

Full Positive Entailment Test:005
Description: (informative) <FunctionalProperty/Manifest005#test>
If prop belongs to owl:FunctionalProperty then an OWL individual has at most one value for prop.
N3 format is informative.
Namespaces:
@prefix eg: <http://www.example.org/> .
FullPremises: <FunctionalProperty/premises005>
<rdf:RDF
    xml:base="http://www.w3.org/2002/03owlt/FunctionalProperty/premises005"
    xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
  xmlns:owl ="http://www.w3.org/2002/07/owl#"
  xmlns:eg ="http://www.example.org/">
    <owl:FunctionalProperty rdf:about="http://www.example.org/foo#prop" />
    <owl:Thing rdf:about="http://www.example.org/foo#object" />
</rdf:RDF>
eg:foo#prop rdf:type owl:FunctionalProperty .
eg:foo#object rdf:type owl:Thing .
FullConclusions: <FunctionalProperty/conclusions005>
<rdf:RDF
    xml:base="http://www.w3.org/2002/03owlt/FunctionalProperty/conclusions005"
    xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
  xmlns:owl ="http://www.w3.org/2002/07/owl#"
  xmlns:eg ="http://www.example.org/">
    <owl:Thing rdf:about="http://www.example.org/foo#object">
      <rdf:type>
        <owl:Restriction>
   <owl:onProperty>
     <owl:FunctionalProperty rdf:about="http://www.example.org/foo#prop" />
   </owl:onProperty>
   <owl:maxCardinality 
      rdf:datatype="http://www.w3.org/2001/XMLSchema#nonNegativeInteger"
      >1</owl:maxCardinality>
        </owl:Restriction>
      </rdf:type>
    </owl:Thing>
</rdf:RDF>
eg:foo#object rdf:type owl:Thing .
_:a rdf:type owl:Restriction .
eg:foo#prop rdf:type owl:FunctionalProperty .
_:a owl:onProperty eg:foo#prop .
_:a owl:maxCardinality "1"^^xsd:nonNegativeInteger  .
eg:foo#object rdf:type _:a .

7.1.6. owl:InverseFunctionalProperty

Full Positive Entailment Test:001
Description: (informative) <InverseFunctionalProperty/Manifest001#test>
If prop belongs to owl:InverseFunctionalProperty, and object denotes a resource which is the object of two prop triples, then the subjects of these triples have the same denotation.
N3 format is informative.
FullPremises: <InverseFunctionalProperty/premises001>
<rdf:RDF xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
  xmlns:owl ="http://www.w3.org/2002/07/owl#"
  xmlns:first="http://www.w3.org/2002/03owlt/InverseFunctionalProperty/premises001#" 
  xml:base="http://www.w3.org/2002/03owlt/InverseFunctionalProperty/premises001" >
    <owl:InverseFunctionalProperty rdf:ID="prop"/>
    <rdf:Description rdf:ID="subject1">
      <first:prop rdf:resource="#object" />
    </rdf:Description>
    <rdf:Description rdf:ID="subject2">
      <first:prop rdf:resource="#object" />
    </rdf:Description>
</rdf:RDF>
first:prop rdf:type owl:InverseFunctionalProperty .
first:subject1 first:prop first:object .
first:subject2 first:prop first:object .
FullConclusions: <InverseFunctionalProperty/conclusions001>
<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/InverseFunctionalProperty/conclusions001" >
    <rdf:Description rdf:about="premises001#subject1">
      <owl:sameAs rdf:resource="premises001#subject2" />
    </rdf:Description>
</rdf:RDF>
first:subject1 owl:sameAs first:subject2 .

Full Positive Entailment Test:002
Description: (informative) <InverseFunctionalProperty/Manifest002#test>
If prop belongs to owl:InverseFunctionalProperty, and object denotes a resource which is the object of two prop triples, then the subjects of these triples have the same denotation. Hence any assertion made using one of them can be transferred to the other.
N3 format is informative.
Namespaces:
@prefix eg: <http://www.example.org/> .
FullPremises: <InverseFunctionalProperty/premises002>
<rdf:RDF xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
  xmlns:owl ="http://www.w3.org/2002/07/owl#"
  xmlns:eg ="http://www.example.org/"
  xmlns:first="http://www.w3.org/2002/03owlt/InverseFunctionalProperty/premises002#" 
  xml:base="http://www.w3.org/2002/03owlt/InverseFunctionalProperty/premises002" >
    <owl:InverseFunctionalProperty rdf:ID="prop"/>
    <rdf:Description rdf:ID="subject1" >
      <first:prop rdf:resource="#object" />
      <eg:prop2>value</eg:prop2>
    </rdf:Description>
    <rdf:Description rdf:ID="subject2" >
      <first:prop rdf:resource="#object" />
    </rdf:Description>
</rdf:RDF>
first:prop rdf:type owl:InverseFunctionalProperty .
first:subject1 first:prop first:object .
first:subject1 eg:prop2 "value" .
first:subject2 first:prop first:object .
FullConclusions: <InverseFunctionalProperty/conclusions002>
<rdf:RDF xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
  xmlns:eg ="http://www.example.org/"
  xml:base="http://www.w3.org/2002/03owlt/InverseFunctionalProperty/conclusions002" >
    <rdf:Description rdf:about="premises002#subject2" >
      <eg:prop2>value</eg:prop2>
    </rdf:Description>
</rdf:RDF>
first:subject2 eg:prop2 "value" .

Full Positive Entailment Test:003
Description: (informative) <InverseFunctionalProperty/Manifest003#test>
If prop is an owl:InverseFunctionalProperty, then its inverse is an owl:FunctionalProperty.
N3 format is informative.
FullPremises: <InverseFunctionalProperty/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/InverseFunctionalProperty/premises003" >
    <owl:InverseFunctionalProperty rdf:ID="prop">
      <owl:inverseOf rdf:resource="#inv"/>
    </owl:InverseFunctionalProperty>
</rdf:RDF>
first:prop rdf:type owl:InverseFunctionalProperty .
first:prop owl:inverseOf first:inv .
FullConclusions: <InverseFunctionalProperty/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/InverseFunctionalProperty/conclusions003" >
    <owl:FunctionalProperty rdf:about="premises003#inv"/>
</rdf:RDF>
first:inv rdf:type owl:FunctionalProperty .

Full Positive Entailment Test:004
Description: (informative) <InverseFunctionalProperty/Manifest004#test>
If the domain of prop is a singleton set then it is necessarily inverse functional, (i.e. every member of its range is the value of a single item) so it is an owl:InverseFunctionalProperty.
N3 format is informative.
FullPremises: <InverseFunctionalProperty/premises004>
<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/InverseFunctionalProperty/premises004" >
    <owl:ObjectProperty rdf:ID="prop">
      <rdfs:domain rdf:resource="#Singleton"/>
    </owl:ObjectProperty>
    <rdfs:Class rdf:ID="Singleton">
      <owl:oneOf rdf:parseType="Collection">
          <rdf:Description/>
      </owl:oneOf>
    </rdfs:Class>
</rdf:RDF>
first:prop rdf:type owl:ObjectProperty .
first:prop rdfs:domain first:Singleton .
first:Singleton rdf:type rdfs:Class .
_:a rdf:first _:b .
_:a rdf:rest rdf:nil .
first:Singleton owl:oneOf _:a .
LiteConclusions: <InverseFunctionalProperty/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/InverseFunctionalProperty/conclusions004" >
    <owl:InverseFunctionalProperty rdf:about="premises004#prop"/>
</rdf:RDF>
first:prop rdf:type owl:InverseFunctionalProperty .

7.1.7. owl:Nothing

Lite Full Inconsistent document.001
Description: (informative) <Nothing/Manifest001#test>
The triple asserts something of type owl:Nothing, however that is the empty class.
N3 format is informative.
LiteInconsistent: <Nothing/inconsistent001>
<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/Nothing/inconsistent001" >

  <owl:Nothing/>

</rdf:RDF>
_:a rdf:type owl:Nothing .

DL Full OWL described in OWL.002
Description: (informative) <Nothing/Manifest002#test>
An empty owl:Class has the same class extension as owl:Nothing.
N3 format is informative.
DLTrue: <Nothing/conclusions002>
<rdf:RDF
    xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
    xml:base='http://www.w3.org/2002/03owlt/Nothing/conclusions002'
    xmlns:owl="http://www.w3.org/2002/07/owl#">

   <owl:Class>
      <owl:oneOf rdf:parseType="Collection"/>
      <owl:equivalentClass  rdf:resource="http://www.w3.org/2002/07/owl#Nothing" />
   </owl:Class>

</rdf:RDF>
_:a rdf:type owl:Class .
_:a owl:oneOf rdf:nil .
_:a owl:equivalentClass owl:Nothing .

7.1.8. owl:Ontology

Lite Full Positive Entailment Test:001
Description: (informative) <Ontology/Manifest001#test>
This is a variation of equivalentClass-001, showing the use of owl:Ontology triples in the premises and conclusions.
N3 format is informative.
LitePremises: <Ontology/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/Ontology/premises001#"
    xml:base="http://www.w3.org/2002/03owlt/Ontology/premises001" >
   <owl:Ontology rdf:about="" />
   <owl:Class rdf:ID="Car">
     <owl:equivalentClass>
       <owl:Class rdf:ID="Automobile"/>
     </owl:equivalentClass>
  </owl:Class>
  <first:Car rdf:ID="car">
     <rdf:type rdf:resource="http://www.w3.org/2002/07/owl#Thing" />
  </first:Car>
  <first:Automobile rdf:ID="auto">
     <rdf:type rdf:resource="http://www.w3.org/2002/07/owl#Thing" />
  </first:Automobile>
</rdf:RDF>
<Ontology/premises001> rdf:type owl:Ontology .
first:Car rdf:type owl:Class .
first:Automobile rdf:type owl:Class .
first:Car owl:equivalentClass first:Automobile .
first:car rdf:type first:Car .
first:car rdf:type owl:Thing .
first:auto rdf:type first:Automobile .
first:auto rdf:type owl:Thing .
LiteConclusions: <Ontology/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#"
    xmlns:first="http://www.w3.org/2002/03owlt/Ontology/premises001#"
    xml:base="http://www.w3.org/2002/03owlt/Ontology/conclusions001" >
  <owl:Ontology />
  <first:Car rdf:about="premises001#auto">
     <rdf:type rdf:resource="http://www.w3.org/2002/07/owl#Thing" />
  </first:Car>
  <first:Automobile rdf:about="premises001#car">
     <rdf:type rdf:resource="http://www.w3.org/2002/07/owl#Thing" />
  </first:Automobile>
   <owl:Class rdf:about="premises001#Car"/>
   <owl:Class rdf:about="premises001#Automobile"/>
</rdf:RDF>
_:a rdf:type owl:Ontology .
first:auto rdf:type first:Car .
first:auto rdf:type owl:Thing .
first:car rdf:type first:Automobile .
first:car rdf:type owl:Thing .
first:Car rdf:type owl:Class .
first:Automobile rdf:type owl:Class .

Lite Full Negative Entailment Test:003
Description: (informative) <Ontology/Manifest003#test>
This is a variation of equivalentClass-001, showing the use of owl:Ontology triple only in the conclusions.
N3 format is informative.
LitePremises: <Ontology/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#"
    xmlns:first="http://www.w3.org/2002/03owlt/Ontology/premises003#"
    xml:base="http://www.w3.org/2002/03owlt/Ontology/premises003" >
   <owl:Class rdf:ID="Car">
     <owl:equivalentClass>
       <owl:Class rdf:ID="Automobile"/>
     </owl:equivalentClass>
  </owl:Class>
  <first:Car rdf:ID="car">
     <rdf:type rdf:resource="http://www.w3.org/2002/07/owl#Thing" />
  </first:Car>
  <first:Automobile rdf:ID="auto">
     <rdf:type rdf:resource="http://www.w3.org/2002/07/owl#Thing" />
  </first:Automobile>
</rdf:RDF>
first:Car rdf:type owl:Class .
first:Automobile rdf:type owl:Class .
first:Car owl:equivalentClass first:Automobile .
first:car rdf:type first:Car .
first:car rdf:type owl:Thing .
first:auto rdf:type first:Automobile .
first:auto rdf:type owl:Thing .
LiteConclusions: <Ontology/nonconclusions003>
<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/Ontology/premises003#"
    xml:base="http://www.w3.org/2002/03owlt/Ontology/nonconclusions003" >
  <owl:Ontology />
  <first:Car rdf:about="premises003#auto">
     <rdf:type rdf:resource="http://www.w3.org/2002/07/owl#Thing" />
  </first:Car>
  <first:Automobile rdf:about="premises003#car">
     <rdf:type rdf:resource="http://www.w3.org/2002/07/owl#Thing" />
  </first:Automobile>
   <owl:Class rdf:about="premises003#Car"/>
   <owl:Class rdf:about="premises003#Automobile"/>
</rdf:RDF>
_:a rdf:type owl:Ontology .
first:auto rdf:type first:Car .
first:auto rdf:type owl:Thing .
first:car rdf:type first:Automobile .
first:car rdf:type owl:Thing .
first:Car rdf:type owl:Class .
first:Automobile rdf:type owl:Class .

Lite Full Positive Entailment Test:004
Description: (informative) <Ontology/Manifest004#test>
This is a variation of equivalentClass-001, showing the use of two owl:Ontology triples in the premises.
N3 format is informative.
LitePremises: <Ontology/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/Ontology/premises004#"
    xml:base="http://www.w3.org/2002/03owlt/Ontology/premises004" >
   <owl:Ontology rdf:about="" />
   <owl:Ontology rdf:about="http://www.example.org/" />

   <owl:Class rdf:ID="Car">
     <owl:equivalentClass>
       <owl:Class rdf:ID="Automobile"/>
     </owl:equivalentClass>
  </owl:Class>
  <first:Car rdf:ID="car">
     <rdf:type rdf:resource="http://www.w3.org/2002/07/owl#Thing" />
  </first:Car>
  <first:Automobile rdf:ID="auto">
     <rdf:type rdf:resource="http://www.w3.org/2002/07/owl#Thing" />
  </first:Automobile>
</rdf:RDF>
<Ontology/premises004> rdf:type owl:Ontology .
<http://www.example.org/> rdf:type owl:Ontology .
first:Car rdf:type owl:Class .
first:Automobile rdf:type owl:Class .
first:Car owl:equivalentClass first:Automobile .
first:car rdf:type first:Car .
first:car rdf:type owl:Thing .
first:auto rdf:type first:Automobile .
first:auto rdf:type owl:Thing .
LiteConclusions: <Ontology/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#"
    xmlns:first="http://www.w3.org/2002/03owlt/Ontology/premises004#"
    xml:base="http://www.w3.org/2002/03owlt/Ontology/conclusions004" >
  <first:Car rdf:about="premises004#auto">
     <rdf:type rdf:resource="http://www.w3.org/2002/07/owl#Thing" />
  </first:Car>
  <first:Automobile rdf:about="premises004#car">
     <rdf:type rdf:resource="http://www.w3.org/2002/07/owl#Thing" />
  </first:Automobile>
   <owl:Class rdf:about="premises004#Car"/>
   <owl:Class rdf:about="premises004#Automobile"/>
</rdf:RDF>
first:auto rdf:type first:Car .
first:auto rdf:type owl:Thing .
first:car rdf:type first:Automobile .
first:car rdf:type owl:Thing .
first:Car rdf:type owl:Class .
first:Automobile rdf:type owl:Class .

7.1.9. owl:Restriction

Lite Full Inconsistent document.001
Description: (informative) <Restriction/Manifest001#test>
This test shows the syntax for using the same restriction twice in OWL Lite.
N3 format is informative.
LiteInconsistent: <Restriction/inconsistent001>
<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/Restriction/inconsistent001#"
    xml:base="http://www.w3.org/2002/03owlt/Restriction/inconsistent001" >
   <owl:ObjectProperty rdf:ID="op"/>
   <rdf:Description rdf:ID="a">
     <rdf:type>
        <owl:Restriction>
           <owl:onProperty rdf:resource="#op"/>
           <owl:someValuesFrom rdf:resource=
     "http://www.w3.org/2002/07/owl#Nothing" />
        </owl:Restriction>
     </rdf:type>
   </rdf:Description>
   <rdf:Description rdf:ID="b">
     <rdf:type>
        <owl:Restriction>
           <owl:onProperty rdf:resource="#op"/>
           <owl:someValuesFrom rdf:resource=
     "http://www.w3.org/2002/07/owl#Nothing" />
        </owl:Restriction>
     </rdf:type>
   </rdf:Description>
               


</rdf:RDF>
first:op rdf:type owl:ObjectProperty .
_:a rdf:type owl:Restriction .
_:a owl:onProperty first:op .
_:a owl:someValuesFrom owl:Nothing .
first:a rdf:type _:a .
_:c rdf:type owl:Restriction .
_:c owl:onProperty first:op .
_:c owl:someValuesFrom owl:Nothing .
first:b rdf:type _:c .

Full Inconsistent document.002
Description: (informative) <Restriction/Manifest002#test>
This test shows syntax that is not permitted in OWL Lite or OWL DL for using the same restriction twice.
N3 format is informative.
FullInconsistent: <Restriction/inconsistent002>
<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/Restriction/inconsistent002" >
   <owl:ObjectProperty rdf:ID="op"/>
   <rdf:Description rdf:ID="a">
     <rdf:type>
        <owl:Restriction rdf:nodeID="r">
           <owl:onProperty rdf:resource="#op"/>
           <owl:someValuesFrom rdf:resource=
     "http://www.w3.org/2002/07/owl#Nothing" />
        </owl:Restriction>
     </rdf:type>
   </rdf:Description>
   <rdf:Description rdf:ID="b">
     <rdf:type rdf:nodeID="r"/>
   </rdf:Description>
               
</rdf:RDF>
first:op rdf:type owl:ObjectProperty .
_:a rdf:type owl:Restriction .
_:a owl:onProperty first:op .
_:a owl:someValuesFrom owl:Nothing .
first:a rdf:type _:a .
first:b rdf:type _:a .

Full (EC) Consistent document.003
Description: (informative) <Restriction/Manifest003#test>
This test shows syntax that is not permitted in OWL Lite or OWL DL for using the same restriction twice.
Datatypes that may or may not be supported: xsd:byte,
N3 format is informative.
FullConsistent: <Restriction/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/Restriction/consistent003#"
    xml:base="http://www.w3.org/2002/03owlt/Restriction/consistent003" >
   <owl:DatatypeProperty rdf:ID="dp"/>
   <owl:Class rdf:ID="C">
     <owl:intersectionOf rdf:parseType="Collection">
        <owl:Class rdf:ID="superC"/>
        <owl:Restriction rdf:nodeID="r">
           <owl:onProperty rdf:resource="#dp"/>
           <owl:someValuesFrom rdf:resource=
     "http://www.w3.org/2001/XMLSchema#byte" />
        </owl:Restriction>
     </owl:intersectionOf>
   </owl:Class>
   <owl:Class rdf:ID="D">
     <owl:intersectionOf rdf:parseType="Collection">
        <owl:Class rdf:ID="superD"/>
        <rdf:Description rdf:nodeID="r"/>
     </owl:intersectionOf>
   </owl:Class>

</rdf:RDF>
first:dp rdf:type owl:DatatypeProperty .
first:C rdf:type owl:Class .
first:superC rdf:type owl:Class .
_:a rdf:type owl:Restriction .
_:a owl:onProperty first:dp .
_:a owl:someValuesFrom xsd:byte .
_:c rdf:first _:a .
_:c rdf:rest rdf:nil .
_:e rdf:first first:superC .
_:e rdf:rest _:c .
first:C owl:intersectionOf _:e .
first:D rdf:type owl:Class .
first:superD rdf:type owl:Class .
_:g rdf:first _:a .
_:g rdf:rest rdf:nil .
_:i rdf:first first:superD .
_:i rdf:rest _:g .
first:D owl:intersectionOf _:i .

Lite Full Consistent document.004
Description: (informative) <Restriction/Manifest004#test>
This test shows OWL Lite syntax for using two equivalent restrictions.
Datatypes that may or may not be supported: xsd:byte,
N3 format is informative.
LiteConsistent: <Restriction/consistent004>
<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/Restriction/consistent004" >
   <owl:DatatypeProperty rdf:ID="dp"/>
   <owl:Class rdf:ID="C">
     <owl:intersectionOf rdf:parseType="Collection">
        <owl:Class rdf:ID="superC"/>
        <owl:Restriction>
           <owl:onProperty rdf:resource="#dp"/>
           <owl:someValuesFrom rdf:resource=
     "http://www.w3.org/2001/XMLSchema#byte" />
        </owl:Restriction>
     </owl:intersectionOf>
   </owl:Class>
   <owl:Class rdf:ID="D">
     <owl:intersectionOf rdf:parseType="Collection">
        <owl:Class rdf:ID="superD"/>
        <owl:Restriction>
           <owl:onProperty rdf:resource="#dp"/>
           <owl:someValuesFrom rdf:resource=
     "http://www.w3.org/2001/XMLSchema#byte" />
        </owl:Restriction>
     </owl:intersectionOf>
   </owl:Class>

</rdf:RDF>
first:dp rdf:type owl:DatatypeProperty .
first:C rdf:type owl:Class .
first:superC rdf:type owl:Class .
_:a rdf:type owl:Restriction .
_:a owl:onProperty first:dp .
_:a owl:someValuesFrom xsd:byte .
_:c rdf:first _:a .
_:c rdf:rest rdf:nil .
_:e rdf:first first:superC .
_:e rdf:rest _:c .
first:C owl:intersectionOf _:e .
first:D rdf:type owl:Class .
first:superD rdf:type owl:Class .
_:g rdf:type owl:Restriction .
_:g owl:onProperty first:dp .
_:g owl:someValuesFrom xsd:byte .
_:i rdf:first _:g .
_:i rdf:rest rdf:nil .
_:k rdf:first first:superD .
_:k rdf:rest _:i .
first:D owl:intersectionOf _:k .

Lite Full Negative Entailment Test:005
Description: (informative) <Restriction/Manifest005#test>
This test shows a potential misapplication of OWL Full comprehension rules. It also shows optional type triples on an owl:Restriction.
N3 format is informative.
LitePremises: <Restriction/premises005>
<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/Restriction/premises005" >
  <owl:Thing rdf:ID="x">
    <rdf:type>
      <owl:Restriction>
        <rdf:type 
    rdf:resource="http://www.w3.org/2000/01/rdf-schema#Class"/>
        <owl:onProperty>
           <owl:ObjectProperty rdf:about="premises005#p" />
        </owl:onProperty>
        <owl:maxCardinality rdf:datatype=
  "http://www.w3.org/2001/XMLSchema#int"
        >0</owl:maxCardinality>
      </owl:Restriction>
    </rdf:type>
  </owl:Thing>
  <owl:ObjectProperty rdf:ID="p" />
</rdf:RDF>
first:x rdf:type owl:Thing .
_:a rdf:type owl:Restriction .
_:a rdf:type rdfs:Class .
first:p rdf:type owl:ObjectProperty .
_:a owl:onProperty first:p .
_:a owl:maxCardinality "0"^^xsd:int  .
first:x rdf:type _:a .
first:p rdf:type owl:ObjectProperty .
LiteConclusions: <Restriction/nonconclusions005>
<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/Restriction/premises005#"
    xmlns:second="http://www.w3.org/2002/03owlt/Restriction/nonconclusions005#"
    xml:base="http://www.w3.org/2002/03owlt/Restriction/nonconclusions005" >

  <rdf:Description rdf:about="premises005#x">
    <rdf:type>
      <owl:Restriction>
        <rdf:type 
    rdf:resource="http://www.w3.org/2000/01/rdf-schema#Class"/>
        <rdf:type 
    rdf:resource="http://www.w3.org/2002/07/owl#Class"/>
        <owl:onProperty>
           <owl:ObjectProperty rdf:about="premises005#p" />
        </owl:onProperty>
        <owl:allValuesFrom>
          <owl:Class rdf:ID="c">
            <rdf:type 
    rdf:resource="http://www.w3.org/2000/01/rdf-schema#Class"/>
          </owl:Class>
        </owl:allValuesFrom>
      </owl:Restriction>
    </rdf:type>
  </rdf:Description>
               
</rdf:RDF>
_:a rdf:type owl:Restriction .
_:a rdf:type rdfs:Class .
_:a rdf:type owl:Class .
first:p rdf:type owl:ObjectProperty .
_:a owl:onProperty first:p .
second:c rdf:type owl:Class .
second:c rdf:type rdfs:Class .
_:a owl:allValuesFrom second:c .
first:x rdf:type _:a .

Full Positive Entailment Test:006
Description: (informative) <Restriction/Manifest006#test>
This test shows a correct application of OWL Full comprehension rules. It also shows that optional type triples on an owl:Restriction do not replace the obligatory ones.
N3 format is informative.
LitePremises: <Restriction/premises006>
<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/Restriction/premises006" >
  <owl:Thing rdf:ID="x"/>
  <owl:ObjectProperty rdf:ID="p" />
</rdf:RDF>
first:x rdf:type owl:Thing .
first:p rdf:type owl:ObjectProperty .
FullConclusions: <Restriction/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/Restriction/conclusions006" >

  <rdf:Description rdf:about="premises006#x">
    <rdf:type>
      <rdf:Description>
        <rdf:type 
    rdf:resource="http://www.w3.org/2002/07/owl#Class"/>
        <owl:unionOf rdf:parseType="Collection">
          <owl:Restriction>
            <owl:onProperty>
              <owl:ObjectProperty rdf:about="premises006#p" />
            </owl:onProperty>
            <owl:someValuesFrom rdf:resource="http://www.w3.org/2002/07/owl#Thing" />
          </owl:Restriction>
          <owl:Class>
            <owl:onProperty>
              <owl:ObjectProperty rdf:about="premises006#p" />
            </owl:onProperty>
            <owl:maxCardinality rdf:datatype=
  "http://www.w3.org/2001/XMLSchema#int"
            >0</owl:maxCardinality>
          </owl:Class>
        </owl:unionOf>
      </rdf:Description>
    </rdf:type>
  </rdf:Description>
               
</rdf:RDF>
_:a rdf:type owl:Class .
_:c rdf:type owl:Restriction .
first:p rdf:type owl:ObjectProperty .
_:c owl:onProperty first:p .
_:c owl:someValuesFrom owl:Thing .
_:e rdf:type owl:Class .
first:p rdf:type owl:ObjectProperty .
_:e owl:onProperty first:p .
_:e owl:maxCardinality "0"^^xsd:int  .
_:g rdf:first _:e .
_:g rdf:rest rdf:nil .
_:i rdf:first _:c .
_:i rdf:rest _:g .
_:a owl:unionOf _:i .
first:x rdf:type _:a .

7.1.10. owl:SymmetricProperty

Full Positive Entailment Test:001
Description: (informative) <SymmetricProperty/Manifest001#test>
A simple illustration of symmetric properties.
N3 format is informative.
FullPremises: <SymmetricProperty/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/SymmetricProperty/premises001#"
    xmlns:second="http://www.w3.org/2002/03owlt/SymmetricProperty/conclusions001#"
    xml:base="http://www.w3.org/2002/03owlt/SymmetricProperty/premises001" >

    <rdf:Description rdf:about="premises001#Ghent">
        <first:path rdf:resource="premises001#Antwerp"/>
    </rdf:Description>

    <owl:SymmetricProperty rdf:about="premises001#path"/>

</rdf:RDF>
first:Ghent first:path first:Antwerp .
first:path rdf:type owl:SymmetricProperty .
FullConclusions: <SymmetricProperty/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#"
    xmlns:first="http://www.w3.org/2002/03owlt/SymmetricProperty/premises001#"
    xmlns:second="http://www.w3.org/2002/03owlt/SymmetricProperty/conclusions001#"
    xml:base="http://www.w3.org/2002/03owlt/SymmetricProperty/conclusions001" >

    <rdf:Description rdf:about="premises001#Antwerp">
        <first:path rdf:resource="premises001#Ghent"/>
    </rdf:Description>

</rdf:RDF>
first:Antwerp first:path first:Ghent .

DL Full Positive Entailment Test:002
Description: (informative) <SymmetricProperty/Manifest002#test>
Test illustrating extensional semantics of owl:SymmetricProperty.
N3 format is informative.
DLPremises: <SymmetricProperty/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/SymmetricProperty/premises002#"
    xml:base="http://www.w3.org/2002/03owlt/SymmetricProperty/premises002" >

    <owl:InverseFunctionalProperty rdf:about="#equalityOnA">
      <rdfs:range>
         <owl:Class rdf:ID="A">
           <owl:oneOf rdf:parseType="Collection">
              <owl:Thing rdf:ID="a"/>
              <owl:Thing rdf:ID="b"/>
           </owl:oneOf>
         </owl:Class>
      </rdfs:range>
    </owl:InverseFunctionalProperty>

    <owl:Thing rdf:about="#a">
      <first:equalityOnA rdf:resource="#a"/>
    </owl:Thing>
    <owl:Thing rdf:about="#b">
      <first:equalityOnA rdf:resource="#b"/>
    </owl:Thing>

    <owl:Thing rdf:ID="c"/>

</rdf:RDF>
first:equalityOnA rdf:type owl:InverseFunctionalProperty .
first:A rdf:type owl:Class .
first:a rdf:type owl:Thing .
first:b rdf:type owl:Thing .
_:a rdf:first first:b .
_:a rdf:rest rdf:nil .
_:c rdf:first first:a .
_:c rdf:rest _:a .
first:A owl:oneOf _:c .
first:equalityOnA rdfs:range first:A .
first:a rdf:type owl:Thing .
first:a first:equalityOnA first:a .
first:b rdf:type owl:Thing .
first:b first:equalityOnA first:b .
first:c rdf:type owl:Thing .
DLConclusions: <SymmetricProperty/conclusions002>
<rdf:RDF
    xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
    xmlns:owl="http://www.w3.org/2002/07/owl#"
    xmlns:first="http://www.w3.org/2002/03owlt/SymmetricProperty/premises002#"
    xmlns:rdfs="http://www.w3.org/2000/01/rdf-schema#"
    xml:base="http://www.w3.org/2002/03owlt/SymmetricProperty/conclusions002" >

   <owl:SymmetricProperty rdf:about="premises002#equalityOnA">
     <rdfs:domain>
        <owl:Class>
          <owl:oneOf rdf:parseType="Collection">
             <owl:Thing rdf:about="premises002#a"/>
             <owl:Thing rdf:about="premises002#b"/>
             <owl:Thing rdf:about="premises002#c"/>
          </owl:oneOf>
        </owl:Class>
     </rdfs:domain>
   </owl:SymmetricProperty>

   <owl:Thing rdf:about="premises002#a">
     <first:equalityOnA rdf:resource="premises002#a"/>
   </owl:Thing>

</rdf:RDF>
first:equalityOnA rdf:type owl:SymmetricProperty .
_:a rdf:type owl:Class .
first:a rdf:type owl:Thing .
first:b rdf:type owl:Thing .
first:c rdf:type owl:Thing .
_:c rdf:first first:c .
_:c rdf:rest rdf:nil .
_:e rdf:first first:b .
_:e rdf:rest _:c .
_:g rdf:first first:a .
_:g rdf:rest _:e .
_:a owl:oneOf _:g .
first:equalityOnA rdfs:domain _:a .
first:a rdf:type owl:Thing .
first:a first:equalityOnA first:a .

Lite Full Positive Entailment Test:003
Description: (informative) <SymmetricProperty/Manifest003#test>
A Lite version of test 001.
N3 format is informative.
LitePremises: <SymmetricProperty/premises003>
<rdf:RDF
    xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
    xmlns:owl="http://www.w3.org/2002/07/owl#"
    xmlns:first="http://www.w3.org/2002/03owlt/SymmetricProperty/premises003#"
    xml:base="http://www.w3.org/2002/03owlt/SymmetricProperty/premises003" >

    <owl:Thing rdf:about="premises003#Ghent">
        <first:path>
           <owl:Thing rdf:about="premises003#Antwerp"/>
        </first:path>
    </owl:Thing>

    <owl:SymmetricProperty rdf:about="premises003#path"/>

</rdf:RDF>
first:Ghent rdf:type owl:Thing .
first:Antwerp rdf:type owl:Thing .
first:Ghent first:path first:Antwerp .
first:path rdf:type owl:SymmetricProperty .
LiteConclusions: <SymmetricProperty/conclusions003>
<rdf:RDF
    xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
    xmlns:owl="http://www.w3.org/2002/07/owl#"
    xmlns:first="http://www.w3.org/2002/03owlt/SymmetricProperty/premises003#"
    xml:base="http://www.w3.org/2002/03owlt/SymmetricProperty/conclusions003" >

    <owl:Thing rdf:about="premises003#Antwerp">
        <first:path>
          <owl:Thing rdf:about="premises003#Ghent"/>
        </first:path>
    </owl:Thing>

    <owl:ObjectProperty rdf:about="premises003#path"/>

</rdf:RDF>
first:Antwerp rdf:type owl:Thing .
first:Ghent rdf:type owl:Thing .
first:Antwerp first:path first:Ghent .
first:path rdf:type owl:ObjectProperty .

7.1.11. owl:Thing

Lite Full Inconsistent document.003
Description: (informative) <Thing/Manifest003#test>
The extension of OWL Thing may not be empty.
N3 format is informative.
LiteInconsistent: <Thing/inconsistent003>
<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/Thing/inconsistent003" >

  <owl:Class rdf:about="http://www.w3.org/2002/07/owl#Thing">
    <owl:equivalentClass rdf:resource
       ="http://www.w3.org/2002/07/owl#Nothing"/>
  </owl:Class>

</rdf:RDF>
owl:Thing rdf:type owl:Class .
owl:Thing owl:equivalentClass owl:Nothing .

DL Consistent document.004
Description: (informative) <Thing/Manifest004#test>
The extension of OWL Thing may be a singleton in OWL DL.
N3 format is informative.
DLConsistent: <Thing/consistent004>
<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/Thing/consistent004" >

  <owl:Class rdf:about="http://www.w3.org/2002/07/owl#Thing">
        <owl:oneOf rdf:parseType="Collection">
            <owl:Thing rdf:about="#s"/>
        </owl:oneOf>
  </owl:Class>

</rdf:RDF>
owl:Thing rdf:type owl:Class .
first:s rdf:type owl:Thing .
_:a rdf:first first:s .
_:a rdf:rest rdf:nil .
owl:Thing owl:oneOf _:a .

Full Inconsistent document.005
Description: (informative) <Thing/Manifest005#test>
The extension of OWL Thing may not be a singleton in OWL Full.
N3 format is informative.
FullInconsistent: <Thing/inconsistent005>
<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/Thing/inconsistent005" >

  <rdf:Description rdf:about="http://www.w3.org/2002/07/owl#Thing">
        <owl:oneOf rdf:parseType="Collection">
            <rdf:Description rdf:about="#s"/>
        </owl:oneOf>
  </rdf:Description>

</rdf:RDF>
_:a rdf:first first:s .
_:a rdf:rest rdf:nil .
owl:Thing owl:oneOf _:a .

7.1.12. owl:TransitiveProperty

Full Positive Entailment Test:001
Description: (informative) <TransitiveProperty/Manifest001#test>
A simple illustration of transitivity.
N3 format is informative.
FullPremises: <TransitiveProperty/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/TransitiveProperty/premises001#"
    xmlns:second="http://www.w3.org/2002/03owlt/TransitiveProperty/conclusions001#"
    xml:base="http://www.w3.org/2002/03owlt/TransitiveProperty/premises001" >

    <rdf:Description rdf:about="premises001#Antwerp">
        <first:path rdf:resource="premises001#Amsterdam"/>
    </rdf:Description>

    <rdf:Description rdf:about="premises001#Ghent">
        <first:path rdf:resource="premises001#Antwerp"/>
    </rdf:Description>

    <owl:TransitiveProperty rdf:about="premises001#path"/>

</rdf:RDF>
first:Antwerp first:path first:Amsterdam .
first:Ghent first:path first:Antwerp .
first:path rdf:type owl:TransitiveProperty .
FullConclusions: <TransitiveProperty/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#"
    xmlns:first="http://www.w3.org/2002/03owlt/TransitiveProperty/premises001#"
    xmlns:second="http://www.w3.org/2002/03owlt/TransitiveProperty/conclusions001#"
    xml:base="http://www.w3.org/2002/03owlt/TransitiveProperty/conclusions001" >

    <rdf:Description rdf:about="premises001#Ghent">
        <first:path rdf:resource="premises001#Amsterdam"/>
    </rdf:Description>

</rdf:RDF>
first:Ghent first:path first:Amsterdam .

DL Full Positive Entailment Test:002
Description: (informative) <TransitiveProperty/Manifest002#test>
Test illustrating extensional semantics of owl:TransitiveProperty.
N3 format is informative.
DLPremises: <TransitiveProperty/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/TransitiveProperty/premises002#"
    xmlns:second="http://www.w3.org/2002/03owlt/TransitiveProperty/conclusions002#"
    xml:base="http://www.w3.org/2002/03owlt/TransitiveProperty/premises002" >
   <owl:SymmetricProperty rdf:ID="symProp">
     <rdfs:range>
       <owl:Class>
          <owl:oneOf rdf:parseType="Collection">
            <owl:Thing rdf:ID="a"/>
            <owl:Thing rdf:ID="b"/>
          </owl:oneOf>
       </owl:Class>
     </rdfs:range>
   </owl:SymmetricProperty>
   <owl:Thing rdf:about="#a">
     <first:symProp rdf:resource="#a"/>
   </owl:Thing>
   <owl:Thing rdf:about="#b">
     <first:symProp rdf:resource="#b"/>
   </owl:Thing>


</rdf:RDF>
first:symProp rdf:type owl:SymmetricProperty .
_:a rdf:type owl:Class .
first:a rdf:type owl:Thing .
first:b rdf:type owl:Thing .
_:c rdf:first first:b .
_:c rdf:rest rdf:nil .
_:e rdf:first first:a .
_:e rdf:rest _:c .
_:a owl:oneOf _:e .
first:symProp rdfs:range _:a .
first:a rdf:type owl:Thing .
first:a first:symProp first:a .
first:b rdf:type owl:Thing .
first:b first:symProp first:b .
LiteConclusions: <TransitiveProperty/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#"
    xmlns:first="http://www.w3.org/2002/03owlt/TransitiveProperty/premises002#"
    xmlns:second="http://www.w3.org/2002/03owlt/TransitiveProperty/conclusions002#"
    xml:base="http://www.w3.org/2002/03owlt/TransitiveProperty/conclusions002" >
   <owl:TransitiveProperty rdf:about="premises002#symProp"/>
   <rdf:Description rdf:about="premises002#a">
     <rdf:type>
       <owl:Restriction>
         <rdf:type rdf:resource="http://www.w3.org/2002/07/owl#Class"/>
         <owl:onProperty rdf:resource="premises002#symProp"/>
         <owl:someValuesFrom  rdf:resource="http://www.w3.org/2002/07/owl#Thing"/>
       </owl:Restriction>
     </rdf:type>
   </rdf:Description>

</rdf:RDF>
first:symProp rdf:type owl:TransitiveProperty .
_:a rdf:type owl:Restriction .
_:a rdf:type owl:Class .
_:a owl:onProperty first:symProp .
_:a owl:someValuesFrom owl:Thing .
first:a rdf:type _:a .

7.1.13. owl:allValuesFrom

Lite Full Positive Entailment Test:001
Description: (informative) <allValuesFrom/Manifest001#test>
A simple example.
N3 format is informative.
LitePremises: <allValuesFrom/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/allValuesFrom/premises001#"
    xml:base="http://www.w3.org/2002/03owlt/allValuesFrom/premises001" >
    <owl:Class rdf:ID="r">
      <rdfs:subClassOf>
        <owl:Restriction>
            <owl:onProperty rdf:resource="#p"/>
            <owl:allValuesFrom rdf:resource="#c"/>
        </owl:Restriction>
      </rdfs:subClassOf>
    </owl:Class>
    <owl:ObjectProperty rdf:ID="p"/>
    <owl:Class rdf:ID="c"/>
    <first:r rdf:ID="i">
       <rdf:type rdf:resource="http://www.w3.org/2002/07/owl#Thing"/>
       <first:p>
         <owl:Thing rdf:ID="o" />
       </first:p>
    </first:r>
</rdf:RDF>
first:r rdf:type owl:Class .
_:a rdf:type owl:Restriction .
_:a owl:onProperty first:p .
_:a owl:allValuesFrom first:c .
first:r rdfs:subClassOf _:a .
first:p rdf:type owl:ObjectProperty .
first:c rdf:type owl:Class .
first:i rdf:type first:r .
first:i rdf:type owl:Thing .
first:o rdf:type owl:Thing .
first:i first:p first:o .
LiteConclusions: <allValuesFrom/conclusions001>
<rdf:RDF
    xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
    xmlns:first="http://www.w3.org/2002/03owlt/allValuesFrom/premises001#"
    xmlns:owl="http://www.w3.org/2002/07/owl#"
    xml:base="http://www.w3.org/2002/03owlt/allValuesFrom/conclusions001" >
    <first:c rdf:about="premises001#o">
       <rdf:type rdf:resource="http://www.w3.org/2002/07/owl#Thing"/>
    </first:c>
    <owl:Class rdf:about="premises001#c"/>
</rdf:RDF>
first:o rdf:type first:c .
first:o rdf:type owl:Thing .
first:c rdf:type owl:Class .

Lite Full Negative Entailment Test:002
Description: (informative) <allValuesFrom/Manifest002#test>
Another simple example; contrast with owl:someValuesFrom.
N3 format is informative.
LitePremises: <allValuesFrom/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/allValuesFrom/premises002#"
    xml:base="http://www.w3.org/2002/03owlt/allValuesFrom/premises002" >
    <owl:Class rdf:ID="r">
      <rdfs:subClassOf>
        <owl:Restriction>
            <owl:onProperty rdf:resource="#p"/>
            <owl:allValuesFrom rdf:resource="#c"/>
        </owl:Restriction>
      </rdfs:subClassOf>
    </owl:Class>
    <owl:ObjectProperty rdf:ID="p"/>

    <owl:Class rdf:ID="c"/>
    <first:r rdf:ID="i">
      <rdf:type rdf:resource="http://www.w3.org/2002/07/owl#Thing"/>
    </first:r>
</rdf:RDF>
first:r rdf:type owl:Class .
_:a rdf:type owl:Restriction .
_:a owl:onProperty first:p .
_:a owl:allValuesFrom first:c .
first:r rdfs:subClassOf _:a .
first:p rdf:type owl:ObjectProperty .
first:c rdf:type owl:Class .
first:i rdf:type first:r .
first:i rdf:type owl:Thing .
LiteConclusions: <allValuesFrom/nonconclusions002>
<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/allValuesFrom/premises002#"
    xmlns:second="http://www.w3.org/2002/03owlt/allValuesFrom/nonconclusions002#"
    xml:base="http://www.w3.org/2002/03owlt/allValuesFrom/nonconclusions002" >
    <owl:Thing rdf:about="premises002#i">
        <first:p>
           <first:c rdf:nodeID="o" />
         </first:p>
    </owl:Thing>
    <owl:Thing rdf:nodeID="o" />
    <owl:ObjectProperty rdf:about="premises002#p"/>
    <owl:Class rdf:about="premises002#c"/>
</rdf:RDF>
first:i rdf:type owl:Thing .
_:a rdf:type first:c .
first:i first:p _:a .
_:a rdf:type owl:Thing .
first:p rdf:type owl:ObjectProperty .
first:c rdf:type owl:Class .

7.1.14. owl:backwardCompatibleWith

Lite Full Consistent document.001
Description: (informative) <backwardCompatibleWith/Manifest001#test>
An example of use.
N3 format is informative.
LiteConsistent: <backwardCompatibleWith/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/backwardCompatibleWith/consistent001#"
    xml:base="http://www.w3.org/2002/03owlt/backwardCompatibleWith/consistent001" >
   <owl:Ontology>
      <owl:backwardCompatibleWith>
        <owl:Ontology rdf:about="http://www.example.org/"/>
      </owl:backwardCompatibleWith>
   </owl:Ontology>

</rdf:RDF>
_:a rdf:type owl:Ontology .
<http://www.example.org/> rdf:type owl:Ontology .
_:a owl:backwardCompatibleWith <http://www.example.org/> .

Full (EC) Consistent document.002
Description: (informative) <backwardCompatibleWith/Manifest002#test>
In OWL Lite and DL the subject and object of a triple with predicate owl:backwardCompatibleWith must both be explicitly typed as owl:Ontology.
N3 format is informative.
FullConsistent: <backwardCompatibleWith/consistent002>
<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/backwardCompatibleWith/consistent002#"
    xml:base="http://www.w3.org/2002/03owlt/backwardCompatibleWith/consistent002" >
   <rdf:Description>
      <owl:backwardCompatibleWith>
        <owl:Ontology rdf:about="http://www.example.org/"/>
      </owl:backwardCompatibleWith>
   </rdf:Description>

</rdf:RDF>
<http://www.example.org/> rdf:type owl:Ontology .
_:a owl:backwardCompatibleWith <http://www.example.org/> .

7.1.15. owl:cardinality

Lite Full Positive Entailment Test:001
Description: (informative) <cardinality/Manifest001#test>
An owl:cardinality constraint is simply shorthand for a pair of owl:minCardinality and owl:maxCardinality constraints.
N3 format is informative.
LitePremises: <cardinality/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/cardinality/premises001" >
    <owl:Class rdf:ID="c">
      <rdfs:subClassOf>
         <owl:Restriction>
            <owl:onProperty rdf:resource="#p"/>
            <owl:cardinality
 rdf:datatype="http://www.w3.org/2001/XMLSchema#nonNegativeInteger"
            >1</owl:cardinality>
         </owl:Restriction>
      </rdfs:subClassOf>
    </owl:Class>
    <owl:ObjectProperty rdf:ID="p"/>
</rdf:RDF>
first:c rdf:type owl:Class .
_:a rdf:type owl:Restriction .
_:a owl:onProperty first:p .
_:a owl:cardinality "1"^^xsd:nonNegativeInteger  .
first:c rdfs:subClassOf _:a .
first:p rdf:type owl:ObjectProperty .
LiteConclusions: <cardinality/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/cardinality/conclusions001" >
    <owl:Class rdf:about="premises001#c">
      <rdfs:subClassOf>
        <owl:Restriction>
          <owl:onProperty rdf:resource="premises001#p"/>
          <owl:maxCardinality
 rdf:datatype="http://www.w3.org/2001/XMLSchema#nonNegativeInteger"
          >1</owl:maxCardinality>
        </owl:Restriction>
      </rdfs:subClassOf>
      <rdfs:subClassOf>
        <owl:Restriction>
          <owl:onProperty rdf:resource="premises001#p"/>
          <owl:minCardinality
 rdf:datatype="http://www.w3.org/2001/XMLSchema#nonNegativeInteger"
           >1</owl:minCardinality>
         </owl:Restriction>
       </rdfs:subClassOf>
    </owl:Class>
    <owl:ObjectProperty rdf:about="premises001#p"/>
</rdf:RDF>
first:c rdf:type owl:Class .
_:a rdf:type owl:Restriction .
_:a owl:onProperty first:p .
_:a owl:maxCardinality "1"^^xsd:nonNegativeInteger  .
first:c rdfs:subClassOf _:a .
_:c rdf:type owl:Restriction .
_:c owl:onProperty first:p .
_:c owl:minCardinality "1"^^xsd:nonNegativeInteger  .
first:c rdfs:subClassOf _:c .
first:p rdf:type owl:ObjectProperty .

Lite Full Positive Entailment Test:002
Description: (informative) <cardinality/Manifest002#test>
An owl:cardinality constraint is simply shorthand for a pair of owl:minCardinality and owl:maxCardinality constraints.
N3 format is informative.
LitePremises: <cardinality/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/cardinality/premises002" >    
    <owl:Class rdf:about="conclusions002#c">
      <rdfs:subClassOf>
        <owl:Restriction>
          <owl:onProperty rdf:resource="conclusions002#p"/>
          <owl:maxCardinality
 rdf:datatype="http://www.w3.org/2001/XMLSchema#nonNegativeInteger"
          >1</owl:maxCardinality>
        </owl:Restriction>
      </rdfs:subClassOf>
      <rdfs:subClassOf>
        <owl:Restriction>
          <owl:onProperty rdf:resource="conclusions002#p"/>
          <owl:minCardinality
 rdf:datatype="http://www.w3.org/2001/XMLSchema#nonNegativeInteger"
          >1</owl:minCardinality>
        </owl:Restriction>
       </rdfs:subClassOf>
     </owl:Class>
     <owl:ObjectProperty rdf:about="conclusions002#p"/>
</rdf:RDF>
second:c rdf:type owl:Class .
_:a rdf:type owl:Restriction .
_:a owl:onProperty second:p .
_:a owl:maxCardinality "1"^^xsd:nonNegativeInteger  .
second:c rdfs:subClassOf _:a .
_:c rdf:type owl:Restriction .
_:c owl:onProperty second:p .
_:c owl:minCardinality "1"^^xsd:nonNegativeInteger  .
second:c rdfs:subClassOf _:c .
second:p rdf:type owl:ObjectProperty .
LiteConclusions: <cardinality/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/cardinality/conclusions002" >
    <owl:Class rdf:ID="c">
      <rdfs:subClassOf>
        <owl:Restriction>
          <owl:onProperty rdf:resource="#p"/>
          <owl:cardinality
 rdf:datatype="http://www.w3.org/2001/XMLSchema#nonNegativeInteger"
          >1</owl:cardinality>
        </owl:Restriction>
      </rdfs:subClassOf>
    </owl:Class>
    <owl:ObjectProperty rdf:ID="p"/>
</rdf:RDF>
second:c rdf:type owl:Class .
_:a rdf:type owl:Restriction .
_:a owl:onProperty second:p .
_:a owl:cardinality "1"^^xsd:nonNegativeInteger  .
second:c rdfs:subClassOf _:a .
second:p rdf:type owl:ObjectProperty .

DL Full Positive Entailment Test:003
Description: (informative) <cardinality/Manifest003#test>
An owl:cardinality constraint is simply shorthand for a pair of owl:minCardinality and owl:maxCardinality constraints.
N3 format is informative.
DLPremises: <cardinality/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/cardinality/premises003" >
    <owl:Class rdf:ID="c">
      <rdfs:subClassOf>
        <owl:Restriction>
          <owl:onProperty rdf:resource="#p"/>
          <owl:cardinality
 rdf:datatype="http://www.w3.org/2001/XMLSchema#nonNegativeInteger"
          >2</owl:cardinality>
        </owl:Restriction>
      </rdfs:subClassOf>
    </owl:Class>
    <owl:ObjectProperty rdf:ID="p"/>
</rdf:RDF>
first:c rdf:type owl:Class .
_:a rdf:type owl:Restriction .
_:a owl:onProperty first:p .
_:a owl:cardinality "2"^^xsd:nonNegativeInteger  .
first:c rdfs:subClassOf _:a .
first:p rdf:type owl:ObjectProperty .
DLConclusions: <cardinality/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/cardinality/conclusions003" >
    <owl:Class rdf:about="premises003#c">
      <rdfs:subClassOf>
        <owl:Restriction>
          <owl:onProperty rdf:resource="premises003#p"/>
          <owl:maxCardinality
 rdf:datatype="http://www.w3.org/2001/XMLSchema#nonNegativeInteger"
          >2</owl:maxCardinality>
        </owl:Restriction>
      </rdfs:subClassOf>
      <rdfs:subClassOf>
        <owl:Restriction>
          <owl:onProperty rdf:resource="premises003#p"/>
          <owl:minCardinality
 rdf:datatype="http://www.w3.org/2001/XMLSchema#nonNegativeInteger"
          >2</owl:minCardinality>
        </owl:Restriction>
      </rdfs:subClassOf>
    </owl:Class>
    <owl:ObjectProperty rdf:about="premises003#p"/>
</rdf:RDF>
first:c rdf:type owl:Class .
_:a rdf:type owl:Restriction .
_:a owl:onProperty first:p .
_:a owl:maxCardinality "2"^^xsd:nonNegativeInteger  .
first:c rdfs:subClassOf _:a .
_:c rdf:type owl:Restriction .
_:c owl:onProperty first:p .
_:c owl:minCardinality "2"^^xsd:nonNegativeInteger  .
first:c rdfs:subClassOf _:c .
first:p rdf:type owl:ObjectProperty .

DL Full Positive Entailment Test:004
Description: (informative) <cardinality/Manifest004#test>
An owl:cardinality constraint is simply shorthand for a pair of owl:minCardinality and owl:maxCardinality constraints.
N3 format is informative.
DLPremises: <cardinality/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/cardinality/premises004" >    
    <owl:Class rdf:about="conclusions004#c">
      <rdfs:subClassOf>
          <owl:Class>
             <owl:intersectionOf rdf:parseType="Collection">
                <owl:Restriction>
                   <owl:onProperty rdf:resource="conclusions004#p"/>
                   <owl:maxCardinality
 rdf:datatype="http://www.w3.org/2001/XMLSchema#nonNegativeInteger"
                   >2</owl:maxCardinality>
                </owl:Restriction>
                <owl:Restriction>
                   <owl:onProperty rdf:resource="conclusions004#p"/>
                   <owl:minCardinality
 rdf:datatype="http://www.w3.org/2001/XMLSchema#nonNegativeInteger"
                   >2</owl:minCardinality>
                </owl:Restriction>
              </owl:intersectionOf>
           </owl:Class>
       </rdfs:subClassOf>
     </owl:Class>
     <owl:ObjectProperty rdf:about="conclusions004#p"/>
</rdf:RDF>
second:c rdf:type owl:Class .
_:a rdf:type owl:Class .
_:c rdf:type owl:Restriction .
_:c owl:onProperty second:p .
_:c owl:maxCardinality "2"^^xsd:nonNegativeInteger  .
_:e rdf:type owl:Restriction .
_:e owl:onProperty second:p .
_:e owl:minCardinality "2"^^xsd:nonNegativeInteger  .
_:g rdf:first _:e .
_:g rdf:rest rdf:nil .
_:i rdf:first _:c .
_:i rdf:rest _:g .
_:a owl:intersectionOf _:i .
second:c rdfs:subClassOf _:a .
second:p rdf:type owl:ObjectProperty .
DLConclusions: <cardinality/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/cardinality/conclusions004" >
    <owl:Class rdf:ID="c">
      <rdfs:subClassOf>
          <owl:Class>
             <owl:intersectionOf rdf:parseType="Collection">
                <owl:Restriction>
                   <owl:onProperty rdf:resource="#p"/>
                   <owl:cardinality
 rdf:datatype="http://www.w3.org/2001/XMLSchema#nonNegativeInteger"
                   >2</owl:cardinality>
                </owl:Restriction>
              </owl:intersectionOf>
           </owl:Class>
       </rdfs:subClassOf>
     </owl:Class>
     <owl:ObjectProperty rdf:ID="p"/>
</rdf:RDF>
second:c rdf:type owl:Class .
_:a rdf:type owl:Class .
_:c rdf:type owl:Restriction .
_:c owl:onProperty second:p .
_:c owl:cardinality "2"^^xsd:nonNegativeInteger  .
_:e rdf:first _:c .
_:e rdf:rest rdf:nil .
_:a owl:intersectionOf _:e .
second:c rdfs:subClassOf _:a .
second:p rdf:type owl:ObjectProperty .

Full Positive Entailment Test:006
Description: (informative) <cardinality/Manifest006#test>
An owl:cardinality constraint is simply shorthand for a pair of owl:minCardinality and owl:maxCardinality constraints.
N3 format is informative.
FullPremises: <cardinality/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/cardinality/premises006" >    
  <rdf:Description rdf:about="conclusions006#c">
     <owl:intersectionOf rdf:parseType="Collection">
        <owl:Restriction>
           <owl:onProperty rdf:resource="conclusions006#p"/>
           <owl:maxCardinality
 rdf:datatype="http://www.w3.org/2001/XMLSchema#nonNegativeInteger"
            >1</owl:maxCardinality>
         </owl:Restriction>
         <owl:Restriction>
            <owl:onProperty rdf:resource="conclusions006#p"/>
            <owl:minCardinality
 rdf:datatype="http://www.w3.org/2001/XMLSchema#nonNegativeInteger"
             >1</owl:minCardinality>
          </owl:Restriction>
       </owl:intersectionOf>
    </rdf:Description>
</rdf:RDF>
_:a rdf:type owl:Restriction .
_:a owl:onProperty second:p .
_:a owl:maxCardinality "1"^^xsd:nonNegativeInteger  .
_:c rdf:type owl:Restriction .
_:c owl:onProperty second:p .
_:c owl:minCardinality "1"^^xsd:nonNegativeInteger  .
_:e rdf:first _:c .
_:e rdf:rest rdf:nil .
_:g rdf:first _:a .
_:g rdf:rest _:e .
second:c owl:intersectionOf _:g .
FullConclusions: <cardinality/conclusions006>
<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/cardinality/conclusions006" >
  <rdf:Description  rdf:ID="c">
     <owl:intersectionOf rdf:parseType="Collection">
        <owl:Restriction>
           <owl:onProperty rdf:resource="#p"/>
           <owl:cardinality
 rdf:datatype="http://www.w3.org/2001/XMLSchema#nonNegativeInteger"
           >1</owl:cardinality>
        </owl:Restriction>
      </owl:intersectionOf>
   </rdf:Description>
</rdf:RDF>
_:a rdf:type owl:Restriction .
_:a owl:onProperty second:p .
_:a owl:cardinality "1"^^xsd:nonNegativeInteger  .
_:c rdf:first _:a .
_:c rdf:rest rdf:nil .
second:c owl:intersectionOf _:c .

7.1.16. owl:complementOf

Full Positive Entailment Test:001
Description: (informative) <complementOf/Manifest001#test>
complementOf is a SymmetricProperty.
N3 format is informative.
FullPremises: <complementOf/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/complementOf/premises001#"
    xmlns:second="http://www.w3.org/2002/03owlt/complementOf/conclusions001#"
    xml:base="http://www.w3.org/2002/03owlt/complementOf/premises001" >

    <rdf:Description rdf:about="premises001#A">
        <owl:complementOf rdf:resource="premises001#B"/>
    </rdf:Description>

</rdf:RDF>
first:A owl:complementOf first:B .
FullConclusions: <complementOf/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#"
    xmlns:first="http://www.w3.org/2002/03owlt/complementOf/premises001#"
    xmlns:second="http://www.w3.org/2002/03owlt/complementOf/conclusions001#"
    xml:base="http://www.w3.org/2002/03owlt/complementOf/conclusions001" >

    <rdf:Description rdf:about="premises001#B">
        <owl:complementOf rdf:resource="premises001#A"/>
    </rdf:Description>

</rdf:RDF>
first:B owl:complementOf first:A .

7.1.17. owl:differentFrom

Full Positive Entailment Test:001
Description: (informative) <differentFrom/Manifest001#test>
differentFrom is a SymmetricProperty.
N3 format is informative.
FullPremises: <differentFrom/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/differentFrom/premises001#"
    xmlns:second="http://www.w3.org/2002/03owlt/differentFrom/conclusions001#"
    xml:base="http://www.w3.org/2002/03owlt/differentFrom/premises001" >

    <rdf:Description rdf:about="premises001#a">
        <owl:differentFrom rdf:resource="premises001#b"/>
    </rdf:Description>

</rdf:RDF>
first:a owl:differentFrom first:b .
FullConclusions: <differentFrom/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#"
    xmlns:first="http://www.w3.org/2002/03owlt/differentFrom/premises001#"
    xmlns:second="http://www.w3.org/2002/03owlt/differentFrom/conclusions001#"
    xml:base="http://www.w3.org/2002/03owlt/differentFrom/conclusions001" >

    <rdf:Description rdf:about="premises001#b">
        <owl:differentFrom rdf:resource="premises001#a"/>
    </rdf:Description>

</rdf:RDF>
first:b owl:differentFrom first:a .

Full Positive Entailment Test:002
Description: (informative) <differentFrom/Manifest002#test>
using distinctMembers to derive differentFrom
N3 format is informative.
FullPremises: <differentFrom/premises002>
<rdf:RDF
    xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
    xmlns:owl="http://www.w3.org/2002/07/owl#"
    xmlns:first="http://www.w3.org/2002/03owlt/differentFrom/premises002#"
    xml:base="http://www.w3.org/2002/03owlt/differentFrom/premises002" >

    <owl:AllDifferent> 
      <owl:distinctMembers rdf:parseType="Collection">
        <first:Person rdf:about="#Fred" />
        <first:Person rdf:about="#Wilma" />
        <first:Person rdf:about="#Barney" />
        <first:Person rdf:about="#Betty" />
      </owl:distinctMembers>
    </owl:AllDifferent> 

</rdf:RDF>
_:a rdf:type owl:AllDifferent .
first:Fred rdf:type first:Person .
first:Wilma rdf:type first:Person .
first:Barney rdf:type first:Person .
first:Betty rdf:type first:Person .
_:c rdf:first first:Betty .
_:c rdf:rest rdf:nil .
_:e rdf:first first:Barney .
_:e rdf:rest _:c .
_:g rdf:first first:Wilma .
_:g rdf:rest _:e .
_:i rdf:first first:Fred .
_:i rdf:rest _:g .
_:a owl:distinctMembers _:i .
FullConclusions: <differentFrom/conclusions002>
<rdf:RDF
    xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
    xmlns:owl="http://www.w3.org/2002/07/owl#"
    xmlns:first="http://www.w3.org/2002/03owlt/differentFrom/premises002#"
    xml:base="http://www.w3.org/2002/03owlt/differentFrom/conclusions002" >

    <rdf:Description rdf:about="premises002#Barney">
        <owl:differentFrom rdf:resource="premises002#Wilma"/>
    </rdf:Description>

</rdf:RDF>
first:Barney owl:differentFrom first:Wilma .

7.1.18. owl:disjointWith

DL Full Positive Entailment Test:001
Description: (informative) <disjointWith/Manifest001#test>
Disjoint classes have different members.
N3 format is informative.
DLPremises: <disjointWith/premises001>
<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#"
    xmlns:first="http://www.w3.org/2002/03owlt/disjointWith/premises001#"
    xml:base="http://www.w3.org/2002/03owlt/disjointWith/premises001" >
   <owl:Class rdf:ID="A">
      <owl:disjointWith>
           <owl:Class rdf:ID="B"/>
      </owl:disjointWith>
   </owl:Class>
   <first:A rdf:ID="a"/>
   <owl:Thing rdf:about="#a"/>
   <first:B rdf:ID="b"/>
   <owl:Thing rdf:about="#b"/>
</rdf:RDF>
first:A rdf:type owl:Class .
first:B rdf:type owl:Class .
first:A owl:disjointWith first:B .
first:a rdf:type first:A .
first:a rdf:type owl:Thing .
first:b rdf:type first:B .
first:b rdf:type owl:Thing .
LiteConclusions: <disjointWith/conclusions001>
<rdf:RDF
    xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
    xmlns:owl="http://www.w3.org/2002/07/owl#"
    xmlns:first="http://www.w3.org/2002/03owlt/disjointWith/premises001#"
    xml:base="http://www.w3.org/2002/03owlt/disjointWith/conclusions001" >
    <owl:Thing rdf:about="premises001#a">
       <owl:differentFrom>
          <owl:Thing rdf:about="premises001#b"/>
       </owl:differentFrom>
    </owl:Thing>
</rdf:RDF>
first:a rdf:type owl:Thing .
first:b rdf:type owl:Thing .
first:a owl:differentFrom first:b .

Full Positive Entailment Test:002
Description: (informative) <disjointWith/Manifest002#test>
Disjoint classes have different members.
N3 format is informative.
FullPremises: <disjointWith/premises002>
<rdf:RDF
    xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
    xmlns:owl="http://www.w3.org/2002/07/owl#"
    xmlns:first="http://www.w3.org/2002/03owlt/disjointWith/premises002#"
    xml:base="http://www.w3.org/2002/03owlt/disjointWith/premises002" >

   <rdf:Description rdf:ID="A">
      <owl:disjointWith>
           <rdf:Description rdf:ID="B"/>
      </owl:disjointWith>
   </rdf:Description>
   <first:A rdf:ID="a"/>
   <first:B rdf:ID="b"/>

</rdf:RDF>
first:A owl:disjointWith first:B .
first:a rdf:type first:A .
first:b rdf:type first:B .
FullConclusions: <disjointWith/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/disjointWith/conclusions002" >
    <rdf:Description rdf:about="premises002#a">
       <owl:differentFrom rdf:resource="premises002#b"/>
    </rdf:Description>
</rdf:RDF>
first:a owl:differentFrom first:b .

DL Full Consistent document.003
Description: (informative) <disjointWith/Manifest003#test>
If the owl:disjointWith edges in the graph form an undirected complete subgraph then this may be within OWL DL.
N3 format is informative.
DLConsistent: <disjointWith/consistent003>
<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/disjointWith/consistent003" >
    <owl:Class rdf:nodeID="A">
      <owl:intersectionOf rdf:parseType="Collection">
        <owl:Class rdf:ID="A"/>
      </owl:intersectionOf>
      <owl:disjointWith rdf:nodeID="B"/>
      <owl:disjointWith rdf:nodeID="D"/>
      <owl:disjointWith rdf:nodeID="E"/>
    </owl:Class>
    <owl:Class rdf:nodeID="B">
      <owl:intersectionOf rdf:parseType="Collection">
        <owl:Class rdf:ID="B"/>
      </owl:intersectionOf>
      <owl:disjointWith rdf:nodeID="A"/>
      <owl:disjointWith rdf:nodeID="C"/>
      <owl:disjointWith rdf:nodeID="E"/>
    </owl:Class>
    <owl:Class rdf:nodeID="C">
      <owl:intersectionOf rdf:parseType="Collection">
        <owl:Class rdf:ID="C"/>
      </owl:intersectionOf>
      <owl:disjointWith rdf:nodeID="A"/>
      <owl:disjointWith rdf:nodeID="D"/>
      <owl:disjointWith rdf:nodeID="E"/>
    </owl:Class>
    <owl:Class rdf:nodeID="D">
      <owl:intersectionOf rdf:parseType="Collection">
        <owl:Class rdf:ID="D"/>
      </owl:intersectionOf>
      <owl:disjointWith rdf:nodeID="C"/>
      <owl:disjointWith rdf:nodeID="B"/>
      <owl:disjointWith rdf:nodeID="E"/>
    </owl:Class>
    <owl:Class rdf:nodeID="E">
      <owl:intersectionOf rdf:parseType="Collection">
        <owl:Class rdf:ID="E"/>
      </owl:intersectionOf>
    </owl:Class>

</rdf:RDF>
_:a rdf:type owl:Class .
first:A rdf:type owl:Class .
_:c rdf:first first:A .
_:c rdf:rest rdf:nil .
_:a owl:intersectionOf _:c .
_:a owl:disjointWith _:e .
_:a owl:disjointWith _:g .
_:a owl:disjointWith _:i .
_:e rdf:type owl:Class .
first:B rdf:type owl:Class .
_:k rdf:first first:B .
_:k rdf:rest rdf:nil .
_:e owl:intersectionOf _:k .
_:e owl:disjointWith _:a .
_:e owl:disjointWith _:m .
_:e owl:disjointWith _:i .
_:m rdf:type owl:Class .
first:C rdf:type owl:Class .
_:o rdf:first first:C .
_:o rdf:rest rdf:nil .
_:m owl:intersectionOf _:o .
_:m owl:disjointWith _:a .
_:m owl:disjointWith _:g .
_:m owl:disjointWith _:i .
_:g rdf:type owl:Class .
first:D rdf:type owl:Class .
_:q rdf:first first:D .
_:q rdf:rest rdf:nil .
_:g owl:intersectionOf _:q .
_:g owl:disjointWith _:m .
_:g owl:disjointWith _:e .
_:g owl:disjointWith _:i .
_:i rdf:type owl:Class .
first:E rdf:type owl:Class .
_:s rdf:first first:E .
_:s rdf:rest rdf:nil .
_:i owl:intersectionOf _:s .

Full (EC) Consistent document.004
Description: (informative) <disjointWith/Manifest004#test>
This example has owl:disjointWith edges in the graph which cannot be generated by the mapping rules for DisjointClasses. Consider the lack of owl:disjointWith edge between nodes C and D.
N3 format is informative.
FullConsistent: <disjointWith/consistent004>
<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/disjointWith/consistent004" >
    <owl:Class rdf:nodeID="A">
      <owl:intersectionOf rdf:parseType="Collection">
        <owl:Class rdf:ID="A"/>
      </owl:intersectionOf>
      <owl:disjointWith rdf:nodeID="B"/>
      <owl:disjointWith rdf:nodeID="D"/>
      <owl:disjointWith rdf:nodeID="E"/>
    </owl:Class>
    <owl:Class rdf:nodeID="B">
      <owl:intersectionOf rdf:parseType="Collection">
        <owl:Class rdf:ID="B"/>
      </owl:intersectionOf>
      <owl:disjointWith rdf:nodeID="A"/>
      <owl:disjointWith rdf:nodeID="C"/>
      <owl:disjointWith rdf:nodeID="E"/>
    </owl:Class>
    <owl:Class rdf:nodeID="C">
      <owl:intersectionOf rdf:parseType="Collection">
        <owl:Class rdf:ID="C"/>
      </owl:intersectionOf>
      <owl:disjointWith rdf:nodeID="A"/>
      <owl:disjointWith rdf:nodeID="E"/>
    </owl:Class>
    <owl:Class rdf:nodeID="D">
      <owl:intersectionOf rdf:parseType="Collection">
        <owl:Class rdf:ID="D"/>
      </owl:intersectionOf>
      <owl:disjointWith rdf:nodeID="B"/>
      <owl:disjointWith rdf:nodeID="E"/>
    </owl:Class>
    <owl:Class rdf:nodeID="E">
      <owl:intersectionOf rdf:parseType="Collection">
        <owl:Class rdf:ID="E"/>
      </owl:intersectionOf>
    </owl:Class>

</rdf:RDF>
_:a rdf:type owl:Class .
first:A rdf:type owl:Class .
_:c rdf:first first:A .
_:c rdf:rest rdf:nil .
_:a owl:intersectionOf _:c .
_:a owl:disjointWith _:e .
_:a owl:disjointWith _:g .
_:a owl:disjointWith _:i .
_:e rdf:type owl:Class .
first:B rdf:type owl:Class .
_:k rdf:first first:B .
_:k rdf:rest rdf:nil .
_:e owl:intersectionOf _:k .
_:e owl:disjointWith _:a .
_:e owl:disjointWith _:m .
_:e owl:disjointWith _:i .
_:m rdf:type owl:Class .
first:C rdf:type owl:Class .
_:o rdf:first first:C .
_:o rdf:rest rdf:nil .
_:m owl:intersectionOf _:o .
_:m owl:disjointWith _:a .
_:m owl:disjointWith _:i .
_:g rdf:type owl:Class .
first:D rdf:type owl:Class .
_:q rdf:first first:D .
_:q rdf:rest rdf:nil .
_:g owl:intersectionOf _:q .
_:g owl:disjointWith _:e .
_:g owl:disjointWith _:i .
_:i rdf:type owl:Class .
first:E rdf:type owl:Class .
_:s rdf:first first:E .
_:s rdf:rest rdf:nil .
_:i owl:intersectionOf _:s .

DL Full Consistent document.005
Description: (informative) <disjointWith/Manifest005#test>
If the owl:disjointWith edges in the graph form unconnected undirected complete subgraphs then this may be within OWL DL.
N3 format is informative.
DLConsistent: <disjointWith/consistent005>
<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/disjointWith/consistent005" >
    <owl:Class rdf:nodeID="A">
      <owl:intersectionOf rdf:parseType="Collection">
        <owl:Class rdf:ID="A"/>
      </owl:intersectionOf>
      <owl:disjointWith rdf:nodeID="D"/>
      <owl:disjointWith rdf:nodeID="E"/>
    </owl:Class>
    <owl:Class rdf:nodeID="B">
      <owl:intersectionOf rdf:parseType="Collection">
        <owl:Class rdf:ID="B"/>
      </owl:intersectionOf>
      <owl:disjointWith rdf:nodeID="C"/>
    </owl:Class>
    <owl:Class rdf:nodeID="C">
      <owl:intersectionOf rdf:parseType="Collection">
        <owl:Class rdf:ID="C"/>
      </owl:intersectionOf>
    </owl:Class>
    <owl:Class rdf:nodeID="D">
      <owl:intersectionOf rdf:parseType="Collection">
        <owl:Class rdf:ID="D"/>
      </owl:intersectionOf>
      <owl:disjointWith rdf:nodeID="E"/>
    </owl:Class>
    <owl:Class rdf:nodeID="E">
      <owl:intersectionOf rdf:parseType="Collection">
        <owl:Class rdf:ID="E"/>
      </owl:intersectionOf>
      <owl:disjointWith rdf:nodeID="D"/>
    </owl:Class>

</rdf:RDF>
_:a rdf:type owl:Class .
first:A rdf:type owl:Class .
_:c rdf:first first:A .
_:c rdf:rest rdf:nil .
_:a owl:intersectionOf _:c .
_:a owl:disjointWith _:e .
_:a owl:disjointWith _:g .
_:i rdf:type owl:Class .
first:B rdf:type owl:Class .
_:k rdf:first first:B .
_:k rdf:rest rdf:nil .
_:i owl:intersectionOf _:k .
_:i owl:disjointWith _:m .
_:m rdf:type owl:Class .
first:C rdf:type owl:Class .
_:o rdf:first first:C .
_:o rdf:rest rdf:nil .
_:m owl:intersectionOf _:o .
_:e rdf:type owl:Class .
first:D rdf:type owl:Class .
_:q rdf:first first:D .
_:q rdf:rest rdf:nil .
_:e owl:intersectionOf _:q .
_:e owl:disjointWith _:g .
_:g rdf:type owl:Class .
first:E rdf:type owl:Class .
_:s rdf:first first:E .
_:s rdf:rest rdf:nil .
_:g owl:intersectionOf _:s .
_:g owl:disjointWith _:e .

Full (EC) Consistent document.006
Description: (informative) <disjointWith/Manifest006#test>
If the owl:disjointWith edges in the graph form undirected complete subgraphs which share blank nodes then this is not within OWL DL.
N3 format is informative.
FullConsistent: <disjointWith/consistent006>
<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/disjointWith/consistent006" >
    <owl:Class rdf:nodeID="A">
      <owl:intersectionOf rdf:parseType="Collection">
        <owl:Class rdf:ID="A"/>
      </owl:intersectionOf>
      <owl:disjointWith rdf:nodeID="D"/>
      <owl:disjointWith rdf:nodeID="E"/>
    </owl:Class>
    <owl:Class rdf:nodeID="B">
      <owl:intersectionOf rdf:parseType="Collection">
        <owl:Class rdf:ID="B"/>
      </owl:intersectionOf>
      <owl:disjointWith rdf:nodeID="C"/>
      <owl:disjointWith rdf:nodeID="A"/>
    </owl:Class>
    <owl:Class rdf:nodeID="C">
      <owl:intersectionOf rdf:parseType="Collection">
        <owl:Class rdf:ID="C"/>
      </owl:intersectionOf>
      <owl:disjointWith rdf:nodeID="A"/>
    </owl:Class>
    <owl:Class rdf:nodeID="D">
      <owl:intersectionOf rdf:parseType="Collection">
        <owl:Class rdf:ID="D"/>
      </owl:intersectionOf>
      <owl:disjointWith rdf:nodeID="E"/>
    </owl:Class>
    <owl:Class rdf:nodeID="E">
      <owl:intersectionOf rdf:parseType="Collection">
        <owl:Class rdf:ID="E"/>
      </owl:intersectionOf>
      <owl:disjointWith rdf:nodeID="D"/>
    </owl:Class>

</rdf:RDF>
_:a rdf:type owl:Class .
first:A rdf:type owl:Class .
_:c rdf:first first:A .
_:c rdf:rest rdf:nil .
_:a owl:intersectionOf _:c .
_:a owl:disjointWith _:e .
_:a owl:disjointWith _:g .
_:i rdf:type owl:Class .
first:B rdf:type owl:Class .
_:k rdf:first first:B .
_:k rdf:rest rdf:nil .
_:i owl:intersectionOf _:k .
_:i owl:disjointWith _:m .
_:i owl:disjointWith _:a .
_:m rdf:type owl:Class .
first:C rdf:type owl:Class .
_:o rdf:first first:C .
_:o rdf:rest rdf:nil .
_:m owl:intersectionOf _:o .
_:m owl:disjointWith _:a .
_:e rdf:type owl:Class .
first:D rdf:type owl:Class .
_:q rdf:first first:D .
_:q rdf:rest rdf:nil .
_:e owl:intersectionOf _:q .
_:e owl:disjointWith _:g .
_:g rdf:type owl:Class .
first:E rdf:type owl:Class .
_:s rdf:first first:E .
_:s rdf:rest rdf:nil .
_:g owl:intersectionOf _:s .
_:g owl:disjointWith _:e .

DL Full Consistent document.007
Description: (informative) <disjointWith/Manifest007#test>
If the owl:disjointWith edges in the graph form undirected complete subgraphs which share URIref nodes but do not share blank node then this may be within OWL DL.
N3 format is informative.
DLConsistent: <disjointWith/consistent007>
<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/disjointWith/consistent007" >
    <owl:Class rdf:ID="A">
      <owl:disjointWith rdf:nodeID="D"/>
      <owl:disjointWith rdf:nodeID="E"/>
    </owl:Class>
    <owl:Class rdf:nodeID="B">
      <owl:intersectionOf rdf:parseType="Collection">
        <owl:Class rdf:ID="B"/>
      </owl:intersectionOf>
      <owl:disjointWith rdf:nodeID="C"/>
      <owl:disjointWith rdf:resource="#A"/>
    </owl:Class>
    <owl:Class rdf:nodeID="C">
      <owl:intersectionOf rdf:parseType="Collection">
        <owl:Class rdf:ID="C"/>
      </owl:intersectionOf>
      <owl:disjointWith rdf:resource="#A"/>
    </owl:Class>
    <owl:Class rdf:nodeID="D">
      <owl:intersectionOf rdf:parseType="Collection">
        <owl:Class rdf:ID="D"/>
      </owl:intersectionOf>
      <owl:disjointWith rdf:nodeID="E"/>
    </owl:Class>
    <owl:Class rdf:nodeID="E">
      <owl:intersectionOf rdf:parseType="Collection">
        <owl:Class rdf:ID="E"/>
      </owl:intersectionOf>
      <owl:disjointWith rdf:nodeID="D"/>
    </owl:Class>

</rdf:RDF>
first:A rdf:type owl:Class .
first:A owl:disjointWith _:a .
first:A owl:disjointWith _:c .
_:e rdf:type owl:Class .
first:B rdf:type owl:Class .
_:g rdf:first first:B .
_:g rdf:rest rdf:nil .
_:e owl:intersectionOf _:g .
_:e owl:disjointWith _:i .
_:e owl:disjointWith first:A .
_:i rdf:type owl:Class .
first:C rdf:type owl:Class .
_:k rdf:first first:C .
_:k rdf:rest rdf:nil .
_:i owl:intersectionOf _:k .
_:i owl:disjointWith first:A .
_:a rdf:type owl:Class .
first:D rdf:type owl:Class .
_:m rdf:first first:D .
_:m rdf:rest rdf:nil .
_:a owl:intersectionOf _:m .
_:a owl:disjointWith _:c .
_:c rdf:type owl:Class .
first:E rdf:type owl:Class .
_:o rdf:first first:E .
_:o rdf:rest rdf:nil .
_:c owl:intersectionOf _:o .
_:c owl:disjointWith _:a .

Full (EC) Consistent document.008
Description: (informative) <disjointWith/Manifest008#test>
A further example that cannot be generated from the mapping rule for DisjointClasses.
N3 format is informative.
FullConsistent: <disjointWith/consistent008>
<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/disjointWith/consistent008" >
    <owl:Class rdf:ID="A"/>
    <owl:Class rdf:nodeID="B">
      <owl:intersectionOf rdf:parseType="Collection">
        <owl:Class rdf:ID="B"/>
      </owl:intersectionOf>
      <owl:disjointWith rdf:resource="#A"/>
    </owl:Class>
    <owl:Class rdf:nodeID="C">
      <owl:intersectionOf rdf:parseType="Collection">
        <owl:Class rdf:ID="C"/>
      </owl:intersectionOf>
      <owl:disjointWith rdf:resource="#A"/>
    </owl:Class>
    <owl:Class rdf:ID="D">
      <owl:disjointWith rdf:nodeID="B"/>
      <owl:disjointWith rdf:nodeID="C"/>
    </owl:Class>

</rdf:RDF>
first:A rdf:type owl:Class .
_:a rdf:type owl:Class .
first:B rdf:type owl:Class .
_:c rdf:first first:B .
_:c rdf:rest rdf:nil .
_:a owl:intersectionOf _:c .
_:a owl:disjointWith first:A .
_:e rdf:type owl:Class .
first:C rdf:type owl:Class .
_:g rdf:first first:C .
_:g rdf:rest rdf:nil .
_:e owl:intersectionOf _:g .
_:e owl:disjointWith first:A .
first:D rdf:type owl:Class .
first:D owl:disjointWith _:a .
first:D owl:disjointWith _:e .

DL Full Consistent document.009
Description: (informative) <disjointWith/Manifest009#test>
If the owl:disjointWith edges in the graph form undirected complete subgraphs which share URIref nodes but do not share blank node then this may be within OWL DL.
N3 format is informative.
DLConsistent: <disjointWith/consistent009>
<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/disjointWith/consistent009" >
    <owl:Class rdf:ID="A"/>
    <owl:Class rdf:nodeID="B">
      <owl:intersectionOf rdf:parseType="Collection">
        <owl:Class rdf:ID="B"/>
      </owl:intersectionOf>
      <owl:disjointWith rdf:resource="#A"/>
    </owl:Class>
    <owl:Class rdf:nodeID="C">
      <owl:intersectionOf rdf:parseType="Collection">
        <owl:Class rdf:ID="C"/>
      </owl:intersectionOf>
      <owl:disjointWith rdf:resource="#A"/>
    </owl:Class>
    <owl:Class rdf:ID="D">
      <owl:disjointWith rdf:nodeID="B"/>
      <owl:disjointWith rdf:nodeID="C"/>
      <owl:disjointWith rdf:resource="#A"/>
    </owl:Class>

</rdf:RDF>
first:A rdf:type owl:Class .
_:a rdf:type owl:Class .
first:B rdf:type owl:Class .
_:c rdf:first first:B .
_:c rdf:rest rdf:nil .
_:a owl:intersectionOf _:c .
_:a owl:disjointWith first:A .
_:e rdf:type owl:Class .
first:C rdf:type owl:Class .
_:g rdf:first first:C .
_:g rdf:rest rdf:nil .
_:e owl:intersectionOf _:g .
_:e owl:disjointWith first:A .
first:D rdf:type owl:Class .
first:D owl:disjointWith _:a .
first:D owl:disjointWith _:e .
first:D owl:disjointWith first:A .

Full Inconsistent document.010
Description: (informative) <disjointWith/Manifest010#test>
The owl:disjointWith loop is not in OWL DL. Classes that are disjoint with themselves are necessarily empty.
N3 format is informative.
FullInconsistent: <disjointWith/inconsistent010>
<rdf:RDF
    xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
    xmlns:owl="http://www.w3.org/2002/07/owl#"
    xmlns:first="http://www.w3.org/2002/03owlt/disjointWith/inconsistent010#"
    xml:base="http://www.w3.org/2002/03owlt/disjointWith/inconsistent010" >

 <owl:Restriction rdf:nodeID="n">
     <owl:onProperty>
        <owl:ObjectProperty rdf:about="#p" />
     </owl:onProperty>
     <owl:minCardinality rdf:datatype=
 "http://www.w3.org/2001/XMLSchema#int"
     >1</owl:minCardinality>
     <owl:disjointWith rdf:nodeID="n"/>
  </owl:Restriction>
  <owl:Thing>
     <first:p>
        <owl:Thing/>
     </first:p>
  </owl:Thing>

</rdf:RDF>
_:a rdf:type owl:Restriction .
first:p rdf:type owl:ObjectProperty .
_:a owl:onProperty first:p .
_:a owl:minCardinality "1"^^xsd:int  .
_:a owl:disjointWith _:a .
_:c rdf:type owl:Thing .
_:e rdf:type owl:Thing .
_:c first:p _:e .

7.1.19. owl:distinctMembers

Full Positive Entailment Test:001
Description: (informative) <distinctMembers/Manifest001#test>
using distinctMembers to derive differentFrom
N3 format is informative.
FullPremises: <distinctMembers/premises001>
<rdf:RDF
    xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
    xmlns:owl="http://www.w3.org/2002/07/owl#"
    xmlns:first="http://www.w3.org/2002/03owlt/distinctMembers/premises001#"
    xml:base="http://www.w3.org/2002/03owlt/distinctMembers/premises001" >

    <owl:AllDifferent> 
      <owl:distinctMembers rdf:parseType="Collection">
        <first:Person rdf:about="#Fred" />
        <first:Person rdf:about="#Wilma" />
        <first:Person rdf:about="#Barney" />
        <first:Person rdf:about="#Betty" />
      </owl:distinctMembers>
    </owl:AllDifferent> 

</rdf:RDF>
_:a rdf:type owl:AllDifferent .
first:Fred rdf:type first:Person .
first:Wilma rdf:type first:Person .
first:Barney rdf:type first:Person .
first:Betty rdf:type first:Person .
_:c rdf:first first:Betty .
_:c rdf:rest rdf:nil .
_:e rdf:first first:Barney .
_:e rdf:rest _:c .
_:g rdf:first first:Wilma .
_:g rdf:rest _:e .
_:i rdf:first first:Fred .
_:i rdf:rest _:g .
_:a owl:distinctMembers _:i .
FullConclusions: <distinctMembers/conclusions001>
<rdf:RDF
    xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
    xmlns:owl="http://www.w3.org/2002/07/owl#"
    xmlns:first="http://www.w3.org/2002/03owlt/distinctMembers/premises001#"
    xml:base="http://www.w3.org/2002/03owlt/distinctMembers/conclusions001" >

    <rdf:Description rdf:about="premises001#Fred">
        <owl:differentFrom rdf:resource="premises001#Barney"/>
    </rdf:Description>

</rdf:RDF>
first:Fred owl:differentFrom first:Barney .

7.1.20. owl:equivalentClass

Lite Full Positive Entailment Test:001
Description: (informative) <equivalentClass/Manifest001#test>
Two classes may have the same class extension.
N3 format is informative.
LitePremises: <equivalentClass/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/equivalentClass/premises001#"
    xml:base="http://www.w3.org/2002/03owlt/equivalentClass/premises001" >
   <owl:Class rdf:ID="Car">
     <owl:equivalentClass>
       <owl:Class rdf:ID="Automobile"/>
     </owl:equivalentClass>
  </owl:Class>
  <first:Car rdf:ID="car">
     <rdf:type rdf:resource="http://www.w3.org/2002/07/owl#Thing" />
  </first:Car>
  <first:Automobile rdf:ID="auto">
     <rdf:type rdf:resource="http://www.w3.org/2002/07/owl#Thing" />
  </first:Automobile>
</rdf:RDF>
first:Car rdf:type owl:Class .
first:Automobile rdf:type owl:Class .
first:Car owl:equivalentClass first:Automobile .
first:car rdf:type first:Car .
first:car rdf:type owl:Thing .
first:auto rdf:type first:Automobile .
first:auto rdf:type owl:Thing .
LiteConclusions: <equivalentClass/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#"
    xmlns:first="http://www.w3.org/2002/03owlt/equivalentClass/premises001#"
    xml:base="http://www.w3.org/2002/03owlt/equivalentClass/conclusions001" >
  <first:Car rdf:about="premises001#auto">
     <rdf:type rdf:resource="http://www.w3.org/2002/07/owl#Thing" />
  </first:Car>
  <first:Automobile rdf:about="premises001#car">
     <rdf:type rdf:resource="http://www.w3.org/2002/07/owl#Thing" />
  </first:Automobile>
   <owl:Class rdf:about="premises001#Car"/>
   <owl:Class rdf:about="premises001#Automobile"/>
</rdf:RDF>
first:auto rdf:type first:Car .
first:auto rdf:type owl:Thing .
first:car rdf:type first:Automobile .
first:car rdf:type owl:Thing .
first:Car rdf:type owl:Class .
first:Automobile rdf:type owl:Class .

Lite Full Positive Entailment Test:002
Description: (informative) <equivalentClass/Manifest002#test>
Two classes may be different names for the same set of individuals
N3 format is informative.
LitePremises: <equivalentClass/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/equivalentClass/premises002" >
   <owl:Class rdf:ID="Car">
     <owl:equivalentClass>
       <owl:Class rdf:ID="Automobile"/>
     </owl:equivalentClass>
  </owl:Class>
</rdf:RDF>
first:Car rdf:type owl:Class .
first:Automobile rdf:type owl:Class .
first:Car owl:equivalentClass first:Automobile .
LiteConclusions: <equivalentClass/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/equivalentClass/conclusions002" >
   <owl:Class rdf:about="premises002#Car">
     <rdfs:subClassOf>
       <owl:Class rdf:about="premises002#Automobile">
          <rdfs:subClassOf rdf:resource="premises002#Car" />
       </owl:Class>
     </rdfs:subClassOf>
  </owl:Class>
</rdf:RDF>
first:Car rdf:type owl:Class .
first:Automobile rdf:type owl:Class .
first:Automobile rdfs:subClassOf first:Car .
first:Car rdfs:subClassOf first:Automobile .

Lite Full Positive Entailment Test:003
Description: (informative) <equivalentClass/Manifest003#test>
Two classes may be different names for the same set of individuals
N3 format is informative.
LitePremises: <equivalentClass/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/equivalentClass/premises003" >
   <owl:Class rdf:about="conclusions003#Car">
     <rdfs:subClassOf>
       <owl:Class rdf:about="conclusions003#Automobile">
          <rdfs:subClassOf rdf:resource="conclusions003#Car" />
       </owl:Class>
     </rdfs:subClassOf>
  </owl:Class>
</rdf:RDF>
second:Car rdf:type owl:Class .
second:Automobile rdf:type owl:Class .
second:Automobile rdfs:subClassOf second:Car .
second:Car rdfs:subClassOf second:Automobile .
LiteConclusions: <equivalentClass/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/equivalentClass/conclusions003" >
   <owl:Class rdf:ID="Car">
     <owl:equivalentClass>
       <owl:Class rdf:ID="Automobile"/>
     </owl:equivalentClass>
  </owl:Class>
</rdf:RDF>
second:Car rdf:type owl:Class .
second:Automobile rdf:type owl:Class .
second:Car owl:equivalentClass second:Automobile .

Lite Full Positive Entailment Test:004
Description: (informative) <equivalentClass/Manifest004#test>
Two classes with the same complete description are equivalent.
N3 format is informative.
LitePremises: <equivalentClass/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/equivalentClass/premises004" >
    <owl:Class rdf:ID="c1">
             <owl:intersectionOf rdf:parseType="Collection">
                <owl:Restriction>
                   <owl:onProperty rdf:resource="#p"/>
                   <owl:cardinality
 rdf:datatype="http://www.w3.org/2001/XMLSchema#nonNegativeInteger"
                   >1</owl:cardinality>
                </owl:Restriction>
              </owl:intersectionOf>
           </owl:Class>
    <owl:Class rdf:ID="c2">
             <owl:intersectionOf rdf:parseType="Collection">
                <owl:Restriction>
                   <owl:onProperty rdf:resource="#p"/>
                   <owl:cardinality
 rdf:datatype="http://www.w3.org/2001/XMLSchema#nonNegativeInteger"
                   >1</owl:cardinality>
                </owl:Restriction>
              </owl:intersectionOf>
     </owl:Class>
     <owl:ObjectProperty rdf:ID="p"/>
</rdf:RDF>
first:c1 rdf:type owl:Class .
_:a rdf:type owl:Restriction .
_:a owl:onProperty first:p .
_:a owl:cardinality "1"^^xsd:nonNegativeInteger  .
_:c rdf:first _:a .
_:c rdf:rest rdf:nil .
first:c1 owl:intersectionOf _:c .
first:c2 rdf:type owl:Class .
_:e rdf:type owl:Restriction .
_:e owl:onProperty first:p .
_:e owl:cardinality "1"^^xsd:nonNegativeInteger  .
_:g rdf:first _:e .
_:g rdf:rest rdf:nil .
first:c2 owl:intersectionOf _:g .
first:p rdf:type owl:ObjectProperty .
LiteConclusions: <equivalentClass/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/equivalentClass/conclusions004" >
<owl:Class rdf:about="premises004#c1">
     <owl:equivalentClass>
       <owl:Class rdf:about="premises004#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 .

Lite Full Negative Entailment Test:005
Description: (informative) <equivalentClass/Manifest005#test>
Two classes with the same partial description are not equivalent.
N3 format is informative.
LitePremises: <equivalentClass/premises005>
<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/equivalentClass/premises005" >
    <owl:Class rdf:ID="c1">
      <rdfs:subClassOf>
                <owl:Restriction>
                   <owl:onProperty rdf:resource="#p"/>
                   <owl:cardinality
 rdf:datatype="http://www.w3.org/2001/XMLSchema#nonNegativeInteger"
                   >1</owl:cardinality>
                </owl:Restriction>
       </rdfs:subClassOf>
     </owl:Class>
    <owl:Class rdf:ID="c2">
      <rdfs:subClassOf>
                <owl:Restriction>
                   <owl:onProperty rdf:resource="#p"/>
                   <owl:cardinality
 rdf:datatype="http://www.w3.org/2001/XMLSchema#nonNegativeInteger"
                   >1</owl:cardinality>
                </owl:Restriction>
       </rdfs:subClassOf>
     </owl:Class>
     <owl:ObjectProperty rdf:ID="p"/>
</rdf:RDF>
first:c1 rdf:type owl:Class .
_:a rdf:type owl:Restriction .
_:a owl:onProperty first:p .
_:a owl:cardinality "1"^^xsd:nonNegativeInteger  .
first:c1 rdfs:subClassOf _:a .
first:c2 rdf:type owl:Class .
_:c rdf:type owl:Restriction .
_:c owl:onProperty first:p .
_:c owl:cardinality "1"^^xsd:nonNegativeInteger  .
first:c2 rdfs:subClassOf _:c .
first:p rdf:type owl:ObjectProperty .
LiteConclusions: <equivalentClass/nonconclusions005>
<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/equivalentClass/nonconclusions005" >
<owl:Class rdf:about="premises005#c1">
     <owl:equivalentClass>
       <owl:Class rdf:about="premises005#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 .

DL Full Positive Entailment Test:006
Description: (informative) <equivalentClass/Manifest006#test>
De Morgan's law.
N3 format is informative.
LitePremises: <equivalentClass/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/equivalentClass/premises006" >
   <owl:Class rdf:ID="A"/>
   <owl:Class rdf:ID="B"/>
</rdf:RDF>
first:A rdf:type owl:Class .
first:B rdf:type owl:Class .
DLConclusions: <equivalentClass/conclusions006>
<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/equivalentClass/conclusions006" >
   <owl:Class>
      <owl:intersectionOf rdf:parseType="Collection">
          <owl:Class>
             <owl:complementOf rdf:resource="premises006#A"/>
          </owl:Class>
          <owl:Class>
             <owl:complementOf rdf:resource="premises006#B"/>
          </owl:Class>
      </owl:intersectionOf>
      <owl:equivalentClass>
        <owl:Class>
          <owl:complementOf>
             <owl:Class>
               <owl:unionOf rdf:parseType="Collection">
                 <rdf:Description rdf:about="premises006#A"/>
                 <rdf:Description rdf:about="premises006#B"/>
               </owl:unionOf>
             </owl:Class>
          </owl:complementOf>
        </owl:Class>
      </owl:equivalentClass>
   </owl:Class>   
   <owl:Class rdf:about="premises006#A"/>
   <owl:Class rdf:about="premises006#B"/>
</rdf:RDF>
_:a rdf:type owl:Class .
_:c rdf:type owl:Class .
_:c owl:complementOf first:A .
_:e rdf:type owl:Class .
_:e owl:complementOf first:B .
_:g rdf:first _:e .
_:g rdf:rest rdf:nil .
_:i rdf:first _:c .
_:i rdf:rest _:g .
_:a owl:intersectionOf _:i .
_:k rdf:type owl:Class .
_:m rdf:type owl:Class .
_:o rdf:first first:B .
_:o rdf:rest rdf:nil .
_:q rdf:first first:A .
_:q rdf:rest _:o .
_:m owl:unionOf _:q .
_:k owl:complementOf _:m .
_:a owl:equivalentClass _:k .
first:A rdf:type owl:Class .
first:B rdf:type owl:Class .

Full Positive Entailment Test:007
Description: (informative) <equivalentClass/Manifest007#test>
De Morgan's law.
N3 format is informative.
FullPremises: <equivalentClass/premises007>
<rdf:RDF
    xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
    xmlns:rdfs="http://www.w3.org/2000/01/rdf-schema#"
    xml:base="http://www.w3.org/2002/03owlt/equivalentClass/premises007" >
   <rdfs:Class rdf:ID="A"/>
   <rdfs:Class rdf:ID="B"/>
</rdf:RDF>
first:A rdf:type rdfs:Class .
first:B rdf:type rdfs:Class .
FullConclusions: <equivalentClass/conclusions007>
<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/equivalentClass/conclusions007" >
   <rdf:Description>
      <owl:intersectionOf rdf:parseType="Collection">
          <rdf:Description>
             <owl:complementOf rdf:resource="premises007#A"/>
          </rdf:Description>
          <rdf:Description>
             <owl:complementOf rdf:resource="premises007#B"/>
          </rdf:Description>
      </owl:intersectionOf>
      <owl:equivalentClass>
         <rdf:Description>
           <owl:complementOf>
             <rdf:Description>
               <owl:unionOf rdf:parseType="Collection">
                 <rdf:Description rdf:about="premises007#A"/>
                 <rdf:Description rdf:about="premises007#B"/>
               </owl:unionOf>
             </rdf:Description>
           </owl:complementOf>
         </rdf:Description>
      </owl:equivalentClass>
   </rdf:Description>   
</rdf:RDF>
_:a owl:complementOf first:A .
_:c owl:complementOf first:B .
_:e rdf:first _:c .
_:e rdf:rest rdf:nil .
_:g rdf:first _:a .
_:g rdf:rest _:e .
_:i owl:intersectionOf _:g .
_:k rdf:first first:B .
_:k rdf:rest rdf:nil .
_:m rdf:first first:A .
_:m rdf:rest _:k .
_:o owl:unionOf _:m .
_:q owl:complementOf _:o .
_:i owl:equivalentClass _:q .

DL Full Negative Entailment Test:008
Description: (informative) <equivalentClass/Manifest008#test>
Annotation properties refer to a class instance. equivalentClass refers to the class extension.
N3 format is informative.
LitePremises: <equivalentClass/premises008>
<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/equivalentClass/premises008#" 
    xml:base="http://www.w3.org/2002/03owlt/equivalentClass/premises008" >

   <owl:Class rdf:ID="c1">
     <owl:equivalentClass>
       <owl:Class rdf:ID="c2"/>
     </owl:equivalentClass>
     <first:annotate>description of c1</first:annotate>
   </owl:Class>

   <owl:AnnotationProperty rdf:ID="annotate" />

</rdf:RDF>
first:c1 rdf:type owl:Class .
first:c2 rdf:type owl:Class .
first:c1 owl:equivalentClass first:c2 .
first:c1 first:annotate "description of c1" .
first:annotate rdf:type owl:AnnotationProperty .
LiteConclusions: <equivalentClass/nonconclusions008>
<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/equivalentClass/premises008#"
 xml:base="http://www.w3.org/2002/03owlt/equivalentClass/nonconclusions008" >
   <owl:Class rdf:about="premises008#c2">
     <first:annotate>description of c1</first:annotate>
   </owl:Class>
   <owl:AnnotationProperty rdf:about="premises008#annotate" />

</rdf:RDF>
first:c2 rdf:type owl:Class .
first:c2 first:annotate "description of c1" .
first:annotate rdf:type owl:AnnotationProperty .

DL Full Consistent document.009
Description: (informative) <equivalentClass/Manifest009#test>
A possible mapping of the EquivalentClasses axiom, which is connected but without a Hamiltonian path.
N3 format is informative.
DLConsistent: <equivalentClass/consistent009>
<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/equivalentClass/consistent009" >
 
 <owl:Class rdf:nodeID="a">
   <owl:oneOf rdf:parseType="Collection">
      <owl:Thing rdf:ID="A"/>
   </owl:oneOf>
   <owl:equivalentClass>   
     <owl:Class rdf:nodeID="b">
       <owl:unionOf rdf:parseType="Collection">
          <owl:Class rdf:ID="B"/>
       </owl:unionOf>
     </owl:Class>
   </owl:equivalentClass>  
   <owl:equivalentClass>    
     <owl:Class rdf:nodeID="c">
       <owl:intersectionOf rdf:parseType="Collection">
          <owl:Class rdf:ID="C"/>
       </owl:intersectionOf>
     </owl:Class>
   </owl:equivalentClass>  
   <owl:equivalentClass>    
     <owl:Class rdf:nodeID="d">
       <owl:complementOf>
          <owl:Class rdf:ID="D"/>
       </owl:complementOf>
     </owl:Class>
   </owl:equivalentClass>  

 </owl:Class>

</rdf:RDF>
_:a rdf:type owl:Class .
first:A rdf:type owl:Thing .
_:c rdf:first first:A .
_:c rdf:rest rdf:nil .
_:a owl:oneOf _:c .
_:e rdf:type owl:Class .
first:B rdf:type owl:Class .
_:g rdf:first first:B .
_:g rdf:rest rdf:nil .
_:e owl:unionOf _:g .
_:a owl:equivalentClass _:e .
_:i rdf:type owl:Class .
first:C rdf:type owl:Class .
_:k rdf:first first:C .
_:k rdf:rest rdf:nil .
_:i owl:intersectionOf _:k .
_:a owl:equivalentClass _:i .
_:m rdf:type owl:Class .
first:D rdf:type owl:Class .
_:m owl:complementOf first:D .
_:a owl:equivalentClass _:m .

7.1.21. owl:equivalentProperty

Lite Full Positive Entailment Test:001
Description: (informative) <equivalentProperty/Manifest001#test>
hasLeader may be stated to be the owl:equivalentProperty of hasHead.
N3 format is informative.
LitePremises: <equivalentProperty/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/equivalentProperty/premises001#"
    xml:base="http://www.w3.org/2002/03owlt/equivalentProperty/premises001" >
   <owl:ObjectProperty rdf:ID="hasHead">
      <owl:equivalentProperty>
         <owl:ObjectProperty rdf:ID="hasLeader"/>
      </owl:equivalentProperty>
   </owl:ObjectProperty>
   <owl:Thing rdf:ID="X">
     <first:hasLeader>
        <owl:Thing rdf:ID="Y"/>
     </first:hasLeader>
   </owl:Thing>
</rdf:RDF>
first:hasHead rdf:type owl:ObjectProperty .
first:hasLeader rdf:type owl:ObjectProperty .
first:hasHead owl:equivalentProperty first:hasLeader .
first:X rdf:type owl:Thing .
first:Y rdf:type owl:Thing .
first:X first:hasLeader first:Y .
LiteConclusions: <equivalentProperty/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#"
    xmlns:first="http://www.w3.org/2002/03owlt/equivalentProperty/premises001#"
    xml:base="http://www.w3.org/2002/03owlt/equivalentProperty/conclusions001" >
   <owl:Thing rdf:about="premises001#X">
     <first:hasHead>
        <owl:Thing rdf:about="premises001#Y"/>
     </first:hasHead>
   </owl:Thing>   
   <owl:ObjectProperty rdf:about="premises001#hasHead"/>
</rdf:RDF>
first:X rdf:type owl:Thing .
first:Y rdf:type owl:Thing .
first:X first:hasHead first:Y .
first:hasHead rdf:type owl:ObjectProperty .

Lite Full Positive Entailment Test:002
Description: (informative) <equivalentProperty/Manifest002#test>
A reasoner can also deduce that hasLeader is a subProperty of hasHead and hasHead is a subProperty of hasLeader.
N3 format is informative.
LitePremises: <equivalentProperty/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/equivalentProperty/premises002#"
    xml:base="http://www.w3.org/2002/03owlt/equivalentProperty/premises002" >
   <owl:ObjectProperty rdf:ID="hasHead">
      <owl:equivalentProperty>
         <owl:ObjectProperty rdf:ID="hasLeader"/>
      </owl:equivalentProperty>
   </owl:ObjectProperty>
</rdf:RDF>
first:hasHead rdf:type owl:ObjectProperty .
first:hasLeader rdf:type owl:ObjectProperty .
first:hasHead owl:equivalentProperty first:hasLeader .
LiteConclusions: <equivalentProperty/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#"
    xmlns:first="http://www.w3.org/2002/03owlt/equivalentProperty/premises002#"
    xml:base="http://www.w3.org/2002/03owlt/equivalentProperty/conclusions002" >
   <owl:ObjectProperty rdf:about="premises002#hasHead">
      <rdfs:subPropertyOf rdf:resource="premises002#hasLeader"/>
   </owl:ObjectProperty>
   <owl:ObjectProperty rdf:about="premises002#hasLeader">
      <rdfs:subPropertyOf rdf:resource="premises002#hasHead"/>
   </owl:ObjectProperty>
</rdf:RDF>
first:hasHead rdf:type owl:ObjectProperty .
first:hasHead rdfs:subPropertyOf first:hasLeader .
first:hasLeader rdf:type owl:ObjectProperty .
first:hasLeader rdfs:subPropertyOf first:hasHead .

Lite Full Positive Entailment Test:003
Description: (informative) <equivalentProperty/Manifest003#test>
The inverse entailment of test 002 also holds.
N3 format is informative.
LitePremises: <equivalentProperty/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/equivalentProperty/premises003" >
   <owl:ObjectProperty rdf:about="conclusions003#hasHead">
      <rdfs:subPropertyOf rdf:resource="conclusions003#hasLeader"/>
   </owl:ObjectProperty>
   <owl:ObjectProperty rdf:about="conclusions003#hasLeader">
      <rdfs:subPropertyOf rdf:resource="conclusions003#hasHead"/>
   </owl:ObjectProperty>
</rdf:RDF>
second:hasHead rdf:type owl:ObjectProperty .
second:hasHead rdfs:subPropertyOf second:hasLeader .
second:hasLeader rdf:type owl:ObjectProperty .
second:hasLeader rdfs:subPropertyOf second:hasHead .
LiteConclusions: <equivalentProperty/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/equivalentProperty/conclusions003" >
   <owl:ObjectProperty rdf:ID="hasHead">
      <owl:equivalentProperty>
         <owl:ObjectProperty rdf:ID="hasLeader"/>
      </owl:equivalentProperty>
   </owl:ObjectProperty>
</rdf:RDF>
second:hasHead rdf:type owl:ObjectProperty .
second:hasLeader rdf:type owl:ObjectProperty .
second:hasHead owl:equivalentProperty second:hasLeader .

DL Full Positive Entailment Test:004
Description: (informative) <equivalentProperty/Manifest004#test>
If p and q have the same property extension then p equivalentProperty q.
N3 format is informative.
DLPremises: <equivalentProperty/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/equivalentProperty/premises004" >
   <owl:ObjectProperty rdf:ID="p">
      <rdfs:domain rdf:resource="#d"/>
   </owl:ObjectProperty>
   <owl:ObjectProperty rdf:ID="q">
      <rdfs:domain rdf:resource="#d"/>
   </owl:ObjectProperty>
   <owl:FunctionalProperty rdf:about="#q"/>
   <owl:FunctionalProperty rdf:about="#p"/>
   <owl:Thing rdf:ID="v"/>
   <owl:Class rdf:ID="d">
     <owl:equivalentClass>
              <owl:Restriction>
                <owl:onProperty rdf:resource="#p"/>
                <owl:hasValue rdf:resource="#v"/>
              </owl:Restriction>
     </owl:equivalentClass>
     <owl:equivalentClass>
              <owl:Restriction>
                <owl:onProperty rdf:resource="#q"/>
                <owl:hasValue rdf:resource="#v"/>
              </owl:Restriction>
     </owl:equivalentClass>
   </owl:Class>
</rdf:RDF>
first:p rdf:type owl:ObjectProperty .
first:p rdfs:domain first:d .
first:q rdf:type owl:ObjectProperty .
first:q rdfs:domain first:d .
first:q rdf:type owl:FunctionalProperty .
first:p rdf:type owl:FunctionalProperty .
first:v rdf:type owl:Thing .
first:d rdf:type owl:Class .
_:a rdf:type owl:Restriction .
_:a owl:onProperty first:p .
_:a owl:hasValue first:v .
first:d owl:equivalentClass _:a .
_:c rdf:type owl:Restriction .
_:c owl:onProperty first:q .
_:c owl:hasValue first:v .
first:d owl:equivalentClass _:c .
LiteConclusions: <equivalentProperty/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/equivalentProperty/conclusions004" >
   <owl:ObjectProperty rdf:about="premises004#p">
      <owl:equivalentProperty>
         <owl:ObjectProperty rdf:about="premises004#q"/>
      </owl:equivalentProperty>
   </owl:ObjectProperty>
</rdf:RDF>
first:p rdf:type owl:ObjectProperty .
first:q rdf:type owl:ObjectProperty .
first:p owl:equivalentProperty first:q .

Full Positive Entailment Test:005
Description: (informative) <equivalentProperty/Manifest005#test>
If p and q have the same property extension then p owl:equivalentProperty q.
N3 format is informative.
FullPremises: <equivalentProperty/premises005>
<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/equivalentProperty/premises005" >
   <owl:FunctionalProperty rdf:about="#q">
      <rdfs:domain rdf:nodeID="d"/>
   </owl:FunctionalProperty>
   <owl:FunctionalProperty rdf:about="#p">
      <rdfs:domain rdf:nodeID="d"/>
   </owl:FunctionalProperty>
   <owl:Restriction rdf:nodeID="d">
     <owl:onProperty rdf:resource="#p"/>
     <owl:onProperty rdf:resource="#q"/>
     <owl:hasValue rdf:resource="#v"/>
   </owl:Restriction>
</rdf:RDF>
first:q rdf:type owl:FunctionalProperty .
first:q rdfs:domain _:a .
first:p rdf:type owl:FunctionalProperty .
first:p rdfs:domain _:a .
_:a rdf:type owl:Restriction .
_:a owl:onProperty first:p .
_:a owl:onProperty first:q .
_:a owl:hasValue first:v .
FullConclusions: <equivalentProperty/conclusions005>
<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/equivalentProperty/conclusions005" >
   <rdf:Description rdf:about="premises005#p">
      <owl:equivalentProperty rdf:resource="premises005#q"/>
   </rdf:Description>
</rdf:RDF>
first:p owl:equivalentProperty first:q .

Full Positive Entailment Test:006
Description: (informative) <equivalentProperty/Manifest006#test>
hasLeader may be stated to be the owl:equivalentProperty of hasHead.
N3 format is informative.
FullPremises: <equivalentProperty/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#"
    xmlns:first="http://www.w3.org/2002/03owlt/equivalentProperty/premises006#"
    xml:base="http://www.w3.org/2002/03owlt/equivalentProperty/premises006" >
   <rdf:Description rdf:ID="hasHead">
      <owl:equivalentProperty>
         <rdf:Description rdf:ID="hasLeader"/>
      </owl:equivalentProperty>
   </rdf:Description>
   <rdf:Description rdf:ID="X">
     <first:hasLeader>
        <rdf:Description rdf:ID="Y"/>
     </first:hasLeader>
   </rdf:Description>
</rdf:RDF>
first:hasHead owl:equivalentProperty first:hasLeader .
first:X first:hasLeader first:Y .
FullConclusions: <equivalentProperty/conclusions006>
<rdf:RDF
    xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
    xmlns:first="http://www.w3.org/2002/03owlt/equivalentProperty/premises006#"
    xml:base="http://www.w3.org/2002/03owlt/equivalentProperty/conclusions006" >
   <rdf:Description rdf:about="premises006#X">
     <first:hasHead rdf:resource="premises006#Y" />
   </rdf:Description>
</rdf:RDF>
first:X first:hasHead first:Y .

7.1.22. owl:imports

Full Import Entailment Test:001
Description: (informative) <imports/Manifest001#test>
If a document imports another document, then it entails anything that is entailed by the conjunction of the two documents.
N3 format is informative.
Namespaces:
@prefix ont: <http://www.w3.org/2002/03owlt/imports/support001-A#> .
FullPremises: <imports/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:ont='http://www.w3.org/2002/03owlt/imports/support001-A#'
    xml:base='http://www.w3.org/2002/03owlt/imports/premises001' >

    <rdf:Description rdf:about=''>
        <owl:imports 
     rdf:resource="http://www.w3.org/2002/03owlt/imports/support001-A"/>
    </rdf:Description>

    <ont:Man rdf:about='http://example.org/data#Socrates'/>

</rdf:RDF>
<imports/premises001> owl:imports <imports/support001-A> .
<http://example.org/data#Socrates> rdf:type ont:Man .
LiteImported Premises <imports/support001-A>
<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/imports/support001-A' >

    <owl:Ontology rdf:about=''/>

    <owl:Class rdf:ID='Man'>
        <rdfs:subClassOf rdf:resource='#Mortal'/>
    </owl:Class>

    <owl:Class rdf:ID='Mortal'/>

</rdf:RDF>
<imports/support001-A> rdf:type owl:Ontology .
ont:Man rdf:type owl:Class .
ont:Man rdfs:subClassOf ont:Mortal .
ont:Mortal rdf:type owl:Class .
FullConclusions: <imports/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/imports/conclusions001' >

    <rdf:Description rdf:about='http://example.org/data#Socrates'>
        <rdf:type rdf:resource='http://www.w3.org/2002/03owlt/imports/support001-A#Mortal'/>
    </rdf:Description>

</rdf:RDF>
<http://example.org/data#Socrates> rdf:type ont:Mortal .

Full (EC) Negative Entailment Test:002
Description: (informative) <imports/Manifest002#test>
If a premise document uses a namespace but does not import the document corresponding to the namespace, then the premises do not necessarily entail anything that is entailed by the conjunction of the two documents.
N3 format is informative.
Namespaces:
@prefix ont: <http://www.w3.org/2002/03owlt/imports/support002-A#> .
FullPremises: <imports/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:ont='http://www.w3.org/2002/03owlt/imports/support002-A#'
    xml:base='http://www.w3.org/2002/03owlt/imports/premises002' >

    <ont:Man rdf:about='http://example.org/data#Socrates'/>

</rdf:RDF>
<http://example.org/data#Socrates> rdf:type ont:Man .
LiteImported Premises <imports/support002-A>
<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/imports/support002-A' >

    <owl:Ontology rdf:about=''/>
    <owl:Class rdf:ID='Man'>
        <rdfs:subClassOf rdf:resource='#Mortal'/>
    </owl:Class>
    <owl:Class rdf:ID='Mortal'/>

</rdf:RDF>
<imports/support002-A> rdf:type owl:Ontology .
ont:Man rdf:type owl:Class .
ont:Man rdfs:subClassOf ont:Mortal .
ont:Mortal rdf:type owl:Class .
FullConclusions: <imports/nonconclusions002>
<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/imports/nonconclusions002' >

    <rdf:Description rdf:about='http://example.org/data#Socrates'>
        <rdf:type rdf:resource='http://www.w3.org/2002/03owlt/imports/support002-A#Mortal'/>
    </rdf:Description>

</rdf:RDF>
<http://example.org/data#Socrates> rdf:type ont:Mortal .

Full Import Entailment Test:003
Description: (informative) <imports/Manifest003#test>
If a document imports a document which in turn imports a third document, then it entails anything which is entailed by the conjunction of the statements from the three documents. That is, imports is transitive.
N3 format is informative.
Namespaces:
@prefix ont: <http://www.w3.org/2002/03owlt/imports/support003-A#> .
FullPremises: <imports/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#'
    xmlns:ont='http://www.w3.org/2002/03owlt/imports/support003-A#'
    xml:base='http://www.w3.org/2002/03owlt/imports/premises003' >

    <rdf:Description rdf:about=''>
        <owl:imports rdf:resource='http://www.w3.org/2002/03owlt/imports/support003-A'/>
    </rdf:Description>

    <ont:Man rdf:about='http://example.org/data#Socrates'/>

</rdf:RDF>
<imports/premises003> owl:imports <imports/support003-A> .
<http://example.org/data#Socrates> rdf:type ont:Man .
LiteImported Premises <imports/support003-A>
<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/imports/support003-A' >

    <owl:Ontology rdf:about=''>
        <owl:imports rdf:resource='http://www.w3.org/2002/03owlt/imports/support003-B'/>
    </owl:Ontology>

    <owl:Class rdf:ID='Man'>
        <rdfs:subClassOf rdf:resource='#Person'/>
    </owl:Class>

    <owl:Class rdf:ID='Person'/>

</rdf:RDF>
<imports/support003-A> rdf:type owl:Ontology .
<imports/support003-A> owl:imports <imports/support003-B> .
ont:Man rdf:type owl:Class .
ont:Man rdfs:subClassOf ont:Person .
ont:Person rdf:type owl:Class .
LiteImported Premises <imports/support003-B>
<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/imports/support003-B' >

    <owl:Ontology rdf:about=''/>

    <owl:Class rdf:about='http://www.w3.org/2002/03owlt/imports/support003-A#Person'>
        <rdfs:subClassOf rdf:resource='#Mortal'/>
    </owl:Class>

    <owl:Class rdf:ID='Mortal'/>

</rdf:RDF>
<imports/support003-B> rdf:type owl:Ontology .
ont:Person rdf:type owl:Class .
ont:Person rdfs:subClassOf <imports/support003-B#Mortal> .
<imports/support003-B#Mortal> rdf:type owl:Class .
FullConclusions: <imports/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/imports/conclusions003' >

    <rdf:Description rdf:about='http://example.org/data#Socrates'>
        <rdf:type rdf:resource='http://www.w3.org/2002/03owlt/imports/support003-B#Mortal'/>
    </rdf:Description>

</rdf:RDF>
<http://example.org/data#Socrates> rdf:type <imports/support003-B#Mortal> .

Full Import Level Test:004
Description: (informative) <imports/Manifest004#test>
Importing OWL Full documents may change the level of OWL Lite or OWL DL documents.
N3 format is informative.
FullImported document: <imports/imports004>
<rdf:RDF
    xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
    xmlns:rdfs="http://www.w3.org/2000/01/rdf-schema#"
    xml:base="http://www.w3.org/2002/03owlt/imports/imports004" >
    <rdfs:Class rdf:ID="c" />
</rdf:RDF>
first:c rdf:type rdfs:Class .
FullMain document: <imports/main004>
<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/imports/main004" >
    <owl:Ontology rdf:about="">
      <owl:imports rdf:resource="imports004" />
    </owl:Ontology>
</rdf:RDF>
<imports/main004> rdf:type owl:Ontology .
<imports/main004> owl:imports <imports/imports004> .

DL Import Level Test:005
Description: (informative) <imports/Manifest005#test>
If an OWL Lite document imports an OWL DL document then it becomes OWL DL.
N3 format is informative.
DLImported document: <imports/imports005>
<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/imports/imports005" >
    <owl:Ontology rdf:about=""/>
    <owl:Class rdf:ID="c">
      <owl:oneOf rdf:parseType="Collection">
        <owl:Thing rdf:ID="x"/>
      </owl:oneOf>
    </owl:Class>
</rdf:RDF>
<imports/imports005> rdf:type owl:Ontology .
first:c rdf:type owl:Class .
first:x rdf:type owl:Thing .
_:a rdf:first first:x .
_:a rdf:rest rdf:nil .
first:c owl:oneOf _:a .
DLMain document: <imports/main005>
<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/imports/main005" >
    <owl:Ontology rdf:about="">
      <owl:imports rdf:resource="imports005" />
    </owl:Ontology>
</rdf:RDF>
<imports/main005> rdf:type owl:Ontology .
<imports/main005> owl:imports <imports/imports005> .

Lite Import Level Test:006
Description: (informative) <imports/Manifest006#test>
The type declarations required by semantic layering can be imported into an OWL Lite or OWL DL file.
N3 format is informative.
LiteImported document: <imports/imports006>
<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/imports/imports006" >
    <owl:Ontology rdf:about=""/>
    <owl:Class rdf:ID="c"/>
</rdf:RDF>
<imports/imports006> rdf:type owl:Ontology .
first:c rdf:type owl:Class .
LiteMain document: <imports/main006>
<rdf:RDF
    xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
    xmlns:owl="http://www.w3.org/2002/07/owl#"
    xmlns:first="http://www.w3.org/2002/03owlt/imports/imports006#"
    xml:base="http://www.w3.org/2002/03owlt/imports/main006" >
    <owl:Ontology rdf:about="">
      <owl:imports rdf:resource="imports006"/>
    </owl:Ontology>
    <first:c rdf:ID="x"/>
</rdf:RDF>
<imports/main006> rdf:type owl:Ontology .
<imports/main006> owl:imports <imports/imports006> .
second:x rdf:type first:c .

Lite Import Level Test:007
Description: (informative) <imports/Manifest007#test>
The type declarations required by semantic layering can be imported into an OWL Lite or OWL DL file.
N3 format is informative.
LiteImported document: <imports/imports007>
<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/imports/imports007" >
    <owl:Ontology rdf:about=""/>
    <owl:ObjectProperty rdf:ID="p"/>
</rdf:RDF>
<imports/imports007> rdf:type owl:Ontology .
first:p rdf:type owl:ObjectProperty .
LiteMain document: <imports/main007>
<rdf:RDF
    xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
    xmlns:owl="http://www.w3.org/2002/07/owl#"
    xmlns:first="http://www.w3.org/2002/03owlt/imports/imports007#"
    xml:base="http://www.w3.org/2002/03owlt/imports/main007" >
    <owl:Ontology rdf:about="">
      <owl:imports rdf:resource="imports007"/>
    </owl:Ontology>
    <owl:Thing>
      <first:p>
        <owl:Thing />
      </first:p>
    </owl:Thing>
</rdf:RDF>
<imports/main007> rdf:type owl:Ontology .
<imports/main007> owl:imports <imports/imports007> .
_:a rdf:type owl:Thing .
_:c rdf:type owl:Thing .
_:a first:p _:c .

Lite Import Level Test:008
Description: (informative) <imports/Manifest008#test>
It is often possible to import an ordinary RDFS document unchanged into an OWL Lite document. Aditional type declarations may be needed in the importing document.
N3 format is informative.
FullImported document: <imports/imports008>
<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/imports/imports008#"
    xmlns:second="http://www.w3.org/2002/03owlt/imports/main008#"
    xml:base="http://www.w3.org/2002/03owlt/imports/imports008" >
   <rdfs:Class rdf:ID="sub">
     <rdfs:subClassOf rdf:resource="#super"/>
   </rdfs:Class>
</rdf:RDF>
first:sub rdf:type rdfs:Class .
first:sub rdfs:subClassOf first:super .
LiteMain document: <imports/main008>
<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/imports/imports008#"
    xmlns:second="http://www.w3.org/2002/03owlt/imports/main008#"
    xml:base="http://www.w3.org/2002/03owlt/imports/main008" >
    <owl:Ontology rdf:about="">
      <owl:imports> 
         <owl:Ontology rdf:about="imports008"/>
      </owl:imports>
    </owl:Ontology>
    <owl:Class rdf:about="imports008#sub"/>
    <owl:Class rdf:about="imports008#super"/>
</rdf:RDF>
<imports/main008> rdf:type owl:Ontology .
<imports/imports008> rdf:type owl:Ontology .
<imports/main008> owl:imports <imports/imports008> .
first:sub rdf:type owl:Class .
first:super rdf:type owl:Class .

Full OWL described in OWL.010
Description: (informative) <imports/Manifest010#test>
This test specifies the domain and range for owl:imports.
N3 format is informative.
FullTrue: <imports/conclusions010>
<rdf:RDF
    xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
    xmlns:rdfs="http://www.w3.org/2000/01/rdf-schema#"
    xml:base="http://www.w3.org/2002/03owlt/imports/conclusions010" >
   <rdf:Property rdf:about="http://www.w3.org/2002/07/owl#imports">
      <rdfs:range rdf:resource="http://www.w3.org/2002/07/owl#Ontology"/>
      <rdfs:domain rdf:resource="http://www.w3.org/2002/07/owl#Ontology"/>
   </rdf:Property>

</rdf:RDF>
owl:imports rdf:type rdf:Property .
owl:imports rdfs:range owl:Ontology .
owl:imports rdfs:domain owl:Ontology .

Lite Import Entailment Test:011
Description: (informative) <imports/Manifest011#test>
A Lite version of test imports-001.
N3 format is informative.
Namespaces:
@prefix ont: <http://www.w3.org/2002/03owlt/imports/support011-A#> .
LitePremises: <imports/premises011>
<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:ont='http://www.w3.org/2002/03owlt/imports/support011-A#'
    xml:base='http://www.w3.org/2002/03owlt/imports/premises011' >

    <owl:Ontology rdf:about=''>
        <owl:imports 
     rdf:resource="http://www.w3.org/2002/03owlt/imports/support011-A"/>
    </owl:Ontology>

    <ont:Man rdf:about='http://example.org/data#Socrates'/>

</rdf:RDF>
<imports/premises011> rdf:type owl:Ontology .
<imports/premises011> owl:imports <imports/support011-A> .
<http://example.org/data#Socrates> rdf:type ont:Man .
LiteImported Premises <imports/support011-A>
<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/imports/support011-A' >

    <owl:Ontology rdf:about=''/>

    <owl:Class rdf:ID='Man'>
        <rdfs:subClassOf rdf:resource='#Mortal'/>
    </owl:Class>

    <owl:Class rdf:ID='Mortal'/>

</rdf:RDF>
<imports/support011-A> rdf:type owl:Ontology .
ont:Man rdf:type owl:Class .
ont:Man rdfs:subClassOf ont:Mortal .
ont:Mortal rdf:type owl:Class .
LiteConclusions: <imports/conclusions011>
<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/imports/conclusions011' >

    <rdf:Description rdf:about='http://example.org/data#Socrates'>
        <rdf:type>
           <owl:Class rdf:about='support011-A#Mortal'/>
        </rdf:type>
    </rdf:Description>

</rdf:RDF>
ont:Mortal rdf:type owl:Class .
<http://example.org/data#Socrates> rdf:type ont:Mortal .

Lite Full Consistent document.012
Description: (informative) <imports/Manifest012#test>
A simple test for infinite loops in imports processing code.
N3 format is informative.
LiteConsistent: <imports/consistent012>
<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/imports/consistent012" >
   <owl:Ontology rdf:about="http://example.org/">
     <owl:imports>
         <owl:Ontology rdf:about=""/>
     </owl:imports>
   </owl:Ontology>

</rdf:RDF>
<http://example.org/> rdf:type owl:Ontology .
<imports/consistent012> rdf:type owl:Ontology .
<http://example.org/> owl:imports <imports/consistent012> .

Full Import Level Test:013
Description: (informative) <imports/Manifest013#test>
An imported ontology must have type owl:Ontology to be in DL.
N3 format is informative.
LiteImported document: <imports/imports013>
<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/imports/imports013" >
   
   <owl:Class rdf:ID="c" />

</rdf:RDF>
first:c rdf:type owl:Class .
FullMain document: <imports/main013>
<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/imports/main013" >

   <owl:Ontology>
     <owl:imports rdf:resource="imports013"/>
   </owl:Ontology>

</rdf:RDF>
_:a rdf:type owl:Ontology .
_:a owl:imports <imports/imports013> .

Full Import Level Test:014
Description: (informative) <imports/Manifest014#test>
When importing a file that uses an xml:base declaration, if you use a different URL in an owl:imports triple, that URL may be without an explicit type.
N3 format is informative.
LiteImported document: <imports/imports014>
<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/imports/imports014" >
    <owl:Ontology rdf:about=""/>

</rdf:RDF>
<imports/imports014> rdf:type owl:Ontology .
FullMain document: <imports/main014>
<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/imports/imports014#"
    xmlns:second="http://www.w3.org/2002/03owlt/imports/main014#"
    xml:base="http://www.w3.org/2002/03owlt/imports/main014" >
  <owl:Ontology>  
     <owl:imports rdf:resource="imports014.rdf"/>
  </owl:Ontology>

</rdf:RDF>
_:a rdf:type owl:Ontology .
_:a owl:imports <imports/imports014.rdf> .

7.1.23. owl:intersectionOf

Full Positive Entailment Test:001
Description: (informative) <intersectionOf/Manifest001#test>
The order of the classes in an intersectionOf construct is unimportant.
N3 format is informative.
FullPremises: <intersectionOf/premises001>
<rdf:RDF
    xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
    xmlns:owl="http://www.w3.org/2002/07/owl#"
    xmlns:first="http://www.w3.org/2002/03owlt/intersectionOf/premises001#"
    xml:base="http://www.w3.org/2002/03owlt/intersectionOf/premises001" >

    <rdf:Description rdf:about="premises001#B">
        <owl:intersectionOf rdf:parseType="Collection">
            <rdf:Description rdf:about="premises001#Student"/>
            <rdf:Description rdf:about="premises001#Employee"/>
        </owl:intersectionOf>
    </rdf:Description>

    <rdf:Description rdf:about="premises001#C">
        <owl:intersectionOf rdf:parseType="Collection">
            <rdf:Description rdf:about="premises001#Employee"/>
            <rdf:Description rdf:about="premises001#Student"/>
        </owl:intersectionOf>
    </rdf:Description>

    <first:B rdf:about="premises001#John"/>

</rdf:RDF>
_:a rdf:first first:Employee .
_:a rdf:rest rdf:nil .
_:c rdf:first first:Student .
_:c rdf:rest _:a .
first:B owl:intersectionOf _:c .
_:e rdf:first first:Student .
_:e rdf:rest rdf:nil .
_:g rdf:first first:Employee .
_:g rdf:rest _:e .
first:C owl:intersectionOf _:g .
first:John rdf:type first:B .
FullConclusions: <intersectionOf/conclusions001>
<rdf:RDF
    xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
    xmlns:first="http://www.w3.org/2002/03owlt/intersectionOf/premises001#"
    xml:base="http://www.w3.org/2002/03owlt/intersectionOf/conclusions001" >

    <first:C rdf:about="premises001#John"/>

</rdf:RDF>
first:John rdf:type first:C .

7.1.24. owl:inverseOf

Full Positive Entailment Test:001
Description: (informative) <inverseOf/Manifest001#test>
If the pair (x,y) is an instance of P, than the pair (y,x) is an instance of the named property.
N3 format is informative.
Namespaces:
@prefix my: <http://example.net/myVocab#> .
@prefix your: <http://example.net/yourVocab#> .
@prefix eg: <http://example.net/vocab#> .
FullPremises: <inverseOf/premises001>
<rdf:RDF 
    xmlns:my="http://example.net/myVocab#"
    xmlns:eg="http://example.net/vocab#"
    xmlns:owl="http://www.w3.org/2002/07/owl#"
    xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
    xml:base='http://www.w3.org/2002/03owlt/inverseOf/premises001'
    xmlns:your="http://example.net/yourVocab#">

    <rdf:Description rdf:about="http://example.net/myVocab#hasBrother">
        <owl:inverseOf rdf:resource="http://example.net/yourVocab#isBrotherOf"/>
    </rdf:Description>

    <rdf:Description rdf:about="http://example.net/vocab#joe">
        <my:hasBrother rdf:resource="http://example.net/vocab#bob"/>
    </rdf:Description>
</rdf:RDF>
my:hasBrother owl:inverseOf your:isBrotherOf .
eg:joe my:hasBrother eg:bob .
FullConclusions: <inverseOf/conclusions001>
<rdf:RDF 
    xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
    xml:base='http://www.w3.org/2002/03owlt/inverseOf/conclusions001'
    xmlns:your="http://example.net/yourVocab#">

    <rdf:Description rdf:about="http://example.net/vocab#bob">
        <your:isBrotherOf rdf:resource="http://example.net/vocab#joe"/>
    </rdf:Description>
</rdf:RDF>
eg:bob your:isBrotherOf eg:joe .

7.1.25. owl:maxCardinality

Full Inconsistent document.001
Description: (informative) <maxCardinality/Manifest001#test>
A property with maximum cardinality of two cannot take three distinct values on some subject node.
N3 format is informative.
FullInconsistent: <maxCardinality/inconsistent001>
<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/maxCardinality/inconsistent001#"
    xml:base="http://www.w3.org/2002/03owlt/maxCardinality/inconsistent001" >

    <rdf:Description rdf:about="inconsistent001#sb1">
        <rdf:type rdf:parseType="Resource">
            <rdf:type rdf:resource="http://www.w3.org/2002/07/owl#Restriction"/>
            <owl:maxCardinality
              rdf:datatype="http://www.w3.org/2001/XMLSchema#nonNegativeInteger"
             >2</owl:maxCardinality>
            <owl:onProperty rdf:resource="inconsistent001#prop"/>
        </rdf:type>
        <first:prop rdf:resource="inconsistent001#ob1"/>
        <first:prop rdf:resource="inconsistent001#ob2"/>
        <first:prop rdf:resource="inconsistent001#ob3"/>
    </rdf:Description>

    <rdf:Description rdf:about="inconsistent001#ob1">
        <owl:differentFrom rdf:resource="inconsistent001#ob2"/>
        <owl:differentFrom rdf:resource="inconsistent001#ob3"/>
    </rdf:Description>

    <rdf:Description rdf:about="inconsistent001#ob2">
        <owl:differentFrom rdf:resource="inconsistent001#ob3"/>
    </rdf:Description>

    <owl:ObjectProperty rdf:about="inconsistent001#prop"/>

</rdf:RDF>
_:a rdf:type owl:Restriction .
_:a owl:maxCardinality "2"^^xsd:nonNegativeInteger  .
_:a owl:onProperty first:prop .
first:sb1 rdf:type _:a .
first:sb1 first:prop first:ob1 .
first:sb1 first:prop first:ob2 .
first:sb1 first:prop first:ob3 .
first:ob1 owl:differentFrom first:ob2 .
first:ob1 owl:differentFrom first:ob3 .
first:ob2 owl:differentFrom first:ob3 .
first:prop rdf:type owl:ObjectProperty .

Full Inconsistent document.002
Description: (informative) <maxCardinality/Manifest002#test>
A property with maximum cardinality of two cannot take three distinct values on some subject node. In this example, one of the three values is implicit.
N3 format is informative.
FullInconsistent: <maxCardinality/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/maxCardinality/inconsistent002#"
    xml:base="http://www.w3.org/2002/03owlt/maxCardinality/inconsistent002" >

    <rdf:Description rdf:about="inconsistent002#sb1">
        <rdf:type rdf:parseType="Resource">
            <rdf:type rdf:resource="http://www.w3.org/2002/07/owl#Restriction"/>
            <owl:maxCardinality
              rdf:datatype="http://www.w3.org/2001/XMLSchema#nonNegativeInteger"
             >2</owl:maxCardinality>
            <owl:onProperty rdf:resource="inconsistent002#prop"/>
        </rdf:type>
        <first:prop rdf:resource="inconsistent002#ob1"/>
        <first:prop rdf:resource="inconsistent002#ob2"/>
        <first:otherprop rdf:resource="inconsistent002#ob3"/>
    </rdf:Description>

    <rdf:Description rdf:about="inconsistent002#ob1">
        <owl:differentFrom rdf:resource="inconsistent002#ob2"/>
        <owl:differentFrom rdf:resource="inconsistent002#ob3"/>
    </rdf:Description>

    <rdf:Description rdf:about="inconsistent002#ob2">
        <owl:differentFrom rdf:resource="inconsistent002#ob3"/>
    </rdf:Description>

    <owl:ObjectProperty rdf:about="inconsistent002#prop"/>

    <rdf:Description rdf:about="inconsistent002#otherprop">
        <rdfs:subPropertyOf rdf:resource="inconsistent002#prop"/>
    </rdf:Description>

</rdf:RDF>
_:a rdf:type owl:Restriction .
_:a owl:maxCardinality "2"^^xsd:nonNegativeInteger  .
_:a owl:onProperty first:prop .
first:sb1 rdf:type _:a .
first:sb1 first:prop first:ob1 .
first:sb1 first:prop first:ob2 .
first:sb1 first:otherprop first:ob3 .
first:ob1 owl:differentFrom first:ob2 .
first:ob1 owl:differentFrom first:ob3 .
first:ob2 owl:differentFrom first:ob3 .
first:prop rdf:type owl:ObjectProperty .
first:otherprop rdfs:subPropertyOf first:prop .

7.1.26. owl:oneOf

Full (EC) Consistent document.001
Description: (informative) <oneOf/Manifest001#test>
oneOf does not indicate that the named individuals are distinct. Thus a consistent interpretation of this file is when all the individual names denote the same individual.
N3 format is informative.
FullConsistent: <oneOf/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/oneOf/consistent001#"
    xml:base="http://www.w3.org/2002/03owlt/oneOf/consistent001" >
   <owl:Class>
      <owl:oneOf rdf:parseType="Collection">
         <rdf:Description rdf:ID="amy"/>
         <rdf:Description rdf:ID="bob"/>
         <rdf:Description rdf:ID="caroline"/>
      </owl:oneOf>
      <owl:equivalentClass>
           <owl:Class>
             <owl:oneOf rdf:parseType="Collection">
               <rdf:Description rdf:ID="yolanda"/>
               <rdf:Description rdf:ID="zebedee"/>
             </owl:oneOf>
           </owl:Class>
      </owl:equivalentClass>
   </owl:Class>

</rdf:RDF>
_:a rdf:type owl:Class .
_:c rdf:first first:caroline .
_:c rdf:rest rdf:nil .
_:e rdf:first first:bob .
_:e rdf:rest _:c .
_:g rdf:first first:amy .
_:g rdf:rest _:e .
_:a owl:oneOf _:g .
_:i rdf:type owl:Class .
_:k rdf:first first:zebedee .
_:k rdf:rest rdf:nil .
_:m rdf:first first:yolanda .
_:m rdf:rest _:k .
_:i owl:oneOf _:m .
_:a owl:equivalentClass _:i .

Full Positive Entailment Test:002
Description: (informative) <oneOf/Manifest002#test>
oneOf describes a class by enumerating its individuals.
N3 format is informative.
FullPremises: <oneOf/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/oneOf/premises002#"
    xmlns:second="http://www.w3.org/2002/03owlt/oneOf/conclusions002#"
    xml:base="http://www.w3.org/2002/03owlt/oneOf/premises002" >

    <rdf:Description rdf:about="premises002#TShirt">
        <owl:oneOf rdf:parseType="Collection">
            <rdf:Description rdf:about="premises002#small"/>
            <rdf:Description rdf:about="premises002#medium"/>
            <rdf:Description rdf:about="premises002#large"/>
        </owl:oneOf>
    </rdf:Description>

</rdf:RDF>
_:a rdf:first first:large .
_:a rdf:rest rdf:nil .
_:c rdf:first first:medium .
_:c rdf:rest _:a .
_:e rdf:first first:small .
_:e rdf:rest _:c .
first:TShirt owl:oneOf _:e .
FullConclusions: <oneOf/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#"
    xmlns:first="http://www.w3.org/2002/03owlt/oneOf/premises002#"
    xmlns:second="http://www.w3.org/2002/03owlt/oneOf/conclusions002#"
    xml:base="http://www.w3.org/2002/03owlt/oneOf/conclusions002" >

    <first:TShirt rdf:about="premises002#small"/>

</rdf:RDF>
first:small rdf:type first:TShirt .

Full Positive Entailment Test:003
Description: (informative) <oneOf/Manifest003#test>
The order of the instances in an owl:oneOf construct is unimportant.
N3 format is informative.
FullPremises: <oneOf/premises003>
<rdf:RDF
    xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
    xmlns:owl="http://www.w3.org/2002/07/owl#"
    xmlns:first="http://www.w3.org/2002/03owlt/oneOf/premises003#"
    xml:base="http://www.w3.org/2002/03owlt/oneOf/premises003" >

    <rdf:Description rdf:about="premises003#T1">
        <owl:oneOf rdf:parseType="Collection">
            <rdf:Description rdf:about="premises003#small"/>
            <rdf:Description rdf:about="premises003#medium"/>
            <rdf:Description rdf:about="premises003#large"/>
        </owl:oneOf>
    </rdf:Description>

    <rdf:Description rdf:about="premises003#T2">
        <owl:oneOf rdf:parseType="Collection">
            <rdf:Description rdf:about="premises003#large"/>
            <rdf:Description rdf:about="premises003#medium"/>
            <rdf:Description rdf:about="premises003#small"/>
        </owl:oneOf>
    </rdf:Description>

    <first:T1 rdf:about="premises003#myT"/>

</rdf:RDF>
_:a rdf:first first:large .
_:a rdf:rest rdf:nil .
_:c rdf:first first:medium .
_:c rdf:rest _:a .
_:e rdf:first first:small .
_:e rdf:rest _:c .
first:T1 owl:oneOf _:e .
_:g rdf:first first:small .
_:g rdf:rest rdf:nil .
_:i rdf:first first:medium .
_:i rdf:rest _:g .
_:k rdf:first first:large .
_:k rdf:rest _:i .
first:T2 owl:oneOf _:k .
first:myT rdf:type first:T1 .
FullConclusions: <oneOf/conclusions003>
<rdf:RDF
    xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
    xmlns:first="http://www.w3.org/2002/03owlt/oneOf/premises003#"
    xml:base="http://www.w3.org/2002/03owlt/oneOf/conclusions003" >

    <first:T2 rdf:about="premises003#myT"/>

</rdf:RDF>
first:myT rdf:type first:T2 .

DL Full Positive Entailment Test:004
Description: (informative) <oneOf/Manifest004#test>
This test illustrates the use of dataRange in OWL DL. This test combines some of the ugliest features of XML, RDF and OWL.
DLPremises: <oneOf/premises004>
LiteConclusions: <oneOf/conclusions004>

7.1.27. owl:sameAs

Full Positive Entailment Test:001
Description: (informative) <sameAs/Manifest001#test>
Annotation properties refer to a class instance. sameAs, in OWL Full, also refers to the class instance.
N3 format is informative.
FullPremises: <sameAs/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/sameAs/premises001#"
  xml:base="http://www.w3.org/2002/03owlt/sameAs/premises001" 
   >

   <owl:Class rdf:ID="c1">
     <owl:sameAs>
       <owl:Class rdf:ID="c2"/>
     </owl:sameAs>
     <first:annotate>description of c1</first:annotate>
   </owl:Class>

   <owl:AnnotationProperty rdf:ID="annotate" />

</rdf:RDF>
first:c1 rdf:type owl:Class .
first:c2 rdf:type owl:Class .
first:c1 owl:sameAs first:c2 .
first:c1 first:annotate "description of c1" .
first:annotate rdf:type owl:AnnotationProperty .
LiteConclusions: <sameAs/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#"
 xmlns:first="http://www.w3.org/2002/03owlt/sameAs/premises001#"
 xml:base="http://www.w3.org/2002/03owlt/sameAs/conclusions001" 
 >

   <owl:Class rdf:about="premises001#c2">
     <first:annotate>description of c1</first:annotate>
   </owl:Class>
   <owl:AnnotationProperty rdf:about="premises001#annotate" />

</rdf:RDF>
first:c2 rdf:type owl:Class .
first:c2 first:annotate "description of c1" .
first:annotate rdf:type owl:AnnotationProperty .

7.1.28. owl:someValuesFrom

Full Positive Entailment Test:001
Description: (informative) <someValuesFrom/Manifest001#test>
A simple example.
N3 format is informative.
LitePremises: <someValuesFrom/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/someValuesFrom/premises001#"
    xml:base="http://www.w3.org/2002/03owlt/someValuesFrom/premises001" >
    <owl:Class rdf:ID="r">
      <rdfs:subClassOf>
        <owl:Restriction>
            <owl:onProperty rdf:resource="#p"/>
            <owl:someValuesFrom rdf:resource="#c"/>
        </owl:Restriction>
      </rdfs:subClassOf>
    </owl:Class>
    <owl:ObjectProperty rdf:ID="p"/>
    <owl:Class rdf:ID="c"/>
    <first:r rdf:ID="i"/>
</rdf:RDF>
first:r rdf:type owl:Class .
_:a rdf:type owl:Restriction .
_:a owl:onProperty first:p .
_:a owl:someValuesFrom first:c .
first:r rdfs:subClassOf _:a .
first:p rdf:type owl:ObjectProperty .
first:c rdf:type owl:Class .
first:i rdf:type first:r .
FullConclusions: <someValuesFrom/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#"
    xmlns:first="http://www.w3.org/2002/03owlt/someValuesFrom/premises001#"
    xml:base="http://www.w3.org/2002/03owlt/someValuesFrom/conclusions001" >
    <rdf:Description rdf:about="premises001#i">
        <first:p>
           <first:c />
         </first:p>
    </rdf:Description>

</rdf:RDF>
_:a rdf:type first:c .
first:i first:p _:a .

Full (EC) Negative Entailment Test:002
Description: (informative) <someValuesFrom/Manifest002#test>
A simple example showing how owl:someValuesFrom differs from owl:allValuesFrom.
N3 format is informative.
FullPremises: <someValuesFrom/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/someValuesFrom/premises002#"
    xml:base="http://www.w3.org/2002/03owlt/someValuesFrom/premises002" >
    <owl:Class rdf:ID="r">
      <rdfs:subClassOf>
        <owl:Restriction>
            <owl:onProperty rdf:resource="#p"/>
            <owl:someValuesFrom rdf:resource="#c"/>
        </owl:Restriction>
      </rdfs:subClassOf>
    </owl:Class>
    <owl:ObjectProperty rdf:ID="p"/>
    <owl:Class rdf:ID="c"/>
    <first:r rdf:ID="i">
       <first:p rdf:resource="#o"/>
    </first:r>
</rdf:RDF>
first:r rdf:type owl:Class .
_:a rdf:type owl:Restriction .
_:a owl:onProperty first:p .
_:a owl:someValuesFrom first:c .
first:r rdfs:subClassOf _:a .
first:p rdf:type owl:ObjectProperty .
first:c rdf:type owl:Class .
first:i rdf:type first:r .
first:i first:p first:o .
FullConclusions: <someValuesFrom/nonconclusions002>
<rdf:RDF
    xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
    xmlns:first="http://www.w3.org/2002/03owlt/someValuesFrom/premises002#"
    xml:base="http://www.w3.org/2002/03owlt/someValuesFrom/nonconclusions002" >
    <first:c rdf:about="premises001#o"/>

</rdf:RDF>
<someValuesFrom/premises001#o> rdf:type first:c .

Lite Full Positive Entailment Test:003
Description: (informative) <someValuesFrom/Manifest003#test>
A simple infinite loop for implementors to avoid.
N3 format is informative.
LitePremises: <someValuesFrom/premises003>
<rdf:RDF
    xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
    xmlns:owl="http://www.w3.org/2002/07/owl#"
    xmlns:first="http://www.w3.org/2002/03owlt/someValuesFrom/premises003#"
    xml:base="http://www.w3.org/2002/03owlt/someValuesFrom/premises003" >
   <owl:Class rdf:ID="person">
     <owl:equivalentClass>
       <owl:Restriction>
         <owl:onProperty>
            <owl:ObjectProperty rdf:ID="parent"/>
         </owl:onProperty>
         <owl:someValuesFrom rdf:resource="#person" />
       </owl:Restriction>
      </owl:equivalentClass>
    </owl:Class>
    <first:person rdf:ID="fred" />

</rdf:RDF>
first:person rdf:type owl:Class .
_:a rdf:type owl:Restriction .
first:parent rdf:type owl:ObjectProperty .
_:a owl:onProperty first:parent .
_:a owl:someValuesFrom first:person .
first:person owl:equivalentClass _:a .
first:fred rdf:type first:person .
LiteConclusions: <someValuesFrom/conclusions003>
<rdf:RDF
    xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
    xmlns:owl="http://www.w3.org/2002/07/owl#"
    xmlns:first="http://www.w3.org/2002/03owlt/someValuesFrom/premises003#"
    xml:base="http://www.w3.org/2002/03owlt/someValuesFrom/conclusions003" >
   <owl:ObjectProperty rdf:about="premises003#parent"/>
   <owl:Thing rdf:about="premises003#fred">
     <first:parent>
       <owl:Thing>
         <first:parent>
            <owl:Thing/>
         </first:parent>
       </owl:Thing>
     </first:parent>
   </owl:Thing>
</rdf:RDF>
first:parent rdf:type owl:ObjectProperty .
first:fred rdf:type owl:Thing .
_:a rdf:type owl:Thing .
_:c rdf:type owl:Thing .
_:a first:parent _:c .
first:fred first:parent _:a .

7.1.29. owl:unionOf

Full Positive Entailment Test:001
Description: (informative) <unionOf/Manifest001#test>
A union is a superclass of its parts.
N3 format is informative.
FullPremises: <unionOf/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/unionOf/premises001#"
    xmlns:second="http://www.w3.org/2002/03owlt/unionOf/conclusions001#"
    xml:base="http://www.w3.org/2002/03owlt/unionOf/premises001" >

    <rdf:Description rdf:about="premises001#A">
        <owl:unionOf rdf:parseType="Collection">
            <rdf:Description rdf:about="premises001#Human"/>
            <rdf:Description rdf:about="premises001#Animal"/>
        </owl:unionOf>
    </rdf:Description>

    <first:Human rdf:about="premises001#John"/>

</rdf:RDF>
_:a rdf:first first:Animal .
_:a rdf:rest rdf:nil .
_:c rdf:first first:Human .
_:c rdf:rest _:a .
first:A owl:unionOf _:c .
first:John rdf:type first:Human .
FullConclusions: <unionOf/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#"
    xmlns:first="http://www.w3.org/2002/03owlt/unionOf/premises001#"
    xmlns:second="http://www.w3.org/2002/03owlt/unionOf/conclusions001#"
    xml:base="http://www.w3.org/2002/03owlt/unionOf/conclusions001" >

    <first:A rdf:about="premises001#John"/>

</rdf:RDF>
first:John rdf:type first:A .

Full Positive Entailment Test:002
Description: (informative) <unionOf/Manifest002#test>
A union behaves quite like set theoretic union.
N3 format is informative.
FullPremises: <unionOf/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/unionOf/premises002#"
    xmlns:second="http://www.w3.org/2002/03owlt/unionOf/conclusions002#"
    xml:base="http://www.w3.org/2002/03owlt/unionOf/premises002" >

    <rdf:Description rdf:about="premises002#A">
        <owl:unionOf rdf:parseType="Collection">
            <rdf:Description rdf:about="premises002#Human"/>
            <rdf:Description rdf:about="premises002#Animal"/>
        </owl:unionOf>
    </rdf:Description>

    <rdf:Description rdf:about="premises002#B">
        <owl:unionOf rdf:parseType="Collection">
            <rdf:Description rdf:about="premises002#Animal"/>
            <rdf:Description rdf:about="premises002#Human"/>
            <rdf:Description rdf:about="premises002#Stone"/>
        </owl:unionOf>
    </rdf:Description>

    <first:A rdf:about="premises002#John"/>

</rdf:RDF>
_:a rdf:first first:Animal .
_:a rdf:rest rdf:nil .
_:c rdf:first first:Human .
_:c rdf:rest _:a .
first:A owl:unionOf _:c .
_:e rdf:first first:Stone .
_:e rdf:rest rdf:nil .
_:g rdf:first first:Human .
_:g rdf:rest _:e .
_:i rdf:first first:Animal .
_:i rdf:rest _:g .
first:B owl:unionOf _:i .
first:John rdf:type first:A .
FullConclusions: <unionOf/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#"
    xmlns:first="http://www.w3.org/2002/03owlt/unionOf/premises002#"
    xmlns:second="http://www.w3.org/2002/03owlt/unionOf/conclusions002#"
    xml:base="http://www.w3.org/2002/03owlt/unionOf/conclusions002" >

    <first:B rdf:about="premises002#John"/>

</rdf:RDF>
first:John rdf:type first:B .

DL Full Positive Entailment Test:003
Description: (informative) <unionOf/Manifest003#test>
Sets with appropriate extensions are related by unionOf.
N3 format is informative.
DLPremises: <unionOf/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/unionOf/premises003" >
   <owl:Class rdf:ID="A">
     <owl:oneOf rdf:parseType="Collection">
       <owl:Thing rdf:ID="a"/>
     </owl:oneOf>
   </owl:Class>
   <owl:Class rdf:ID="B">
     <owl:oneOf rdf:parseType="Collection">
       <owl:Thing rdf:ID="b"/>
     </owl:oneOf>
   </owl:Class>
   <owl:Class rdf:ID="A-and-B">
     <owl:oneOf rdf:parseType="Collection">
       <owl:Thing rdf:about="#a"/>
       <owl:Thing rdf:about="#b"/>
     </owl:oneOf>
   </owl:Class>

</rdf:RDF>
first:A rdf:type owl:Class .
first:a rdf:type owl:Thing .
_:a rdf:first first:a .
_:a rdf:rest rdf:nil .
first:A owl:oneOf _:a .
first:B rdf:type owl:Class .
first:b rdf:type owl:Thing .
_:c rdf:first first:b .
_:c rdf:rest rdf:nil .
first:B owl:oneOf _:c .
first:A-and-B rdf:type owl:Class .
first:a rdf:type owl:Thing .
first:b rdf:type owl:Thing .
_:e rdf:first first:b .
_:e rdf:rest rdf:nil .
_:g rdf:first first:a .
_:g rdf:rest _:e .
first:A-and-B owl:oneOf _:g .
DLConclusions: <unionOf/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/unionOf/conclusions003" >
   

   <owl:Class rdf:about="premises003#A-and-B">
     <owl:unionOf rdf:parseType="Collection">
       <owl:Class rdf:about="premises003#A"/>
       <owl:Class rdf:about="premises003#B"/>
     </owl:unionOf>
   </owl:Class>


</rdf:RDF>
first:A-and-B 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:A-and-B owl:unionOf _:c .

DL Full Positive Entailment Test:004
Description: (informative) <unionOf/Manifest004#test>
An inverse to test 003.
N3 format is informative.
DLPremises: <unionOf/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/unionOf/premises004#"
    xmlns:second="http://www.w3.org/2002/03owlt/unionOf/conclusions004#"
    xml:base="http://www.w3.org/2002/03owlt/unionOf/premises004" >


   <owl:Class rdf:about="#A-and-B">
     <owl:unionOf rdf:parseType="Collection">
       <owl:Class rdf:about="#A"/>
       <owl:Class rdf:about="#B"/>
     </owl:unionOf>
   </owl:Class>

   <owl:Class rdf:ID="A">
     <owl:oneOf rdf:parseType="Collection">
       <owl:Thing rdf:ID="a"/>
     </owl:oneOf>
   </owl:Class>
   <owl:Class rdf:ID="B">
     <owl:oneOf rdf:parseType="Collection">
       <owl:Thing rdf:ID="b"/>
     </owl:oneOf>
   </owl:Class>

</rdf:RDF>
first:A-and-B 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:A-and-B owl:unionOf _:c .
first:A rdf:type owl:Class .
first:a rdf:type owl:Thing .
_:e rdf:first first:a .
_:e rdf:rest rdf:nil .
first:A owl:oneOf _:e .
first:B rdf:type owl:Class .
first:b rdf:type owl:Thing .
_:g rdf:first first:b .
_:g rdf:rest rdf:nil .
first:B owl:oneOf _:g .
DLConclusions: <unionOf/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#"
    xmlns:first="http://www.w3.org/2002/03owlt/unionOf/premises004#"
    xmlns:second="http://www.w3.org/2002/03owlt/unionOf/conclusions004#"
    xml:base="http://www.w3.org/2002/03owlt/unionOf/conclusions004" >


   <owl:Class rdf:about="premises004#A-and-B">
     <owl:oneOf rdf:parseType="Collection">
       <owl:Thing rdf:about="premises004#a"/>
       <owl:Thing rdf:about="premises004#b"/>
     </owl:oneOf>
   </owl:Class>

</rdf:RDF>
first:A-and-B rdf:type owl:Class .
first:a rdf:type owl:Thing .
first:b rdf:type owl:Thing .
_:a rdf:first first:b .
_:a rdf:rest rdf:nil .
_:c rdf:first first:a .
_:c rdf:rest _:a .
first:A-and-B owl:oneOf _:c .

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.
LiteConsistent: <I5.2/consistent003>

DL Full Positive Entailment Test:004
Description: (informative) <I5.2/Manifest004#test>
The complement of a class can be defined using OWL Lite restrictions.
LitePremises: <I5.2/premises004>
DLConclusions: <I5.2/conclusions004>

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.
LiteConsistent: <I5.2/consistent005>

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.
LitePremises: <I5.2/premises006>
DLConclusions: <I5.2/conclusions006>

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.org/2002/03owlt/I5.26/consistent001" >
    <owl:Class rdf:nodeID="B">
      <owl:intersectionOf rdf:parseType="Collection">
        <owl:Class rdf:ID="B"/>
      </owl:intersectionOf>
    </owl:Class>
    <rdf:Description>
      <rdf:type rdf:nodeID="B"/>
    </rdf:Description>
    <owl:Class>
      <owl:intersectionOf rdf:parseType="Collection">
        <owl:Class rdf:ID="C"/>
        <rdf:Description rdf:nodeID="B"/>
      </owl:intersectionOf>
    </owl:Class>

</rdf:RDF>
_:a rdf:type owl:Class .
first:B rdf:type owl:Class .
_:c rdf:first first:B .
_:c rdf:rest rdf:nil .
_:a owl:intersectionOf _:c .
_:e rdf:type _:a .
_:g rdf:type owl:Class .
first:C rdf:type owl:Class .
_:i rdf:first _:a .
_:i rdf:rest rdf:nil .
_:k rdf:first first:C .
_:k rdf:rest _:i .
_:g owl:intersectionOf _:k .

Full (EC) Consistent document.002
Description: (informative) <I5.26/Manifest002#test>
Structure sharing is not permitted in OWL DL, between an owl:equivalentClass triple and a type triple.
N3 format is informative.
FullConsistent: <I5.26/consistent002>
<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.26/consistent002" >
    <owl:Class rdf:nodeID="B">
      <owl:intersectionOf rdf:parseType="Collection">
        <owl:Class rdf:ID="B"/>
      </owl:intersectionOf>
      <owl:equivalentClass>
         <owl:Class rdf:ID="A"/>
      </owl:equivalentClass>
    </owl:Class>
    <rdf:Description>
      <rdf:type rdf:nodeID="B"/>
    </rdf:Description>

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

Full (EC) Consistent document.003
Description: (informative) <I5.26/Manifest003#test>
Structure sharing is not permitted in OWL DL, between two class descriptions.
N3 format is informative.
FullConsistent: <I5.26/consistent003>
<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.26/consistent003" >
    <owl:Class rdf:nodeID="B">
      <owl:intersectionOf rdf:parseType="Collection">
        <owl:Class rdf:ID="B"/>
      </owl:intersectionOf>
    </owl:Class>
    <owl:Class rdf:ID="notB">
      <owl:complementOf rdf:nodeID="B"/>
    </owl:Class>
    <owl:Class rdf:ID="u">
      <owl:unionOf rdf:parseType="Collection">
         <rdf:Description rdf:nodeID="B"/>
         <owl:Class rdf:ID="A"/>
      </owl:unionOf>
    </owl:Class>

</rdf:RDF>
_:a rdf:type owl:Class .
first:B rdf:type owl:Class .
_:c rdf:first first:B .
_:c rdf:rest rdf:nil .
_:a owl:intersectionOf _:c .
first:notB rdf:type owl:Class .
first:notB owl:complementOf _:a .
first:u rdf:type owl:Class .
first:A rdf:type owl:Class .
_:e rdf:first first:A .
_:e rdf:rest rdf:nil .
_:g rdf:first _:a .
_:g rdf:rest _:e .
first:u owl:unionOf _:g .

Full (EC) Consistent document.004
Description: (informative) <I5.26/Manifest004#test>
Structure sharing is not permitted in OWL DL, between a class description and an owl:disjointWith triple.
N3 format is informative.
FullConsistent: <I5.26/consistent004>
<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.26/consistent004" >
    <owl:Class rdf:nodeID="B">
      <owl:intersectionOf rdf:parseType="Collection">
        <owl:Class rdf:ID="B"/>
      </owl:intersectionOf>
      <owl:disjointWith>
         <owl:Class rdf:ID="C"/>
      </owl:disjointWith>
    </owl:Class>
    <owl:Class rdf:ID="notB">
      <owl:complementOf rdf:nodeID="B"/>
    </owl:Class>

</rdf:RDF>
_:a rdf:type owl:Class .
first:B rdf:type owl:Class .
_:c rdf:first first:B .
_:c rdf:rest rdf:nil .
_:a owl:intersectionOf _:c .
first:C rdf:type owl:Class .
_:a owl:disjointWith first:C .
first:notB rdf:type owl:Class .
first:notB owl:complementOf _:a .

Full (EC) Consistent document.005
Description: (informative) <I5.26/Manifest005#test>
Structure sharing is not permitted in OWL DL, between an owl:equivalentClass triple and an owl:disjointWith triple.
N3 format is informative.
FullConsistent: <I5.26/consistent005>
<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.26/consistent005" >
    <owl:Class rdf:nodeID="B">
      <owl:intersectionOf rdf:parseType="Collection">
        <owl:Class rdf:ID="B"/>
      </owl:intersectionOf>
      <owl:disjointWith>
         <owl:Class rdf:ID="C"/>
      </owl:disjointWith>
      <owl:equivalentClass>
         <owl:Class rdf:ID="D"/>
      </owl:equivalentClass>
    </owl:Class>

</rdf:RDF>
_:a rdf:type owl:Class .
first:B rdf:type owl:Class .
_:c rdf:first first:B .
_:c rdf:rest rdf:nil .
_:a owl:intersectionOf _:c .
first:C rdf:type owl:Class .
_:a owl:disjointWith first:C .
first:D rdf:type owl:Class .
_:a owl:equivalentClass first:D .

Full (EC) Consistent document.006
Description: (informative) <I5.26/Manifest006#test>
The blank nodes in a class description in OWL DL may not form a directed cycle.
N3 format is informative.
FullConsistent: <I5.26/consistent006>
<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.26/consistent006" >
    <owl:Class rdf:nodeID="B">
      <owl:intersectionOf rdf:parseType="Collection">
        <owl:Class rdf:ID="B"/>
        <owl:Class>
           <owl:unionOf rdf:parseType="Collection">
              <rdf:Description rdf:nodeID="B"/>
              <owl:Class rdf:ID="C"/>
            </owl:unionOf>
         </owl:Class>
      </owl:intersectionOf>
    </owl:Class>

</rdf:RDF>
_:a rdf:type owl:Class .
first:B rdf:type owl:Class .
_:c rdf:type owl:Class .
first:C rdf:type owl:Class .
_:e rdf:first first:C .
_:e rdf:rest rdf:nil .
_:g rdf:first _:a .
_:g rdf:rest _:e .
_:c owl:unionOf _:g .
_:i rdf:first _:c .
_:i rdf:rest rdf:nil .
_:k rdf:first first:B .
_:k rdf:rest _:i .
_:a owl:intersectionOf _:k .

Full (EC) Consistent document.007
Description: (informative) <I5.26/Manifest007#test>
The blank nodes in a class description in OWL DL may not form a directed cycle.
N3 format is informative.
FullConsistent: <I5.26/consistent007>
<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.26/consistent007" >
    <owl:Class rdf:nodeID="B">
      <owl:intersectionOf rdf:parseType="Collection">
        <owl:Class rdf:ID="B"/>
        <owl:Class>
           <owl:unionOf rdf:parseType="Collection">
              <rdf:Description rdf:nodeID="B"/>
              <owl:Class rdf:ID="C"/>
            </owl:unionOf>
         </owl:Class>
      </owl:intersectionOf>
    </owl:Class>
    <rdf:Description>
       <rdf:type rdf:nodeID="B"/>
    </rdf:Description>

</rdf:RDF>
_:a rdf:type owl:Class .
first:B rdf:type owl:Class .
_:c rdf:type owl:Class .
first:C rdf:type owl:Class .
_:e rdf:first first:C .
_:e rdf:rest rdf:nil .
_:g rdf:first _:a .
_:g rdf:rest _:e .
_:c owl:unionOf _:g .
_:i rdf:first _:c .
_:i rdf:rest rdf:nil .
_:k rdf:first first:B .
_:k rdf:rest _:i .
_:a owl:intersectionOf _:k .
_:m rdf:type _:a .

DL Full Positive Entailment Test:009
Description: (informative) <I5.26/Manifest009#test>
The abstract syntax form of the conclusions is:
EquivalentClasses( restriction( first:p, minCardinality(1) ) )
ObjectProperty( first:p )
This is trivially true given that first:p is an individualvaluedPropertyID.
N3 format is informative.
LitePremises: <I5.26/premises009>
<rdf:RDF
    xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
    xmlns:owl="http://www.w3.org/2002/07/owl#"
    xmlns:first="http://www.w3.org/2002/03owlt/I5.26/premises009#"
    xml:base="http://www.w3.org/2002/03owlt/I5.26/premises009" >
   <owl:ObjectProperty rdf:ID="p" />

</rdf:RDF>
first:p rdf:type owl:ObjectProperty .
DLConclusions: <I5.26/conclusions009>
<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.26/conclusions009" >
   
  <owl:Restriction rdf:nodeID="n">
     <owl:onProperty>
        <owl:ObjectProperty rdf:about="premises009#p" />
     </owl:onProperty>
     <owl:minCardinality rdf:datatype=
 "http://www.w3.org/2001/XMLSchema#int"
     >1</owl:minCardinality>
     <owl:equivalentClass rdf:nodeID="n"/>
  </owl:Restriction>

</rdf:RDF>
_:a rdf:type owl:Restriction .
first:p rdf:type owl:ObjectProperty .
_:a owl:onProperty first:p .
_:a owl:minCardinality "1"^^xsd:int  .
_:a owl:equivalentClass _:a .

DL Full Positive Entailment Test:010
Description: (informative) <I5.26/Manifest010#test>
The abstract syntax form of the conclusions is:
EquivalentClasses( restriction( first:p, minCardinality(1) ) )
ObjectProperty( first:p )
This is trivially true given that first:p is an individualvaluedPropertyID.
N3 format is informative.
LitePremises: <I5.26/premises010>
<rdf:RDF
    xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
    xmlns:owl="http://www.w3.org/2002/07/owl#"
    xmlns:first="http://www.w3.org/2002/03owlt/I5.26/premises010#"
    xml:base="http://www.w3.org/2002/03owlt/I5.26/premises010" >
   <owl:ObjectProperty rdf:ID="p" />

</rdf:RDF>
first:p rdf:type owl:ObjectProperty .
DLConclusions: <I5.26/conclusions010>
<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.26/conclusions010" >
   
  <owl:Restriction rdf:nodeID="n">
     <owl:onProperty>
        <owl:ObjectProperty rdf:about="premises010#p" />
     </owl:onProperty>
     <owl:minCardinality rdf:datatype=
 "http://www.w3.org/2001/XMLSchema#int"
     >1</owl:minCardinality>
  </owl:Restriction>

</rdf:RDF>
_:a rdf:type owl:Restriction .
first:p rdf:type owl:ObjectProperty .
_:a owl:onProperty first:p .
_:a owl:minCardinality "1"^^xsd:int  .

7.2.11. Semantic-Layering

Full (EC) Consistent document.005
Description: (informative) <I5.3/Manifest005#test>
Any RDF/XML document is in OWL Full.
N3 format is informative.
FullConsistent: <I5.3/consistent005>
<rdf:RDF
    xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
    xmlns:first="http://www.w3.org/2002/03owlt/I5.3/consistent005#"
    xml:base="http://www.w3.org/2002/03owlt/I5.3/consistent005" >
    <rdf:Description>
      <first:p >
        <rdf:Description />
      </first:p>
    </rdf:Description>
</rdf:RDF>
_:a first:p _:b .

Lite Full Consistent document.006
Description: (informative) <I5.3/Manifest006#test>
A minimal OWL Lite version of test 005.
N3 format is informative.
LiteConsistent: <I5.3/consistent006>
<rdf:RDF
    xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
    xmlns:owl="http://www.w3.org/2002/07/owl#"
    xmlns:first="http://www.w3.org/2002/03owlt/I5.3/consistent006#"
    xml:base="http://www.w3.org/2002/03owlt/I5.3/consistent006" >
   <owl:Thing>
      <first:p>
         <owl:Thing/>
      </first:p>
   </owl:Thing>
   <owl:ObjectProperty rdf:ID="p" />
</rdf:RDF>
_:a rdf:type owl:Thing .
_:c rdf:type owl:Thing .
_:a first:p _:c .
first:p rdf:type owl:ObjectProperty .

Full (EC) Consistent document.007
Description: (informative) <I5.3/Manifest007#test>
Any RDF/XML document is in OWL Full.
N3 format is informative.
FullConsistent: <I5.3/consistent007>
<rdf:RDF
    xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
    xmlns:first="http://www.w3.org/2002/03owlt/I5.3/consistent007#"
    xml:base="http://www.w3.org/2002/03owlt/I5.3/consistent007" >
    <rdf:Description>
      <first:dp>value</first:dp>
    </rdf:Description>
</rdf:RDF>
_:a first:dp "value" .

Lite Full Consistent document.008
Description: (informative) <I5.3/Manifest008#test>
An OWL Lite version of test 007.
N3 format is informative.
LiteConsistent: <I5.3/consistent008>
<rdf:RDF
    xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
    xmlns:owl="http://www.w3.org/2002/07/owl#"
    xmlns:first="http://www.w3.org/2002/03owlt/I5.3/consistent008#"
    xml:base="http://www.w3.org/2002/03owlt/I5.3/consistent008" >
    <owl:Thing>
      <first:dp>value</first:dp>
    </owl:Thing>
    <owl:DatatypeProperty rdf:ID="dp" />
</rdf:RDF>
_:a rdf:type owl:Thing .
_:a first:dp "value" .
first:dp rdf:type owl:DatatypeProperty .

Full (EC) Consistent document.009
Description: (informative) <I5.3/Manifest009#test>
The use of blank nodes in OWL DL and OWL Lite is restricted.
N3 format is informative.
FullConsistent: <I5.3/consistent009>
<rdf:RDF
    xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
    xmlns:owl="http://www.w3.org/2002/07/owl#"
    xmlns:first="http://www.w3.org/2002/03owlt/I5.3/consistent009#"
    xml:base="http://www.w3.org/2002/03owlt/I5.3/consistent009" >
   <owl:Thing>
     <first:p rdf:nodeID="shared" />
     <first:q rdf:nodeID="shared" />
   </owl:Thing>
   <owl:ObjectProperty rdf:ID="p" />
   <owl:ObjectProperty rdf:ID="q" />
</rdf:RDF>
_:a rdf:type owl:Thing .
_:a first:p _:c .
_:a first:q _:c .
first:p rdf:type owl:ObjectProperty .
first:q rdf:type owl:ObjectProperty .

Full (EC) Consistent document.010
Description: (informative) <I5.3/Manifest010#test>
Classes cannot be the object of regular properties in OWL DL.
N3 format is informative.
FullConsistent: <I5.3/consistent010>
<rdf:RDF
    xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
    xmlns:owl="http://www.w3.org/2002/07/owl#"
    xmlns:first="http://www.w3.org/2002/03owlt/I5.3/consistent010#"
    xml:base="http://www.w3.org/2002/03owlt/I5.3/consistent010" >
   <owl:ObjectProperty rdf:ID="p"/>   
   <owl:Thing>
      <first:p>
         <owl:Class rdf:ID="c"/>
      </first:p>
    </owl:Thing>
</rdf:RDF>
first:p rdf:type owl:ObjectProperty .
_:a rdf:type owl:Thing .
first:c rdf:type owl:Class .
_:a first:p first:c .

Lite Full Consistent document.011
Description: (informative) <I5.3/Manifest011#test>
Classes can be the object of annotation properties in OWL Lite and DL.
N3 format is informative.
LiteConsistent: <I5.3/consistent011>
<rdf:RDF
    xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
    xmlns:owl="http://www.w3.org/2002/07/owl#"
    xmlns:first="http://www.w3.org/2002/03owlt/I5.3/consistent011#"
    xml:base="http://www.w3.org/2002/03owlt/I5.3/consistent011" >
   <owl:AnnotationProperty rdf:ID="p"/>   
   <owl:Thing>
      <first:p>
         <owl:Class rdf:ID="c"/>
      </first:p>
    </owl:Thing>
</rdf:RDF>
first:p rdf:type owl:AnnotationProperty .
_:a rdf:type owl:Thing .
first:c rdf:type owl:Class .
_:a first:p first:c .

Full Positive Entailment Test:014
Description: (informative) <I5.3/Manifest014#test>
This entailment does not hold under the RDF Semantics, but does under the RDFS Compatible Semantics for OWL.
N3 format is informative.
FullPremises: <I5.3/premises014>
<rdf:RDF
    xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
    xmlns:rdfs="http://www.w3.org/2000/01/rdf-schema#"
    xml:base="http://www.w3.org/2002/03owlt/I5.3/premises014" >

  <rdfs:Class rdf:about="http://example.org/x" />
 
  <rdf:Description rdf:about=
         "http://www.w3.org/1999/02/22-rdf-syntax-ns#type">
    <rdfs:domain rdf:resource="http://example.org/y"/>
  </rdf:Description>

</rdf:RDF>
<http://example.org/x> rdf:type rdfs:Class .
rdf:type rdfs:domain <http://example.org/y> .
FullConclusions: <I5.3/conclusions014>
<rdf:RDF
    xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
    xmlns:rdfs="http://www.w3.org/2000/01/rdf-schema#"
    xml:base="http://www.w3.org/2002/03owlt/I5.3/conclusions014" >

  <rdf:Description rdf:about="http://example.org/x">
    <rdfs:subClassOf rdf:resource="http://example.org/y"/>
  </rdf:Description>

</rdf:RDF>
<http://example.org/x> rdfs:subClassOf <http://example.org/y> .

Full Positive Entailment Test:015
Description: (informative) <I5.3/Manifest015#test>
This entailment does not hold under the RDF Semantics, but does under the RDFS Compatible Semantics for OWL.
N3 format is informative.
FullPremises: <I5.3/premises015>
<rdf:RDF
    xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
    xmlns:rdfs="http://www.w3.org/2000/01/rdf-schema#"
    xml:base="http://www.w3.org/2002/03owlt/I5.3/premises015" >

  <rdf:Property rdf:about="http://example.org/p">
    <rdfs:range rdf:resource="http://www.w3.org/2001/XMLSchema#integer" />
    <rdfs:range rdf:resource="http://www.w3.org/2001/XMLSchema#string" />
  </rdf:Property>

  <rdf:Property rdf:about="http://example.org/q"/>

</rdf:RDF>
<http://example.org/p> rdf:type rdf:Property .
<http://example.org/p> rdfs:range xsd:integer .
<http://example.org/p> rdfs:range xsd:string .
<http://example.org/q> rdf:type rdf:Property .
FullConclusions: <I5.3/conclusions015>
<rdf:RDF
    xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
    xmlns:rdfs="http://www.w3.org/2000/01/rdf-schema#"
    xml:base="http://www.w3.org/2002/03owlt/I5.3/conclusions015" >

  <rdf:Property rdf:about="http://example.org/p">
    <rdfs:subPropertyOf
        rdf:resource="http://example.org/q"/>
  </rdf:Property>

</rdf:RDF>
<http://example.org/p> rdf:type rdf:Property .
<http://example.org/p> rdfs:subPropertyOf <http://example.org/q> .

7.2.12. List syntax or semantics

Full OWL described in OWL.001
Description: (informative) <I5.5/Manifest001#test>
rdf:first is a FunctionalProperty.
N3 format is informative.
FullTrue: <I5.5/conclusions001>
<rdf:RDF
    xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
         xml:base=
           'http://www.w3.org/2002/03owlt/I5.5/conclusions001'
    xmlns:owl="http://www.w3.org/2002/07/owl#" >
    <owl:FunctionalProperty rdf:about="http://www.w3.org/1999/02/22-rdf-syntax-ns#first" />

</rdf:RDF>
rdf:first rdf:type owl:FunctionalProperty .

Full OWL described in OWL.002
Description: (informative) <I5.5/Manifest002#test>
rdf:rest is a FunctionalProperty.
N3 format is informative.
FullTrue: <I5.5/conclusions002>
<rdf:RDF
    xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
    xml:base="http://www.w3.org/2002/03owlt/I5.5/conclusions002"
    xmlns:owl="http://www.w3.org/2002/07/owl#" >
    <owl:FunctionalProperty rdf:about="http://www.w3.org/1999/02/22-rdf-syntax-ns#rest" />

</rdf:RDF>
rdf:rest rdf:type owl:FunctionalProperty .

Full Inconsistent document.003
Description: (informative) <I5.5/Manifest003#test>
rdf:nil cannot have an rdf:rest property.
N3 format is informative.
FullInconsistent: <I5.5/inconsistent003>
<rdf:RDF
    xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
    xml:base="http://www.w3.org/2002/03owlt/I5.5/inconsistent003" >
   <rdf:Description rdf:about="http://www.w3.org/1999/02/22-rdf-syntax-ns#nil">
       <rdf:rest>
          <rdf:Description />
       </rdf:rest>
   </rdf:Description>
</rdf:RDF>
rdf:nil rdf:rest _:a .

Full Inconsistent document.004
Description: (informative) <I5.5/Manifest004#test>
rdf:nil cannot have an rdf:first property.
N3 format is informative.
FullInconsistent: <I5.5/inconsistent004>
<rdf:RDF
    xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
    xml:base="http://www.w3.org/2002/03owlt/I5.5/inconsistent004" >
   <rdf:Description rdf:about="http://www.w3.org/1999/02/22-rdf-syntax-ns#nil">
       <rdf:first>
          <rdf:Description />
       </rdf:first>
   </rdf:Description>
</rdf:RDF>
rdf:nil rdf:first _:a .

DL Full Positive Entailment Test:005
Description: (informative) <I5.5/Manifest005#test>
This test exhibits the effect of the comprehension principles in OWL Full.
N3 format is informative.
LitePremises: <I5.5/premises005>
<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.5/premises005" >
    <owl:Class rdf:ID="a" />
</rdf:RDF>
first:a rdf:type owl:Class .
DLConclusions: <I5.5/conclusions005>
<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.5/conclusions005" >
   
   <owl:Class>
     <owl:unionOf>
       <rdf:List>
         <rdf:first>
           <owl:Class rdf:about="premises005#a"/>
         </rdf:first>
         <rdf:rest rdf:resource = "http://www.w3.org/1999/02/22-rdf-syntax-ns#nil"/>
       </rdf:List>
     </owl:unionOf>
   </owl:Class>

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

Full (EC) Negative Entailment Test:006
Description: (informative) <I5.5/Manifest006#test>
Comprehension does not build illformed lists.
N3 format is informative.
LitePremises: <I5.5/premises006>
<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.5/premises006" >
    <owl:Class rdf:ID="a" />
</rdf:RDF>
first:a rdf:type owl:Class .
FullConclusions: <I5.5/nonconclusions006>
<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.5/nonconclusions006" >
   
   <rdf:List rdf:nodeID="list">
     <rdf:first>
       <owl:Class rdf:about="premises005#a"/>
     </rdf:first>
     <rdf:rest rdf:nodeID = "list"/>
   </rdf:List>

</rdf:RDF>
_:a rdf:type rdf:List .
<I5.5/premises005#a> rdf:type owl:Class .
_:a rdf:first <I5.5/premises005#a> .
_:a rdf:rest _:a .

Full (EC) Negative Entailment Test:007
Description: (informative) <I5.5/Manifest007#test>
Comprehension does not build illformed lists.
N3 format is informative.
LitePremises: <I5.5/premises007>
<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.5/premises007" >
    <owl:Class rdf:ID="a" />
</rdf:RDF>
first:a rdf:type owl:Class .
FullConclusions: <I5.5/nonconclusions007>
<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.5/nonconclusions007" >
   <owl:Class>
     <owl:unionOf>
       <rdf:List rdf:nodeID="list">
         <rdf:first>
           <owl:Class>
             <owl:intersectionOf>
                <rdf:List>
                   <rdf:first>         
                      <owl:Class rdf:about="premises007#a"/>
                   </rdf:first>
                   <rdf:rest rdf:nodeID="list" />
                 </rdf:List>
             </owl:intersectionOf>
           </owl:Class>
         </rdf:first>
         <rdf:rest rdf:resource = "http://www.w3.org/1999/02/22-rdf-syntax-ns#nil"/>
       </rdf:List>
     </owl:unionOf>
   </owl:Class>
</rdf:RDF>
_:a rdf:type owl:Class .
_:c rdf:type rdf:List .
_:e rdf:type owl:Class .
_:g rdf:type rdf:List .
first:a rdf:type owl:Class .
_:g rdf:first first:a .
_:g rdf:rest _:c .
_:e owl:intersectionOf _:g .
_:c rdf:first _:e .
_:c rdf:rest rdf:nil .
_:a owl:unionOf _:c .

7.2.13. Datatypes

DL Full (EC) Inconsistent document.001
Description: (informative) <I5.8/Manifest001#test>
There are only 256 different values for xsd:byte.
Required datatype support: xsd:byte,
N3 format is informative.
DLInconsistent: <I5.8/inconsistent001>
<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.8/inconsistent001#"
    xml:base="http://www.w3.org/2002/03owlt/I5.8/inconsistent001" >
   <rdf:Description rdf:ID="john">
       <rdf:type>
          <owl:Restriction>
             <owl:onProperty>
               <owl:DatatypeProperty rdf:ID="p">
                 <rdfs:range rdf:resource=
  "http://www.w3.org/2001/XMLSchema#byte" />
               </owl:DatatypeProperty>
              </owl:onProperty>
              <owl:cardinality
  rdf:datatype="http://www.w3.org/2001/XMLSchema#nonNegativeInteger"
               >257</owl:cardinality>
           </owl:Restriction>
       </rdf:type>
   </rdf:Description>

</rdf:RDF>
_:a rdf:type owl:Restriction .
first:p rdf:type owl:DatatypeProperty .
first:p rdfs:range xsd:byte .
_:a owl:onProperty first:p .
_:a owl:cardinality "257"^^xsd:nonNegativeInteger  .
first:john rdf:type _:a .

DL Full Consistent document.002
Description: (informative) <I5.8/Manifest002#test>
There are 256 different values for xsd:byte.
Datatypes that may or may not be supported: xsd:byte,
N3 format is informative.
DLConsistent: <I5.8/consistent002>
<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.8/consistent002" >
   <rdf:Description rdf:ID="john">
       <rdf:type>
          <owl:Restriction>
             <owl:onProperty>
               <owl:DatatypeProperty rdf:ID="p">
                 <rdfs:range rdf:resource=
  "http://www.w3.org/2001/XMLSchema#byte" />
               </owl:DatatypeProperty>
              </owl:onProperty>
              <owl:cardinality
  rdf:datatype="http://www.w3.org/2001/XMLSchema#nonNegativeInteger"
               >256</owl:cardinality>
           </owl:Restriction>
       </rdf:type>
   </rdf:Description>

</rdf:RDF>
_:a rdf:type owl:Restriction .
first:p rdf:type owl:DatatypeProperty .
first:p rdfs:range xsd:byte .
_:a owl:onProperty first:p .
_:a owl:cardinality "256"^^xsd:nonNegativeInteger  .
first:john rdf:type _:a .

DL Full (EC) Inconsistent document.003
Description: (informative) <I5.8/Manifest003#test>
There are only 128 different values of xsd:byte that are also xsd:unsignedInt.
Required datatype support: xsd:byte, xsd:unsignedInt,
N3 format is informative.
DLInconsistent: <I5.8/inconsistent003>
<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.8/inconsistent003" >
   <rdf:Description rdf:ID="john">
       <rdf:type>
          <owl:Restriction>
             <owl:onProperty>
               <owl:DatatypeProperty rdf:ID="p">
                 <rdfs:range rdf:resource=
  "http://www.w3.org/2001/XMLSchema#byte" />
                 <rdfs:range rdf:resource=
  "http://www.w3.org/2001/XMLSchema#unsignedInt" />
               </owl:DatatypeProperty>
              </owl:onProperty>
              <owl:cardinality
  rdf:datatype="http://www.w3.org/2001/XMLSchema#nonNegativeInteger"
               >129</owl:cardinality>
           </owl:Restriction>
       </rdf:type>
   </rdf:Description>

</rdf:RDF>
_:a rdf:type owl:Restriction .
first:p rdf:type owl:DatatypeProperty .
first:p rdfs:range xsd:byte .
first:p rdfs:range xsd:unsignedInt .
_:a owl:onProperty first:p .
_:a owl:cardinality "129"^^xsd:nonNegativeInteger  .
first:john rdf:type _:a .

DL Full (EC) Positive Entailment Test:004
Description: (informative) <I5.8/Manifest004#test>
There are precisely 128 different values of xsd:byte that are also xsd:unsignedInt.
Required datatype support: xsd:byte, xsd:unsignedInt,
N3 format is informative.
DLPremises: <I5.8/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.8/premises004" >

   <rdf:Description rdf:ID="john">
       <rdf:type>
          <owl:Restriction>
             <owl:onProperty>
               <owl:DatatypeProperty rdf:ID="p">
                 <rdfs:range rdf:resource=
  "http://www.w3.org/2001/XMLSchema#byte" />
                 <rdfs:range rdf:resource=
  "http://www.w3.org/2001/XMLSchema#unsignedInt" />
               </owl:DatatypeProperty>
              </owl:onProperty>
              <owl:cardinality
  rdf:datatype="http://www.w3.org/2001/XMLSchema#nonNegativeInteger"
               >128</owl:cardinality>
           </owl:Restriction>
       </rdf:type>
   </rdf:Description>

</rdf:RDF>
_:a rdf:type owl:Restriction .
first:p rdf:type owl:DatatypeProperty .
first:p rdfs:range xsd:byte .
first:p rdfs:range xsd:unsignedInt .
_:a owl:onProperty first:p .
_:a owl:cardinality "128"^^xsd:nonNegativeInteger  .
first:john rdf:type _:a .
LiteConclusions: <I5.8/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#"
    xmlns:first="http://www.w3.org/2002/03owlt/I5.8/premises004#"
    xml:base="http://www.w3.org/2002/03owlt/I5.8/conclusions004" >
  <owl:Thing rdf:about="premises004#john">
    <first:p rdf:datatype=
  "http://www.w3.org/2001/XMLSchema#byte">5</first:p>
  </owl:Thing>
  <owl:DatatypeProperty rdf:about="premises004#p"/>
</rdf:RDF>
first:john rdf:type owl:Thing .
first:john first:p "5"^^xsd:byte  .
first:p rdf:type owl:DatatypeProperty .

DL Full Negative Entailment Test:005
Description: (informative) <I5.8/Manifest005#test>
There are 128 different values of xsd:byte that are also xsd:unsignedInt.
Datatypes that may or may not be supported: xsd:byte, xsd:unsignedInt,
N3 format is informative.
DLPremises: <I5.8/premises005>
<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.8/premises005" >
   <rdf:Description rdf:ID="john">
       <rdf:type>
          <owl:Restriction>
             <owl:onProperty>
               <owl:DatatypeProperty rdf:ID="p">
                 <rdfs:range rdf:resource=
  "http://www.w3.org/2001/XMLSchema#byte" />
                 <rdfs:range rdf:resource=
  "http://www.w3.org/2001/XMLSchema#unsignedInt" />
               </owl:DatatypeProperty>
              </owl:onProperty>
              <owl:cardinality
  rdf:datatype="http://www.w3.org/2001/XMLSchema#nonNegativeInteger"
               >127</owl:cardinality>
           </owl:Restriction>
       </rdf:type>
   </rdf:Description>
</rdf:RDF>
_:a rdf:type owl:Restriction .
first:p rdf:type owl:DatatypeProperty .
first:p rdfs:range xsd:byte .
first:p rdfs:range xsd:unsignedInt .
_:a owl:onProperty first:p .
_:a owl:cardinality "127"^^xsd:nonNegativeInteger  .
first:john rdf:type _:a .
LiteConclusions: <I5.8/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:first="http://www.w3.org/2002/03owlt/I5.8/premises005#"
    xml:base="http://www.w3.org/2002/03owlt/I5.8/nonconclusions005" >
  <owl:Thing rdf:about="premises005#john">
    <first:p rdf:datatype=
  "http://www.w3.org/2001/XMLSchema#byte">5</first:p>
  </owl:Thing>
  <owl:DatatypeProperty rdf:about="premises005#p"/>
</rdf:RDF>
first:john rdf:type owl:Thing .
first:john first:p "5"^^xsd:byte  .
first:p rdf:type owl:DatatypeProperty .

Lite Full (EC) Positive Entailment Test:006
Description: (informative) <I5.8/Manifest006#test>
All xsd:byte are xsd:short.
Required datatype support: xsd:byte, xsd:short,
N3 format is informative.
LitePremises: <I5.8/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#"
    xmlns:first="http://www.w3.org/2002/03owlt/I5.8/premises006#"
    xmlns:second="http://www.w3.org/2002/03owlt/I5.8/conclusions006#"
    xml:base="http://www.w3.org/2002/03owlt/I5.8/premises006" >
  <owl:DatatypeProperty rdf:ID="p">
    <rdfs:range rdf:resource=
  "http://www.w3.org/2001/XMLSchema#byte" />
  </owl:DatatypeProperty>
</rdf:RDF>
first:p rdf:type owl:DatatypeProperty .
first:p rdfs:range xsd:byte .
LiteConclusions: <I5.8/conclusions006>
<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.8/premises006#"
    xmlns:second="http://www.w3.org/2002/03owlt/I5.8/conclusions006#"
    xml:base="http://www.w3.org/2002/03owlt/I5.8/conclusions006" >
  <owl:DatatypeProperty rdf:about="premises006#p">
    <rdfs:range rdf:resource=
  "http://www.w3.org/2001/XMLSchema#short" />
  </owl:DatatypeProperty>

</rdf:RDF>
first:p rdf:type owl:DatatypeProperty .
first:p rdfs:range xsd:short .

Lite Full Negative Entailment Test:007
Description: (informative) <I5.8/Manifest007#test>
-1 is an xsd:short that is not an xsd:unsignedByte.
Datatypes that may or may not be supported: xsd:short, xsd:unsignedByte,
N3 format is informative.
LitePremises: <I5.8/premises007>
<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.8/premises007" >
  <owl:DatatypeProperty rdf:ID="p">
    <rdfs:range rdf:resource=
  "http://www.w3.org/2001/XMLSchema#short" />
  </owl:DatatypeProperty>
</rdf:RDF>
first:p rdf:type owl:DatatypeProperty .
first:p rdfs:range xsd:short .
LiteConclusions: <I5.8/nonconclusions007>
<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.8/nonconclusions007" >
  <owl:DatatypeProperty rdf:about="premises007#p">
    <rdfs:range rdf:resource=
  "http://www.w3.org/2001/XMLSchema#unsignedByte" />
  </owl:DatatypeProperty>

</rdf:RDF>
first:p rdf:type owl:DatatypeProperty .
first:p rdfs:range xsd:unsignedByte .

Lite Full (EC) Positive Entailment Test:008
Description: (informative) <I5.8/Manifest008#test>
-1 is an xsd:short that is not an xsd:unsignedShort; 100000 is an xsd:unsignedInt that is not an xsd:unsignedShort; but there are no xsd:unsignedShort which are neither xsd:short nor xsd:unsignedInt
Required datatype support: xsd:short, xsd:unsignedInt, xsd:unsignedShort,
N3 format is informative.
LitePremises: <I5.8/premises008>
<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.8/premises008" >
  <owl:DatatypeProperty rdf:ID="p">
    <rdfs:range rdf:resource=
  "http://www.w3.org/2001/XMLSchema#short" />
    <rdfs:range rdf:resource=
  "http://www.w3.org/2001/XMLSchema#unsignedInt" />
  </owl:DatatypeProperty>
</rdf:RDF>
first:p rdf:type owl:DatatypeProperty .
first:p rdfs:range xsd:short .
first:p rdfs:range xsd:unsignedInt .
LiteConclusions: <I5.8/conclusions008>
<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.8/conclusions008" >
  <owl:DatatypeProperty rdf:about="premises008#p">
    <rdfs:range rdf:resource=
  "http://www.w3.org/2001/XMLSchema#unsignedShort" />
  </owl:DatatypeProperty>

</rdf:RDF>
first:p rdf:type owl:DatatypeProperty .
first:p rdfs:range xsd:unsignedShort .

Lite Full (EC) Positive Entailment Test:009
Description: (informative) <I5.8/Manifest009#test>
0 is the only xsd:nonNegativeInteger which is also an xsd:nonPositiveInteger. 0 is an xsd:short.
Required datatype support: xsd:nonPositiveInteger, xsd:short, xsd:nonNegativeInteger,
N3 format is informative.
LitePremises: <I5.8/premises009>
<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.8/premises009" >
  <owl:DatatypeProperty rdf:ID="p">
    <rdfs:range rdf:resource=
  "http://www.w3.org/2001/XMLSchema#nonNegativeInteger" />
    <rdfs:range rdf:resource=
  "http://www.w3.org/2001/XMLSchema#nonPositiveInteger" />
  </owl:DatatypeProperty>
</rdf:RDF>
first:p rdf:type owl:DatatypeProperty .
first:p rdfs:range xsd:nonNegativeInteger .
first:p rdfs:range xsd:nonPositiveInteger .
LiteConclusions: <I5.8/conclusions009>
<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.8/conclusions009" >
  <owl:DatatypeProperty rdf:about="premises009#p">
    <rdfs:range rdf:resource=
  "http://www.w3.org/2001/XMLSchema#short" />
  </owl:DatatypeProperty>

</rdf:RDF>
first:p rdf:type owl:DatatypeProperty .
first:p rdfs:range xsd:short .

Lite Full (EC) Positive Entailment Test:010
Description: (informative) <I5.8/Manifest010#test>
0 is the only xsd:nonNegativeInteger which is also an xsd:nonPositiveInteger.
Required datatype support: xsd:nonPositiveInteger, xsd:int, xsd:nonNegativeInteger,
N3 format is informative.
LitePremises: <I5.8/premises010>
<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.8/premises010" >
  <owl:DatatypeProperty rdf:ID="p">
    <rdfs:range rdf:resource=
  "http://www.w3.org/2001/XMLSchema#nonNegativeInteger" />
  </owl:DatatypeProperty>
  <rdf:Description rdf:ID="john">
    <rdf:type>
      <owl:Restriction>
        <owl:onProperty rdf:resource="#p"/>
        <owl:someValuesFrom rdf:resource=
  "http://www.w3.org/2001/XMLSchema#nonPositiveInteger" />
      </owl:Restriction>
   </rdf:type>
  </rdf:Description>
</rdf:RDF>
first:p rdf:type owl:DatatypeProperty .
first:p rdfs:range xsd:nonNegativeInteger .
_:a rdf:type owl:Restriction .
_:a owl:onProperty first:p .
_:a owl:someValuesFrom xsd:nonPositiveInteger .
first:john rdf:type _:a .
LiteConclusions: <I5.8/conclusions010>
<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.8/premises010#"
    xml:base="http://www.w3.org/2002/03owlt/I5.8/conclusions010" >
  <owl:DatatypeProperty rdf:about="premises010#p"/>
  
  <owl:Thing rdf:about="premises010#john">
    <first:p rdf:datatype=
 "http://www.w3.org/2001/XMLSchema#int">0</first:p>
  </owl:Thing>
</rdf:RDF>
first:p rdf:type owl:DatatypeProperty .
first:john rdf:type owl:Thing .
first:john first:p "0"^^xsd:int  .

Lite Full OWL described in OWL.011
Description: (informative) <I5.8/Manifest011#test>
The empty graph entails that xsd:integer and xsd:string are a rdfs:Datatype
N3 format is informative.
LiteTrue: <I5.8/conclusions011>
<rdf:RDF
    xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
    xmlns:rdfs="http://www.w3.org/2000/01/rdf-schema#"
    

    xml:base="http://www.w3.org/2002/03owlt/I5.8/conclusions011" >

  <rdfs:Datatype rdf:about="http://www.w3.org/2001/XMLSchema#integer"/>
  <rdfs:Datatype rdf:about="http://www.w3.org/2001/XMLSchema#string"/>
</rdf:RDF>
xsd:integer rdf:type rdfs:Datatype .
xsd:string rdf:type rdfs:Datatype .

DL Full Consistent document.012
Description: (informative) <I5.8/Manifest012#test>
There might be only 128 different values of xsd:byte that are also xsd:unsignedInt; but this is not explicit in the datatype map of this test. (cf. the similar inconsistency test).
Datatypes that must not be supported: xsd:byte, xsd:unsignedInt,
N3 format is informative.
DLConsistent: <I5.8/consistent012>
<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.8/consistent012" >
   <rdf:Description rdf:ID="john">
       <rdf:type>
          <owl:Restriction>
             <owl:onProperty>
               <owl:DatatypeProperty rdf:ID="p">
                 <rdfs:range rdf:resource=
  "http://www.w3.org/2001/XMLSchema#byte" />
                 <rdfs:range rdf:resource=
  "http://www.w3.org/2001/XMLSchema#unsignedInt" />
               </owl:DatatypeProperty>
              </owl:onProperty>
              <owl:cardinality
  rdf:datatype="http://www.w3.org/2001/XMLSchema#nonNegativeInteger"
               >129</owl:cardinality>
           </owl:Restriction>
       </rdf:type>
   </rdf:Description>

</rdf:RDF>
_:a rdf:type owl:Restriction .
first:p rdf:type owl:DatatypeProperty .
first:p rdfs:range xsd:byte .
first:p rdfs:range xsd:unsignedInt .
_:a owl:onProperty first:p .
_:a owl:cardinality "129"^^xsd:nonNegativeInteger  .
first:john rdf:type _:a .

Lite Full Consistent document.013
Description: (informative) <I5.8/Manifest013#test>
This test illustrates the use of a user defined datatype. The informal description has no formal semantics.
Datatypes that may or may not be supported: http://example.org/user/data#type,
N3 format is informative.
Namespaces:
@prefix eg: <http://example.org/user/data#> .
LiteConsistent: <I5.8/consistent013>
<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:eg="http://example.org/user/data#"
    xmlns:owl="http://www.w3.org/2002/07/owl#"
    xmlns:first="http://www.w3.org/2002/03owlt/I5.8/consistent013#"
    xml:base="http://www.w3.org/2002/03owlt/I5.8/consistent013" >

    <rdfs:Datatype rdf:about="http://example.org/user/data#type">
       <rdfs:comment>
  This type maps the string "foo" to the number 3.
  All other strings are not in the lexical space.
       </rdfs:comment>   
    </rdfs:Datatype>
    <owl:DatatypeProperty rdf:ID="prop">
      <rdfs:range rdf:resource="http://example.org/user/data#type"/>
    </owl:DatatypeProperty>

</rdf:RDF>
eg:type rdf:type rdfs:Datatype .
eg:type rdfs:comment """
  This type maps the string "foo" to the number 3.
  All other strings are not in the lexical space.
       """ .
first:prop rdf:type owl:DatatypeProperty .
first:prop rdfs:range eg:type .

Full (EC) Consistent document.014
Description: (informative) <I5.8/Manifest014#test>
This test illustrates the use of an undeclared user defined datatype. The document is hence in Full.
Datatypes that may or may not be supported: http://example.org/user/data#type,
N3 format is informative.
Namespaces:
@prefix eg: <http://example.org/user/data#> .
FullConsistent: <I5.8/consistent014>
<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:eg="http://example.org/user/data#"
    xmlns:owl="http://www.w3.org/2002/07/owl#"
    xml:base="http://www.w3.org/2002/03owlt/I5.8/consistent014" >


    <owl:DatatypeProperty rdf:ID="prop">
      <rdfs:range rdf:resource="http://example.org/user/data#type"/>
    </owl:DatatypeProperty>

</rdf:RDF>
first:prop rdf:type owl:DatatypeProperty .
first:prop rdfs:range eg:type .

Lite Full Consistent document.015
Description: (informative) <I5.8/Manifest015#test>
This test illustrates the use of a user defined datatype. The informal description has no formal semantics.
Datatypes that may or may not be supported: http://example.org/user/data#type,
N3 format is informative.
Namespaces:
@prefix eg: <http://example.org/user/data#> .
LiteConsistent: <I5.8/consistent015>
<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:eg="http://example.org/user/data#"
    xmlns:owl="http://www.w3.org/2002/07/owl#"
    xmlns:first="http://www.w3.org/2002/03owlt/I5.8/consistent015#"
    xml:base="http://www.w3.org/2002/03owlt/I5.8/consistent015" >

    <rdfs:Datatype rdf:about="http://example.org/user/data#type">
       <rdfs:comment>
  This type maps the string "foo" to the number 3.
  All other strings are not in the lexical space.
       </rdfs:comment>   
    </rdfs:Datatype>
    
    <owl:DatatypeProperty rdf:ID="prop" />

    <owl:Thing>
      <first:prop rdf:datatype="http://example.org/user/data#type"
      >foo</first:prop>
    </owl:Thing>

</rdf:RDF>
eg:type rdf:type rdfs:Datatype .
eg:type rdfs:comment """
  This type maps the string "foo" to the number 3.
  All other strings are not in the lexical space.
       """ .
first:prop rdf:type owl:DatatypeProperty .
_:a rdf:type owl:Thing .
_:a first:prop "foo"^^eg:type  .

Full (EC) Consistent document.016
Description: (informative) <I5.8/Manifest016#test>
This test illustrates the use of an undeclared user defined datatype. The document is hence in Full.
Datatypes that may or may not be supported: http://example.org/user/data#type,
N3 format is informative.
Namespaces:
@prefix eg: <http://example.org/user/data#> .
FullConsistent: <I5.8/consistent016>
<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:eg="http://example.org/user/data#"
    xmlns:owl="http://www.w3.org/2002/07/owl#"
    xmlns:first="http://www.w3.org/2002/03owlt/I5.8/consistent016#"
    xml:base="http://www.w3.org/2002/03owlt/I5.8/consistent016" >

    <owl:DatatypeProperty rdf:ID="prop"/>

    <owl:Thing>
      <first:prop rdf:datatype="http://example.org/user/data#type"
      >foo</first:prop>
    </owl:Thing>

</rdf:RDF>
first:prop rdf:type owl:DatatypeProperty .
_:a rdf:type owl:Thing .
_:a first:prop "foo"^^eg:type  .

Full Positive Entailment Test:017
Description: (informative) <I5.8/Manifest017#test>
This explores aliases of builtin datatypes.
Required datatype support: xsd:decimal,
N3 format is informative.
FullPremises: <I5.8/premises017>
<rdf:RDF
    xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
    xmlns:owl="http://www.w3.org/2002/07/owl#"
    xmlns:first="http://www.w3.org/2002/03owlt/I5.8/premises017#"
    xml:base="http://www.w3.org/2002/03owlt/I5.8/premises017" >
   <rdf:Description rdf:about="http://www.w3.org/2001/XMLSchema#decimal">
      <owl:sameAs rdf:resource="#bar"/>
   </rdf:Description>
   <rdf:Description rdf:ID="xx">
     <first:yy rdf:datatype="#bar">01</first:yy>
   </rdf:Description>
</rdf:RDF>
xsd:decimal owl:sameAs first:bar .
first:xx first:yy "01"^^first:bar  .
FullConclusions: <I5.8/conclusions017>
<rdf:RDF
    xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
    xmlns:first="http://www.w3.org/2002/03owlt/I5.8/premises017#"
    xml:base="http://www.w3.org/2002/03owlt/I5.8/conclusions017" >
   <rdf:Description rdf:about="premises017#xx">
     <first:yy rdf:datatype="http://www.w3.org/2001/XMLSchema#decimal">1</first:yy>
   </rdf:Description>

</rdf:RDF>
first:xx first:yy "1"^^xsd:decimal  .

7.2.14. Unnamed Individual Restrictions

Full (EC) Consistent document.001
Description: (informative) <I6.1/Manifest001#test>
The blank nodes in a individual description in OWL DL may not form a directed cycle.
N3 format is informative.
FullConsistent: <I6.1/consistent001>
<rdf:RDF

    xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"

    xmlns:owl="http://www.w3.org/2002/07/owl#"

    xmlns:first="http://www.w3.org/2002/03owlt/I6.1/consistent001#"

    xml:base="http://www.w3.org/2002/03owlt/I6.1/consistent001" >

    <owl:Thing rdf:nodeID="B">

      <first:op rdf:nodeID="B" />

    </owl:Thing>

    <owl:ObjectProperty rdf:ID="op" />



</rdf:RDF>
_:a rdf:type owl:Thing .
_:a first:op _:a .
first:op rdf:type owl:ObjectProperty .

7.3. Additional Description Logic Tests

These tests are ones that are either known from the literature (for instance, from [Heinsohn et al.]), or from test suites contributed by Network Inference, or developed by the Working Group.

The following additional namespace prefix is used in this section:

oiled
http://oiled.man.example.net/test#

In the N3 syntax [N3] used for namespace declarations, this as as follows:

Namespaces:
@prefix oiled: <http://oiled.man.example.net/test#> .

7.3.1. Extended Satisfiability Tests

These are general satisfiability tests that are intended to test the interaction of role hierarchies, disjoint concepts and other things within an OWL reasoner.

DL Full Inconsistent document.001
Description: (informative) <description-logic/Manifest001#test>
DL Test: fact1.1 If a, b and c are disjoint, then: (a and b) or (b and c) or (c and a) is unsatisfiable.
DLInconsistent: <description-logic/inconsistent001>

DL Full Inconsistent document.002
Description: (informative) <description-logic/Manifest002#test>
DL Test: fact2.1
N3 format is informative.
DLInconsistent: <description-logic/inconsistent002>
<rdf:RDF
    xml:base="http://www.w3.org/2002/03owlt/description-logic/inconsistent002"
    xmlns:owl="http://www.w3.org/2002/07/owl#"
    xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
    xmlns:rdfs="http://www.w3.org/2000/01/rdf-schema#" xmlns:xsd="http://www.w3.org/2001/XMLSchema#">
    <owl:Ontology rdf:about=""/>
    <owl:Class rdf:about="http://oiled.man.example.net/test#Unsatisfiable">
        <rdfs:subClassOf>
            <owl:Class rdf:about="http://oiled.man.example.net/test#c"/>
        </rdfs:subClassOf>
        <rdfs:subClassOf>
            <owl:Class>
                <owl:complementOf>
                    <owl:Class rdf:about="http://oiled.man.example.net/test#d"/>
                </owl:complementOf>
            </owl:Class>
        </rdfs:subClassOf>
    </owl:Class>
    <owl:Class rdf:about="http://oiled.man.example.net/test#c">
        <rdfs:subClassOf>
            <owl:Restriction>
                <owl:onProperty rdf:resource="http://oiled.man.example.net/test#r"/>
                <owl:allValuesFrom>
                    <owl:Class rdf:about="http://oiled.man.example.net/test#c"/>
                </owl:allValuesFrom>
            </owl:Restriction>
        </rdfs:subClassOf>
    </owl:Class>
    <owl:Class rdf:about="http://oiled.man.example.net/test#d"/>
    <owl:ObjectProperty rdf:about="http://oiled.man.example.net/test#r"/>
    <owl:Restriction>
        <owl:onProperty rdf:resource="http://oiled.man.example.net/test#r"/>
        <owl:allValuesFrom>
            <owl:Class rdf:about="http://oiled.man.example.net/test#c"/>
        </owl:allValuesFrom>
        <rdfs:subClassOf>
            <owl:Class rdf:about="http://oiled.man.example.net/test#d"/>
        </rdfs:subClassOf>
    </owl:Restriction>
    <rdf:Description>
        <rdf:type rdf:resource="http://oiled.man.example.net/test#Unsatisfiable"/>
    </rdf:Description>
</rdf:RDF>
<description-logic/inconsistent002> rdf:type owl:Ontology .
oiled:Unsatisfiable rdf:type owl:Class .
oiled:c rdf:type owl:Class .
oiled:Unsatisfiable rdfs:subClassOf oiled:c .
_:a rdf:type owl:Class .
oiled:d rdf:type owl:Class .
_:a owl:complementOf oiled:d .
oiled:Unsatisfiable rdfs:subClassOf _:a .
oiled:c rdf:type owl:Class .
_:c rdf:type owl:Restriction .
_:c owl:onProperty oiled:r .
oiled:c rdf:type owl:Class .
_:c owl:allValuesFrom oiled:c .
oiled:c rdfs:subClassOf _:c .
oiled:d rdf:type owl:Class .
oiled:r rdf:type owl:ObjectProperty .
_:e rdf:type owl:Restriction .
_:e owl:onProperty oiled:r .
oiled:c rdf:type owl:Class .
_:e owl:allValuesFrom oiled:c .
oiled:d rdf:type owl:Class .
_:e rdfs:subClassOf oiled:d .
_:g rdf:type oiled:Unsatisfiable .

DL Full Inconsistent document.003
Description: (informative) <description-logic/Manifest003#test>
DL Test: fact3.1
DLInconsistent: <description-logic/inconsistent003>

DL Full Inconsistent document.004
Description: (informative) <description-logic/Manifest004#test>
DL Test: fact4.1
DLInconsistent: <description-logic/inconsistent004>

DL Full Consistent document.005
Description: (informative) <description-logic/Manifest005#test>
DL Test: fact4.2
DLConsistent: <description-logic/consistent005>

DL Full Consistent document.006
Description: (informative) <description-logic/Manifest006#test>
DL Test: t1.1
DLConsistent: <description-logic/consistent006>

DL Full Inconsistent document.007
Description: (informative) <description-logic/Manifest007#test>
DL Test: t1.2
DLInconsistent: <description-logic/inconsistent007>

DL Full Inconsistent document.008
Description: (informative) <description-logic/Manifest008#test>
DL Test: t1.3
DLInconsistent: <description-logic/inconsistent008>

DL Full Consistent document.009
Description: (informative) <description-logic/Manifest009#test>
DL Test: t10.1
DLConsistent: <description-logic/consistent009>

DL Full Inconsistent document.010
Description: (informative) <description-logic/Manifest010#test>
DL Test: t10.2
DLInconsistent: <description-logic/inconsistent010>

DL Full Inconsistent document.011
Description: (informative) <description-logic/Manifest011#test>
DL Test: t10.3
DLInconsistent: <description-logic/inconsistent011>

DL Full Inconsistent document.012
Description: (informative) <description-logic/Manifest012#test>
DL Test: t10.4
DLInconsistent: <description-logic/inconsistent012>

DL Full Inconsistent document.013
Description: (informative) <description-logic/Manifest013#test>
DL Test: t10.5
DLInconsistent: <description-logic/inconsistent013>

DL Full Inconsistent document.014
Description: (informative) <description-logic/Manifest014#test>
DL Test: t11.1
DLInconsistent: <description-logic/inconsistent014>

DL Full Inconsistent document.015
Description: (informative) <description-logic/Manifest015#test>
DL Test: t12.1
DLInconsistent: <description-logic/inconsistent015>

DL Full Consistent document.016
Description: (informative) <description-logic/Manifest016#test>
DL Test: t2.1
DLConsistent: <description-logic/consistent016>

DL Full Inconsistent document.017
Description: (informative) <description-logic/Manifest017#test>
DL Test: t2.2
DLInconsistent: <description-logic/inconsistent017>

DL Full Consistent document.018
Description: (informative) <description-logic/Manifest018#test>
DL Test: t3.1 There are 90 possible partitions in the satisfiable case
DLConsistent: <description-logic/consistent018>

DL Full Inconsistent document.019
Description: (informative) <description-logic/Manifest019#test>
DL Test: t3.2 There are 301 possible partitions in the unsatisfiable case
DLInconsistent: <description-logic/inconsistent019>

DL Full Consistent document.020
Description: (informative) <description-logic/Manifest020#test>
DL Test: t3a.1 there are 1,701 possible partitions in the satisfiable case
DLConsistent: <description-logic/consistent020>

DL Full Consistent document.021
Description: (informative) <description-logic/Manifest021#test>
DL Test: t3a.2 There are 7,770 possible partitions in the unsatisfiable case
DLConsistent: <description-logic/consistent021>

DL Full Inconsistent document.022
Description: (informative) <description-logic/Manifest022#test>
DL Test: t3a.3 There are 42,525 possible partitions in the satisfiable case
DLInconsistent: <description-logic/inconsistent022>

DL Full Inconsistent document.023
Description: (informative) <description-logic/Manifest023#test>
DL Test: t4.1 Dynamic blocking example
DLInconsistent: <description-logic/inconsistent023>

DL Full Consistent document.024
Description: (informative) <description-logic/Manifest024#test>
DL Test: t5.1 Non-finite model example from paper The concept should be coherent but has no finite model
DLConsistent: <description-logic/consistent024>

DL Full Consistent document.025
Description: (informative) <description-logic/Manifest025#test>
DL Test: t5f.1 Non-finite model example from paper The concept should be coherent but has no finite model
DLConsistent: <description-logic/consistent025>

DL Full Inconsistent document.026
Description: (informative) <description-logic/Manifest026#test>
DL Test: t6.1 Double blocking example. The concept should be incoherent but needs double blocking
DLInconsistent: <description-logic/inconsistent026>

DL Full Inconsistent document.027
Description: (informative) <description-logic/Manifest027#test>
DL Test: t6f.1 Double blocking example. The concept should be incoherent but needs double blocking
DLInconsistent: <description-logic/inconsistent027>

DL Full Consistent document.028
Description: (informative) <description-logic/Manifest028#test>
DL Test: t7.1
DLConsistent: <description-logic/consistent028>

DL Full Inconsistent document.029
Description: (informative) <description-logic/Manifest029#test>
DL Test: t7.2
DLInconsistent: <description-logic/inconsistent029>

DL Full Inconsistent document.030
Description: (informative) <description-logic/Manifest030#test>
DL Test: t7.3
DLInconsistent: <description-logic/inconsistent030>

DL Full Consistent document.031
Description: (informative) <description-logic/Manifest031#test>
DL Test: t7f.1
DLConsistent: <description-logic/consistent031>

DL Full Inconsistent document.032
Description: (informative) <description-logic/Manifest032#test>
DL Test: t7f.2
DLInconsistent: <description-logic/inconsistent032>

DL Full Inconsistent document.033
Description: (informative) <description-logic/Manifest033#test>
DL Test: t7f.3
DLInconsistent: <description-logic/inconsistent033>

DL Full Consistent document.034
Description: (informative) <description-logic/Manifest034#test>
DL Test: t8.1
DLConsistent: <description-logic/consistent034>

DL Full Inconsistent document.035
Description: (informative) <description-logic/Manifest035#test>
A test for the interaction of one-of and inverse using the idea of a spy point. Everything is related to the spy via the property p and we know that the spy has at most two invP successors, thus limiting the cardinality of the domain to being at most 2.
N3 format is informative.
DLInconsistent: <description-logic/inconsistent035>
<rdf:RDF 
    xmlns:owl="http://www.w3.org/2002/07/owl#"
    xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
    xmlns:rdfs="http://www.w3.org/2000/01/rdf-schema#" 
    xml:base="http://www.w3.org/2002/03owlt/description-logic/inconsistent035"
    xmlns:oiled="http://oiled.man.example.net/test#">

<owl:Ontology rdf:about="">
  <rdfs:comment>An ontology illustrating the use of a spy point that
limits the cardinality of the interpretation domain to having only two
objects.</rdfs:comment> 
</owl:Ontology>

<owl:Class rdf:about="http://oiled.man.example.net/test#Unsatisfiable">
 <rdfs:subClassOf>
  <owl:Restriction>
    <owl:onProperty rdf:resource="http://oiled.man.example.net/test#r"/>
    <owl:minCardinality
rdf:datatype="http://www.w3.org/2001/XMLSchema#nonNegativeInteger">3</owl:minCardinality>
  </owl:Restriction>
 </rdfs:subClassOf>
</owl:Class>

<owl:ObjectProperty rdf:about="http://oiled.man.example.net/test#p">
 <owl:inverseOf rdf:resource="http://oiled.man.example.net/test#invP"/>
</owl:ObjectProperty>
<owl:ObjectProperty rdf:about="http://oiled.man.example.net/test#r"/>

<owl:ObjectProperty rdf:about="http://oiled.man.example.net/test#invP"/>

<owl:Class rdf:about="http://www.w3.org/2002/07/owl#Thing">
 <rdfs:subClassOf> 
  <owl:Restriction>
   <owl:onProperty rdf:resource="http://oiled.man.example.net/test#p"/>
   <owl:someValuesFrom>
    <owl:Class>
     <owl:oneOf rdf:parseType="Collection">
      <owl:Thing rdf:about="http://oiled.man.example.net/test#spy"/>
     </owl:oneOf>
    </owl:Class>
   </owl:someValuesFrom>
  </owl:Restriction>
 </rdfs:subClassOf>
</owl:Class>

<rdf:Description rdf:about="http://oiled.man.example.net/test#spy">
  <rdf:type>
   <owl:Restriction>
    <owl:onProperty rdf:resource="http://oiled.man.example.net/test#invP"/>
    <owl:maxCardinality
rdf:datatype="http://www.w3.org/2001/XMLSchema#nonNegativeInteger">2</owl:maxCardinality>
  </owl:Restriction>
 </rdf:type>
</rdf:Description>

<oiled:Unsatisfiable/>

</rdf:RDF>
<description-logic/inconsistent035> rdf:type owl:Ontology .
<description-logic/inconsistent035> rdfs:comment """An ontology illustrating the use of a spy point that
limits the cardinality of the interpretation domain to having only two
objects.""" .
oiled:Unsatisfiable rdf:type owl:Class .
_:a rdf:type owl:Restriction .
_:a owl:onProperty oiled:r .
_:a owl:minCardinality "3"^^xsd:nonNegativeInteger  .
oiled:Unsatisfiable rdfs:subClassOf _:a .
oiled:p rdf:type owl:ObjectProperty .
oiled:p owl:inverseOf oiled:invP .
oiled:r rdf:type owl:ObjectProperty .
oiled:invP rdf:type owl:ObjectProperty .
owl:Thing rdf:type owl:Class .
_:c rdf:type owl:Restriction .
_:c owl:onProperty oiled:p .
_:e rdf:type owl:Class .
oiled:spy rdf:type owl:Thing .
_:g rdf:first oiled:spy .
_:g rdf:rest rdf:nil .
_:e owl:oneOf _:g .
_:c owl:someValuesFrom _:e .
owl:Thing rdfs:subClassOf _:c .
_:i rdf:type owl:Restriction .
_:i owl:onProperty oiled:invP .
_:i owl:maxCardinality "2"^^xsd:nonNegativeInteger  .
oiled:spy rdf:type _:i .
_:k rdf:type oiled:Unsatisfiable .

DL Full Inconsistent document.040
Description: (informative) <description-logic/Manifest040#test>
This kind of pattern comes up a lot in more complex ontologies. Failure to cope with this kind of pattern is one of the reasons that many reasoners have been unable to cope with such ontologies.
DLInconsistent: <description-logic/inconsistent040>

7.3.2. Heinsohn's Tests

See [Heinsohn et al.].

DL Full Inconsistent document.101
Description: (informative) <description-logic/Manifest101#test>
DL Test: heinsohn1.1 Tbox tests from [Heinsohn et al.] Tests incoherency caused by disjoint concept
DLInconsistent: <description-logic/inconsistent101>

DL Full Inconsistent document.102
Description: (informative) <description-logic/Manifest102#test>
DL Test: heinsohn1.2 Tbox tests from [Heinsohn et al.] Tests incoherency caused by disjoint concept
DLInconsistent: <description-logic/inconsistent102>

DL Full Inconsistent document.103
Description: (informative) <description-logic/Manifest103#test>
DL Test: heinsohn1.3 Tbox tests from [Heinsohn et al.] Tests incoherency caused by disjoint concept
DLInconsistent: <description-logic/inconsistent103>

DL Full Inconsistent document.104
Description: (informative) <description-logic/Manifest104#test>
DL Test: heinsohn1.4 Tbox tests from [Heinsohn et al.] Tests incoherency caused by disjoint concept
DLInconsistent: <description-logic/inconsistent104>

DL Full Inconsistent document.105
Description: (informative) <description-logic/Manifest105#test>
DL Test: heinsohn2.1 Tbox tests from [Heinsohn et al.] Tests incoherency caused by number restrictions
N3 format is informative.
DLInconsistent: <description-logic/inconsistent105>
<rdf:RDF
    xml:base="http://www.w3.org/2002/03owlt/description-logic/inconsistent105"
    xmlns:owl="http://www.w3.org/2002/07/owl#"
    xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
    xmlns:rdfs="http://www.w3.org/2000/01/rdf-schema#"
    xmlns:xsd="http://www.w3.org/2001/XMLSchema#">
    <owl:Ontology rdf:about=""/>
    <owl:Class rdf:about="http://oiled.man.example.net/test#Unsatisfiable">
        <owl:equivalentClass>
            <owl:Class>
                <owl:intersectionOf rdf:parseType="Collection">
                    <owl:Restriction>
                        <owl:onProperty rdf:resource="http://oiled.man.example.net/test#r"/>
                        <owl:minCardinality
 rdf:datatype="http://www.w3.org/2001/XMLSchema#nonNegativeInteger"
                        >2</owl:minCardinality>
                    </owl:Restriction>
                    <owl:Restriction>
                        <owl:onProperty rdf:resource="http://oiled.man.example.net/test#r"/>
                        <owl:maxCardinality
 rdf:datatype="http://www.w3.org/2001/XMLSchema#nonNegativeInteger"
                         >1</owl:maxCardinality>
                    </owl:Restriction>
                </owl:intersectionOf>
            </owl:Class>
        </owl:equivalentClass>
    </owl:Class>
    <owl:Class rdf:about="http://oiled.man.example.net/test#c">
        <rdfs:subClassOf>
            <owl:Class>
                <owl:complementOf>
                    <owl:Class rdf:about="http://oiled.man.example.net/test#d"/>
                </owl:complementOf>
            </owl:Class>
        </rdfs:subClassOf>
    </owl:Class>
    <owl:Class rdf:about="http://oiled.man.example.net/test#d"/>
    <owl:ObjectProperty rdf:about="http://oiled.man.example.net/test#r"/>
    <rdf:Description>
        <rdf:type rdf:resource="http://oiled.man.example.net/test#Unsatisfiable"/>
    </rdf:Description>
</rdf:RDF>
<description-logic/inconsistent105> rdf:type owl:Ontology .
oiled:Unsatisfiable rdf:type owl:Class .
_:a rdf:type owl:Class .
_:c rdf:type owl:Restriction .
_:c owl:onProperty oiled:r .
_:c owl:minCardinality "2"^^xsd:nonNegativeInteger  .
_:e rdf:type owl:Restriction .
_:e owl:onProperty oiled:r .
_:e owl:maxCardinality "1"^^xsd:nonNegativeInteger  .
_:g rdf:first _:e .
_:g rdf:rest rdf:nil .
_:i rdf:first _:c .
_:i rdf:rest _:g .
_:a owl:intersectionOf _:i .
oiled:Unsatisfiable owl:equivalentClass _:a .
oiled:c rdf:type owl:Class .
_:k rdf:type owl:Class .
oiled:d rdf:type owl:Class .
_:k owl:complementOf oiled:d .
oiled:c rdfs:subClassOf _:k .
oiled:d rdf:type owl:Class .
oiled:r rdf:type owl:ObjectProperty .
_:m rdf:type oiled:Unsatisfiable .

DL Full Inconsistent document.106
Description: (informative) <description-logic/Manifest106#test>
DL Test: heinsohn2.2 Tbox tests from [Heinsohn et al.] Tests incoherency caused by number restrictions
DLInconsistent: <description-logic/inconsistent106>

DL Full Inconsistent document.107
Description: (informative) <description-logic/Manifest107#test>
DL Test: heinsohn3.1 Tbox tests from [Heinsohn et al.] Tests incoherency caused by number restrictions and role hierarchy
DLInconsistent: <description-logic/inconsistent107>

DL Full Inconsistent document.108
Description: (informative) <description-logic/Manifest108#test>
DL Test: heinsohn3.2 Tbox tests from [Heinsohn et al.] Tests incoherency caused by number restrictions and role hierarchy
DLInconsistent: <description-logic/inconsistent108>

DL Full Inconsistent document.109
Description: (informative) <description-logic/Manifest109#test>
DL Test: heinsohn3c.1 Tbox tests from [Heinsohn et al.] Tests incoherency caused by number restrictions and role hierarchy
DLInconsistent: <description-logic/inconsistent109>

DL Full Inconsistent document.110
Description: (informative) <description-logic/Manifest110#test>
DL Test: heinsohn4.1 Tbox tests from [Heinsohn et al.] Tests role restrictions
DLInconsistent: <description-logic/inconsistent110>

DL Full Inconsistent document.111
Description: (informative) <description-logic/Manifest111#test>
DL Test: heinsohn4.2 Tbox tests from [Heinsohn et al.] Tests role restrictions
DLInconsistent: <description-logic/inconsistent111>

7.3.3. DL 98 Instance Tests

These tests have been ported from the DL 98 tests [DL 98 Systems Comparison].

DL Full Positive Entailment Test:201
Description: (informative) <description-logic/Manifest201#test>
DL Test: k_branch ABox test from DL98 systems comparison.
DLPremises: <description-logic/premises201>
LiteConclusions: <description-logic/conclusions201>

DL Full Positive Entailment Test:202
Description: (informative) <description-logic/Manifest202#test>
DL Test: k_d4 ABox test from DL98 systems comparison.
DLPremises: <description-logic/premises202>
LiteConclusions: <description-logic/conclusions202>

DL Full Positive Entailment Test:203
Description: (informative) <description-logic/Manifest203#test>
DL Test: k_dum ABox test from DL98 systems comparison.
DLPremises: <description-logic/premises203>
LiteConclusions: <description-logic/conclusions203>

DL Full Positive Entailment Test:204
Description: (informative) <description-logic/Manifest204#test>
DL Test: k_grz ABox test from DL98 systems comparison.
DLPremises: <description-logic/premises204>
LiteConclusions: <description-logic/conclusions204>

DL Full Positive Entailment Test:205
Description: (informative) <description-logic/Manifest205#test>
DL Test: k_lin ABox test from DL98 systems comparison.
DLPremises: <description-logic/premises205>
LiteConclusions: <description-logic/conclusions205>

DL Full Positive Entailment Test:206
Description: (informative) <description-logic/Manifest206#test>
DL Test: k_path ABox test from DL98 systems comparison.
DLPremises: <description-logic/premises206>
LiteConclusions: <description-logic/conclusions206>

DL Full Positive Entailment Test:207
Description: (informative) <description-logic/Manifest207#test>
DL Test: k_ph ABox test from DL98 systems comparison.
DLPremises: <description-logic/premises207>
LiteConclusions: <description-logic/conclusions207>

DL Full Positive Entailment Test:208
Description: (informative) <description-logic/Manifest208#test>
DL Test: k_poly ABox test from DL98 systems comparison.
DLPremises: <description-logic/premises208>
LiteConclusions: <description-logic/conclusions208>

DL Full Negative Entailment Test:209
Description: (informative) <description-logic/Manifest209#test>
DL Test: k_poly ABox test from DL98 systems comparison. (Modified in light of implementation feedback, see test description-logic-208).
DLPremises: <description-logic/premises209>
LiteConclusions: <description-logic/nonconclusions209>

7.3.4. The 3 SAT Problem

These tests show how the classic 3 SAT problem can be encoded in OWL DL. The comment before each test gives the 3 SAT problem in the [DIMACS] format.

DL Full (EC) Consistent document.501
Description: (informative) <description-logic/Manifest501#test>
This is the classic 3 SAT problem.
DLConsistent: <description-logic/consistent501>

DL Full (EC) Inconsistent document.502
Description: (informative) <description-logic/Manifest502#test>
This is the classic 3 SAT problem.
DLInconsistent: <description-logic/inconsistent502>

DL Full Consistent document.503
Description: (informative) <description-logic/Manifest503#test>
This is a different encoding of test 501.
DLConsistent: <description-logic/consistent503>

DL Full Inconsistent document.504
Description: (informative) <description-logic/Manifest504#test>
This is a different encoding of test 502.
DLInconsistent: <description-logic/inconsistent504>

7.3.5. Difficult OWL Lite Tests

These tests are OWL Lite versions of the tests from the previous sections. The OWL DL constructions owl:unionOf, owl:complementOf, owl:disjointWith have been systematically replaced with OWL Lite equivalents.

Lite Full Inconsistent document.601
Description: (informative) <description-logic/Manifest601#test>
DL Test: fact1.1 If a, b and c are disjoint, then: (a and b) or (b and c) or (c and a) is unsatisfiable.
LiteInconsistent: <description-logic/inconsistent601>

Lite Full Inconsistent document.602
Description: (informative) <description-logic/Manifest602#test>
DL Test: fact2.1
N3 format is informative.
LiteInconsistent: <description-logic/inconsistent602>
<rdf:RDF
    xmlns:oiled="http://oiled.man.example.net/test#"
    xmlns:owl="http://www.w3.org/2002/07/owl#"
    xmlns:rdfs="http://www.w3.org/2000/01/rdf-schema#"
    xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
 xml:base="http://www.w3.org/2002/03owlt/description-logic/inconsistent602">
 <owl:Ontology rdf:about=""/>
 <owl:Class rdf:about="http://oiled.man.example.net/test#d.comp">
  <owl:equivalentClass>
   <owl:Restriction>
    <owl:onProperty>
     <owl:DatatypeProperty rdf:ID="P.1"/>
    </owl:onProperty>
    <owl:minCardinality rdf:datatype="/2001/XMLSchema#int"
    >1</owl:minCardinality>
   </owl:Restriction>
  </owl:equivalentClass>
 </owl:Class>
 <owl:Class rdf:about="http://oiled.man.example.net/test#Unsatisfiable">
  <rdfs:subClassOf>
   <owl:Class rdf:about="http://oiled.man.example.net/test#c"/>
  </rdfs:subClassOf>
  <rdfs:subClassOf rdf:resource="http://oiled.man.example.net/test#d.comp"/>
 </owl:Class>
 <owl:Class rdf:about="http://oiled.man.example.net/test#d">
  <owl:equivalentClass>
   <owl:Restriction>
    <owl:onProperty rdf:resource="#P.1"/>
    <owl:maxCardinality rdf:datatype="/2001/XMLSchema#int"
    >0</owl:maxCardinality>
   </owl:Restriction>
  </owl:equivalentClass>
 </owl:Class>
 <owl:Class rdf:about="http://oiled.man.example.net/test#c">
  <rdfs:subClassOf>
   <owl:Restriction>
    <owl:onProperty>
     <owl:ObjectProperty rdf:about="http://oiled.man.example.net/test#r"/>
    </owl:onProperty>
    <owl:allValuesFrom rdf:resource="http://oiled.man.example.net/test#c"/>
   </owl:Restriction>
  </rdfs:subClassOf>
 </owl:Class>
 <owl:Class rdf:ID="A.2">
  <rdfs:subClassOf rdf:resource="http://oiled.man.example.net/test#d"/>
  <owl:equivalentClass>
   <owl:Restriction>
    <owl:onProperty rdf:resource="http://oiled.man.example.net/test#r"/>
    <owl:allValuesFrom rdf:resource="http://oiled.man.example.net/test#c"/>
   </owl:Restriction>
  </owl:equivalentClass>
 </owl:Class>
 <oiled:Unsatisfiable/>
</rdf:RDF>
<description-logic/inconsistent602> rdf:type owl:Ontology .
oiled:d.comp rdf:type owl:Class .
_:a rdf:type owl:Restriction .
first:P.1 rdf:type owl:DatatypeProperty .
_:a owl:onProperty first:P.1 .
_:a owl:minCardinality "1"^^xsd:int  .
oiled:d.comp owl:equivalentClass _:a .
oiled:Unsatisfiable rdf:type owl:Class .
oiled:c rdf:type owl:Class .
oiled:Unsatisfiable rdfs:subClassOf oiled:c .
oiled:Unsatisfiable rdfs:subClassOf oiled:d.comp .
oiled:d rdf:type owl:Class .
_:c rdf:type owl:Restriction .
_:c owl:onProperty first:P.1 .
_:c owl:maxCardinality "0"^^xsd:int  .
oiled:d owl:equivalentClass _:c .
oiled:c rdf:type owl:Class .
_:e rdf:type owl:Restriction .
oiled:r rdf:type owl:ObjectProperty .
_:e owl:onProperty oiled:r .
_:e owl:allValuesFrom oiled:c .
oiled:c rdfs:subClassOf _:e .
first:A.2 rdf:type owl:Class .
first:A.2 rdfs:subClassOf oiled:d .
_:g rdf:type owl:Restriction .
_:g owl:onProperty oiled:r .
_:g owl:allValuesFrom oiled:c .
first:A.2 owl:equivalentClass _:g .
_:i rdf:type oiled:Unsatisfiable .

Lite Full Inconsistent document.603
Description: (informative) <description-logic/Manifest603#test>
DL Test: fact3.1
LiteInconsistent: <description-logic/inconsistent603>

Lite Full Inconsistent document.604
Description: (informative) <description-logic/Manifest604#test>
DL Test: fact4.1
LiteInconsistent: <description-logic/inconsistent604>

Lite Full Consistent document.605
Description: (informative) <description-logic/Manifest605#test>
DL Test: fact4.2
LiteConsistent: <description-logic/consistent605>

Lite Full Consistent document.606
Description: (informative) <description-logic/Manifest606#test>
DL Test: t1.1
LiteConsistent: <description-logic/consistent606>

Lite Full Inconsistent document.608
Description: (informative) <description-logic/Manifest608#test>
DL Test: t1.3
LiteInconsistent: <description-logic/inconsistent608>

Lite Full Consistent document.609
Description: (informative) <description-logic/Manifest609#test>
DL Test: t10.1
LiteConsistent: <description-logic/consistent609>

Lite Full Inconsistent document.610
Description: (informative) <description-logic/Manifest610#test>
DL Test: t10.2
LiteInconsistent: <description-logic/inconsistent610>

Lite Full Inconsistent document.611
Description: (informative) <description-logic/Manifest611#test>
DL Test: t10.3
LiteInconsistent: <description-logic/inconsistent611>

Lite Full Inconsistent document.612
Description: (informative) <description-logic/Manifest612#test>
DL Test: t10.4
LiteInconsistent: <description-logic/inconsistent612>

Lite Full Inconsistent document.613
Description: (informative) <description-logic/Manifest613#test>
DL Test: t10.5
LiteInconsistent: <description-logic/inconsistent613>

Lite Full Inconsistent document.614
Description: (informative) <description-logic/Manifest614#test>
DL Test: t11.1
LiteInconsistent: <description-logic/inconsistent614>

Lite Full Inconsistent document.615
Description: (informative) <description-logic/Manifest615#test>
DL Test: t12.1
LiteInconsistent: <description-logic/inconsistent615>

Lite Full Consistent document.616
Description: (informative) <description-logic/Manifest616#test>
DL Test: t2.1
LiteConsistent: <description-logic/consistent616>

Lite Full Inconsistent document.617
Description: (informative) <description-logic/Manifest617#test>
DL Test: t2.2
LiteInconsistent: <description-logic/inconsistent617>

Lite Full Inconsistent document.623
Description: (informative) <description-logic/Manifest623#test>
DL Test: t4.1 Dynamic blocking example
LiteInconsistent: <description-logic/inconsistent623>

Lite Full Consistent document.624
Description: (informative) <description-logic/Manifest624#test>
DL Test: t5.1 Non-finite model example from paper The concept should be coherent but has no finite model
LiteConsistent: <description-logic/consistent624>

Lite Full Consistent document.625
Description: (informative) <description-logic/Manifest625#test>
DL Test: t5f.1 Non-finite model example from paper The concept should be coherent but has no finite model
LiteConsistent: <description-logic/consistent625>

Lite Full Inconsistent document.626
Description: (informative) <description-logic/Manifest626#test>
DL Test: t6.1 Double blocking example. The concept should be incoherent but needs double blocking
LiteInconsistent: <description-logic/inconsistent626>

Lite Full Inconsistent document.627
Description: (informative) <description-logic/Manifest627#test>
DL Test: t6f.1 Double blocking example. The concept should be incoherent but needs double blocking
LiteInconsistent: <description-logic/inconsistent627>

Lite Full Consistent document.628
Description: (informative) <description-logic/Manifest628#test>
DL Test: t7.1
LiteConsistent: <description-logic/consistent628>

Lite Full Inconsistent document.629
Description: (informative) <description-logic/Manifest629#test>
DL Test: t7.2
LiteInconsistent: <description-logic/inconsistent629>

Lite Full Inconsistent document.630
Description: (informative) <description-logic/Manifest630#test>
DL Test: t7.3
LiteInconsistent: <description-logic/inconsistent630>

Lite Full Consistent document.631
Description: (informative) <description-logic/Manifest631#test>
DL Test: t7f.1
LiteConsistent: <description-logic/consistent631>

Lite Full Inconsistent document.632
Description: (informative) <description-logic/Manifest632#test>
DL Test: t7f.2
LiteInconsistent: <description-logic/inconsistent632>

Lite Full Inconsistent document.633
Description: (informative) <description-logic/Manifest633#test>
DL Test: t7f.3
LiteInconsistent: <description-logic/inconsistent633>

Lite Full Consistent document.634
Description: (informative) <description-logic/Manifest634#test>
DL Test: t8.1
LiteConsistent: <description-logic/consistent634>

Lite Full Inconsistent document.641
Description: (informative) <description-logic/Manifest641#test>
DL Test: heinsohn1.1 Tbox tests from [Heinsohn et al.] Tests incoherency caused by disjoint concept
LiteInconsistent: <description-logic/inconsistent641>

Lite Full Inconsistent document.642
Description: (informative) <description-logic/Manifest642#test>
DL Test: heinsohn1.2 Tbox tests from [Heinsohn et al.] Tests incoherency caused by disjoint concept
LiteInconsistent: <description-logic/inconsistent642>

Lite Full Inconsistent document.643
Description: (informative) <description-logic/Manifest643#test>
DL Test: heinsohn1.3 Tbox tests from [Heinsohn et al.] Tests incoherency caused by disjoint concept
LiteInconsistent: <description-logic/inconsistent643>

Lite Full Inconsistent document.644
Description: (informative) <description-logic/Manifest644#test>
DL Test: heinsohn1.4 Tbox tests from [Heinsohn et al.] Tests incoherency caused by disjoint concept
LiteInconsistent: <description-logic/inconsistent644>

Lite Full Inconsistent document.646
Description: (informative) <description-logic/Manifest646#test>
DL Test: heinsohn2.2 Tbox tests from [Heinsohn et al.] Tests incoherency caused by number restrictions
LiteInconsistent: <description-logic/inconsistent646>

Lite Full Inconsistent document.650
Description: (informative) <description-logic/Manifest650#test>
DL Test: heinsohn4.1 Tbox tests from [Heinsohn et al.] Tests role restrictions
LiteInconsistent: <description-logic/inconsistent650>

Lite Full Positive Entailment Test:661
Description: (informative) <description-logic/Manifest661#test>
DL Test: k_branch ABox test from DL98 systems comparison.
LitePremises: <description-logic/premises661>
LiteConclusions: <description-logic/conclusions661>

Lite Full Positive Entailment Test:662
Description: (informative) <description-logic/Manifest662#test>
DL Test: k_d4 ABox test from DL98 systems comparison.
LitePremises: <description-logic/premises662>
LiteConclusions: <description-logic/conclusions662>

Lite Full Positive Entailment Test:663
Description: (informative) <description-logic/Manifest663#test>
DL Test: k_dum ABox test from DL98 systems comparison.
LitePremises: <description-logic/premises663>
LiteConclusions: <description-logic/conclusions663>

Lite Full Positive Entailment Test:664
Description: (informative) <description-logic/Manifest664#test>
DL Test: k_grz ABox test from DL98 systems comparison.
LitePremises: <description-logic/premises664>
LiteConclusions: <description-logic/conclusions664>

Lite Full Positive Entailment Test:665
Description: (informative) <description-logic/Manifest665#test>
DL Test: k_lin ABox test from DL98 systems comparison.
LitePremises: <description-logic/premises665>
LiteConclusions: <description-logic/conclusions665>

Lite Full Positive Entailment Test:667
Description: (informative) <description-logic/Manifest667#test>
DL Test: k_ph ABox test from DL98 systems comparison.
LitePremises: <description-logic/premises667>
LiteConclusions: <description-logic/conclusions667>

7.3.6. Extended Cardinality Testing

DL Full Positive Entailment Test:901
Description: (informative) <description-logic/Manifest901#test>
This entailment can be replicated for any three natural numbers i, j, k such that i+j >= k. In this example, they are chosen as 2, 3 and 5.
N3 format is informative.
DLPremises: <description-logic/premises901>
<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/description-logic/premises901" >

  <owl:ObjectProperty rdf:ID="r"/>
  <owl:ObjectProperty rdf:ID="p">
    <rdfs:subPropertyOf rdf:resource="#r"/>
    <rdfs:range>
      <owl:Class rdf:ID="A"/>
    </rdfs:range>
  </owl:ObjectProperty>
  
  <owl:ObjectProperty rdf:ID="q">
    <rdfs:subPropertyOf rdf:resource="#r"/>
    <rdfs:range>
      <owl:Class rdf:ID="B"/>
    </rdfs:range>
  </owl:ObjectProperty>
  <owl:Class rdf:about="#A">
    <owl:disjointWith rdf:resource="#B"/>
  </owl:Class>

</rdf:RDF>
first:r rdf:type owl:ObjectProperty .
first:p rdf:type owl:ObjectProperty .
first:p rdfs:subPropertyOf first:r .
first:A rdf:type owl:Class .
first:p rdfs:range first:A .
first:q rdf:type owl:ObjectProperty .
first:q rdfs:subPropertyOf first:r .
first:B rdf:type owl:Class .
first:q rdfs:range first:B .
first:A rdf:type owl:Class .
first:A owl:disjointWith first:B .
DLConclusions: <description-logic/conclusions901>
<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/description-logic/premises901#"
    xmlns:second="http://www.w3.org/2002/03owlt/description-logic/conclusions901#"
    xml:base="http://www.w3.org/2002/03owlt/description-logic/conclusions901" >

  <owl:Class>
    <owl:intersectionOf rdf:parseType="Collection">
       <owl:Restriction>
          <owl:onProperty>
            <owl:ObjectProperty rdf:about="premises901#p"/>
          </owl:onProperty>
          <owl:minCardinality rdf:datatype=
"http://www.w3.org/2001/XMLSchema#nonNegativeInteger"
          >2</owl:minCardinality>
       </owl:Restriction>
       <owl:Restriction>
          <owl:onProperty>
            <owl:ObjectProperty rdf:about="premises901#q"/>
          </owl:onProperty>
          <owl:minCardinality rdf:datatype=
"http://www.w3.org/2001/XMLSchema#nonNegativeInteger"
          >3</owl:minCardinality>
       </owl:Restriction>
    </owl:intersectionOf>
    <rdfs:subClassOf>
       <owl:Restriction>
          <owl:onProperty>
            <owl:ObjectProperty rdf:about="premises901#r"/>
          </owl:onProperty>
          <owl:minCardinality rdf:datatype=
"http://www.w3.org/2001/XMLSchema#nonNegativeInteger"
          >5</owl:minCardinality>
       </owl:Restriction>
    </rdfs:subClassOf>
  </owl:Class>
</rdf:RDF>
_:a rdf:type owl:Class .
_:c rdf:type owl:Restriction .
first:p rdf:type owl:ObjectProperty .
_:c owl:onProperty first:p .
_:c owl:minCardinality "2"^^xsd:nonNegativeInteger  .
_:e rdf:type owl:Restriction .
first:q rdf:type owl:ObjectProperty .
_:e owl:onProperty first:q .
_:e owl:minCardinality "3"^^xsd:nonNegativeInteger  .
_:g rdf:first _:e .
_:g rdf:rest rdf:nil .
_:i rdf:first _:c .
_:i rdf:rest _:g .
_:a owl:intersectionOf _:i .
_:k rdf:type owl:Restriction .
first:r rdf:type owl:ObjectProperty .
_:k owl:onProperty first:r .
_:k owl:minCardinality "5"^^xsd:nonNegativeInteger  .
_:a rdfs:subClassOf _:k .

DL Full Negative Entailment Test:902
Description: (informative) <description-logic/Manifest902#test>
This non-entailment can be replicated for any three natural numbers i, j, k such that i+j < k. In this example, they are chosen as 2, 3 and 6.
N3 format is informative.
DLPremises: <description-logic/premises902>
<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/description-logic/premises902" >

  <owl:ObjectProperty rdf:ID="r"/>
  <owl:ObjectProperty rdf:ID="p">
    <rdfs:subPropertyOf rdf:resource="#r"/>
    <rdfs:range>
      <owl:Class rdf:ID="A"/>
    </rdfs:range>
  </owl:ObjectProperty>
  
  <owl:ObjectProperty rdf:ID="q">
    <rdfs:subPropertyOf rdf:resource="#r"/>
    <rdfs:range>
      <owl:Class rdf:ID="B"/>
    </rdfs:range>
  </owl:ObjectProperty>
  <owl:Class rdf:about="#A">
    <owl:disjointWith rdf:resource="#B"/>
  </owl:Class>

</rdf:RDF>
first:r rdf:type owl:ObjectProperty .
first:p rdf:type owl:ObjectProperty .
first:p rdfs:subPropertyOf first:r .
first:A rdf:type owl:Class .
first:p rdfs:range first:A .
first:q rdf:type owl:ObjectProperty .
first:q rdfs:subPropertyOf first:r .
first:B rdf:type owl:Class .
first:q rdfs:range first:B .
first:A rdf:type owl:Class .
first:A owl:disjointWith first:B .
DLConclusions: <description-logic/nonconclusions902>
<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/description-logic/nonconclusions902" >

  <owl:Class>
    <owl:intersectionOf rdf:parseType="Collection">
       <owl:Restriction>
          <owl:onProperty>
            <owl:ObjectProperty rdf:about="premises902#p"/>
          </owl:onProperty>
          <owl:minCardinality rdf:datatype=
"http://www.w3.org/2001/XMLSchema#nonNegativeInteger"
          >2</owl:minCardinality>
       </owl:Restriction>
       <owl:Restriction>
          <owl:onProperty>
            <owl:ObjectProperty rdf:about="premises902#q"/>
          </owl:onProperty>
          <owl:minCardinality rdf:datatype=
"http://www.w3.org/2001/XMLSchema#nonNegativeInteger"
          >3</owl:minCardinality>
       </owl:Restriction>
    </owl:intersectionOf>
    <rdfs:subClassOf>
       <owl:Restriction>
          <owl:onProperty>
            <owl:ObjectProperty rdf:about="premises902#r"/>
          </owl:onProperty>
          <owl:minCardinality rdf:datatype=
"http://www.w3.org/2001/XMLSchema#nonNegativeInteger"
          >6</owl:minCardinality>
       </owl:Restriction>
    </rdfs:subClassOf>
  </owl:Class>
</rdf:RDF>
_:a rdf:type owl:Class .
_:c rdf:type owl:Restriction .
first:p rdf:type owl:ObjectProperty .
_:c owl:onProperty first:p .
_:c owl:minCardinality "2"^^xsd:nonNegativeInteger  .
_:e rdf:type owl:Restriction .
first:q rdf:type owl:ObjectProperty .
_:e owl:onProperty first:q .
_:e owl:minCardinality "3"^^xsd:nonNegativeInteger  .
_:g rdf:first _:e .
_:g rdf:rest rdf:nil .
_:i rdf:first _:c .
_:i rdf:rest _:g .
_:a owl:intersectionOf _:i .
_:k rdf:type owl:Restriction .
first:r rdf:type owl:ObjectProperty .
_:k owl:onProperty first:r .
_:k owl:minCardinality "6"^^xsd:nonNegativeInteger  .
_:a rdfs:subClassOf _:k .

DL Full Positive Entailment Test:903
Description: (informative) <description-logic/Manifest903#test>
This entailment can be replicated for any three natural numbers i, j, k such that i+j >= k. In this example, they are chosen as 200, 300 and 500.
N3 format is informative.
DLPremises: <description-logic/premises903>
<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/description-logic/premises903" >

  <owl:ObjectProperty rdf:ID="r"/>
  <owl:ObjectProperty rdf:ID="p">
    <rdfs:subPropertyOf rdf:resource="#r"/>
    <rdfs:range>
      <owl:Class rdf:ID="A"/>
    </rdfs:range>
  </owl:ObjectProperty>
  
  <owl:ObjectProperty rdf:ID="q">
    <rdfs:subPropertyOf rdf:resource="#r"/>
    <rdfs:range>
      <owl:Class rdf:ID="B"/>
    </rdfs:range>
  </owl:ObjectProperty>
  <owl:Class rdf:about="#A">
    <owl:disjointWith rdf:resource="#B"/>
  </owl:Class>

</rdf:RDF>
first:r rdf:type owl:ObjectProperty .
first:p rdf:type owl:ObjectProperty .
first:p rdfs:subPropertyOf first:r .
first:A rdf:type owl:Class .
first:p rdfs:range first:A .
first:q rdf:type owl:ObjectProperty .
first:q rdfs:subPropertyOf first:r .
first:B rdf:type owl:Class .
first:q rdfs:range first:B .
first:A rdf:type owl:Class .
first:A owl:disjointWith first:B .
DLConclusions: <description-logic/conclusions903>
<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/description-logic/premises903#"
    xmlns:second="http://www.w3.org/2002/03owlt/description-logic/conclusions903#"
    xml:base="http://www.w3.org/2002/03owlt/description-logic/conclusions903" >

  <owl:Class>
    <owl:intersectionOf rdf:parseType="Collection">
       <owl:Restriction>
          <owl:onProperty>
            <owl:ObjectProperty rdf:about="premises903#p"/>
          </owl:onProperty>
          <owl:minCardinality rdf:datatype=
"http://www.w3.org/2001/XMLSchema#nonNegativeInteger"
          >200</owl:minCardinality>
       </owl:Restriction>
       <owl:Restriction>
          <owl:onProperty>
            <owl:ObjectProperty rdf:about="premises903#q"/>
          </owl:onProperty>
          <owl:minCardinality rdf:datatype=
"http://www.w3.org/2001/XMLSchema#nonNegativeInteger"
          >300</owl:minCardinality>
       </owl:Restriction>
    </owl:intersectionOf>
    <rdfs:subClassOf>
       <owl:Restriction>
          <owl:onProperty>
            <owl:ObjectProperty rdf:about="premises903#r"/>
          </owl:onProperty>
          <owl:minCardinality rdf:datatype=
"http://www.w3.org/2001/XMLSchema#nonNegativeInteger"
          >500</owl:minCardinality>
       </owl:Restriction>
    </rdfs:subClassOf>
  </owl:Class>
</rdf:RDF>
_:a rdf:type owl:Class .
_:c rdf:type owl:Restriction .
first:p rdf:type owl:ObjectProperty .
_:c owl:onProperty first:p .
_:c owl:minCardinality "200"^^xsd:nonNegativeInteger  .
_:e rdf:type owl:Restriction .
first:q rdf:type owl:ObjectProperty .
_:e owl:onProperty first:q .
_:e owl:minCardinality "300"^^xsd:nonNegativeInteger  .
_:g rdf:first _:e .
_:g rdf:rest rdf:nil .
_:i rdf:first _:c .
_:i rdf:rest _:g .
_:a owl:intersectionOf _:i .
_:k rdf:type owl:Restriction .
first:r rdf:type owl:ObjectProperty .
_:k owl:onProperty first:r .
_:k owl:minCardinality "500"^^xsd:nonNegativeInteger  .
_:a rdfs:subClassOf _:k .

DL Full Negative Entailment Test:904
Description: (informative) <description-logic/Manifest904#test>
This non-entailment can be replicated for any three natural numbers i, j, k such that i+j < k. In this example, they are chosen as 200, 300 and 600.
N3 format is informative.
DLPremises: <description-logic/premises904>
<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/description-logic/premises904" >

  <owl:ObjectProperty rdf:ID="r"/>
  <owl:ObjectProperty rdf:ID="p">
    <rdfs:subPropertyOf rdf:resource="#r"/>
    <rdfs:range>
      <owl:Class rdf:ID="A"/>
    </rdfs:range>
  </owl:ObjectProperty>
  
  <owl:ObjectProperty rdf:ID="q">
    <rdfs:subPropertyOf rdf:resource="#r"/>
    <rdfs:range>
      <owl:Class rdf:ID="B"/>
    </rdfs:range>
  </owl:ObjectProperty>
  <owl:Class rdf:about="#A">
    <owl:disjointWith rdf:resource="#B"/>
  </owl:Class>

</rdf:RDF>
first:r rdf:type owl:ObjectProperty .
first:p rdf:type owl:ObjectProperty .
first:p rdfs:subPropertyOf first:r .
first:A rdf:type owl:Class .
first:p rdfs:range first:A .
first:q rdf:type owl:ObjectProperty .
first:q rdfs:subPropertyOf first:r .
first:B rdf:type owl:Class .
first:q rdfs:range first:B .
first:A rdf:type owl:Class .
first:A owl:disjointWith first:B .
DLConclusions: <description-logic/nonconclusions904>
<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/description-logic/nonconclusions904" >

  <owl:Class>
    <owl:intersectionOf rdf:parseType="Collection">
       <owl:Restriction>
          <owl:onProperty>
            <owl:ObjectProperty rdf:about="premises904#p"/>
          </owl:onProperty>
          <owl:minCardinality rdf:datatype=
"http://www.w3.org/2001/XMLSchema#nonNegativeInteger"
          >200</owl:minCardinality>
       </owl:Restriction>
       <owl:Restriction>
          <owl:onProperty>
            <owl:ObjectProperty rdf:about="premises904#q"/>
          </owl:onProperty>
          <owl:minCardinality rdf:datatype=
"http://www.w3.org/2001/XMLSchema#nonNegativeInteger"
          >300</owl:minCardinality>
       </owl:Restriction>
    </owl:intersectionOf>
    <rdfs:subClassOf>
       <owl:Restriction>
          <owl:onProperty>
            <owl:ObjectProperty rdf:about="premises904#r"/>
          </owl:onProperty>
          <owl:minCardinality rdf:datatype=
"http://www.w3.org/2001/XMLSchema#nonNegativeInteger"
          >600</owl:minCardinality>
       </owl:Restriction>
    </rdfs:subClassOf>
  </owl:Class>
</rdf:RDF>
_:a rdf:type owl:Class .
_:c rdf:type owl:Restriction .
first:p rdf:type owl:ObjectProperty .
_:c owl:onProperty first:p .
_:c owl:minCardinality "200"^^xsd:nonNegativeInteger  .
_:e rdf:type owl:Restriction .
first:q rdf:type owl:ObjectProperty .
_:e owl:onProperty first:q .
_:e owl:minCardinality "300"^^xsd:nonNegativeInteger  .
_:g rdf:first _:e .
_:g rdf:rest rdf:nil .
_:i rdf:first _:c .
_:i rdf:rest _:g .
_:a owl:intersectionOf _:i .
_:k rdf:type owl:Restriction .
first:r rdf:type owl:ObjectProperty .
_:k owl:onProperty first:r .
_:k owl:minCardinality "600"^^xsd:nonNegativeInteger  .
_:a rdfs:subClassOf _:k .

DL Full (EC) Consistent document.905
Description: (informative) <description-logic/Manifest905#test>
This test shows integer multiplication in OWL DL.

N is 2. M is 3. N times M is 6.
N3 format is informative.
DLConsistent: <description-logic/consistent905>
<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/description-logic/consistent905" >

   <owl:FunctionalProperty rdf:ID="p-N-to-1" >
     <owl:inverseOf>
        <owl:ObjectProperty rdf:ID="invP-1-to-N" />
     </owl:inverseOf>
     <rdfs:domain rdf:resource="#cardinality-N" />
     <rdfs:range rdf:resource="#only-d" />
   </owl:FunctionalProperty>
   <owl:ObjectProperty rdf:about="#p-N-to-1" />

   <owl:FunctionalProperty rdf:ID="q-M-to-1" >
     <owl:inverseOf>
        <owl:ObjectProperty  rdf:ID="invQ-1-to-M" />
     </owl:inverseOf>
     <rdfs:domain rdf:resource="#cardinality-N-times-M" />
     <rdfs:range rdf:resource="#cardinality-N" />
   </owl:FunctionalProperty>
   <owl:ObjectProperty rdf:about="#q-M-to-1" />

   <owl:FunctionalProperty rdf:ID="r-N-times-M-to-1">
     <owl:inverseOf>
        <owl:ObjectProperty  rdf:ID="invR-N-times-M-to-1" />
     </owl:inverseOf>
     <rdfs:domain rdf:resource="#cardinality-N-times-M" />
     <rdfs:range rdf:resource="#only-d" />
   </owl:FunctionalProperty>
   <owl:ObjectProperty rdf:about="#r-N-times-M-to-1"/>
  
    <owl:Class rdf:ID="only-d">
      <owl:oneOf rdf:parseType="Collection">
         <owl:Thing rdf:ID="d"/>
      </owl:oneOf>
      <owl:equivalentClass>
        <owl:Restriction>
          <owl:onProperty rdf:resource="#invP-1-to-N"/>
          <owl:cardinality rdf:datatype=
            "http://www.w3.org/2001/XMLSchema#integer"
           >2</owl:cardinality>
        </owl:Restriction>
      </owl:equivalentClass>

      <owl:equivalentClass>
         <owl:Restriction>
           <owl:onProperty rdf:resource="#invR-N-times-M-to-1"/>
          <owl:cardinality rdf:datatype=
            "http://www.w3.org/2001/XMLSchema#integer"
           >6</owl:cardinality>
        </owl:Restriction>
      </owl:equivalentClass>
    </owl:Class>

    <owl:Class rdf:ID="cardinality-N">
       <owl:equivalentClass>
         <owl:Restriction>
           <owl:onProperty rdf:resource="#p-N-to-1"/>
           <owl:someValuesFrom rdf:resource="#only-d"/>
         </owl:Restriction>
       </owl:equivalentClass>
       <owl:equivalentClass>
         <owl:Restriction>
             <owl:onProperty rdf:resource="#invQ-1-to-M"/>
             <owl:cardinality rdf:datatype=
               "http://www.w3.org/2001/XMLSchema#integer"
              >3</owl:cardinality>
         </owl:Restriction>
       </owl:equivalentClass>
    </owl:Class>

    <owl:Class rdf:ID="cardinality-N-times-M">
       <owl:equivalentClass>
          <owl:Restriction>
            <owl:onProperty rdf:resource="#q-M-to-1"/>
            <owl:someValuesFrom rdf:resource="#cardinality-N"/>
          </owl:Restriction>
       </owl:equivalentClass>
    </owl:Class>


    <owl:Class rdf:about="#cardinality-N-times-M">
       <owl:equivalentClass>
          <owl:Restriction>
            <owl:onProperty rdf:resource="#r-N-times-M-to-1"/>
            <owl:someValuesFrom rdf:resource="#only-d"/>
          </owl:Restriction>
       </owl:equivalentClass>
    </owl:Class>


</rdf:RDF>
first:p-N-to-1 rdf:type owl:FunctionalProperty .
first:invP-1-to-N rdf:type owl:ObjectProperty .
first:p-N-to-1 owl:inverseOf first:invP-1-to-N .
first:p-N-to-1 rdfs:domain first:cardinality-N .
first:p-N-to-1 rdfs:range first:only-d .
first:p-N-to-1 rdf:type owl:ObjectProperty .
first:q-M-to-1 rdf:type owl:FunctionalProperty .
first:invQ-1-to-M rdf:type owl:ObjectProperty .
first:q-M-to-1 owl:inverseOf first:invQ-1-to-M .
first:q-M-to-1 rdfs:domain first:cardinality-N-times-M .
first:q-M-to-1 rdfs:range first:cardinality-N .
first:q-M-to-1 rdf:type owl:ObjectProperty .
first:r-N-times-M-to-1 rdf:type owl:FunctionalProperty .
first:invR-N-times-M-to-1 rdf:type owl:ObjectProperty .
first:r-N-times-M-to-1 owl:inverseOf first:invR-N-times-M-to-1 .
first:r-N-times-M-to-1 rdfs:domain first:cardinality-N-times-M .
first:r-N-times-M-to-1 rdfs:range first:only-d .
first:r-N-times-M-to-1 rdf:type owl:ObjectProperty .
first:only-d rdf:type owl:Class .
first:d rdf:type owl:Thing .
_:a rdf:first first:d .
_:a rdf:rest rdf:nil .
first:only-d owl:oneOf _:a .
_:c rdf:type owl:Restriction .
_:c owl:onProperty first:invP-1-to-N .
_:c owl:cardinality "2"^^xsd:integer  .
first:only-d owl:equivalentClass _:c .
_:e rdf:type owl:Restriction .
_:e owl:onProperty first:invR-N-times-M-to-1 .
_:e owl:cardinality "6"^^xsd:integer  .
first:only-d owl:equivalentClass _:e .
first:cardinality-N rdf:type owl:Class .
_:g rdf:type owl:Restriction .
_:g owl:onProperty first:p-N-to-1 .
_:g owl:someValuesFrom first:only-d .
first:cardinality-N owl:equivalentClass _:g .
_:i rdf:type owl:Restriction .
_:i owl:onProperty first:invQ-1-to-M .
_:i owl:cardinality "3"^^xsd:integer  .
first:cardinality-N owl:equivalentClass _:i .
first:cardinality-N-times-M rdf:type owl:Class .
_:k rdf:type owl:Restriction .
_:k owl:onProperty first:q-M-to-1 .
_:k owl:someValuesFrom first:cardinality-N .
first:cardinality-N-times-M owl:equivalentClass _:k .
first:cardinality-N-times-M rdf:type owl:Class .
_:m rdf:type owl:Restriction .
_:m owl:onProperty first:r-N-times-M-to-1 .
_:m owl:someValuesFrom first:only-d .
first:cardinality-N-times-M owl:equivalentClass _:m .

DL Full (EC) Consistent document.906
Description: (informative) <description-logic/Manifest906#test>
This test shows integer multiplication in OWL DL.

N is 20. M is 30. N times M is 600.
N3 format is informative.
DLConsistent: <description-logic/consistent906>
<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/description-logic/consistent906" >

   <owl:FunctionalProperty rdf:ID="p-N-to-1" >
     <owl:inverseOf>
        <owl:ObjectProperty rdf:ID="invP-1-to-N" />
     </owl:inverseOf>
     <rdfs:domain rdf:resource="#cardinality-N" />
     <rdfs:range rdf:resource="#only-d" />
   </owl:FunctionalProperty>
   <owl:ObjectProperty rdf:about="#p-N-to-1" />

   <owl:FunctionalProperty rdf:ID="q-M-to-1" >
     <owl:inverseOf>
        <owl:ObjectProperty  rdf:ID="invQ-1-to-M" />
     </owl:inverseOf>
     <rdfs:domain rdf:resource="#cardinality-N-times-M" />
     <rdfs:range rdf:resource="#cardinality-N" />
   </owl:FunctionalProperty>
   <owl:ObjectProperty rdf:about="#q-M-to-1" />

   <owl:FunctionalProperty rdf:ID="r-N-times-M-to-1">
     <owl:inverseOf>
        <owl:ObjectProperty  rdf:ID="invR-N-times-M-to-1" />
     </owl:inverseOf>
     <rdfs:domain rdf:resource="#cardinality-N-times-M" />
     <rdfs:range rdf:resource="#only-d" />
   </owl:FunctionalProperty>
   <owl:ObjectProperty rdf:about="#r-N-times-M-to-1"/>
  
    <owl:Class rdf:ID="only-d">
      <owl:oneOf rdf:parseType="Collection">
         <owl:Thing rdf:ID="d"/>
      </owl:oneOf>
      <owl:equivalentClass>
        <owl:Restriction>
          <owl:onProperty rdf:resource="#invP-1-to-N"/>
          <owl:cardinality rdf:datatype=
            "http://www.w3.org/2001/XMLSchema#integer"
           >20</owl:cardinality>
        </owl:Restriction>
      </owl:equivalentClass>

      <owl:equivalentClass>
         <owl:Restriction>
           <owl:onProperty rdf:resource="#invR-N-times-M-to-1"/>
          <owl:cardinality rdf:datatype=
            "http://www.w3.org/2001/XMLSchema#integer"
           >600</owl:cardinality>
        </owl:Restriction>
      </owl:equivalentClass>
    </owl:Class>

    <owl:Class rdf:ID="cardinality-N">
       <owl:equivalentClass>
         <owl:Restriction>
           <owl:onProperty rdf:resource="#p-N-to-1"/>
           <owl:someValuesFrom rdf:resource="#only-d"/>
         </owl:Restriction>
       </owl:equivalentClass>
       <owl:equivalentClass>
         <owl:Restriction>
             <owl:onProperty rdf:resource="#invQ-1-to-M"/>
             <owl:cardinality rdf:datatype=
               "http://www.w3.org/2001/XMLSchema#integer"
              >30</owl:cardinality>
         </owl:Restriction>
       </owl:equivalentClass>
    </owl:Class>

    <owl:Class rdf:ID="cardinality-N-times-M">
       <owl:equivalentClass>
          <owl:Restriction>
            <owl:onProperty rdf:resource="#q-M-to-1"/>
            <owl:someValuesFrom rdf:resource="#cardinality-N"/>
          </owl:Restriction>
       </owl:equivalentClass>
    </owl:Class>


    <owl:Class rdf:about="#cardinality-N-times-M">
       <owl:equivalentClass>
          <owl:Restriction>
            <owl:onProperty rdf:resource="#r-N-times-M-to-1"/>
            <owl:someValuesFrom rdf:resource="#only-d"/>
          </owl:Restriction>
       </owl:equivalentClass>
    </owl:Class>


</rdf:RDF>
first:p-N-to-1 rdf:type owl:FunctionalProperty .
first:invP-1-to-N rdf:type owl:ObjectProperty .
first:p-N-to-1 owl:inverseOf first:invP-1-to-N .
first:p-N-to-1 rdfs:domain first:cardinality-N .
first:p-N-to-1 rdfs:range first:only-d .
first:p-N-to-1 rdf:type owl:ObjectProperty .
first:q-M-to-1 rdf:type owl:FunctionalProperty .
first:invQ-1-to-M rdf:type owl:ObjectProperty .
first:q-M-to-1 owl:inverseOf first:invQ-1-to-M .
first:q-M-to-1 rdfs:domain first:cardinality-N-times-M .
first:q-M-to-1 rdfs:range first:cardinality-N .
first:q-M-to-1 rdf:type owl:ObjectProperty .
first:r-N-times-M-to-1 rdf:type owl:FunctionalProperty .
first:invR-N-times-M-to-1 rdf:type owl:ObjectProperty .
first:r-N-times-M-to-1 owl:inverseOf first:invR-N-times-M-to-1 .
first:r-N-times-M-to-1 rdfs:domain first:cardinality-N-times-M .
first:r-N-times-M-to-1 rdfs:range first:only-d .
first:r-N-times-M-to-1 rdf:type owl:ObjectProperty .
first:only-d rdf:type owl:Class .
first:d rdf:type owl:Thing .
_:a rdf:first first:d .
_:a rdf:rest rdf:nil .
first:only-d owl:oneOf _:a .
_:c rdf:type owl:Restriction .
_:c owl:onProperty first:invP-1-to-N .
_:c owl:cardinality "20"^^xsd:integer  .
first:only-d owl:equivalentClass _:c .
_:e rdf:type owl:Restriction .
_:e owl:onProperty first:invR-N-times-M-to-1 .
_:e owl:cardinality "600"^^xsd:integer  .
first:only-d owl:equivalentClass _:e .
first:cardinality-N rdf:type owl:Class .
_:g rdf:type owl:Restriction .
_:g owl:onProperty first:p-N-to-1 .
_:g owl:someValuesFrom first:only-d .
first:cardinality-N owl:equivalentClass _:g .
_:i rdf:type owl:Restriction .
_:i owl:onProperty first:invQ-1-to-M .
_:i owl:cardinality "30"^^xsd:integer  .
first:cardinality-N owl:equivalentClass _:i .
first:cardinality-N-times-M rdf:type owl:Class .
_:k rdf:type owl:Restriction .
_:k owl:onProperty first:q-M-to-1 .
_:k owl:someValuesFrom first:cardinality-N .
first:cardinality-N-times-M owl:equivalentClass _:k .
first:cardinality-N-times-M rdf:type owl:Class .
_:m rdf:type owl:Restriction .
_:m owl:onProperty first:r-N-times-M-to-1 .
_:m owl:someValuesFrom first:only-d .
first:cardinality-N-times-M owl:equivalentClass _:m .

DL Full (EC) Consistent document.907
Description: (informative) <description-logic/Manifest907#test>
This test shows integer multiplication in OWL DL.

N is 200. M is 300. N times M is 60000.
N3 format is informative.
DLConsistent: <description-logic/consistent907>
<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/description-logic/consistent907" >

   <owl:FunctionalProperty rdf:ID="p-N-to-1" >
     <owl:inverseOf>
        <owl:ObjectProperty rdf:ID="invP-1-to-N" />
     </owl:inverseOf>
     <rdfs:domain rdf:resource="#cardinality-N" />
     <rdfs:range rdf:resource="#only-d" />
   </owl:FunctionalProperty>
   <owl:ObjectProperty rdf:about="#p-N-to-1" />

   <owl:FunctionalProperty rdf:ID="q-M-to-1" >
     <owl:inverseOf>
        <owl:ObjectProperty  rdf:ID="invQ-1-to-M" />
     </owl:inverseOf>
     <rdfs:domain rdf:resource="#cardinality-N-times-M" />
     <rdfs:range rdf:resource="#cardinality-N" />
   </owl:FunctionalProperty>
   <owl:ObjectProperty rdf:about="#q-M-to-1" />

   <owl:FunctionalProperty rdf:ID="r-N-times-M-to-1">
     <owl:inverseOf>
        <owl:ObjectProperty  rdf:ID="invR-N-times-M-to-1" />
     </owl:inverseOf>
     <rdfs:domain rdf:resource="#cardinality-N-times-M" />
     <rdfs:range rdf:resource="#only-d" />
   </owl:FunctionalProperty>
   <owl:ObjectProperty rdf:about="#r-N-times-M-to-1"/>
  
    <owl:Class rdf:ID="only-d">
      <owl:oneOf rdf:parseType="Collection">
         <owl:Thing rdf:ID="d"/>
      </owl:oneOf>
      <owl:equivalentClass>
        <owl:Restriction>
          <owl:onProperty rdf:resource="#invP-1-to-N"/>
          <owl:cardinality rdf:datatype=
            "http://www.w3.org/2001/XMLSchema#integer"
           >200</owl:cardinality>
        </owl:Restriction>
      </owl:equivalentClass>

      <owl:equivalentClass>
         <owl:Restriction>
           <owl:onProperty rdf:resource="#invR-N-times-M-to-1"/>
          <owl:cardinality rdf:datatype=
            "http://www.w3.org/2001/XMLSchema#integer"
           >60000</owl:cardinality>
        </owl:Restriction>
      </owl:equivalentClass>
    </owl:Class>

    <owl:Class rdf:ID="cardinality-N">
       <owl:equivalentClass>
         <owl:Restriction>
           <owl:onProperty rdf:resource="#p-N-to-1"/>
           <owl:someValuesFrom rdf:resource="#only-d"/>
         </owl:Restriction>
       </owl:equivalentClass>
       <owl:equivalentClass>
         <owl:Restriction>
             <owl:onProperty rdf:resource="#invQ-1-to-M"/>
             <owl:cardinality rdf:datatype=
               "http://www.w3.org/2001/XMLSchema#integer"
              >300</owl:cardinality>
         </owl:Restriction>
       </owl:equivalentClass>
    </owl:Class>

    <owl:Class rdf:ID="cardinality-N-times-M">
       <owl:equivalentClass>
          <owl:Restriction>
            <owl:onProperty rdf:resource="#q-M-to-1"/>
            <owl:someValuesFrom rdf:resource="#cardinality-N"/>
          </owl:Restriction>
       </owl:equivalentClass>
    </owl:Class>


    <owl:Class rdf:about="#cardinality-N-times-M">
       <owl:equivalentClass>
          <owl:Restriction>
            <owl:onProperty rdf:resource="#r-N-times-M-to-1"/>
            <owl:someValuesFrom rdf:resource="#only-d"/>
          </owl:Restriction>
       </owl:equivalentClass>
    </owl:Class>


</rdf:RDF>
first:p-N-to-1 rdf:type owl:FunctionalProperty .
first:invP-1-to-N rdf:type owl:ObjectProperty .
first:p-N-to-1 owl:inverseOf first:invP-1-to-N .
first:p-N-to-1 rdfs:domain first:cardinality-N .
first:p-N-to-1 rdfs:range first:only-d .
first:p-N-to-1 rdf:type owl:ObjectProperty .
first:q-M-to-1 rdf:type owl:FunctionalProperty .
first:invQ-1-to-M rdf:type owl:ObjectProperty .
first:q-M-to-1 owl:inverseOf first:invQ-1-to-M .
first:q-M-to-1 rdfs:domain first:cardinality-N-times-M .
first:q-M-to-1 rdfs:range first:cardinality-N .
first:q-M-to-1 rdf:type owl:ObjectProperty .
first:r-N-times-M-to-1 rdf:type owl:FunctionalProperty .
first:invR-N-times-M-to-1 rdf:type owl:ObjectProperty .
first:r-N-times-M-to-1 owl:inverseOf first:invR-N-times-M-to-1 .
first:r-N-times-M-to-1 rdfs:domain first:cardinality-N-times-M .
first:r-N-times-M-to-1 rdfs:range first:only-d .
first:r-N-times-M-to-1 rdf:type owl:ObjectProperty .
first:only-d rdf:type owl:Class .
first:d rdf:type owl:Thing .
_:a rdf:first first:d .
_:a rdf:rest rdf:nil .
first:only-d owl:oneOf _:a .
_:c rdf:type owl:Restriction .
_:c owl:onProperty first:invP-1-to-N .
_:c owl:cardinality "200"^^xsd:integer  .
first:only-d owl:equivalentClass _:c .
_:e rdf:type owl:Restriction .
_:e owl:onProperty first:invR-N-times-M-to-1 .
_:e owl:cardinality "60000"^^xsd:integer  .
first:only-d owl:equivalentClass _:e .
first:cardinality-N rdf:type owl:Class .
_:g rdf:type owl:Restriction .
_:g owl:onProperty first:p-N-to-1 .
_:g owl:someValuesFrom first:only-d .
first:cardinality-N owl:equivalentClass _:g .
_:i rdf:type owl:Restriction .
_:i owl:onProperty first:invQ-1-to-M .
_:i owl:cardinality "300"^^xsd:integer  .
first:cardinality-N owl:equivalentClass _:i .
first:cardinality-N-times-M rdf:type owl:Class .
_:k rdf:type owl:Restriction .
_:k owl:onProperty first:q-M-to-1 .
_:k owl:someValuesFrom first:cardinality-N .
first:cardinality-N-times-M owl:equivalentClass _:k .
first:cardinality-N-times-M rdf:type owl:Class .
_:m rdf:type owl:Restriction .
_:m owl:onProperty first:r-N-times-M-to-1 .
_:m owl:someValuesFrom first:only-d .
first:cardinality-N-times-M owl:equivalentClass _:m .

DL Full Consistent document.908
Description: (informative) <description-logic/Manifest908#test>
This test shows integer multiplication in OWL DL, interacting with infinity.

N times infinity is 2 times infinity. M times infinity is 3 times infinity. N times M times infinity is 5 times infinity.
N3 format is informative.
DLConsistent: <description-logic/consistent908>
<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/description-logic/consistent908" >

   <owl:FunctionalProperty rdf:ID="p-N-to-1" >
     <owl:inverseOf>
        <owl:ObjectProperty rdf:ID="invP-1-to-N" />
     </owl:inverseOf>
     <rdfs:domain rdf:resource="#cardinality-N" />
     <rdfs:range rdf:resource="#infinite" />
   </owl:FunctionalProperty>
   <owl:ObjectProperty rdf:about="#p-N-to-1" />

   <owl:FunctionalProperty rdf:ID="q-M-to-1" >
     <owl:inverseOf>
        <owl:ObjectProperty  rdf:ID="invQ-1-to-M" />
     </owl:inverseOf>
     <rdfs:domain rdf:resource="#cardinality-N-times-M" />
     <rdfs:range rdf:resource="#cardinality-N" />
   </owl:FunctionalProperty>
   <owl:ObjectProperty rdf:about="#q-M-to-1" />

   <owl:FunctionalProperty rdf:ID="r-N-times-M-to-1">
     <owl:inverseOf>
        <owl:ObjectProperty  rdf:ID="invR-N-times-M-to-1" />
     </owl:inverseOf>
     <rdfs:domain rdf:resource="#cardinality-N-times-M" />
     <rdfs:range rdf:resource="#infinite" />
   </owl:FunctionalProperty>
   <owl:ObjectProperty rdf:about="#r-N-times-M-to-1"/>
  
    <owl:Class rdf:ID="infinite">
      <owl:equivalentClass>
        <owl:Restriction>
          <owl:onProperty rdf:resource="#invP-1-to-N"/>
          <owl:cardinality rdf:datatype=
            "http://www.w3.org/2001/XMLSchema#integer"
           >2</owl:cardinality>
        </owl:Restriction>
      </owl:equivalentClass>

      <owl:equivalentClass>
         <owl:Restriction>
           <owl:onProperty rdf:resource="#invR-N-times-M-to-1"/>
          <owl:cardinality rdf:datatype=
            "http://www.w3.org/2001/XMLSchema#integer"
           >5</owl:cardinality>
        </owl:Restriction>
      </owl:equivalentClass>
    </owl:Class>

    <owl:Class rdf:ID="cardinality-N">
       <owl:equivalentClass>
         <owl:Restriction>
           <owl:onProperty rdf:resource="#p-N-to-1"/>
           <owl:someValuesFrom rdf:resource="#infinite"/>
         </owl:Restriction>
       </owl:equivalentClass>
       <owl:equivalentClass>
         <owl:Restriction>
             <owl:onProperty rdf:resource="#invQ-1-to-M"/>
             <owl:cardinality rdf:datatype=
               "http://www.w3.org/2001/XMLSchema#integer"
              >3</owl:cardinality>
         </owl:Restriction>
       </owl:equivalentClass>
    </owl:Class>

    <owl:Class rdf:ID="cardinality-N-times-M">
       <owl:equivalentClass>
          <owl:Restriction>
            <owl:onProperty rdf:resource="#q-M-to-1"/>
            <owl:someValuesFrom rdf:resource="#cardinality-N"/>
          </owl:Restriction>
       </owl:equivalentClass>
    </owl:Class>


    <owl:Class rdf:about="#cardinality-N-times-M">
       <owl:equivalentClass>
          <owl:Restriction>
            <owl:onProperty rdf:resource="#r-N-times-M-to-1"/>
            <owl:someValuesFrom rdf:resource="#infinite"/>
          </owl:Restriction>
       </owl:equivalentClass>
    </owl:Class>


</rdf:RDF>
first:p-N-to-1 rdf:type owl:FunctionalProperty .
first:invP-1-to-N rdf:type owl:ObjectProperty .
first:p-N-to-1 owl:inverseOf first:invP-1-to-N .
first:p-N-to-1 rdfs:domain first:cardinality-N .
first:p-N-to-1 rdfs:range first:infinite .
first:p-N-to-1 rdf:type owl:ObjectProperty .
first:q-M-to-1 rdf:type owl:FunctionalProperty .
first:invQ-1-to-M rdf:type owl:ObjectProperty .
first:q-M-to-1 owl:inverseOf first:invQ-1-to-M .
first:q-M-to-1 rdfs:domain first:cardinality-N-times-M .
first:q-M-to-1 rdfs:range first:cardinality-N .
first:q-M-to-1 rdf:type owl:ObjectProperty .
first:r-N-times-M-to-1 rdf:type owl:FunctionalProperty .
first:invR-N-times-M-to-1 rdf:type owl:ObjectProperty .
first:r-N-times-M-to-1 owl:inverseOf first:invR-N-times-M-to-1 .
first:r-N-times-M-to-1 rdfs:domain first:cardinality-N-times-M .
first:r-N-times-M-to-1 rdfs:range first:infinite .
first:r-N-times-M-to-1 rdf:type owl:ObjectProperty .
first:infinite rdf:type owl:Class .
_:a rdf:type owl:Restriction .
_:a owl:onProperty first:invP-1-to-N .
_:a owl:cardinality "2"^^xsd:integer  .
first:infinite owl:equivalentClass _:a .
_:c rdf:type owl:Restriction .
_:c owl:onProperty first:invR-N-times-M-to-1 .
_:c owl:cardinality "5"^^xsd:integer  .
first:infinite owl:equivalentClass _:c .
first:cardinality-N rdf:type owl:Class .
_:e rdf:type owl:Restriction .
_:e owl:onProperty first:p-N-to-1 .
_:e owl:someValuesFrom first:infinite .
first:cardinality-N owl:equivalentClass _:e .
_:g rdf:type owl:Restriction .
_:g owl:onProperty first:invQ-1-to-M .
_:g owl:cardinality "3"^^xsd:integer  .
first:cardinality-N owl:equivalentClass _:g .
first:cardinality-N-times-M rdf:type owl:Class .
_:i rdf:type owl:Restriction .
_:i owl:onProperty first:q-M-to-1 .
_:i owl:someValuesFrom first:cardinality-N .
first:cardinality-N-times-M owl:equivalentClass _:i .
first:cardinality-N-times-M rdf:type owl:Class .
_:k rdf:type owl:Restriction .
_:k owl:onProperty first:r-N-times-M-to-1 .
_:k owl:someValuesFrom first:infinite .
first:cardinality-N-times-M owl:equivalentClass _:k .

DL Full Inconsistent document.909
Description: (informative) <description-logic/Manifest909#test>
This test shows integer multiplication in OWL DL.

For some finite K, N times K is 2 times K. M times K is 3 times K. N times M times K is not 5 times K.
N3 format is informative.
DLInconsistent: <description-logic/inconsistent909>
<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/description-logic/inconsistent909" >

   <owl:FunctionalProperty rdf:ID="p-N-to-1" >
     <owl:inverseOf>
        <owl:ObjectProperty rdf:ID="invP-1-to-N" />
     </owl:inverseOf>
     <rdfs:domain rdf:resource="#cardinality-N" />
     <rdfs:range rdf:resource="#finite" />
   </owl:FunctionalProperty>
   <owl:ObjectProperty rdf:about="#p-N-to-1" />

   <owl:FunctionalProperty rdf:ID="q-M-to-1" >
     <owl:inverseOf>
        <owl:ObjectProperty  rdf:ID="invQ-1-to-M" />
     </owl:inverseOf>
     <rdfs:domain rdf:resource="#cardinality-N-times-M" />
     <rdfs:range rdf:resource="#cardinality-N" />
   </owl:FunctionalProperty>
   <owl:ObjectProperty rdf:about="#q-M-to-1" />

   <owl:FunctionalProperty rdf:ID="r-N-times-M-to-1">
     <owl:inverseOf>
        <owl:ObjectProperty  rdf:ID="invR-N-times-M-to-1" />
     </owl:inverseOf>
     <rdfs:domain rdf:resource="#cardinality-N-times-M" />
     <rdfs:range rdf:resource="#finite" />
   </owl:FunctionalProperty>
   <owl:ObjectProperty rdf:about="#r-N-times-M-to-1"/>
  
   <owl:FunctionalProperty rdf:ID="f-K-to-1" >
     <owl:inverseOf>
        <owl:ObjectProperty rdf:ID="invF-1-to-K" />
     </owl:inverseOf>
     <rdfs:domain rdf:resource="#finite" />
     <rdfs:range rdf:resource="#only-d" />
   </owl:FunctionalProperty>
   <owl:ObjectProperty rdf:about="#f-K-to-1" />

   <owl:Class rdf:ID="only-d">
      <owl:oneOf rdf:parseType="Collection">
         <owl:Thing rdf:ID="d"/>
      </owl:oneOf>
      <owl:equivalentClass>
        <owl:Restriction>
          <owl:onProperty rdf:resource="#invF-1-to-K"/>
          <owl:maxCardinality rdf:datatype=
            "http://www.w3.org/2001/XMLSchema#integer"
           >1000000000</owl:maxCardinality>
        </owl:Restriction>
      </owl:equivalentClass>
    </owl:Class>

    <owl:Class rdf:ID="finite">
      <owl:equivalentClass>
        <owl:Restriction>
          <owl:onProperty rdf:resource="#invP-1-to-N"/>
          <owl:cardinality rdf:datatype=
            "http://www.w3.org/2001/XMLSchema#integer"
           >2</owl:cardinality>
        </owl:Restriction>
      </owl:equivalentClass>

      <owl:equivalentClass>
         <owl:Restriction>
           <owl:onProperty rdf:resource="#invR-N-times-M-to-1"/>
          <owl:cardinality rdf:datatype=
            "http://www.w3.org/2001/XMLSchema#integer"
           >5</owl:cardinality>

       <owl:equivalentClass>
          <owl:Restriction>
            <owl:onProperty rdf:resource="#f-K-to-1"/>
            <owl:someValuesFrom rdf:resource="#only-d"/>
          </owl:Restriction>
       </owl:equivalentClass>

        </owl:Restriction>
      </owl:equivalentClass>


    </owl:Class>

    <owl:Class rdf:ID="cardinality-N">
       <owl:equivalentClass>
         <owl:Restriction>
           <owl:onProperty rdf:resource="#p-N-to-1"/>
           <owl:someValuesFrom rdf:resource="#finite"/>
         </owl:Restriction>
       </owl:equivalentClass>
       <owl:equivalentClass>
         <owl:Restriction>
             <owl:onProperty rdf:resource="#invQ-1-to-M"/>
             <owl:cardinality rdf:datatype=
               "http://www.w3.org/2001/XMLSchema#integer"
              >3</owl:cardinality>
         </owl:Restriction>
       </owl:equivalentClass>
    </owl:Class>

    <owl:Class rdf:ID="cardinality-N-times-M">
       <owl:equivalentClass>
          <owl:Restriction>
            <owl:onProperty rdf:resource="#q-M-to-1"/>
            <owl:someValuesFrom rdf:resource="#cardinality-N"/>
          </owl:Restriction>
       </owl:equivalentClass>
    </owl:Class>


    <owl:Class rdf:about="#cardinality-N-times-M">
       <owl:equivalentClass>
          <owl:Restriction>
            <owl:onProperty rdf:resource="#r-N-times-M-to-1"/>
            <owl:someValuesFrom rdf:resource="#finite"/>
          </owl:Restriction>
       </owl:equivalentClass>
    </owl:Class>


</rdf:RDF>
first:p-N-to-1 rdf:type owl:FunctionalProperty .
first:invP-1-to-N rdf:type owl:ObjectProperty .
first:p-N-to-1 owl:inverseOf first:invP-1-to-N .
first:p-N-to-1 rdfs:domain first:cardinality-N .
first:p-N-to-1 rdfs:range first:finite .
first:p-N-to-1 rdf:type owl:ObjectProperty .
first:q-M-to-1 rdf:type owl:FunctionalProperty .
first:invQ-1-to-M rdf:type owl:ObjectProperty .
first:q-M-to-1 owl:inverseOf first:invQ-1-to-M .
first:q-M-to-1 rdfs:domain first:cardinality-N-times-M .
first:q-M-to-1 rdfs:range first:cardinality-N .
first:q-M-to-1 rdf:type owl:ObjectProperty .
first:r-N-times-M-to-1 rdf:type owl:FunctionalProperty .
first:invR-N-times-M-to-1 rdf:type owl:ObjectProperty .
first:r-N-times-M-to-1 owl:inverseOf first:invR-N-times-M-to-1 .
first:r-N-times-M-to-1 rdfs:domain first:cardinality-N-times-M .
first:r-N-times-M-to-1 rdfs:range first:finite .
first:r-N-times-M-to-1 rdf:type owl:ObjectProperty .
first:f-K-to-1 rdf:type owl:FunctionalProperty .
first:invF-1-to-K rdf:type owl:ObjectProperty .
first:f-K-to-1 owl:inverseOf first:invF-1-to-K .
first:f-K-to-1 rdfs:domain first:finite .
first:f-K-to-1 rdfs:range first:only-d .
first:f-K-to-1 rdf:type owl:ObjectProperty .
first:only-d rdf:type owl:Class .
first:d rdf:type owl:Thing .
_:a rdf:first first:d .
_:a rdf:rest rdf:nil .
first:only-d owl:oneOf _:a .
_:c rdf:type owl:Restriction .
_:c owl:onProperty first:invF-1-to-K .
_:c owl:maxCardinality "1000000000"^^xsd:integer  .
first:only-d owl:equivalentClass _:c .
first:finite rdf:type owl:Class .
_:e rdf:type owl:Restriction .
_:e owl:onProperty first:invP-1-to-N .
_:e owl:cardinality "2"^^xsd:integer  .
first:finite owl:equivalentClass _:e .
_:g rdf:type owl:Restriction .
_:g owl:onProperty first:invR-N-times-M-to-1 .
_:g owl:cardinality "5"^^xsd:integer  .
_:i rdf:type owl:Restriction .
_:i owl:onProperty first:f-K-to-1 .
_:i owl:someValuesFrom first:only-d .
_:g owl:equivalentClass _:i .
first:finite owl:equivalentClass _:g .
first:cardinality-N rdf:type owl:Class .
_:k rdf:type owl:Restriction .
_:k owl:onProperty first:p-N-to-1 .
_:k owl:someValuesFrom first:finite .
first:cardinality-N owl:equivalentClass _:k .
_:m rdf:type owl:Restriction .
_:m owl:onProperty first:invQ-1-to-M .
_:m owl:cardinality "3"^^xsd:integer  .
first:cardinality-N owl:equivalentClass _:m .
first:cardinality-N-times-M rdf:type owl:Class .
_:o rdf:type owl:Restriction .
_:o owl:onProperty first:q-M-to-1 .
_:o owl:someValuesFrom first:cardinality-N .
first:cardinality-N-times-M owl:equivalentClass _:o .
first:cardinality-N-times-M rdf:type owl:Class .
_:q rdf:type owl:Restriction .
_:q owl:onProperty first:r-N-times-M-to-1 .
_:q owl:someValuesFrom first:finite .
first:cardinality-N-times-M owl:equivalentClass _:q .

DL Full (EC) Inconsistent document.910
Description: (informative) <description-logic/Manifest910#test>
This test shows integer multiplication in OWL DL.

N is 20. M is 30. N times M is not 601.
N3 format is informative.
DLInconsistent: <description-logic/inconsistent910>
<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/description-logic/inconsistent910" >

   <owl:FunctionalProperty rdf:ID="p-N-to-1" >
     <owl:inverseOf>
        <owl:ObjectProperty rdf:ID="invP-1-to-N" />
     </owl:inverseOf>
     <rdfs:domain rdf:resource="#cardinality-N" />
     <rdfs:range rdf:resource="#only-d" />
   </owl:FunctionalProperty>
   <owl:ObjectProperty rdf:about="#p-N-to-1" />

   <owl:FunctionalProperty rdf:ID="q-M-to-1" >
     <owl:inverseOf>
        <owl:ObjectProperty  rdf:ID="invQ-1-to-M" />
     </owl:inverseOf>
     <rdfs:domain rdf:resource="#cardinality-N-times-M" />
     <rdfs:range rdf:resource="#cardinality-N" />
   </owl:FunctionalProperty>
   <owl:ObjectProperty rdf:about="#q-M-to-1" />

   <owl:FunctionalProperty rdf:ID="r-N-times-M-to-1">
     <owl:inverseOf>
        <owl:ObjectProperty  rdf:ID="invR-N-times-M-to-1" />
     </owl:inverseOf>
     <rdfs:domain rdf:resource="#cardinality-N-times-M" />
     <rdfs:range rdf:resource="#only-d" />
   </owl:FunctionalProperty>
   <owl:ObjectProperty rdf:about="#r-N-times-M-to-1"/>
  
    <owl:Class rdf:ID="only-d">
      <owl:oneOf rdf:parseType="Collection">
         <owl:Thing rdf:ID="d"/>
      </owl:oneOf>
      <owl:equivalentClass>
        <owl:Restriction>
          <owl:onProperty rdf:resource="#invP-1-to-N"/>
          <owl:cardinality rdf:datatype=
            "http://www.w3.org/2001/XMLSchema#integer"
           >20</owl:cardinality>
        </owl:Restriction>
      </owl:equivalentClass>

      <owl:equivalentClass>
         <owl:Restriction>
           <owl:onProperty rdf:resource="#invR-N-times-M-to-1"/>
          <owl:cardinality rdf:datatype=
            "http://www.w3.org/2001/XMLSchema#integer"
           >601</owl:cardinality>
        </owl:Restriction>
      </owl:equivalentClass>
    </owl:Class>

    <owl:Class rdf:ID="cardinality-N">
       <owl:equivalentClass>
         <owl:Restriction>
           <owl:onProperty rdf:resource="#p-N-to-1"/>
           <owl:someValuesFrom rdf:resource="#only-d"/>
         </owl:Restriction>
       </owl:equivalentClass>
       <owl:equivalentClass>
         <owl:Restriction>
             <owl:onProperty rdf:resource="#invQ-1-to-M"/>
             <owl:cardinality rdf:datatype=
               "http://www.w3.org/2001/XMLSchema#integer"
              >30</owl:cardinality>
         </owl:Restriction>
       </owl:equivalentClass>
    </owl:Class>

    <owl:Class rdf:ID="cardinality-N-times-M">
       <owl:equivalentClass>
          <owl:Restriction>
            <owl:onProperty rdf:resource="#q-M-to-1"/>
            <owl:someValuesFrom rdf:resource="#cardinality-N"/>
          </owl:Restriction>
       </owl:equivalentClass>
    </owl:Class>


    <owl:Class rdf:about="#cardinality-N-times-M">
       <owl:equivalentClass>
          <owl:Restriction>
            <owl:onProperty rdf:resource="#r-N-times-M-to-1"/>
            <owl:someValuesFrom rdf:resource="#only-d"/>
          </owl:Restriction>
       </owl:equivalentClass>
    </owl:Class>


</rdf:RDF>
first:p-N-to-1 rdf:type owl:FunctionalProperty .
first:invP-1-to-N rdf:type owl:ObjectProperty .
first:p-N-to-1 owl:inverseOf first:invP-1-to-N .
first:p-N-to-1 rdfs:domain first:cardinality-N .
first:p-N-to-1 rdfs:range first:only-d .
first:p-N-to-1 rdf:type owl:ObjectProperty .
first:q-M-to-1 rdf:type owl:FunctionalProperty .
first:invQ-1-to-M rdf:type owl:ObjectProperty .
first:q-M-to-1 owl:inverseOf first:invQ-1-to-M .
first:q-M-to-1 rdfs:domain first:cardinality-N-times-M .
first:q-M-to-1 rdfs:range first:cardinality-N .
first:q-M-to-1 rdf:type owl:ObjectProperty .
first:r-N-times-M-to-1 rdf:type owl:FunctionalProperty .
first:invR-N-times-M-to-1 rdf:type owl:ObjectProperty .
first:r-N-times-M-to-1 owl:inverseOf first:invR-N-times-M-to-1 .
first:r-N-times-M-to-1 rdfs:domain first:cardinality-N-times-M .
first:r-N-times-M-to-1 rdfs:range first:only-d .
first:r-N-times-M-to-1 rdf:type owl:ObjectProperty .
first:only-d rdf:type owl:Class .
first:d rdf:type owl:Thing .
_:a rdf:first first:d .
_:a rdf:rest rdf:nil .
first:only-d owl:oneOf _:a .
_:c rdf:type owl:Restriction .
_:c owl:onProperty first:invP-1-to-N .
_:c owl:cardinality "20"^^xsd:integer  .
first:only-d owl:equivalentClass _:c .
_:e rdf:type owl:Restriction .
_:e owl:onProperty first:invR-N-times-M-to-1 .
_:e owl:cardinality "601"^^xsd:integer  .
first:only-d owl:equivalentClass _:e .
first:cardinality-N rdf:type owl:Class .
_:g rdf:type owl:Restriction .
_:g owl:onProperty first:p-N-to-1 .
_:g owl:someValuesFrom first:only-d .
first:cardinality-N owl:equivalentClass _:g .
_:i rdf:type owl:Restriction .
_:i owl:onProperty first:invQ-1-to-M .
_:i owl:cardinality "30"^^xsd:integer  .
first:cardinality-N owl:equivalentClass _:i .
first:cardinality-N-times-M rdf:type owl:Class .
_:k rdf:type owl:Restriction .
_:k owl:onProperty first:q-M-to-1 .
_:k owl:someValuesFrom first:cardinality-N .
first:cardinality-N-times-M owl:equivalentClass _:k .
first:cardinality-N-times-M rdf:type owl:Class .
_:m rdf:type owl:Restriction .
_:m owl:onProperty first:r-N-times-M-to-1 .
_:m owl:someValuesFrom first:only-d .
first:cardinality-N-times-M owl:equivalentClass _:m .

7.4. Miscellaneous Tests

These tests are ones that do not fit any other category. Some are taken from the [OWL Guide]; others reflect various aspects of OWL, that were not formal issues addressed by the Working Group.

7.4.1. Examples from the OWL Guide

These tests are taken from the [OWL Guide].

DL Full Consistent document.001
Description: (informative) <miscellaneous/Manifest001#test>
Wine example taken from the guide.
Datatypes that may or may not be supported: xsd:positiveInteger,
DLConsistent: <miscellaneous/consistent001>

DL Full Consistent document.002
Description: (informative) <miscellaneous/Manifest002#test>
Food example taken from the guide.
DLConsistent: <miscellaneous/consistent002>

DL Full Positive Entailment Test:010
Description: (informative) <miscellaneous/Manifest010#test>
Which wine goes well with which food.
N3 format is informative.
DLPremises: <miscellaneous/premises010>
<?xml version="1.0"?>


<rdf:RDF
  xml:base  = "http://www.w3.org/2002/03owlt/miscellaneous/premises010"
  xmlns:owl = "http://www.w3.org/2002/07/owl#"
  xmlns:rdf = "http://www.w3.org/1999/02/22-rdf-syntax-ns#">

  <owl:Ontology rdf:about="">
    <owl:imports rdf:resource="http://www.w3.org/2002/03owlt/miscellaneous/consistent001"/>
    <owl:imports rdf:resource="http://www.w3.org/2002/03owlt/miscellaneous/consistent002"/>
  </owl:Ontology>
 
</rdf:RDF>
<miscellaneous/premises010> rdf:type owl:Ontology .
<miscellaneous/premises010> owl:imports <miscellaneous/consistent001> .
<miscellaneous/premises010> owl:imports <miscellaneous/consistent002> .
DLConclusions: <miscellaneous/conclusions010>
<!DOCTYPE rdf:RDF [
     <!ENTITY vin  "http://www.w3.org/2002/03owlt/miscellaneous/consistent001#" >
     <!ENTITY food "http://www.w3.org/2002/03owlt/miscellaneous/consistent002#" >
     <!ENTITY owl  "http://www.w3.org/2002/07/owl#" >
     <!ENTITY xsd  "http://www.w3.org/2001/XMLSchema#" >
   ]>
<!--
  Copyright World Wide Web Consortium, (Massachusetts Institute of
  Technology, European Research Consortium for Informatics and
  Mathematics, Keio University).

  All Rights Reserved.

  Please see the full Copyright clause at
  <http://www.w3.org/Consortium/Legal/copyright-software.html>

  $Id: L.html,v 1.9 2004/02/10 15:29:20 sandro Exp $
-->
<rdf:RDF
    xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
    xmlns:owl="http://www.w3.org/2002/07/owl#" >
  <rdf:Description rdf:nodeID="A0">
    <rdf:first rdf:nodeID="A1"/>
    <rdf:rest rdf:nodeID="A2"/>
  </rdf:Description>
  <rdf:Description rdf:nodeID="A3">
    <rdf:type rdf:resource="http://www.w3.org/2002/07/owl#Class"/>
    <owl:intersectionOf rdf:nodeID="A4"/>
  </rdf:Description>
  <rdf:Description rdf:nodeID="A5">
    <rdf:type rdf:resource="http://www.w3.org/2002/07/owl#Restriction"/>
    <owl:hasValue rdf:resource="&vin;FoxenCheninBlanc"/>
    <owl:onProperty rdf:resource="&food;hasDrink"/>
  </rdf:Description>
  <rdf:Description rdf:nodeID="A6">
    <rdf:type rdf:resource="http://www.w3.org/2002/07/owl#Restriction"/>
    <owl:hasValue rdf:resource="&food;Pie"/>
    <owl:onProperty rdf:resource="&food;hasFood"/>
  </rdf:Description>
  <rdf:Description rdf:nodeID="A7">
    <rdf:type rdf:resource="http://www.w3.org/2002/07/owl#Class"/>
    <owl:intersectionOf rdf:nodeID="A8"/>
  </rdf:Description>
  <rdf:Description rdf:nodeID="A9">
    <rdf:first rdf:nodeID="A6"/>
    <rdf:rest rdf:resource="http://www.w3.org/1999/02/22-rdf-syntax-ns#nil"/>
  </rdf:Description>
  <rdf:Description rdf:nodeID="A10">
    <rdf:type rdf:resource="http://www.w3.org/2002/07/owl#Restriction"/>
    <owl:hasValue rdf:resource="&vin;PageMillWineryCabernetSauvignon"/>
    <owl:onProperty rdf:resource="&food;hasDrink"/>
  </rdf:Description>
  <rdf:Description rdf:nodeID="A11">
    <rdf:type rdf:resource="http://www.w3.org/2002/07/owl#Restriction"/>
    <owl:hasValue rdf:resource="&food;Halibut"/>
    <owl:onProperty rdf:resource="&food;hasFood"/>
  </rdf:Description>
  <rdf:Description rdf:nodeID="A12">
    <rdf:type rdf:resource="http://www.w3.org/2002/07/owl#Thing"/>
    <rdf:type rdf:nodeID="A7"/>
  </rdf:Description>
  <rdf:Description rdf:nodeID="A4">
    <rdf:first rdf:nodeID="A5"/>
    <rdf:rest rdf:nodeID="A9"/>
  </rdf:Description>
  <rdf:Description rdf:nodeID="A13">
    <rdf:type rdf:resource="http://www.w3.org/2002/07/owl#Thing"/>
    <rdf:type rdf:nodeID="A14"/>
  </rdf:Description>
  <rdf:Description rdf:nodeID="A15">
    <rdf:first rdf:nodeID="A11"/>
    <rdf:rest rdf:resource="http://www.w3.org/1999/02/22-rdf-syntax-ns#nil"/>
  </rdf:Description>
  <rdf:Description rdf:nodeID="A14">
    <rdf:type rdf:resource="http://www.w3.org/2002/07/owl#Class"/>
    <owl:intersectionOf rdf:nodeID="A0"/>
  </rdf:Description>
  <rdf:Description rdf:nodeID="A8">
    <rdf:first rdf:nodeID="A10"/>
    <rdf:rest rdf:nodeID="A15"/>
  </rdf:Description>
  <rdf:Description rdf:nodeID="A1">
    <rdf:type rdf:resource="http://www.w3.org/2002/07/owl#Restriction"/>
    <owl:hasValue rdf:resource="&vin;SchlossVolradTrochenbierenausleseRiesling"/>
    <owl:onProperty rdf:resource="&food;hasDrink"/>
  </rdf:Description>
  <rdf:Description rdf:nodeID="A16">
    <rdf:type rdf:resource="http://www.w3.org/2002/07/owl#Thing"/>
    <rdf:type rdf:nodeID="A3"/>
  </rdf:Description>
  <rdf:Description rdf:nodeID="A17">
    <rdf:type rdf:resource="http://www.w3.org/2002/07/owl#Restriction"/>
    <owl:hasValue rdf:resource="&food;Lobster"/>
    <owl:onProperty rdf:resource="&food;hasFood"/>
  </rdf:Description>
  <rdf:Description rdf:nodeID="A2">
    <rdf:first rdf:nodeID="A17"/>
    <rdf:rest rdf:resource="http://www.w3.org/1999/02/22-rdf-syntax-ns#nil"/>
  </rdf:Description>
  <rdf:Description rdf:about="&food;hasFood">
    <rdf:type rdf:resource="http://www.w3.org/2002/07/owl#ObjectProperty"/>
  </rdf:Description>
  <rdf:Description rdf:about="&food;hasDrink">
    <rdf:type rdf:resource="http://www.w3.org/2002/07/owl#ObjectProperty"/>
  </rdf:Description>
  <rdf:Description rdf:about="&vin;FoxenCheninBlanc">
    <rdf:type rdf:resource="http://www.w3.org/2002/07/owl#Thing"/>
  </rdf:Description>
  <rdf:Description rdf:about="&food;Pie">
    <rdf:type rdf:resource="http://www.w3.org/2002/07/owl#Thing"/>
  </rdf:Description>
  <rdf:Description rdf:about="&vin;PageMillWineryCabernetSauvignon">
    <rdf:type rdf:resource="http://www.w3.org/2002/07/owl#Thing"/>
  </rdf:Description>
  <rdf:Description rdf:about="&food;Halibut">
    <rdf:type rdf:resource="http://www.w3.org/2002/07/owl#Thing"/>
  </rdf:Description>
  <rdf:Description rdf:about="&vin;SchlossVolradTrochenbierenausleseRiesling">
    <rdf:type rdf:resource="http://www.w3.org/2002/07/owl#Thing"/>
  </rdf:Description>
  <rdf:Description rdf:about="&food;Lobster">
    <rdf:type rdf:resource="http://www.w3.org/2002/07/owl#Thing"/>
  </rdf:Description>
</rdf:RDF>
_:a rdf:first _:b .
_:a rdf:rest _:e .
_:g rdf:type owl:Class .
_:g owl:intersectionOf _:i .
_:k rdf:type owl:Restriction .
_:k owl:hasValue <miscellaneous/consistent001#FoxenCheninBlanc> .
_:k owl:onProperty <miscellaneous/consistent002#hasDrink> .
_:m rdf:type owl:Restriction .
_:m owl:hasValue <miscellaneous/consistent002#Pie> .
_:m owl:onProperty <miscellaneous/consistent002#hasFood> .
_:o rdf:type owl:Class .
_:o owl:intersectionOf _:q .
_:s rdf:first _:m .
_:s rdf:rest rdf:nil .
_:u rdf:type owl:Restriction .
_:u owl:hasValue <miscellaneous/consistent001#PageMillWineryCabernetSauvignon> .
_:u owl:onProperty <miscellaneous/consistent002#hasDrink> .
_:w rdf:type owl:Restriction .
_:w owl:hasValue <miscellaneous/consistent002#Halibut> .
_:w owl:onProperty <miscellaneous/consistent002#hasFood> .
_:y rdf:type owl:Thing .
_:y rdf:type _:o .
_:i rdf:first _:k .
_:i rdf:rest _:s .
_:a1 rdf:type owl:Thing .
_:a1 rdf:type _:c1 .
_:e1 rdf:first _:w .
_:e1 rdf:rest rdf:nil .
_:c1 rdf:type owl:Class .
_:c1 owl:intersectionOf _:a .
_:q rdf:first _:u .
_:q rdf:rest _:e1 .
_:b rdf:type owl:Restriction .
_:b owl:hasValue <miscellaneous/consistent001#SchlossVolradTrochenbierenausleseRiesling> .
_:b owl:onProperty <miscellaneous/consistent002#hasDrink> .
_:g1 rdf:type owl:Thing .
_:g1 rdf:type _:g .
_:i1 rdf:type owl:Restriction .
_:i1 owl:hasValue <miscellaneous/consistent002#Lobster> .
_:i1 owl:onProperty <miscellaneous/consistent002#hasFood> .
_:e rdf:first _:i1 .
_:e rdf:rest rdf:nil .
<miscellaneous/consistent002#hasFood> rdf:type owl:ObjectProperty .
<miscellaneous/consistent002#hasDrink> rdf:type owl:ObjectProperty .
<miscellaneous/consistent001#FoxenCheninBlanc> rdf:type owl:Thing .
<miscellaneous/consistent002#Pie> rdf:type owl:Thing .
<miscellaneous/consistent001#PageMillWineryCabernetSauvignon> rdf:type owl:Thing .
<miscellaneous/consistent002#Halibut> rdf:type owl:Thing .
<miscellaneous/consistent001#SchlossVolradTrochenbierenausleseRiesling> rdf:type owl:Thing .
<miscellaneous/consistent002#Lobster> rdf:type owl:Thing .

DL Full Positive Entailment Test:011
Description: (informative) <miscellaneous/Manifest011#test>
Which wine hasSugar OffDry.
N3 format is informative.
Namespaces:
@prefix vin: <http://www.w3.org/2002/03owlt/miscellaneous/consistent001#> .
DLPremises: <miscellaneous/premises011>
<?xml version="1.0"?>

<rdf:RDF
  xml:base  = "http://www.w3.org/2002/03owlt/miscellaneous/premises011"
  xmlns:owl = "http://www.w3.org/2002/07/owl#"
  xmlns:rdf = "http://www.w3.org/1999/02/22-rdf-syntax-ns#">

  <owl:Ontology rdf:about="">
    <owl:imports rdf:resource="http://www.w3.org/2002/03owlt/miscellaneous/consistent001"/>
    <owl:imports rdf:resource="http://www.w3.org/2002/03owlt/miscellaneous/consistent002"/>
  </owl:Ontology>
 
</rdf:RDF>
<miscellaneous/premises011> rdf:type owl:Ontology .
<miscellaneous/premises011> owl:imports <miscellaneous/consistent001> .
<miscellaneous/premises011> owl:imports <miscellaneous/consistent002> .
LiteConclusions: <miscellaneous/conclusions011>
<!DOCTYPE owl [
     <!ENTITY vin  "http://www.w3.org/2002/03owlt/miscellaneous/consistent001#" >
     <!ENTITY food "http://www.w3.org/2002/03owlt/miscellaneous/consistent002#" >
     <!ENTITY owl  "http://www.w3.org/2002/07/owl#" >
     <!ENTITY xsd  "http://www.w3.org/2001/XMLSchema#" >
   ]>
   
<!--
  Copyright World Wide Web Consortium, (Massachusetts Institute of
  Technology, European Research Consortium for Informatics and
  Mathematics, Keio University).

  All Rights Reserved.

  Please see the full Copyright clause at
  <http://www.w3.org/Consortium/Legal/copyright-software.html>

  $Id: L.html,v 1.9 2004/02/10 15:29:20 sandro Exp $
-->
<rdf:RDF
    xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
    xmlns:owl="http://www.w3.org/2002/07/owl#"
    xmlns:vin="&vin;" >
  <rdf:Description rdf:about="&vin;ClosDeLaPoussieSancerre">
    <vin:hasSugar rdf:resource="&vin;OffDry"/>
    <rdf:type rdf:resource="http://www.w3.org/2002/07/owl#Thing"/>
  </rdf:Description>
  <rdf:Description rdf:about="&vin;VentanaCheninBlanc">
    <vin:hasSugar rdf:resource="&vin;OffDry"/>
    <rdf:type rdf:resource="http://www.w3.org/2002/07/owl#Thing"/>
  </rdf:Description>
  <rdf:Description rdf:about="&vin;RoseDAnjou">
    <vin:hasSugar rdf:resource="&vin;OffDry"/>
    <rdf:type rdf:resource="http://www.w3.org/2002/07/owl#Thing"/>
  </rdf:Description>
  <rdf:Description rdf:about="&vin;CorbansDryWhiteRiesling">
    <vin:hasSugar rdf:resource="&vin;OffDry"/>
    <rdf:type rdf:resource="http://www.w3.org/2002/07/owl#Thing"/>
  </rdf:Description>
  <rdf:Description rdf:about="&vin;hasSugar">
    <rdf:type rdf:resource="http://www.w3.org/2002/07/owl#ObjectProperty"/>
  </rdf:Description>
  <rdf:Description rdf:about="&vin;OffDry">
    <rdf:type rdf:resource="http://www.w3.org/2002/07/owl#Thing"/>
  </rdf:Description>
</rdf:RDF>
vin:ClosDeLaPoussieSancerre vin:hasSugar vin:OffDry .
vin:ClosDeLaPoussieSancerre rdf:type owl:Thing .
vin:VentanaCheninBlanc vin:hasSugar vin:OffDry .
vin:VentanaCheninBlanc rdf:type owl:Thing .
vin:RoseDAnjou vin:hasSugar vin:OffDry .
vin:RoseDAnjou rdf:type owl:Thing .
vin:CorbansDryWhiteRiesling vin:hasSugar vin:OffDry .
vin:CorbansDryWhiteRiesling rdf:type owl:Thing .
vin:hasSugar rdf:type owl:ObjectProperty .
vin:OffDry rdf:type owl:Thing .

7.4.2. Detailed OWL Lite and OWL DL Syntax

These tests illustrate detailed points about the mapping rules in [OWL Semantics and Abstract Syntax], and the syntax of OWL Lite and OWL DL.

DL Full Consistent document.102
Description: (informative) <miscellaneous/Manifest102#test>
Abstract syntax restrictions with multiple components are in OWL DL.
N3 format is informative.
DLConsistent: <miscellaneous/consistent102>
<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/miscellaneous/consistent102#"
    xml:base="http://www.w3.org/2002/03owlt/miscellaneous/consistent102" >
   <owl:Thing rdf:ID="i">
     <rdf:type>
         <owl:Class>
            <owl:intersectionOf rdf:parseType="Collection">
               <owl:Restriction>
                  <owl:onProperty>
                    <owl:ObjectProperty rdf:ID="p"/>
                  </owl:onProperty>
                  <owl:allValuesFrom>
                    <owl:Class rdf:ID="a"/>
                  </owl:allValuesFrom>
               </owl:Restriction>
               <owl:Restriction>
                  <owl:onProperty>
                    <owl:ObjectProperty rdf:about="#p"/>
                  </owl:onProperty>
                  <owl:someValuesFrom>
                    <owl:Class rdf:ID="s"/>
                  </owl:someValuesFrom>
               </owl:Restriction>
             </owl:intersectionOf>
         </owl:Class>
     </rdf:type>
   </owl:Thing>

</rdf:RDF>
first:i rdf:type owl:Thing .
_:a rdf:type owl:Class .
_:c rdf:type owl:Restriction .
first:p rdf:type owl:ObjectProperty .
_:c owl:onProperty first:p .
first:a rdf:type owl:Class .
_:c owl:allValuesFrom first:a .
_:e rdf:type owl:Restriction .
first:p rdf:type owl:ObjectProperty .
_:e owl:onProperty first:p .
first:s rdf:type owl:Class .
_:e owl:someValuesFrom first:s .
_:g rdf:first _:e .
_:g rdf:rest rdf:nil .
_:i rdf:first _:c .
_:i rdf:rest _:g .
_:a owl:intersectionOf _:i .
first:i rdf:type _:a .

DL Full Consistent document.103
Description: (informative) <miscellaneous/Manifest103#test>
This description cannot be expressed as a multicomponent restriction in the abstract syntax.
N3 format is informative.
DLConsistent: <miscellaneous/consistent103>
<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/miscellaneous/consistent103#"
    xml:base="http://www.w3.org/2002/03owlt/miscellaneous/consistent103" >
   <owl:Thing rdf:ID="i">
     <rdf:type>
         <owl:Class>
            <owl:intersectionOf rdf:parseType="Collection">
               <owl:Restriction>
                  <owl:onProperty>
                    <owl:ObjectProperty rdf:ID="p"/>
                  </owl:onProperty>
                  <owl:allValuesFrom>
                    <owl:Class rdf:ID="a"/>
                  </owl:allValuesFrom>
               </owl:Restriction>
               <owl:Restriction>
                  <owl:onProperty>
                    <owl:ObjectProperty rdf:about="#q"/>
                  </owl:onProperty>
                  <owl:someValuesFrom>
                    <owl:Class rdf:ID="s"/>
                  </owl:someValuesFrom>
               </owl:Restriction>
             </owl:intersectionOf>
         </owl:Class>
     </rdf:type>
   </owl:Thing>

</rdf:RDF>
first:i rdf:type owl:Thing .
_:a rdf:type owl:Class .
_:c rdf:type owl:Restriction .
first:p rdf:type owl:ObjectProperty .
_:c owl:onProperty first:p .
first:a rdf:type owl:Class .
_:c owl:allValuesFrom first:a .
_:e rdf:type owl:Restriction .
first:q rdf:type owl:ObjectProperty .
_:e owl:onProperty first:q .
first:s rdf:type owl:Class .
_:e owl:someValuesFrom first:s .
_:g rdf:first _:e .
_:g rdf:rest rdf:nil .
_:i rdf:first _:c .
_:i rdf:rest _:g .
_:a owl:intersectionOf _:i .
first:i rdf:type _:a .

7.4.3. Concerning rdf:XMLLiteral

These tests illustrate the use of rdf:XMLLiteral.

Lite Full Consistent document.201
Description: (informative) <miscellaneous/Manifest201#test>
This test shows how user labels in a variety of languages can be used. Note the use of ruby annotation.
Datatypes that may or may not be supported: rdf:XMLLiteral,
N3 format is informative.
Namespaces:
@prefix : <http://www.w3.org/1999/xhtml> .
LiteConsistent: <miscellaneous/consistent201>
<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="http://www.w3.org/1999/xhtml"
    xmlns:first="http://www.w3.org/2002/03owlt/miscellaneous/consistent201#"
    xml:base="http://www.w3.org/2002/03owlt/miscellaneous/consistent201" >

    <owl:Class rdf:ID="ShakespearePlay">
      <rdfs:label xml:lang="en">Shakespeare's plays</rdfs:label>
      <rdfs:comment xml:lang="en">The class of Shakespeare's plays.</rdfs:comment>
      <rdfs:label xml:lang="it">Opere di Shakespeare</rdfs:label>
      <rdfs:comment xml:lang="it">La classe delle opere di Shakespeare.</rdfs:comment>
      <rdfs:label rdf:parseType="Literal"
          ><span xml:lang="ja">シェイクスピアの<ruby><rbc><rb>演</rb><rb>劇</rb></rbc>
          <rtc><rt>えん</rt><rt>げき</rt></rtc></ruby></span></rdfs:label>
      <rdfs:comment rdf:parseType="Literal"
          ><span xml:lang="ja">シェイクスピアの<ruby><rbc><rb>演</rb><rb>劇</rb></rbc>
          <rtc><rt>えん</rt><rt>げき</rt></rtc></ruby>のクラス。</span></rdfs:comment>
    </owl:Class>
    <first:ShakespearePlay rdf:ID="Romeo-and-Juliet">
      <rdfs:label xml:lang="en">Romeo and Juliet</rdfs:label>
      <rdfs:comment xml:lang="en">The Most Excellent and Lamentable Tragedy 
          of Romeo and Juliet.</rdfs:comment>
      <rdfs:label xml:lang="it">Romeo e Giulietta</rdfs:label>
      <rdfs:comment xml:lang="it">La tragedia di Romeo e Giulietta</rdfs:comment>
      <rdfs:label rdf:parseType="Literal"
          ><span xml:lang="ja">ロミオとジュリエット</span></rdfs:label>
      <rdfs:comment rdf:parseType="Literal"
          ><span xml:lang="ja">ロミオとジュリエットの<ruby><rbc><rb>悲</rb><rb>劇</rb></rbc>
          <rtc><rt>ひ</rt><rt>げき</rt></rtc></ruby></span></rdfs:comment>
    </first:ShakespearePlay>
</rdf:RDF>
first:ShakespearePlay rdf:type owl:Class .
first:ShakespearePlay rdfs:label "Shakespeare's plays"@en .
first:ShakespearePlay rdfs:comment "The class of Shakespeare's plays."@en .
first:ShakespearePlay rdfs:label "Opere di Shakespeare"@it .
first:ShakespearePlay rdfs:comment "La classe delle opere di Shakespeare."@it .
first:ShakespearePlay rdfs:label """<span xmlns="http://www.w3.org/1999/xhtml" xml:lang="ja">シェイクスピアの<ruby><rbc><rb>演</rb><rb>劇</rb></rbc>
          <rtc><rt>えん</rt><rt>げき</rt></rtc></ruby></span>"""^^rdf:XMLLiteral  .
first:ShakespearePlay rdfs:comment """<span xmlns="http://www.w3.org/1999/xhtml" xml:lang="ja">シェイクスピアの<ruby><rbc><rb>演</rb><rb>劇</rb></rbc>
          <rtc><rt>えん</rt><rt>げき</rt></rtc></ruby>のクラス。</span>"""^^rdf:XMLLiteral  .
first:Romeo-and-Juliet rdf:type first:ShakespearePlay .
first:Romeo-and-Juliet rdfs:label "Romeo and Juliet"@en .
first:Romeo-and-Juliet rdfs:comment """The Most Excellent and Lamentable Tragedy 
          of Romeo and Juliet."""@en .
first:Romeo-and-Juliet rdfs:label "Romeo e Giulietta"@it .
first:Romeo-and-Juliet rdfs:comment "La tragedia di Romeo e Giulietta"@it .
first:Romeo-and-Juliet rdfs:label """<span xmlns="http://www.w3.org/1999/xhtml" xml:lang="ja">ロミオとジュリエット</span>"""^^rdf:XMLLiteral  .
first:Romeo-and-Juliet rdfs:comment """<span xmlns="http://www.w3.org/1999/xhtml" xml:lang="ja">ロミオとジュリエットの<ruby><rbc><rb>悲</rb><rb>劇</rb></rbc>
          <rtc><rt>ひ</rt><rt>げき</rt></rtc></ruby></span>"""^^rdf:XMLLiteral  .

Lite Full Consistent document.202
Description: (informative) <miscellaneous/Manifest202#test>
This shows that insignificant whitespace in an rdf:XMLLiteral is not significant within OWL.
Datatypes that may or may not be supported: rdf:XMLLiteral,
N3 format is informative.
Namespaces:
@prefix : <http://www.w3.org/1999/xhtml> .
LiteConsistent: <miscellaneous/consistent202>
<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="http://www.w3.org/1999/xhtml"
    xmlns:first="http://www.w3.org/2002/03owlt/miscellaneous/consistent202#"
    xml:base="http://www.w3.org/2002/03owlt/miscellaneous/consistent202" >

  <owl:DatatypeProperty rdf:ID="fp" />
  <owl:FunctionalProperty
           rdf:about="#fp" />
  <owl:Thing>
     <first:fp rdf:parseType="Literal"><br />
<img src="vn.png" alt="Venn diagram" longdesc="vn.html" title="Venn"></img></first:fp>
     <first:fp rdf:parseType="Literal"><br 
></br>
<img 
src="vn.png" title=
"Venn" alt
="Venn diagram" longdesc=
"vn.html" /></first:fp>
   </owl:Thing>
</rdf:RDF>
first:fp rdf:type owl:DatatypeProperty .
first:fp rdf:type owl:FunctionalProperty .
_:a rdf:type owl:Thing .
_:a first:fp """<br xmlns="http://www.w3.org/1999/xhtml"></br>
<img xmlns="http://www.w3.org/1999/xhtml" alt="Venn diagram" longdesc="vn.html" src="vn.png" title="Venn"></img>"""^^rdf:XMLLiteral  .
_:a first:fp """<br xmlns="http://www.w3.org/1999/xhtml"></br>
<img xmlns="http://www.w3.org/1999/xhtml" alt="Venn diagram" longdesc="vn.html" src="vn.png" title="Venn"></img>"""^^rdf:XMLLiteral  .

Lite Full (EC) Inconsistent document.203
Description: (informative) <miscellaneous/Manifest203#test>
This shows that initial whitespace in an rdf:XMLLiteral is significant within OWL.
Required datatype support: rdf:XMLLiteral,
N3 format is informative.
Namespaces:
@prefix : <http://www.w3.org/1999/xhtml> .
LiteInconsistent: <miscellaneous/inconsistent203>
<rdf:RDF
    xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
    xmlns:owl="http://www.w3.org/2002/07/owl#"
    xmlns="http://www.w3.org/1999/xhtml"
    xmlns:first="http://www.w3.org/2002/03owlt/miscellaneous/inconsistent203#"
    xml:base="http://www.w3.org/2002/03owlt/miscellaneous/inconsistent203" >

  
  <owl:DatatypeProperty
           rdf:ID="fp" />
  <owl:FunctionalProperty
           rdf:about="#fp" />
  <owl:Thing>
     <first:fp rdf:parseType="Literal">
<br />
<img src="vn.png" alt="Venn diagram" longdesc="vn.html" title="Venn"></img>
</first:fp>
     <first:fp rdf:parseType="Literal"><br 
></br>
<img 
src="vn.png" title=
"Venn" alt
="Venn diagram" longdesc=
"vn.html" />
</first:fp>
   </owl:Thing>
</rdf:RDF>
first:fp rdf:type owl:DatatypeProperty .
first:fp rdf:type owl:FunctionalProperty .
_:a rdf:type owl:Thing .
_:a first:fp """
<br xmlns="http://www.w3.org/1999/xhtml"></br>
<img xmlns="http://www.w3.org/1999/xhtml" alt="Venn diagram" longdesc="vn.html" src="vn.png" title="Venn"></img>
"""^^rdf:XMLLiteral  .
_:a first:fp """<br xmlns="http://www.w3.org/1999/xhtml"></br>
<img xmlns="http://www.w3.org/1999/xhtml" alt="Venn diagram" longdesc="vn.html" src="vn.png" title="Venn"></img>
"""^^rdf:XMLLiteral  .

Lite Full Inconsistent document.204
Description: (informative) <miscellaneous/Manifest204#test>
This shows a simple inconsistency depending on the datatype rdf:XMLLiteral. This file is inconsistent with a datatype map which supports rdf:XMLLiteral, and consistent otherwise.
Required datatype support: rdf:XMLLiteral,
N3 format is informative.
Namespaces:
@prefix : <http://www.w3.org/1999/xhtml> .
LiteInconsistent: <miscellaneous/inconsistent204>
<rdf:RDF
    xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
    xmlns:owl="http://www.w3.org/2002/07/owl#"
    xmlns="http://www.w3.org/1999/xhtml"
    xmlns:first="http://www.w3.org/2002/03owlt/miscellaneous/inconsistent204#"
    xml:base="http://www.w3.org/2002/03owlt/miscellaneous/inconsistent204" >
   <owl:FunctionalProperty rdf:ID="fp"/>
   <owl:DatatypeProperty rdf:about="#fp"/>
   <owl:Thing>
     <first:fp rdf:parseType="Literal"
     ><span xml:lang='en'>
        <b>Good!</b></span
     ></first:fp>
     <first:fp rdf:parseType="Literal"
     ><span xml:lang='en'>
        <b>Bad!</b></span
     ></first:fp>
   </owl:Thing>
</rdf:RDF>
first:fp rdf:type owl:FunctionalProperty .
first:fp rdf:type owl:DatatypeProperty .
_:a rdf:type owl:Thing .
_:a first:fp """<span xmlns="http://www.w3.org/1999/xhtml" xml:lang="en">
        <b>Good!</b></span>"""^^rdf:XMLLiteral  .
_:a first:fp """<span xmlns="http://www.w3.org/1999/xhtml" xml:lang="en">
        <b>Bad!</b></span>"""^^rdf:XMLLiteral  .

Lite Consistent document.205
Description: (informative) <miscellaneous/Manifest205#test>
This shows that an OWL consistency checker which does not support the datatype rdf:XMLLiteral should not detect inconsistencies depending on it. This file is inconsistent with a datatype map which supports rdf:XMLLiteral, but consistent in this test, which excludes such support.
Datatypes that must not be supported: rdf:XMLLiteral,
N3 format is informative.
Namespaces:
@prefix : <http://www.w3.org/1999/xhtml> .
LiteConsistent: <miscellaneous/consistent205>
<rdf:RDF
    xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
    xmlns:owl="http://www.w3.org/2002/07/owl#"
    xmlns="http://www.w3.org/1999/xhtml"
    xmlns:first="http://www.w3.org/2002/03owlt/miscellaneous/consistent205#"
    xml:base="http://www.w3.org/2002/03owlt/miscellaneous/consistent205" >

   <owl:FunctionalProperty rdf:ID="fp"/>
   <owl:DatatypeProperty rdf:about="#fp"/>
   <owl:Thing>
     <first:fp rdf:parseType="Literal"
     ><span xml:lang='en'>
        <b>Good!</b></span
     ></first:fp>
     <first:fp rdf:parseType="Literal"
     ><span xml:lang='en'>
        <b>Bad!</b></span
     ></first:fp>
   </owl:Thing>


</rdf:RDF>
first:fp rdf:type owl:FunctionalProperty .
first:fp rdf:type owl:DatatypeProperty .
_:a rdf:type owl:Thing .
_:a first:fp """<span xmlns="http://www.w3.org/1999/xhtml" xml:lang="en">
        <b>Good!</b></span>"""^^rdf:XMLLiteral  .
_:a first:fp """<span xmlns="http://www.w3.org/1999/xhtml" xml:lang="en">
        <b>Bad!</b></span>"""^^rdf:XMLLiteral  .

7.4.4. Annotations

These tests concern the semantics of annotations.

Full (EC) Negative Entailment Test:301
Description: (informative) <miscellaneous/Manifest301#test>
Annotations participate a little in the semantics.
N3 format is informative.
FullPremises: <miscellaneous/premises301>
<rdf:RDF
    xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
    xmlns:owl="http://www.w3.org/2002/07/owl#"
    xmlns:first="http://www.w3.org/2002/03owlt/miscellaneous/premises301#"
    xml:base="http://www.w3.org/2002/03owlt/miscellaneous/premises301" >

<owl:Thing rdf:about="#a">
   <first:prop>foo</first:prop>
</owl:Thing>

</rdf:RDF>
first:a rdf:type owl:Thing .
first:a first:prop "foo" .
FullConclusions: <miscellaneous/nonconclusions301>
<rdf:RDF
    xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
    xmlns:owl="http://www.w3.org/2002/07/owl#"
    xmlns:first="http://www.w3.org/2002/03owlt/miscellaneous/premises301#"
    xml:base="http://www.w3.org/2002/03owlt/miscellaneous/nonconclusions301" >

<owl:Thing rdf:about="premises301#a">
   <first:prop>bar</first:prop>
</owl:Thing>

</rdf:RDF>
first:a rdf:type owl:Thing .
first:a first:prop "bar" .

Lite Full Negative Entailment Test:302
Description: (informative) <miscellaneous/Manifest302#test>
Annotations participate a little in the semantics.
N3 format is informative.
LitePremises: <miscellaneous/premises302>
<rdf:RDF
    xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
    xmlns:owl="http://www.w3.org/2002/07/owl#"
    xmlns:first="http://www.w3.org/2002/03owlt/miscellaneous/premises302#"
    xml:base="http://www.w3.org/2002/03owlt/miscellaneous/premises302" >

<owl:AnnotationProperty rdf:ID="prop" />
<owl:Thing rdf:about="#a">
   <first:prop>foo</first:prop>
</owl:Thing>

</rdf:RDF>
first:prop rdf:type owl:AnnotationProperty .
first:a rdf:type owl:Thing .
first:a first:prop "foo" .
LiteConclusions: <miscellaneous/nonconclusions302>
<rdf:RDF
    xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
    xmlns:owl="http://www.w3.org/2002/07/owl#"
    xmlns:first="http://www.w3.org/2002/03owlt/miscellaneous/premises302#"
    xml:base="http://www.w3.org/2002/03owlt/miscellaneous/nonconclusions302" >

<owl:AnnotationProperty rdf:about="premises302#prop" />

<owl:Thing rdf:about="premises302#a">
   <first:prop>bar</first:prop>
</owl:Thing>

</rdf:RDF>
first:prop rdf:type owl:AnnotationProperty .
first:a rdf:type owl:Thing .
first:a first:prop "bar" .

Lite Full Consistent document.303
Description: (informative) <miscellaneous/Manifest303#test>
dc:creator may be declared as an annotation property.
N3 format is informative.
LiteConsistent: <miscellaneous/consistent303>
<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/miscellaneous/consistent303" >

  <owl:AnnotationProperty rdf:about='http://purl.org/dc/elements/1.0/creator'/>

</rdf:RDF>
<http://purl.org/dc/elements/1.0/creator> rdf:type owl:AnnotationProperty .

7.5. Extra Credit

There is no expectation that any implementation will successfully run the tests in this section; any that do gain extra credit.

The intent is to illustrate the semantics of OWL, particularly OWL Full, as specified by [OWL Semantics and Abstract Syntax], with the specific goal of showing that it is possible to say things that it is not reasonable to expect an implementation to completely understand.

7.5.1. Arithmetic in OWL

Tests that show the relationship between OWL and simple arithmetic.

Full (EC) Positive Entailment Test:002
Description: (informative) <extra-credit/Manifest002#test>
This test shows a relationship between integer multiplication and OWL Full.
Required datatype support: xsd:int,
N3 format is informative.
FullPremises: <extra-credit/premises002>
<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/extra-credit/premises002" >

   <owl:FunctionalProperty rdf:ID="p-N-to-1" >
     <owl:inverseOf>
       <owl:ObjectProperty rdf:ID="invP-1-to-N" />
     </owl:inverseOf>
     <rdfs:domain rdf:resource="#cardinality-N" />
     <rdfs:range rdf:resource="#only-d" />
   </owl:FunctionalProperty>
   <owl:FunctionalProperty rdf:ID="q-M-to-1" >
     <owl:inverseOf>
        <owl:ObjectProperty rdf:ID="invQ-1-to-M" />
     </owl:inverseOf>
     <rdfs:domain rdf:resource="#cardinality-N-times-M" />
     <rdfs:range rdf:resource="#cardinality-N" />
   </owl:FunctionalProperty>
   <owl:FunctionalProperty rdf:ID="r-N-times-M-to-1">
     <owl:inverseOf>
        <owl:ObjectProperty  rdf:ID="invR-1-to-N-times-M" />
     </owl:inverseOf>
     <rdfs:domain rdf:resource="#cardinality-N-times-M" />
     <rdfs:range rdf:resource="#only-d" />
   </owl:FunctionalProperty>
   
    <owl:Class rdf:ID="only-d">
      <owl:oneOf rdf:parseType="Collection">
         <rdf:Description rdf:ID="d"/>
      </owl:oneOf>
      <owl:equivalentClass>
        <owl:Restriction>
          <owl:onProperty rdf:resource="#invP-1-to-N"/>
          <owl:cardinality rdf:resource="#N"/>
        </owl:Restriction>
      </owl:equivalentClass>
      <owl:equivalentClass>
         <owl:Restriction>
           <owl:onProperty rdf:resource="#invR-1-to-N-times-M"/>
           <owl:cardinality rdf:resource="#N-times-M"/>
         </owl:Restriction>
      </owl:equivalentClass>
    </owl:Class>
    <owl:Class rdf:ID="cardinality-N">
       <owl:equivalentClass>
           <owl:Restriction>
             <owl:onProperty rdf:resource="#p-N-to-1"/>
             <owl:someValuesFrom rdf:resource="#only-d"/>
           </owl:Restriction>
       </owl:equivalentClass>
       <owl:equivalentClass>
           <owl:Restriction>
              <owl:onProperty rdf:resource="#invQ-1-to-M"/>
              <owl:cardinality rdf:resource="#M"/>
           </owl:Restriction>
       </owl:equivalentClass>
    </owl:Class>
    <owl:Class rdf:ID="cardinality-N-times-M">
       <owl:equivalentClass>
           <owl:Restriction>
             <owl:onProperty rdf:resource="#q-M-to-1"/>
             <owl:someValuesFrom rdf:resource="#cardinality-N"/>
           </owl:Restriction>
       </owl:equivalentClass>
       <owl:equivalentClass>
           <owl:Restriction>
             <owl:onProperty rdf:resource="#r-N-times-M-to-1"/>
             <owl:someValuesFrom rdf:resource="#only-d"/>
           </owl:Restriction>
       </owl:equivalentClass>
    </owl:Class>

    <rdf:Description rdf:about="#N">
      <owl:sameAs 
          rdf:datatype=
"http://www.w3.org/2001/XMLSchema#int">15</owl:sameAs>
     </rdf:Description>
    <rdf:Description rdf:about="#M">
      <owl:sameAs 
          rdf:datatype=
"http://www.w3.org/2001/XMLSchema#int">23</owl:sameAs>
     </rdf:Description>

</rdf:RDF>
first:p-N-to-1 rdf:type owl:FunctionalProperty .
first:invP-1-to-N rdf:type owl:ObjectProperty .
first:p-N-to-1 owl:inverseOf first:invP-1-to-N .
first:p-N-to-1 rdfs:domain first:cardinality-N .
first:p-N-to-1 rdfs:range first:only-d .
first:q-M-to-1 rdf:type owl:FunctionalProperty .
first:invQ-1-to-M rdf:type owl:ObjectProperty .
first:q-M-to-1 owl:inverseOf first:invQ-1-to-M .
first:q-M-to-1 rdfs:domain first:cardinality-N-times-M .
first:q-M-to-1 rdfs:range first:cardinality-N .
first:r-N-times-M-to-1 rdf:type owl:FunctionalProperty .
first:invR-1-to-N-times-M rdf:type owl:ObjectProperty .
first:r-N-times-M-to-1 owl:inverseOf first:invR-1-to-N-times-M .
first:r-N-times-M-to-1 rdfs:domain first:cardinality-N-times-M .
first:r-N-times-M-to-1 rdfs:range first:only-d .
first:only-d rdf:type owl:Class .
_:a rdf:first first:d .
_:a rdf:rest rdf:nil .
first:only-d owl:oneOf _:a .
_:c rdf:type owl:Restriction .
_:c owl:onProperty first:invP-1-to-N .
_:c owl:cardinality first:N .
first:only-d owl:equivalentClass _:c .
_:e rdf:type owl:Restriction .
_:e owl:onProperty first:invR-1-to-N-times-M .
_:e owl:cardinality first:N-times-M .
first:only-d owl:equivalentClass _:e .
first:cardinality-N rdf:type owl:Class .
_:g rdf:type owl:Restriction .
_:g owl:onProperty first:p-N-to-1 .
_:g owl:someValuesFrom first:only-d .
first:cardinality-N owl:equivalentClass _:g .
_:i rdf:type owl:Restriction .
_:i owl:onProperty first:invQ-1-to-M .
_:i owl:cardinality first:M .
first:cardinality-N owl:equivalentClass _:i .
first:cardinality-N-times-M rdf:type owl:Class .
_:k rdf:type owl:Restriction .
_:k owl:onProperty first:q-M-to-1 .
_:k owl:someValuesFrom first:cardinality-N .
first:cardinality-N-times-M owl:equivalentClass _:k .
_:m rdf:type owl:Restriction .
_:m owl:onProperty first:r-N-times-M-to-1 .
_:m owl:someValuesFrom first:only-d .
first:cardinality-N-times-M owl:equivalentClass _:m .
first:N owl:sameAs "15"^^xsd:int  .
first:M owl:sameAs "23"^^xsd:int  .
FullConclusions: <extra-credit/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/extra-credit/conclusions002" >

    <rdf:Description rdf:about="premises002#N-times-M">
      <owl:sameAs 
          rdf:datatype=
"http://www.w3.org/2001/XMLSchema#int">345</owl:sameAs>
     </rdf:Description>

</rdf:RDF>
first:N-times-M owl:sameAs "345"^^xsd:int  .

Full (EC) Positive Entailment Test:003
Description: (informative) <extra-credit/Manifest003#test>
Prime factorization can be expressed in OWL Full.
Required datatype support: xsd:int,
N3 format is informative.
FullPremises: <extra-credit/premises003>
<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/extra-credit/premises003" >

   <owl:FunctionalProperty rdf:ID="p-N-to-1" >
     <owl:inverseOf>
       <owl:ObjectProperty rdf:ID="invP-1-to-N" />
     </owl:inverseOf>
     <rdfs:domain rdf:resource="#cardinality-N" />
     <rdfs:range rdf:resource="#only-d" />
   </owl:FunctionalProperty>
   <owl:FunctionalProperty rdf:ID="q-M-to-1" >
     <owl:inverseOf>
        <owl:ObjectProperty rdf:ID="invQ-1-to-M" />
     </owl:inverseOf>
     <rdfs:domain rdf:resource="#cardinality-N-times-M" />
     <rdfs:range rdf:resource="#cardinality-N" />
   </owl:FunctionalProperty>
   <owl:FunctionalProperty rdf:ID="r-N-times-M-to-1">
     <owl:inverseOf>
        <owl:ObjectProperty  rdf:ID="invR-1-to-N-times-M" />
     </owl:inverseOf>
     <rdfs:domain rdf:resource="#cardinality-N-times-M" />
     <rdfs:range rdf:resource="#only-d" />
   </owl:FunctionalProperty>
   
    <owl:Class rdf:ID="only-d">
      <owl:oneOf rdf:parseType="Collection">
         <rdf:Description rdf:ID="d"/>
      </owl:oneOf>
      <owl:equivalentClass>
        <owl:Restriction>
          <owl:onProperty rdf:resource="#invP-1-to-N"/>
          <owl:cardinality rdf:resource="#N"/>
        </owl:Restriction>
      </owl:equivalentClass>
      <owl:equivalentClass>
         <owl:Restriction>
           <owl:onProperty rdf:resource="#invR-1-to-N-times-M"/>
           <owl:cardinality rdf:resource="#N-times-M"/>
         </owl:Restriction>
      </owl:equivalentClass>
    </owl:Class>
    <owl:Class rdf:ID="cardinality-N">
       <owl:equivalentClass>
           <owl:Restriction>
             <owl:onProperty rdf:resource="#p-N-to-1"/>
             <owl:someValuesFrom rdf:resource="#only-d"/>
           </owl:Restriction>
       </owl:equivalentClass>
       <owl:equivalentClass>
           <owl:Restriction>
              <owl:onProperty rdf:resource="#invQ-1-to-M"/>
              <owl:cardinality rdf:resource="#M"/>
           </owl:Restriction>
       </owl:equivalentClass>
    </owl:Class>
    <owl:Class rdf:ID="cardinality-N-times-M">
       <owl:equivalentClass>
           <owl:Restriction>
             <owl:onProperty rdf:resource="#q-M-to-1"/>
             <owl:someValuesFrom rdf:resource="#cardinality-N"/>
           </owl:Restriction>
       </owl:equivalentClass>
       <owl:equivalentClass>
           <owl:Restriction>
             <owl:onProperty rdf:resource="#r-N-times-M-to-1"/>
             <owl:someValuesFrom rdf:resource="#only-d"/>
           </owl:Restriction>
       </owl:equivalentClass>
    </owl:Class>

    <rdf:Description rdf:about="#N-times-M">
      <owl:sameAs 
          rdf:datatype=
"http://www.w3.org/2001/XMLSchema#int">77</owl:sameAs>
     </rdf:Description>

</rdf:RDF>
first:p-N-to-1 rdf:type owl:FunctionalProperty .
first:invP-1-to-N rdf:type owl:ObjectProperty .
first:p-N-to-1 owl:inverseOf first:invP-1-to-N .
first:p-N-to-1 rdfs:domain first:cardinality-N .
first:p-N-to-1 rdfs:range first:only-d .
first:q-M-to-1 rdf:type owl:FunctionalProperty .
first:invQ-1-to-M rdf:type owl:ObjectProperty .
first:q-M-to-1 owl:inverseOf first:invQ-1-to-M .
first:q-M-to-1 rdfs:domain first:cardinality-N-times-M .
first:q-M-to-1 rdfs:range first:cardinality-N .
first:r-N-times-M-to-1 rdf:type owl:FunctionalProperty .
first:invR-1-to-N-times-M rdf:type owl:ObjectProperty .
first:r-N-times-M-to-1 owl:inverseOf first:invR-1-to-N-times-M .
first:r-N-times-M-to-1 rdfs:domain first:cardinality-N-times-M .
first:r-N-times-M-to-1 rdfs:range first:only-d .
first:only-d rdf:type owl:Class .
_:a rdf:first first:d .
_:a rdf:rest rdf:nil .
first:only-d owl:oneOf _:a .
_:c rdf:type owl:Restriction .
_:c owl:onProperty first:invP-1-to-N .
_:c owl:cardinality first:N .
first:only-d owl:equivalentClass _:c .
_:e rdf:type owl:Restriction .
_:e owl:onProperty first:invR-1-to-N-times-M .
_:e owl:cardinality first:N-times-M .
first:only-d owl:equivalentClass _:e .
first:cardinality-N rdf:type owl:Class .
_:g rdf:type owl:Restriction .
_:g owl:onProperty first:p-N-to-1 .
_:g owl:someValuesFrom first:only-d .
first:cardinality-N owl:equivalentClass _:g .
_:i rdf:type owl:Restriction .
_:i owl:onProperty first:invQ-1-to-M .
_:i owl:cardinality first:M .
first:cardinality-N owl:equivalentClass _:i .
first:cardinality-N-times-M rdf:type owl:Class .
_:k rdf:type owl:Restriction .
_:k owl:onProperty first:q-M-to-1 .
_:k owl:someValuesFrom first:cardinality-N .
first:cardinality-N-times-M owl:equivalentClass _:k .
_:m rdf:type owl:Restriction .
_:m owl:onProperty first:r-N-times-M-to-1 .
_:m owl:someValuesFrom first:only-d .
first:cardinality-N-times-M owl:equivalentClass _:m .
first:N-times-M owl:sameAs "77"^^xsd:int  .
FullConclusions: <extra-credit/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/extra-credit/conclusions003" >
    
    <owl:Class>
         <owl:oneOf rdf:parseType="Collection">
            <rdf:Description rdf:about="premises003#N"/>
            <rdf:Description rdf:about="premises003#M"/>
         </owl:oneOf>
         <owl:oneOf rdf:parseType="Collection">
            <rdf:Description>
              <owl:sameAs rdf:datatype=
"http://www.w3.org/2001/XMLSchema#int">7</owl:sameAs>
            </rdf:Description>
            <rdf:Description>
              <owl:sameAs rdf:datatype=
"http://www.w3.org/2001/XMLSchema#int">11</owl:sameAs>
            </rdf:Description>
         </owl:oneOf>
    </owl:Class>
</rdf:RDF>
_:a rdf:type owl:Class .
_:c rdf:first first:M .
_:c rdf:rest rdf:nil .
_:e rdf:first first:N .
_:e rdf:rest _:c .
_:a owl:oneOf _:e .
_:g owl:sameAs "7"^^xsd:int  .
_:i owl:sameAs "11"^^xsd:int  .
_:k rdf:first _:i .
_:k rdf:rest rdf:nil .
_:m rdf:first _:g .
_:m rdf:rest _:k .
_:a owl:oneOf _:m .

Full (EC) Positive Entailment Test:004
Description: (informative) <extra-credit/Manifest004#test>
A more difficult prime factorization example.
Required datatype support: xsd:int,
N3 format is informative.
FullPremises: <extra-credit/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/extra-credit/premises004" 
    xmlns:rdfs= "http://www.w3.org/2000/01/rdf-schema#">

   <owl:FunctionalProperty rdf:ID="p-N-to-1" >
     <owl:inverseOf>
       <owl:ObjectProperty rdf:ID="invP-1-to-N" />
     </owl:inverseOf>
     <rdfs:domain rdf:resource="#cardinality-N" />
     <rdfs:range rdf:resource="#only-d" />
   </owl:FunctionalProperty>
   <owl:FunctionalProperty rdf:ID="q-M-to-1" >
     <owl:inverseOf>
        <owl:ObjectProperty rdf:ID="invQ-1-to-M" />
     </owl:inverseOf>
     <rdfs:domain rdf:resource="#cardinality-N-times-M" />
     <rdfs:range rdf:resource="#cardinality-N" />
   </owl:FunctionalProperty>
   <owl:FunctionalProperty rdf:ID="r-N-times-M-to-1">
     <owl:inverseOf>
        <owl:ObjectProperty  rdf:ID="invR-1-to-N-times-M" />
     </owl:inverseOf>
     <rdfs:domain rdf:resource="#cardinality-N-times-M" />
     <rdfs:range rdf:resource="#only-d" />
   </owl:FunctionalProperty>
   
    <owl:Class rdf:ID="only-d">
      <owl:oneOf rdf:parseType="Collection">
         <rdf:Description rdf:ID="d"/>
      </owl:oneOf>
      <owl:equivalentClass>
        <owl:Restriction>
          <owl:onProperty rdf:resource="#invP-1-to-N"/>
          <owl:cardinality rdf:resource="#N"/>
        </owl:Restriction>
      </owl:equivalentClass>
      <owl:equivalentClass>
         <owl:Restriction>
           <owl:onProperty rdf:resource="#invR-1-to-N-times-M"/>
           <owl:cardinality rdf:resource="#N-times-M"/>
         </owl:Restriction>
      </owl:equivalentClass>
    </owl:Class>
    <owl:Class rdf:ID="cardinality-N">
       <owl:equivalentClass>
           <owl:Restriction>
             <owl:onProperty rdf:resource="#p-N-to-1"/>
             <owl:someValuesFrom rdf:resource="#only-d"/>
           </owl:Restriction>
       </owl:equivalentClass>
       <owl:equivalentClass>
           <owl:Restriction>
              <owl:onProperty rdf:resource="#invQ-1-to-M"/>
              <owl:cardinality rdf:resource="#M"/>
           </owl:Restriction>
       </owl:equivalentClass>
    </owl:Class>
    <owl:Class rdf:ID="cardinality-N-times-M">
       <owl:equivalentClass>
           <owl:Restriction>
             <owl:onProperty rdf:resource="#q-M-to-1"/>
             <owl:someValuesFrom rdf:resource="#cardinality-N"/>
           </owl:Restriction>
       </owl:equivalentClass>
       <owl:equivalentClass>
           <owl:Restriction>
             <owl:onProperty rdf:resource="#r-N-times-M-to-1"/>
             <owl:someValuesFrom rdf:resource="#only-d"/>
           </owl:Restriction>
       </owl:equivalentClass>
    </owl:Class>
   
    <rdf:Description rdf:about="#N-times-M">
      <owl:sameAs 
          rdf:datatype=
"http://www.w3.org/2001/XMLSchema#int">929136997</owl:sameAs>
     </rdf:Description>

</rdf:RDF>
first:p-N-to-1 rdf:type owl:FunctionalProperty .
first:invP-1-to-N rdf:type owl:ObjectProperty .
first:p-N-to-1 owl:inverseOf first:invP-1-to-N .
first:p-N-to-1 rdfs:domain first:cardinality-N .
first:p-N-to-1 rdfs:range first:only-d .
first:q-M-to-1 rdf:type owl:FunctionalProperty .
first:invQ-1-to-M rdf:type owl:ObjectProperty .
first:q-M-to-1 owl:inverseOf first:invQ-1-to-M .
first:q-M-to-1 rdfs:domain first:cardinality-N-times-M .
first:q-M-to-1 rdfs:range first:cardinality-N .
first:r-N-times-M-to-1 rdf:type owl:FunctionalProperty .
first:invR-1-to-N-times-M rdf:type owl:ObjectProperty .
first:r-N-times-M-to-1 owl:inverseOf first:invR-1-to-N-times-M .
first:r-N-times-M-to-1 rdfs:domain first:cardinality-N-times-M .
first:r-N-times-M-to-1 rdfs:range first:only-d .
first:only-d rdf:type owl:Class .
_:a rdf:first first:d .
_:a rdf:rest rdf:nil .
first:only-d owl:oneOf _:a .
_:c rdf:type owl:Restriction .
_:c owl:onProperty first:invP-1-to-N .
_:c owl:cardinality first:N .
first:only-d owl:equivalentClass _:c .
_:e rdf:type owl:Restriction .
_:e owl:onProperty first:invR-1-to-N-times-M .
_:e owl:cardinality first:N-times-M .
first:only-d owl:equivalentClass _:e .
first:cardinality-N rdf:type owl:Class .
_:g rdf:type owl:Restriction .
_:g owl:onProperty first:p-N-to-1 .
_:g owl:someValuesFrom first:only-d .
first:cardinality-N owl:equivalentClass _:g .
_:i rdf:type owl:Restriction .
_:i owl:onProperty first:invQ-1-to-M .
_:i owl:cardinality first:M .
first:cardinality-N owl:equivalentClass _:i .
first:cardinality-N-times-M rdf:type owl:Class .
_:k rdf:type owl:Restriction .
_:k owl:onProperty first:q-M-to-1 .
_:k owl:someValuesFrom first:cardinality-N .
first:cardinality-N-times-M owl:equivalentClass _:k .
_:m rdf:type owl:Restriction .
_:m owl:onProperty first:r-N-times-M-to-1 .
_:m owl:someValuesFrom first:only-d .
first:cardinality-N-times-M owl:equivalentClass _:m .
first:N-times-M owl:sameAs "929136997"^^xsd:int  .
FullConclusions: <extra-credit/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/extra-credit/conclusions004" >
    
    <owl:Class>
         <owl:oneOf rdf:parseType="Collection">
            <rdf:Description rdf:about="premises004#N"/>
            <rdf:Description rdf:about="premises004#M"/>
         </owl:oneOf>
         <owl:oneOf rdf:parseType="Collection">
            <rdf:Description>
              <owl:sameAs rdf:datatype=
"http://www.w3.org/2001/XMLSchema#int">83563</owl:sameAs>
            </rdf:Description>
            <rdf:Description>
              <owl:sameAs rdf:datatype=
"http://www.w3.org/2001/XMLSchema#int">11119</owl:sameAs>
            </rdf:Description>
         </owl:oneOf>
    </owl:Class>
</rdf:RDF>
_:a rdf:type owl:Class .
_:c rdf:first first:M .
_:c rdf:rest rdf:nil .
_:e rdf:first first:N .
_:e rdf:rest _:c .
_:a owl:oneOf _:e .
_:g owl:sameAs "83563"^^xsd:int  .
_:i owl:sameAs "11119"^^xsd:int  .
_:k rdf:first _:i .
_:k rdf:rest rdf:nil .
_:m rdf:first _:g .
_:m rdf:rest _:k .
_:a owl:oneOf _:m .

A. Test Creation, Approval and Modification (Historical, Informative)

This appendix describes the process that was used during the development of this test suite.

A.1. Creation

Tests are created by members of the Working Group. An (optional) test editor is provided to facilitate this. Tests are then placed in the appropriate directory in the test Web site. This is done using CVS access to the W3C CVS server [W3C CVS].

When created, tests are given a status of "PROPOSED". The author of the test creates a Manifest file in the directory of the new test, identifying:

A.2. Approval

At the chair's discretion, individual tests or groups of tests are put to the Working Group in the weekly telecon or at a face-to-face meeting.

Tests are approved by Working Group decision, with status 'APPROVED' or 'EXTRACREDIT'.

The Working Group may take account of favorable review of the tests and/or implementation reports, as well as other factors.

If the Working Group approves a test, then it is included in the test case document.

The Working Group may reject a test, in which case its status is changed to "REJECTED". This does not indicate that the converse of the test has been accepted. There may be stylistic or other grounds for rejecting technically correct tests.

The Working Group has complete discretion to approve or reject tests independent of their conformance with this process or their conformance with the OWL Working Drafts.

In the light of new information, and at the chairs' discretion, the Working Group may review any previous decision regarding any test cases. The status of "OBSOLETED" may be used where a test has ceased to be appropriate.

A.3. Modification

The editors may make editorial changes to approved and proposed tests. This includes:

B. Stylistic Preferences (Informative)

There is a preference for the following stylistic rules. None of these rules is obligatory, but test authors should be minded that it will be easier to gain Working Group consensus if they follow these rules.

B.1. Use of RDF/XML

Tests should normally be expressed in RDF/XML.

The following RDF/XML grammar rules [RDF Syntax] are not used:

  1. Property attributes.
  2. rdf:parseType="Resource".

B.2. Use of xml:base

Test and manifest files should have an xml:base attribute [XMLBASE] on the document element. This should show the preferred URL of the document, from which it is actually retrievable.

Files that contain no relative URIs may omit the xml:base attribute.

B.3. Use of .rdf Suffix

Test and manifest files should use the ".rdf" suffix. URIs should not. The URL used for xml:base declarations does not have a suffix.

B.4. Use of example Domains

All URLs in the test and manifest files should be retrievable Web resources except for those that use domain names with "example" as the penultimate component (e.g. "http://www.example.org/ontology#prop").

B.5. Copyright

The following copyright statement should be included as an XML comment in every test file:



<!--
  Copyright World Wide Web Consortium, (Massachusetts Institute of
  Technology, European Research Consortium for Informatics and 
  Mathematics, Keio University).
 
  All Rights Reserved.
 
  Please see the full Copyright clause at
  <http://www.w3.org/Consortium/Legal/copyright-software.html>

  $Id: This string is updated by cvs. $
-->

B.6. Description

The description should:

The description should be included as an XML comment in each test file, and be included as RDF content in the Manifest file.

B.7. Directory Structure

Tests that relate principally to some owl property or class, should be put in a directory named using the local name of that property of class.

Otherwise, tests that relate to an issue should be put in a directory named like I3.4 where the issue number is taken from the OWL issue list [OWL Issues].

B.8. Test Numbering

Each directory should contain tests numbered consecutively from 001.

No two tests in a single directory should have the same number.

Each file in a test should have the number of the test at the end of its name, before the suffix.

The rest of the file name should follow the conventions for the test type.

Note: the approved tests in a directory will not necessarily be contiguously numbered.

Note: this differs from the RDF Core test case numbering conventions.

B.9. Triple Format of Test Data

Both the approved and proposed tests are shown both in RDF/XML, which is their normative form, and in a triples format. This lists the triples as subject, predicate and object, similar to the N-triples format described in [RDF Tests]. The following additional conventions are used:

The following namespace prefixes are used throughout:

rdf
http://www.w3.org/1999/02/22-rdf-syntax-ns#
rdfs
http://www.w3.org/2000/01/rdf-schema#
owl
http://www.w3.org/2002/07/owl#
xsd
http://www.w3.org/2001/XMLSchema#
first
The URL of the first file concatenated with #. The first file is that named premisesNNN.rdf, badNNN.rdf, consistentNNN.rdf, inconsistentNNN.rdf or importsNNN.rdf depending on the test type. (Not used for true tests or OWL for OWL tests ).
second
The URL of the second file concatenated with #. The second file is named conclusionsNNN.rdf, nonconclusionsNNN.rdf or mainNNN.rdf depending on the test type.

In the N3 syntax [N3] used for namespace declarations, the first four appear as follows:

Namespaces:
@prefix rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#> .
@prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> .
@prefix owl: <http://www.w3.org/2002/07/owl#> .
@prefix xsd: <http://www.w3.org/2001/XMLSchema#> .

Other namespaces are explicitly listed with the test data.

C. Index

C.1. Index of OWL Feature Tests

AllDifferent
001.
AnnotationProperty
001; 002; 003; 004.
Class
001; 002; 003; 004; 005; 006.
DatatypeProperty
001.
FunctionalProperty
001; 002; 003; 004; 005.
InverseFunctionalProperty
001; 002; 003; 004.
Nothing
001; 002.
Ontology
001; 003; 004.
Restriction
001; 002; 003; 004; 005; 006.
SymmetricProperty
001; 002; 003.
Thing
003; 004; 005.
TransitiveProperty
001; 002.
allValuesFrom
001; 002.
backwardCompatibleWith
001; 002.
cardinality
001; 002; 003; 004; 006.
complementOf
001.
differentFrom
001; 002.
disjointWith
001; 002; 003; 004; 005; 006; 007; 008; 009; 010.
distinctMembers
001.
equivalentClass
001; 002; 003; 004; 005; 006; 007; 008; 009.
equivalentProperty
001; 002; 003; 004; 005; 006.
imports
001; 002; 003; 004; 005; 006; 007; 008; 010; 011; 012; 013; 014.
intersectionOf
001.
inverseOf
001.
maxCardinality
001; 002.
oneOf
001; 002; 003; 004.
sameAs
001.
someValuesFrom
001; 002; 003.
unionOf
001; 002; 003; 004.

C.2. Index of OWL Issue Tests

I3.2 Qualified Restrictions
001; 002; 003.
I3.4 UnambiguousProperty
001.
I4.1 UniqueProp BadName
001.
I4.5 InverseOf
001; 002.
I4.6 EquivalentTo
003; 004; 005; 006; 007; 008.
I5.1 Uniform treatment of literal data values
001; 010.
I5.2 Language Compliance Levels
001; 002; 003; 004; 005; 006; 010; 011.
I5.21 drop-disjointUnionOf
001; 002.
I5.24 IF-or-IFF-property-properties
001; 002; 003; 004.
I5.26 OWL DL Sytntax
001; 002; 003; 004; 005; 006; 007; 009; 010.
I5.3 Semantic-Layering
005; 006; 007; 008; 009; 010; 011; 014; 015.
I5.5 List syntax or semantics
001; 002; 003; 004; 005; 006; 007.
I5.8 Datatypes
001; 002; 003; 004; 005; 006; 007; 008; 009; 010; 011; 012; 013; 014; 015; 016; 017.
I6.1 Unnamed Individual Restrictions
001.

C.3. Index of Miscellaneous Tests

Examples from the OWL Guide
001; 002; 010; 011.
Detailed OWL Lite and OWL DL Syntax
102; 103.
Concerning rdf:XMLLiteral
201; 202; 203; 204; 205.
Annotations
301; 302; 303.

C.4. Index of Description Logic Tests

Extended Satisfiability Tests
001; 002; 003; 004; 005; 006; 007; 008; 009; 010; 011; 012; 013; 014; 015; 016; 017; 018; 019; 020; 021; 022; 023; 024; 025; 026; 027; 028; 029; 030; 031; 032; 033; 034; 035; 040.
Heinsohn's Tests
101; 102; 103; 104; 105; 106; 107; 108; 109; 110; 111.
DL 98 Instance Tests
201; 202; 203; 204; 205; 206; 207; 208; 209.
The 3 SAT Problem
501; 502; 503; 504.
Difficult OWL Lite Tests
601; 602; 603; 604; 605; 606; 608; 609; 610; 611; 612; 613; 614; 615; 616; 617; 623; 624; 625; 626; 627; 628; 629; 630; 631; 632; 633; 634; 641; 642; 643; 644; 646; 650; 661; 662; 663; 664; 665; 667.
Extended Cardinality Testing
901; 902; 903; 904; 905; 906; 907; 908; 909; 910.

C.5. Index of Extra Credit Tests

Arithmetic in OWL
002; 003; 004.

D. Acknowledgments (Informative)

Jeremy Carroll thanks Oreste Signore, his host at the W3C Office in Italy and Istituto di Scienza e Tecnologie dell'Informazione "Alessandro Faedo", part of the Consiglio Nazionale delle Ricerche, where Jeremy is a visiting researcher.

The following people have contributed tests to this document: Sean Bechhofer, Ian Horrocks, Peter F. Patel-Schneider, Jeff Heflin, Dan Connolly, the Guide editors, Jonathan Borden, Charles White, Martin Dürst, Masayasu Ishikawa, Jim Hendler, Herman ter Horst, Dave Reynolds, and the editors.

Ian Horrocks contributed to the conformance section of this document.

Sandro Hawke created the tests results page, that has been a great help during the Candidate Recommendation phase.

We thank those who gave test reports and other feedback during the Candidate Recommendation: Ken Baclawski, Sean Bechhofer, Ian Dickinson, Michael Grove, Sandro Hawke, Ian Horrocks, Minsu Jang, Gary Ng, Mehrdad Omidvari, Bijan Parsia, Peter F. Patel-Schneider, Dave Reynolds, Rob Shearer, Evren Sirin, Charles White and Youyong Zou. We also thank the many others who helped develop the systems which produced these reports.

This document is the result of extensive discussions within the Web Ontology Working Group as a whole. The partipants in this Working Group included: Yasser alSafadi, Jean-François Baget, James Barnette, Sean Bechhofer, Jonathan Borden, Stephen Buswell, Jeremy Carroll, Dan Connolly, Peter Crowther, Jonathan Dale, Jos De Roo, David De Roure, Mike Dean, Larry Eshelman, Jérôme Euzenat, Tim Finin, Nicholas Gibbins, Sandro Hawke, Patrick Hayes, Jeff Heflin, Ziv Hellman, James Hendler, Bernard Horan, Masahiro Hori, Ian Horrocks, Jane Hunter, Rüdiger Klein, Natasha Kravtsova, Ora Lassila, Deborah McGuinness, Enrico Motta, Leo Obrst, Mehrdad Omidvari, Martin Pike, Marwan Sabbouh, Guus Schreiber, Noboru Shimizu, Michael K. Smith, John Stanton, Lynn Andrea Stein, Herman ter Horst, David Trastour, Frank van Harmelen, Bernard Vatant, Raphael Volz, Evan Wallace, Christopher Welty, Charles White, Frederik Brysse, Francesco Iannuzzelli, Massimo Marchiori, Michael Sintek and John Yanosy.

E. Changes Since Proposed Recommendation

This section gives the changes between this document and the OWL Test Cases Proposed Recommendation.

The term datatype map is used instead of the term datatype theory, for consistency with the OWL and RDF Semantics. This occurred a number of times, including in the descriptions of tests miscellaneous-204, miscellaneous-205 and I5.8-012. The last of these consequentially required other minor rephrasing.

Updated references to RDF and OWL documents.

Added a paragraph near end of section 4.2.2, clarifying that a datatype map of an OWL Full consistency checker, (being a datatype map from RDF Semantics) "MUST" contain an entry for rdf:XMLLiteral. This makes explicit a requirement that was already implicit in the PR document. Also clarified that the datatype map in the definition of an OWL Full consistent document is as defined in RDF Semantics, by changing the link.

Consequentially, made explicit reference to RDF Semantics (this reference was implicit in the OWL Test Proposed Recommendation).

Corrected an error in the metadata of test miscellaneous-205 which is not applicable for OWL Full, since rdf:XMLLiteral is a required datatype for OWL Full. This change is visible as the deletion of the word "Full" from the header of the test.

This error in the OWL Test Candidate and Proposed Recommendation appears to have been relatively benign:

F. References

Normative

[OWL Semantics and Abstract Syntax]
OWL Web Ontology Language Semantics and Abstract Syntax, Peter F. Patel-Schneider, Patrick Hayes, and Ian Horrocks, Editors, W3C Recommendation 10 February 2004, http://www.w3.org/TR/2004/REC-owl-semantics-20040210/ . Latest version available at http://www.w3.org/TR/owl-semantics/ .
[RDF Concepts]
RDF Concepts and Abstract Syntax, Graham Klyne and Jeremy J. Carroll, Editors, W3C Recommendation 10 February 2004, http://www.w3.org/TR/2004/REC-rdf-concepts-20040210/ . Latest version available at http://www.w3.org/TR/rdf-concepts/ .
[RDF Syntax]
RDF/XML Syntax Specification (Revised). Dave Beckett, Editor, W3C Recommendation 10 February 2004, http://www.w3.org/TR/2004/REC-rdf-syntax-grammar-20040210/ . Latest version available at http://www.w3.org/TR/rdf-syntax-grammar/ .
[RDF Semantics]
RDF Semantics. Patrick Hayes, Editor, W3C Recommendation 10 February 2004, http://www.w3.org/TR/2004/REC-rdf-mt-20040210/ . Latest version available at http://www.w3.org/TR/rdf-mt/ .
[RFC 2119]
RFC 2119 - Key words for use in RFCs to Indicate Requirement Levels . S. Bradner, IETF. March 1997. This document is http://www.ietf.org/rfc/rfc2119.txt.
[RDF Schema for OWL]
http://www.w3.org/2002/07/owl. Mike Dean, ed. World Wide Web Consortium.
[XML Schema Datatypes]
XML Schema Part 2: Datatypes.. Paul V. Biron and Ashok Malhotra, eds. W3C Recommendation 02 May 2000. Latest version is available at http://www.w3.org/TR/xmlschema-2/.

Informative

[RDF Tests]
RDF Test Cases, Jan Grant and Dave Beckett, Editors, W3C Recommendation 10 February 2004, http://www.w3.org/TR/2004/REC-rdf-testcases-20040210/ . Latest version available at http://www.w3.org/TR/rdf-testcases/ .
[OWL Guide]
OWL Web Ontology Language Guide. Michael K. Smith, Chris Welty, Deborah L. McGuinness, Editors, W3C Recommendation 10 February 2004, http://www.w3.org/TR/2004/REC-owl-guide-20040210/ . Latest version available at http://www.w3.org/TR/owl-guide/ .
[OWL Overview]
OWL Web Ontology Language Overview . Deborah L. McGuinness and Frank van Harmelen, Editors, W3C Recommendation 10 February 2004, http://www.w3.org/TR/2004/REC-owl-features-20040210/ . Latest version available at http://www.w3.org/TR/owl-features/ .
[DAML+OIL]
DAML+OIL (March 2001) Reference Description. Dan Connolly, Frank van Harmelen, Ian Horrocks, Deborah L. McGuinness, Peter F. Patel-Schneider, and Lynn Andrea Stein. W3C Note 18 December 2001. Latest version is available at http://www.w3.org/TR/daml+oil-reference.
[Dublin Core]
http://dublincore.org/documents/
[N3]
Primer: Getting into RDF & Semantic Web using N3 Tim Berners-Lee, Dan Connolly
[OWL Issues]
Web Ontology Issue Status. Michael K. Smith, ed. 26 Feb 2003.
[W3C CVS]
Use of CVS in W3C (member-only link). Henrik Frystyk Nielsen, Gerald Oskoboiny. 2002.
[XHTML]
XHTML 1.0: The Extensible HyperText Markup Language, W3C Recommendation, S. Pemberton et al., 26 January 2000.
Available at: http://www.w3.org/TR/2000/REC-xhtml1-20000126
[XMLBASE]
XML Base, J. Marsh, Editor, W3C Recommendation. World Wide Web Consortium, 27 June 2001. This version of XML Base is http://www.w3.org/TR/2001/REC-xmlbase-20010627/. The latest version of XML Base is at http://www.w3.org/TR/xmlbase/.
[Practical Reasoning]
Practical reasoning for expressive description logics, I. Horrocks, U. Sattler, and S. Tobies, 1999, in Proc. of LPAR'99, vol. 1705 of LNAI.
[XP]
Extreme Programming Explained: Embrace Change, Kent Beck. 5 Oct 1999. Addison-Wesley. ISBN 0201616416.
[Heinsohn et al.]
AI 68 (1994) pp367-397.
[DIMACS]
Satisfiability Suggested Format challenge@dimacs.rutgers.edu Found at ftp://dimacs.rutgers.edu/pub/challenge/satisfiability/doc/satformat.tex May 8, 1993.
[DL 98 Systems Comparison]
DL Systems Comparison at 1998 International Workshop on Description Logics (DL 98). Peter F. Patel-Schneider, Ian Horrocks. June, 1998.