W3C

OWL Web Ontology Language
Test Cases

W3C Candidate Recommendation 18 August 2003 (alternative version)

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

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, and extra large (this version). The tests of this document are also available in these non-normative formats: Zip archive of approved tests, Zip archive of proposed tests, the test web site.


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.

This document describes the process for conflict resolution and errata related to these tests.

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

Further appendices show further proposed tests that are awaiting resolution by the working group.

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.

[[EDITORS' NOTE: Do we need index files for the web site that clarify which parts are part of the deliverable and which are not?]]

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/XML Syntax]), and the supporting documentation.

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 theory [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 theory . 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/XML 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 theory 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 theory 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 theory, [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 theory of the checker.

If an input document uses datatypes that are not supported by the datatype theory 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 theory 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.

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-001 with Thing-002 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.

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-001 contains an OWL Lite file which is consistent as an OWL Lite or 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.

6. Manifest Files (Informative)

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

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 theory being used.

7. The OWL Tests (Normative)

7.1. By Function

7.1.1. owl:AllDifferent

FullPositive 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:FunctionalProperty

FullPositive 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 .

FullPositive 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" .

FullPositive 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 .

FullPositive 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 .

7.1.3. owl:InverseFunctionalProperty

FullPositive 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 .

FullPositive 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" .

FullPositive 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 .

FullPositive 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.4. owl:Nothing

DL FullOWL 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.5. owl:SymmetricProperty

FullPositive 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 .

7.1.6. owl:TransitiveProperty

FullPositive 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 .

7.1.7. owl:allValuesFrom

Lite FullPositive 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 FullNegative 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.8. owl:cardinality

Lite FullPositive 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 FullPositive 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 FullPositive 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 FullPositive 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 .

7.1.9. owl:complementOf

FullPositive 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.10. owl:differentFrom

FullPositive 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 .

FullPositive 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.11. owl:disjointWith

DL FullPositive 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 .

FullPositive 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 .

7.1.12. owl:distinctMembers

FullPositive 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.13. owl:equivalentClass

Lite FullPositive 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 FullPositive 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 FullPositive 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 FullPositive 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 FullNegative 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 FullPositive 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 .

7.1.14. owl:equivalentProperty

Lite FullPositive 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 FullPositive 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 FullPositive 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 FullPositive 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 .

FullPositive 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 .

FullPositive 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.15. owl:imports

FullImport 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 .

FullNegative 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 .

FullImport 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> .

FullImport 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> .

DLImport 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> .

LiteImport 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 .

LiteImport 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 .

LiteImport 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 .

7.1.16. owl:intersectionOf

FullPositive 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.17. owl:inverseOf

FullPositive 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.18. owl:maxCardinality

FullInconsistent 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 .

FullInconsistent 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.19. owl:oneOf

FullConsistent 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 .

FullPositive 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 .

FullPositive 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 .

7.1.20. owl:someValuesFrom

FullNegative 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 .

7.1.21. owl:unionOf

FullPositive 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 .

FullPositive 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 .

7.2. By Issue

7.2.1. Qualified Restrictions

LiteIllegal 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 .

LiteIllegal 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 .

LiteIllegal 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

LiteIllegal 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

LiteIllegal 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. EquivalentTo

FullPositive 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 .

7.2.5. Uniform treatment of literal data values

FullPositive 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 .

7.2.6. Language Compliance Levels

Lite FullConsistent 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 FullPositive 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 .

7.2.7. IF-or-IFF-property-properties

FullPositive 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 .

Lite FullPositive 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.8. Semantic-Layering

FullConsistent 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 FullConsistent 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 .

FullConsistent 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 FullConsistent 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 .

FullConsistent 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 .

7.2.9. List syntax or semantics

FullOWL 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 .

FullOWL 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 .

FullInconsistent 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 .

FullInconsistent 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 .

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 FullInconsistent 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.
N3 format is informative.
DLInconsistent: <description-logic/inconsistent001>
<rdf:RDF
    xml:base="http://www.w3.org/2002/03owlt/description-logic/inconsistent001"
    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:unionOf rdf:parseType="Collection">
                    <owl:Class>
                        <owl:intersectionOf rdf:parseType="Collection">
                            <owl:Class rdf:about="http://oiled.man.example.net/test#a"/>
                            <owl:Class rdf:about="http://oiled.man.example.net/test#b"/>
                        </owl:intersectionOf>
                    </owl:Class>
                    <owl:Class>
                        <owl:intersectionOf rdf:parseType="Collection">
                            <owl:Class rdf:about="http://oiled.man.example.net/test#a"/>
                            <owl:Class rdf:about="http://oiled.man.example.net/test#c"/>
                        </owl:intersectionOf>
                    </owl:Class>
                    <owl:Class>
                        <owl:intersectionOf rdf:parseType="Collection">
                            <owl:Class rdf:about="http://oiled.man.example.net/test#b"/>
                            <owl:Class rdf:about="http://oiled.man.example.net/test#c"/>
                        </owl:intersectionOf>
                    </owl:Class>
                </owl:unionOf>
            </owl:Class>
        </owl:equivalentClass>
    </owl:Class>
    <owl:Class rdf:about="http://oiled.man.example.net/test#a">
        <rdfs:subClassOf>
            <owl:Class>
                <owl:complementOf>
                    <owl:Class>
                        <owl:unionOf rdf:parseType="Collection">
                            <owl:Class rdf:about="http://oiled.man.example.net/test#b"/>
                            <owl:Class rdf:about="http://oiled.man.example.net/test#c"/>
                        </owl:unionOf>
                    </owl:Class>
                </owl:complementOf>
            </owl:Class>
        </rdfs:subClassOf>
    </owl:Class>
    <owl:Class rdf:about="http://oiled.man.example.net/test#b">
        <rdfs:subClassOf>
            <owl:Class>
                <owl:complementOf>
                    <owl:Class rdf:about="http://oiled.man.example.net/test#c"/>
                </owl:complementOf>
            </owl:Class>
        </rdfs:subClassOf>
    </owl:Class>
    <owl:Class rdf:about="http://oiled.man.example.net/test#c"/>
    <rdf:Description>
        <rdf:type rdf:resource="http://oiled.man.example.net/test#Unsatisfiable"/>
    </rdf:Description>
</rdf:RDF>
<description-logic/inconsistent001> rdf:type owl:Ontology .
oiled:Unsatisfiable rdf:type owl:Class .
_:a rdf:type owl:Class .
_:c rdf:type owl:Class .
oiled:a rdf:type owl:Class .
oiled:b rdf:type owl:Class .
_:e rdf:first oiled:b .
_:e rdf:rest rdf:nil .
_:g rdf:first oiled:a .
_:g rdf:rest _:e .
_:c owl:intersectionOf _:g .
_:i rdf:type owl:Class .
oiled:a rdf:type owl:Class .
oiled:c rdf:type owl:Class .
_:k rdf:first oiled:c .
_:k rdf:rest rdf:nil .
_:m rdf:first oiled:a .
_:m rdf:rest _:k .
_:i owl:intersectionOf _:m .
_:o rdf:type owl:Class .
oiled:b rdf:type owl:Class .
oiled:c rdf:type owl:Class .
_:q rdf:first oiled:c .
_:q rdf:rest rdf:nil .
_:s rdf:first oiled:b .
_:s rdf:rest _:q .
_:o owl:intersectionOf _:s .
_:u rdf:first _:o .
_:u rdf:rest rdf:nil .
_:w rdf:first _:i .
_:w rdf:rest _:u .
_:y rdf:first _:c .
_:y rdf:rest _:w .
_:a owl:unionOf _:y .
oiled:Unsatisfiable owl:equivalentClass _:a .
oiled:a rdf:type owl:Class .
_:a1 rdf:type owl:Class .
_:c1 rdf:type owl:Class .
oiled:b rdf:type owl:Class .
oiled:c rdf:type owl:Class .
_:e1 rdf:first oiled:c .
_:e1 rdf:rest rdf:nil .
_:g1 rdf:first oiled:b .
_:g1 rdf:rest _:e1 .
_:c1 owl:unionOf _:g1 .
_:a1 owl:complementOf _:c1 .
oiled:a rdfs:subClassOf _:a1 .
oiled:b rdf:type owl:Class .
_:i1 rdf:type owl:Class .
oiled:c rdf:type owl:Class .
_:i1 owl:complementOf oiled:c .
oiled:b rdfs:subClassOf _:i1 .
oiled:c rdf:type owl:Class .
_:k1 rdf:type oiled:Unsatisfiable .

DL FullInconsistent 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 FullInconsistent document.003
Description: (informative) <description-logic/Manifest003#test>
DL Test: fact3.1
N3 format is informative.
DLInconsistent: <description-logic/inconsistent003>
<rdf:RDF
    xml:base="http://www.w3.org/2002/03owlt/description-logic/inconsistent003"
    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#f1"/>
                        <owl:someValuesFrom>
                            <owl:Class rdf:about="http://oiled.man.example.net/test#p1"/>
                        </owl:someValuesFrom>
                    </owl:Restriction>
                    <owl:Restriction>
                        <owl:onProperty rdf:resource="http://oiled.man.example.net/test#f2"/>
                        <owl:someValuesFrom>
                            <owl:Class>
                                <owl:complementOf>
                                    <owl:Class rdf:about="http://oiled.man.example.net/test#p1"/>
                                </owl:complementOf>
                            </owl:Class>
                        </owl:someValuesFrom>
                    </owl:Restriction>
                    <owl:Restriction>
                        <owl:onProperty rdf:resource="http://oiled.man.example.net/test#f3"/>
                        <owl:someValuesFrom>
                            <owl:Class rdf:about="http://oiled.man.example.net/test#p2"/>
                        </owl:someValuesFrom>
                    </owl:Restriction>
                </owl:intersectionOf>
            </owl:Class>
        </owl:equivalentClass>
    </owl:Class>
    <owl:Class rdf:about="http://oiled.man.example.net/test#p1"/>
    <owl:Class rdf:about="http://oiled.man.example.net/test#p2"/>
    <owl:ObjectProperty rdf:about="http://oiled.man.example.net/test#f1"/>
    <owl:FunctionalProperty rdf:about="http://oiled.man.example.net/test#f1"/>
    <owl:ObjectProperty rdf:about="http://oiled.man.example.net/test#f2"/>
    <owl:FunctionalProperty rdf:about="http://oiled.man.example.net/test#f2"/>
    <owl:ObjectProperty rdf:about="http://oiled.man.example.net/test#f3">
        <rdfs:subPropertyOf rdf:resource="http://oiled.man.example.net/test#f2"/>
        <rdfs:subPropertyOf rdf:resource="http://oiled.man.example.net/test#f1"/>
    </owl:ObjectProperty>
    <owl:FunctionalProperty rdf:about="http://oiled.man.example.net/test#f3"/>
    <rdf:Description>
        <rdf:type rdf:resource="http://oiled.man.example.net/test#Unsatisfiable"/>
    </rdf:Description>
</rdf:RDF>
<description-logic/inconsistent003> rdf:type owl:Ontology .
oiled:Unsatisfiable rdf:type owl:Class .
_:a rdf:type owl:Class .
_:c rdf:type owl:Restriction .
_:c owl:onProperty oiled:f1 .
oiled:p1 rdf:type owl:Class .
_:c owl:someValuesFrom oiled:p1 .
_:e rdf:type owl:Restriction .
_:e owl:onProperty oiled:f2 .
_:g rdf:type owl:Class .
oiled:p1 rdf:type owl:Class .
_:g owl:complementOf oiled:p1 .
_:e owl:someValuesFrom _:g .
_:i rdf:type owl:Restriction .
_:i owl:onProperty oiled:f3 .
oiled:p2 rdf:type owl:Class .
_:i owl:someValuesFrom oiled:p2 .
_:k rdf:first _:i .
_:k rdf:rest rdf:nil .
_:m rdf:first _:e .
_:m rdf:rest _:k .
_:o rdf:first _:c .
_:o rdf:rest _:m .
_:a owl:intersectionOf _:o .
oiled:Unsatisfiable owl:equivalentClass _:a .
oiled:p1 rdf:type owl:Class .
oiled:p2 rdf:type owl:Class .
oiled:f1 rdf:type owl:ObjectProperty .
oiled:f1 rdf:type owl:FunctionalProperty .
oiled:f2 rdf:type owl:ObjectProperty .
oiled:f2 rdf:type owl:FunctionalProperty .
oiled:f3 rdf:type owl:ObjectProperty .
oiled:f3 rdfs:subPropertyOf oiled:f2 .
oiled:f3 rdfs:subPropertyOf oiled:f1 .
oiled:f3 rdf:type owl:FunctionalProperty .
_:q rdf:type oiled:Unsatisfiable .

DL FullInconsistent document.004
Description: (informative) <description-logic/Manifest004#test>
DL Test: fact4.1
N3 format is informative.
DLInconsistent: <description-logic/inconsistent004>
<rdf:RDF
    xml:base="http://www.w3.org/2002/03owlt/description-logic/inconsistent004"
    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:Class>
                        <owl:complementOf>
                            <owl:Restriction>
                                <owl:onProperty rdf:resource="http://oiled.man.example.net/test#rx3"/>
                                <owl:someValuesFrom>
                                    <owl:Class>
                                    <owl:intersectionOf rdf:parseType="Collection">
                                    <owl:Class rdf:about="http://oiled.man.example.net/test#c1"/>
                                    <owl:Class rdf:about="http://oiled.man.example.net/test#c2"/>
                                    </owl:intersectionOf>
                                    </owl:Class>
                                </owl:someValuesFrom>
                            </owl:Restriction>
                        </owl:complementOf>
                    </owl:Class>
                    <owl:Restriction>
                        <owl:onProperty rdf:resource="http://oiled.man.example.net/test#rx3"/>
                        <owl:someValuesFrom>
                            <owl:Class rdf:about="http://oiled.man.example.net/test#c1"/>
                        </owl:someValuesFrom>
                    </owl:Restriction>
                    <owl:Restriction>
                        <owl:onProperty rdf:resource="http://oiled.man.example.net/test#rx4"/>
                        <owl:someValuesFrom>
                            <owl:Class rdf:about="http://oiled.man.example.net/test#c2"/>
                        </owl:someValuesFrom>
                    </owl:Restriction>
                </owl:intersectionOf>
            </owl:Class>
        </owl:equivalentClass>
    </owl:Class>
    <owl:Class rdf:about="http://oiled.man.example.net/test#c1"/>
    <owl:Class rdf:about="http://oiled.man.example.net/test#c2"/>
    <owl:ObjectProperty rdf:about="http://oiled.man.example.net/test#rx1"/>
    <owl:ObjectProperty rdf:about="http://oiled.man.example.net/test#rx2"/>
    <owl:ObjectProperty rdf:about="http://oiled.man.example.net/test#rx3">
        <rdfs:subPropertyOf rdf:resource="http://oiled.man.example.net/test#rx1"/>
        <rdfs:subPropertyOf rdf:resource="http://oiled.man.example.net/test#rx"/>
    </owl:ObjectProperty>
    <owl:FunctionalProperty rdf:about="http://oiled.man.example.net/test#rx3"/>
    <owl:ObjectProperty rdf:about="http://oiled.man.example.net/test#rx4">
        <rdfs:subPropertyOf rdf:resource="http://oiled.man.example.net/test#rx2"/>
        <rdfs:subPropertyOf rdf:resource="http://oiled.man.example.net/test#rx"/>
    </owl:ObjectProperty>
    <owl:FunctionalProperty rdf:about="http://oiled.man.example.net/test#rx4"/>
    <owl:ObjectProperty rdf:about="http://oiled.man.example.net/test#rxa"/>
    <owl:ObjectProperty rdf:about="http://oiled.man.example.net/test#rx1a"/>
    <owl:ObjectProperty rdf:about="http://oiled.man.example.net/test#rx2a"/>
    <owl:ObjectProperty rdf:about="http://oiled.man.example.net/test#rx3a">
        <rdfs:subPropertyOf rdf:resource="http://oiled.man.example.net/test#rx1a"/>
        <rdfs:subPropertyOf rdf:resource="http://oiled.man.example.net/test#rxa"/>
    </owl:ObjectProperty>
    <owl:FunctionalProperty rdf:about="http://oiled.man.example.net/test#rx3a"/>
    <owl:ObjectProperty rdf:about="http://oiled.man.example.net/test#rx4a">
        <rdfs:subPropertyOf rdf:resource="http://oiled.man.example.net/test#rx2a"/>
        <rdfs:subPropertyOf rdf:resource="http://oiled.man.example.net/test#rxa"/>
    </owl:ObjectProperty>
    <owl:FunctionalProperty rdf:about="http://oiled.man.example.net/test#rx4a"/>
    <owl:ObjectProperty rdf:about="http://oiled.man.example.net/test#rx"/>
    <owl:FunctionalProperty rdf:about="http://oiled.man.example.net/test#rx"/>
    <rdf:Description>
        <rdf:type rdf:resource="http://oiled.man.example.net/test#Unsatisfiable"/>
    </rdf:Description>
</rdf:RDF>
<description-logic/inconsistent004> rdf:type owl:Ontology .
oiled:Unsatisfiable rdf:type owl:Class .
_:a rdf:type owl:Class .
_:c rdf:type owl:Class .
_:e rdf:type owl:Restriction .
_:e owl:onProperty oiled:rx3 .
_:g rdf:type owl:Class .
oiled:c1 rdf:type owl:Class .
oiled:c2 rdf:type owl:Class .
_:i rdf:first oiled:c2 .
_:i rdf:rest rdf:nil .
_:k rdf:first oiled:c1 .
_:k rdf:rest _:i .
_:g owl:intersectionOf _:k .
_:e owl:someValuesFrom _:g .
_:c owl:complementOf _:e .
_:m rdf:type owl:Restriction .
_:m owl:onProperty oiled:rx3 .
oiled:c1 rdf:type owl:Class .
_:m owl:someValuesFrom oiled:c1 .
_:o rdf:type owl:Restriction .
_:o owl:onProperty oiled:rx4 .
oiled:c2 rdf:type owl:Class .
_:o owl:someValuesFrom oiled:c2 .
_:q rdf:first _:o .
_:q rdf:rest rdf:nil .
_:s rdf:first _:m .
_:s rdf:rest _:q .
_:u rdf:first _:c .
_:u rdf:rest _:s .
_:a owl:intersectionOf _:u .
oiled:Unsatisfiable owl:equivalentClass _:a .
oiled:c1 rdf:type owl:Class .
oiled:c2 rdf:type owl:Class .
oiled:rx1 rdf:type owl:ObjectProperty .
oiled:rx2 rdf:type owl:ObjectProperty .
oiled:rx3 rdf:type owl:ObjectProperty .
oiled:rx3 rdfs:subPropertyOf oiled:rx1 .
oiled:rx3 rdfs:subPropertyOf oiled:rx .
oiled:rx3 rdf:type owl:FunctionalProperty .
oiled:rx4 rdf:type owl:ObjectProperty .
oiled:rx4 rdfs:subPropertyOf oiled:rx2 .
oiled:rx4 rdfs:subPropertyOf oiled:rx .
oiled:rx4 rdf:type owl:FunctionalProperty .
oiled:rxa rdf:type owl:ObjectProperty .
oiled:rx1a rdf:type owl:ObjectProperty .
oiled:rx2a rdf:type owl:ObjectProperty .
oiled:rx3a rdf:type owl:ObjectProperty .
oiled:rx3a rdfs:subPropertyOf oiled:rx1a .
oiled:rx3a rdfs:subPropertyOf oiled:rxa .
oiled:rx3a rdf:type owl:FunctionalProperty .
oiled:rx4a rdf:type owl:ObjectProperty .
oiled:rx4a rdfs:subPropertyOf oiled:rx2a .
oiled:rx4a rdfs:subPropertyOf oiled:rxa .
oiled:rx4a rdf:type owl:FunctionalProperty .
oiled:rx rdf:type owl:ObjectProperty .
oiled:rx rdf:type owl:FunctionalProperty .
_:w rdf:type oiled:Unsatisfiable .

DL FullConsistent document.005
Description: (informative) <description-logic/Manifest005#test>
DL Test: fact4.2
N3 format is informative.
DLConsistent: <description-logic/consistent005>
<rdf:RDF
    xml:base="http://www.w3.org/2002/03owlt/description-logic/consistent005"
    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#Satisfiable">
        <owl:equivalentClass>
            <owl:Class>
                <owl:intersectionOf rdf:parseType="Collection">
                    <owl:Class>
                        <owl:complementOf>
                            <owl:Restriction>
                                <owl:onProperty rdf:resource="http://oiled.man.example.net/test#rx3a"/>
                                <owl:someValuesFrom>
                                    <owl:Class>
                                    <owl:intersectionOf rdf:parseType="Collection">
                                    <owl:Class rdf:about="http://oiled.man.example.net/test#c1"/>
                                    <owl:Class rdf:about="http://oiled.man.example.net/test#c2"/>
                                    </owl:intersectionOf>
                                    </owl:Class>
                                </owl:someValuesFrom>
                            </owl:Restriction>
                        </owl:complementOf>
                    </owl:Class>
                    <owl:Restriction>
                        <owl:onProperty rdf:resource="http://oiled.man.example.net/test#rx3a"/>
                        <owl:someValuesFrom>
                            <owl:Class rdf:about="http://oiled.man.example.net/test#c1"/>
                        </owl:someValuesFrom>
                    </owl:Restriction>
                    <owl:Restriction>
                        <owl:onProperty rdf:resource="http://oiled.man.example.net/test#rx4a"/>
                        <owl:someValuesFrom>
                            <owl:Class rdf:about="http://oiled.man.example.net/test#c2"/>
                        </owl:someValuesFrom>
                    </owl:Restriction>
                </owl:intersectionOf>
            </owl:Class>
        </owl:equivalentClass>
    </owl:Class>
    <owl:Class rdf:about="http://oiled.man.example.net/test#c1"/>
    <owl:Class rdf:about="http://oiled.man.example.net/test#c2"/>
    <owl:ObjectProperty rdf:about="http://oiled.man.example.net/test#rx1"/>
    <owl:ObjectProperty rdf:about="http://oiled.man.example.net/test#rx2"/>
    <owl:ObjectProperty rdf:about="http://oiled.man.example.net/test#rx3">
        <rdfs:subPropertyOf rdf:resource="http://oiled.man.example.net/test#rx1"/>
        <rdfs:subPropertyOf rdf:resource="http://oiled.man.example.net/test#rx"/>
    </owl:ObjectProperty>
    <owl:FunctionalProperty rdf:about="http://oiled.man.example.net/test#rx3"/>
    <owl:ObjectProperty rdf:about="http://oiled.man.example.net/test#rx4">
        <rdfs:subPropertyOf rdf:resource="http://oiled.man.example.net/test#rx2"/>
        <rdfs:subPropertyOf rdf:resource="http://oiled.man.example.net/test#rx"/>
    </owl:ObjectProperty>
    <owl:FunctionalProperty rdf:about="http://oiled.man.example.net/test#rx4"/>
    <owl:ObjectProperty rdf:about="http://oiled.man.example.net/test#rxa"/>
    <owl:ObjectProperty rdf:about="http://oiled.man.example.net/test#rx1a"/>
    <owl:ObjectProperty rdf:about="http://oiled.man.example.net/test#rx2a"/>
    <owl:ObjectProperty rdf:about="http://oiled.man.example.net/test#rx3a">
        <rdfs:subPropertyOf rdf:resource="http://oiled.man.example.net/test#rx1a"/>
        <rdfs:subPropertyOf rdf:resource="http://oiled.man.example.net/test#rxa"/>
    </owl:ObjectProperty>
    <owl:FunctionalProperty rdf:about="http://oiled.man.example.net/test#rx3a"/>
    <owl:ObjectProperty rdf:about="http://oiled.man.example.net/test#rx4a">
        <rdfs:subPropertyOf rdf:resource="http://oiled.man.example.net/test#rx2a"/>
        <rdfs:subPropertyOf rdf:resource="http://oiled.man.example.net/test#rxa"/>
    </owl:ObjectProperty>
    <owl:FunctionalProperty rdf:about="http://oiled.man.example.net/test#rx4a"/>
    <owl:ObjectProperty rdf:about="http://oiled.man.example.net/test#rx"/>
    <owl:FunctionalProperty rdf:about="http://oiled.man.example.net/test#rx"/>
    <rdf:Description>
        <rdf:type rdf:resource="http://oiled.man.example.net/test#Satisfiable"/>
    </rdf:Description>
</rdf:RDF>
<description-logic/consistent005> rdf:type owl:Ontology .
oiled:Satisfiable rdf:type owl:Class .
_:a rdf:type owl:Class .
_:c rdf:type owl:Class .
_:e rdf:type owl:Restriction .
_:e owl:onProperty oiled:rx3a .
_:g rdf:type owl:Class .
oiled:c1 rdf:type owl:Class .
oiled:c2 rdf:type owl:Class .
_:i rdf:first oiled:c2 .
_:i rdf:rest rdf:nil .
_:k rdf:first oiled:c1 .
_:k rdf:rest _:i .
_:g owl:intersectionOf _:k .
_:e owl:someValuesFrom _:g .
_:c owl:complementOf _:e .
_:m rdf:type owl:Restriction .
_:m owl:onProperty oiled:rx3a .
oiled:c1 rdf:type owl:Class .
_:m owl:someValuesFrom oiled:c1 .
_:o rdf:type owl:Restriction .
_:o owl:onProperty oiled:rx4a .
oiled:c2 rdf:type owl:Class .
_:o owl:someValuesFrom oiled:c2 .
_:q rdf:first _:o .
_:q rdf:rest rdf:nil .
_:s rdf:first _:m .
_:s rdf:rest _:q .
_:u rdf:first _:c .
_:u rdf:rest _:s .
_:a owl:intersectionOf _:u .
oiled:Satisfiable owl:equivalentClass _:a .
oiled:c1 rdf:type owl:Class .
oiled:c2 rdf:type owl:Class .
oiled:rx1 rdf:type owl:ObjectProperty .
oiled:rx2 rdf:type owl:ObjectProperty .
oiled:rx3 rdf:type owl:ObjectProperty .
oiled:rx3 rdfs:subPropertyOf oiled:rx1 .
oiled:rx3 rdfs:subPropertyOf oiled:rx .
oiled:rx3 rdf:type owl:FunctionalProperty .
oiled:rx4 rdf:type owl:ObjectProperty .
oiled:rx4 rdfs:subPropertyOf oiled:rx2 .
oiled:rx4 rdfs:subPropertyOf oiled:rx .
oiled:rx4 rdf:type owl:FunctionalProperty .
oiled:rxa rdf:type owl:ObjectProperty .
oiled:rx1a rdf:type owl:ObjectProperty .
oiled:rx2a rdf:type owl:ObjectProperty .
oiled:rx3a rdf:type owl:ObjectProperty .
oiled:rx3a rdfs:subPropertyOf oiled:rx1a .
oiled:rx3a rdfs:subPropertyOf oiled:rxa .
oiled:rx3a rdf:type owl:FunctionalProperty .
oiled:rx4a rdf:type owl:ObjectProperty .
oiled:rx4a rdfs:subPropertyOf oiled:rx2a .
oiled:rx4a rdfs:subPropertyOf oiled:rxa .
oiled:rx4a rdf:type owl:FunctionalProperty .
oiled:rx rdf:type owl:ObjectProperty .
oiled:rx rdf:type owl:FunctionalProperty .
_:w rdf:type oiled:Satisfiable .

DL FullConsistent document.006
Description: (informative) <description-logic/Manifest006#test>
DL Test: t1.1
N3 format is informative.
DLConsistent: <description-logic/consistent006>
<rdf:RDF
    xml:base="http://www.w3.org/2002/03owlt/description-logic/consistent006"
    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#Satisfiable">
        <owl:equivalentClass>
            <owl:Restriction>
                <owl:onProperty rdf:resource="http://oiled.man.example.net/test#invR"/>
                <owl:someValuesFrom>
                    <owl:Class>
                        <owl:intersectionOf rdf:parseType="Collection">
                            <owl:Restriction>
                                <owl:onProperty rdf:resource="http://oiled.man.example.net/test#r"/>
                                <owl:someValuesFrom>
                                    <owl:Class rdf:about="http://oiled.man.example.net/test#p1"/>
                                </owl:someValuesFrom>
                            </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:someValuesFrom>
            </owl:Restriction>
        </owl:equivalentClass>
    </owl:Class>
    <owl:Class rdf:about="http://oiled.man.example.net/test#p1">
        <rdfs:subClassOf>
            <owl:Class>
                <owl:complementOf>
                    <owl:Class>
                        <owl:unionOf rdf:parseType="Collection">
                            <owl:Class rdf:about="http://oiled.man.example.net/test#p2"/>
                            <owl:Class rdf:about="http://oiled.man.example.net/test#p3"/>
                            <owl:Class rdf:about="http://oiled.man.example.net/test#p4"/>
                            <owl:Class rdf:about="http://oiled.man.example.net/test#p5"/>
                        </owl:unionOf>
                    </owl:Class>
                </owl:complementOf>
            </owl:Class>
        </rdfs:subClassOf>
    </owl:Class>
    <owl:Class rdf:about="http://oiled.man.example.net/test#p2">
        <rdfs:subClassOf>
            <owl:Class>
                <owl:complementOf>
                    <owl:Class>
                        <owl:unionOf rdf:parseType="Collection">
                            <owl:Class rdf:about="http://oiled.man.example.net/test#p3"/>
                            <owl:Class rdf:about="http://oiled.man.example.net/test#p4"/>
                            <owl:Class rdf:about="http://oiled.man.example.net/test#p5"/>
                        </owl:unionOf>
                    </owl:Class>
                </owl:complementOf>
            </owl:Class>
        </rdfs:subClassOf>
    </owl:Class>
    <owl:Class rdf:about="http://oiled.man.example.net/test#p3">
        <rdfs:subClassOf>
            <owl:Class>
                <owl:complementOf>
                    <owl:Class>
                        <owl:unionOf rdf:parseType="Collection">
                            <owl:Class rdf:about="http://oiled.man.example.net/test#p4"/>
                            <owl:Class rdf:about="http://oiled.man.example.net/test#p5"/>
                        </owl:unionOf>
                    </owl:Class>
                </owl:complementOf>
            </owl:Class>
        </rdfs:subClassOf>
    </owl:Class>
    <owl:Class rdf:about="http://oiled.man.example.net/test#p4">
        <rdfs:subClassOf>
            <owl:Class>
                <owl:complementOf>
                    <owl:Class rdf:about="http://oiled.man.example.net/test#p5"/>
                </owl:complementOf>
            </owl:Class>
        </rdfs:subClassOf>
    </owl:Class>
    <owl:Class rdf:about="http://oiled.man.example.net/test#p5"/>
    <owl:ObjectProperty rdf:about="http://oiled.man.example.net/test#invR">
        <owl:inverseOf rdf:resource="http://oiled.man.example.net/test#r"/>
    </owl:ObjectProperty>
    <owl:ObjectProperty rdf:about="http://oiled.man.example.net/test#r"/>
    <rdf:Description>
        <rdf:type rdf:resource="http://oiled.man.example.net/test#Satisfiable"/>
    </rdf:Description>
</rdf:RDF>
<description-logic/consistent006> rdf:type owl:Ontology .
oiled:Satisfiable rdf:type owl:Class .
_:a rdf:type owl:Restriction .
_:a owl:onProperty oiled:invR .
_:c rdf:type owl:Class .
_:e rdf:type owl:Restriction .
_:e owl:onProperty oiled:r .
oiled:p1 rdf:type owl:Class .
_:e owl:someValuesFrom oiled:p1 .
_:g rdf:type owl:Restriction .
_:g owl:onProperty oiled:r .
_:g owl:maxCardinality "1"^^xsd:nonNegativeInteger  .
_:i rdf:first _:g .
_:i rdf:rest rdf:nil .
_:k rdf:first _:e .
_:k rdf:rest _:i .
_:c owl:intersectionOf _:k .
_:a owl:someValuesFrom _:c .
oiled:Satisfiable owl:equivalentClass _:a .
oiled:p1 rdf:type owl:Class .
_:m rdf:type owl:Class .
_:o rdf:type owl:Class .
oiled:p2 rdf:type owl:Class .
oiled:p3 rdf:type owl:Class .
oiled:p4 rdf:type owl:Class .
oiled:p5 rdf:type owl:Class .
_:q rdf:first oiled:p5 .
_:q rdf:rest rdf:nil .
_:s rdf:first oiled:p4 .
_:s rdf:rest _:q .
_:u rdf:first oiled:p3 .
_:u rdf:rest _:s .
_:w rdf:first oiled:p2 .
_:w rdf:rest _:u .
_:o owl:unionOf _:w .
_:m owl:complementOf _:o .
oiled:p1 rdfs:subClassOf _:m .
oiled:p2 rdf:type owl:Class .
_:y rdf:type owl:Class .
_:a1 rdf:type owl:Class .
oiled:p3 rdf:type owl:Class .
oiled:p4 rdf:type owl:Class .
oiled:p5 rdf:type owl:Class .
_:c1 rdf:first oiled:p5 .
_:c1 rdf:rest rdf:nil .
_:e1 rdf:first oiled:p4 .
_:e1 rdf:rest _:c1 .
_:g1 rdf:first oiled:p3 .
_:g1 rdf:rest _:e1 .
_:a1 owl:unionOf _:g1 .
_:y owl:complementOf _:a1 .
oiled:p2 rdfs:subClassOf _:y .
oiled:p3 rdf:type owl:Class .
_:i1 rdf:type owl:Class .
_:k1 rdf:type owl:Class .
oiled:p4 rdf:type owl:Class .
oiled:p5 rdf:type owl:Class .
_:m1 rdf:first oiled:p5 .
_:m1 rdf:rest rdf:nil .
_:o1 rdf:first oiled:p4 .
_:o1 rdf:rest _:m1 .
_:k1 owl:unionOf _:o1 .
_:i1 owl:complementOf _:k1 .
oiled:p3 rdfs:subClassOf _:i1 .
oiled:p4 rdf:type owl:Class .
_:q1 rdf:type owl:Class .
oiled:p5 rdf:type owl:Class .
_:q1 owl:complementOf oiled:p5 .
oiled:p4 rdfs:subClassOf _:q1 .
oiled:p5 rdf:type owl:Class .
oiled:invR rdf:type owl:ObjectProperty .
oiled:invR owl:inverseOf oiled:r .
oiled:r rdf:type owl:ObjectProperty .
_:s1 rdf:type oiled:Satisfiable .

DL FullInconsistent document.007
Description: (informative) <description-logic/Manifest007#test>
DL Test: t1.2
N3 format is informative.
DLInconsistent: <description-logic/inconsistent007>
<rdf:RDF
    xml:base="http://www.w3.org/2002/03owlt/description-logic/inconsistent007"
    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:someValuesFrom>
                            <owl:Class rdf:about="http://oiled.man.example.net/test#p1"/>
                        </owl:someValuesFrom>
                    </owl:Restriction>
                    <owl:Restriction>
                        <owl:onProperty rdf:resource="http://oiled.man.example.net/test#r"/>
                        <owl:someValuesFrom>
                            <owl:Class rdf:about="http://oiled.man.example.net/test#p2"/>
                        </owl:someValuesFrom>
                    </owl:Restriction>
                    <owl:Restriction>
                        <owl:onProperty rdf:resource="http://oiled.man.example.net/test#r"/>
                        <owl:someValuesFrom>
                            <owl:Class rdf:about="http://oiled.man.example.net/test#p3"/>
                        </owl:someValuesFrom>
                    </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">2</owl:maxCardinality>
                    </owl:Restriction>
                </owl:intersectionOf>
            </owl:Class>
        </owl:equivalentClass>
    </owl:Class>
    <owl:Class rdf:about="http://oiled.man.example.net/test#p1">
        <rdfs:subClassOf>
            <owl:Class>
                <owl:complementOf>
                    <owl:Class>
                        <owl:unionOf rdf:parseType="Collection">
                            <owl:Class rdf:about="http://oiled.man.example.net/test#p2"/>
                            <owl:Class rdf:about="http://oiled.man.example.net/test#p3"/>
                            <owl:Class rdf:about="http://oiled.man.example.net/test#p4"/>
                            <owl:Class rdf:about="http://oiled.man.example.net/test#p5"/>
                        </owl:unionOf>
                    </owl:Class>
                </owl:complementOf>
            </owl:Class>
        </rdfs:subClassOf>
    </owl:Class>
    <owl:Class rdf:about="http://oiled.man.example.net/test#p2">
        <rdfs:subClassOf>
            <owl:Class>
                <owl:complementOf>
                    <owl:Class>
                        <owl:unionOf rdf:parseType="Collection">
                            <owl:Class rdf:about="http://oiled.man.example.net/test#p3"/>
                            <owl:Class rdf:about="http://oiled.man.example.net/test#p4"/>
                            <owl:Class rdf:about="http://oiled.man.example.net/test#p5"/>
                        </owl:unionOf>
                    </owl:Class>
                </owl:complementOf>
            </owl:Class>
        </rdfs:subClassOf>
    </owl:Class>
    <owl:Class rdf:about="http://oiled.man.example.net/test#p3">
        <rdfs:subClassOf>
            <owl:Class>
                <owl:complementOf>
                    <owl:Class>
                        <owl:unionOf rdf:parseType="Collection">
                            <owl:Class rdf:about="http://oiled.man.example.net/test#p4"/>
                            <owl:Class rdf:about="http://oiled.man.example.net/test#p5"/>
                        </owl:unionOf>
                    </owl:Class>
                </owl:complementOf>
            </owl:Class>
        </rdfs:subClassOf>
    </owl:Class>
    <owl:Class rdf:about="http://oiled.man.example.net/test#p4">
        <rdfs:subClassOf>
            <owl:Class>
                <owl:complementOf>
                    <owl:Class rdf:about="http://oiled.man.example.net/test#p5"/>
                </owl:complementOf>
            </owl:Class>
        </rdfs:subClassOf>
    </owl:Class>
    <owl:Class rdf:about="http://oiled.man.example.net/test#p5"/>
    <owl:ObjectProperty rdf:about="http://oiled.man.example.net/test#invR">
        <owl:inverseOf rdf:resource="http://oiled.man.example.net/test#r"/>
    </owl:ObjectProperty>
    <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/inconsistent007> 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 .
oiled:p1 rdf:type owl:Class .
_:c owl:someValuesFrom oiled:p1 .
_:e rdf:type owl:Restriction .
_:e owl:onProperty oiled:r .
oiled:p2 rdf:type owl:Class .
_:e owl:someValuesFrom oiled:p2 .
_:g rdf:type owl:Restriction .
_:g owl:onProperty oiled:r .
oiled:p3 rdf:type owl:Class .
_:g owl:someValuesFrom oiled:p3 .
_:i rdf:type owl:Restriction .
_:i owl:onProperty oiled:r .
_:i owl:maxCardinality "2"^^xsd:nonNegativeInteger  .
_:k rdf:first _:i .
_:k rdf:rest rdf:nil .
_:m rdf:first _:g .
_:m rdf:rest _:k .
_:o rdf:first _:e .
_:o rdf:rest _:m .
_:q rdf:first _:c .
_:q rdf:rest _:o .
_:a owl:intersectionOf _:q .
oiled:Unsatisfiable owl:equivalentClass _:a .
oiled:p1 rdf:type owl:Class .
_:s rdf:type owl:Class .
_:u rdf:type owl:Class .
oiled:p2 rdf:type owl:Class .
oiled:p3 rdf:type owl:Class .
oiled:p4 rdf:type owl:Class .
oiled:p5 rdf:type owl:Class .
_:w rdf:first oiled:p5 .
_:w rdf:rest rdf:nil .
_:y rdf:first oiled:p4 .
_:y rdf:rest _:w .
_:a1 rdf:first oiled:p3 .
_:a1 rdf:rest _:y .
_:c1 rdf:first oiled:p2 .
_:c1 rdf:rest _:a1 .
_:u owl:unionOf _:c1 .
_:s owl:complementOf _:u .
oiled:p1 rdfs:subClassOf _:s .
oiled:p2 rdf:type owl:Class .
_:e1 rdf:type owl:Class .
_:g1 rdf:type owl:Class .
oiled:p3 rdf:type owl:Class .
oiled:p4 rdf:type owl:Class .
oiled:p5 rdf:type owl:Class .
_:i1 rdf:first oiled:p5 .
_:i1 rdf:rest rdf:nil .
_:k1 rdf:first oiled:p4 .
_:k1 rdf:rest _:i1 .
_:m1 rdf:first oiled:p3 .
_:m1 rdf:rest _:k1 .
_:g1 owl:unionOf _:m1 .
_:e1 owl:complementOf _:g1 .
oiled:p2 rdfs:subClassOf _:e1 .
oiled:p3 rdf:type owl:Class .
_:o1 rdf:type owl:Class .
_:q1 rdf:type owl:Class .
oiled:p4 rdf:type owl:Class .
oiled:p5 rdf:type owl:Class .
_:s1 rdf:first oiled:p5 .
_:s1 rdf:rest rdf:nil .
_:u1 rdf:first oiled:p4 .
_:u1 rdf:rest _:s1 .
_:q1 owl:unionOf _:u1 .
_:o1 owl:complementOf _:q1 .
oiled:p3 rdfs:subClassOf _:o1 .
oiled:p4 rdf:type owl:Class .
_:w1 rdf:type owl:Class .
oiled:p5 rdf:type owl:Class .
_:w1 owl:complementOf oiled:p5 .
oiled:p4 rdfs:subClassOf _:w1 .
oiled:p5 rdf:type owl:Class .
oiled:invR rdf:type owl:ObjectProperty .
oiled:invR owl:inverseOf oiled:r .
oiled:r rdf:type owl:ObjectProperty .
_:y1 rdf:type oiled:Unsatisfiable .

DL FullInconsistent document.008
Description: (informative) <description-logic/Manifest008#test>
DL Test: t1.3
N3 format is informative.
DLInconsistent: <description-logic/inconsistent008>
<rdf:RDF
    xml:base="http://www.w3.org/2002/03owlt/description-logic/inconsistent008"
    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:Class rdf:about="http://oiled.man.example.net/test#p2"/>
                    <owl:Restriction>
                        <owl:onProperty rdf:resource="http://oiled.man.example.net/test#invR"/>
                        <owl:someValuesFrom>
                            <owl:Class>
                                <owl:intersectionOf rdf:parseType="Collection">
                                    <owl:Restriction>
                                    <owl:onProperty rdf:resource="http://oiled.man.example.net/test#r"/>
                                    <owl:someValuesFrom>
                                    <owl:Class rdf:about="http://oiled.man.example.net/test#p1"/>
                                    </owl:someValuesFrom>
                                    </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:someValuesFrom>
                    </owl:Restriction>
                </owl:intersectionOf>
            </owl:Class>
        </owl:equivalentClass>
    </owl:Class>
    <owl:Class rdf:about="http://oiled.man.example.net/test#p1">
        <rdfs:subClassOf>
            <owl:Class>
                <owl:complementOf>
                    <owl:Class>
                        <owl:unionOf rdf:parseType="Collection">
                            <owl:Class rdf:about="http://oiled.man.example.net/test#p2"/>
                            <owl:Class rdf:about="http://oiled.man.example.net/test#p3"/>
                            <owl:Class rdf:about="http://oiled.man.example.net/test#p4"/>
                            <owl:Class rdf:about="http://oiled.man.example.net/test#p5"/>
                        </owl:unionOf>
                    </owl:Class>
                </owl:complementOf>
            </owl:Class>
        </rdfs:subClassOf>
    </owl:Class>
    <owl:Class rdf:about="http://oiled.man.example.net/test#p2">
        <rdfs:subClassOf>
            <owl:Class>
                <owl:complementOf>
                    <owl:Class>
                        <owl:unionOf rdf:parseType="Collection">
                            <owl:Class rdf:about="http://oiled.man.example.net/test#p3"/>
                            <owl:Class rdf:about="http://oiled.man.example.net/test#p4"/>
                            <owl:Class rdf:about="http://oiled.man.example.net/test#p5"/>
                        </owl:unionOf>
                    </owl:Class>
                </owl:complementOf>
            </owl:Class>
        </rdfs:subClassOf>
    </owl:Class>
    <owl:Class rdf:about="http://oiled.man.example.net/test#p3">
        <rdfs:subClassOf>
            <owl:Class>
                <owl:complementOf>
                    <owl:Class>
                        <owl:unionOf rdf:parseType="Collection">
                            <owl:Class rdf:about="http://oiled.man.example.net/test#p4"/>
                            <owl:Class rdf:about="http://oiled.man.example.net/test#p5"/>
                        </owl:unionOf>
                    </owl:Class>
                </owl:complementOf>
            </owl:Class>
        </rdfs:subClassOf>
    </owl:Class>
    <owl:Class rdf:about="http://oiled.man.example.net/test#p4">
        <rdfs:subClassOf>
            <owl:Class>
                <owl:complementOf>
                    <owl:Class rdf:about="http://oiled.man.example.net/test#p5"/>
                </owl:complementOf>
            </owl:Class>
        </rdfs:subClassOf>
    </owl:Class>
    <owl:Class rdf:about="http://oiled.man.example.net/test#p5"/>
    <owl:ObjectProperty rdf:about="http://oiled.man.example.net/test#invR">
        <owl:inverseOf rdf:resource="http://oiled.man.example.net/test#r"/>
    </owl:ObjectProperty>
    <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/inconsistent008> rdf:type owl:Ontology .
oiled:Unsatisfiable rdf:type owl:Class .
_:a rdf:type owl:Class .
oiled:p2 rdf:type owl:Class .
_:c rdf:type owl:Restriction .
_:c owl:onProperty oiled:invR .
_:e rdf:type owl:Class .
_:g rdf:type owl:Restriction .
_:g owl:onProperty oiled:r .
oiled:p1 rdf:type owl:Class .
_:g owl:someValuesFrom oiled:p1 .
_:i rdf:type owl:Restriction .
_:i owl:onProperty oiled:r .
_:i owl:maxCardinality "1"^^xsd:nonNegativeInteger  .
_:k rdf:first _:i .
_:k rdf:rest rdf:nil .
_:m rdf:first _:g .
_:m rdf:rest _:k .
_:e owl:intersectionOf _:m .
_:c owl:someValuesFrom _:e .
_:o rdf:first _:c .
_:o rdf:rest rdf:nil .
_:q rdf:first oiled:p2 .
_:q rdf:rest _:o .
_:a owl:intersectionOf _:q .
oiled:Unsatisfiable owl:equivalentClass _:a .
oiled:p1 rdf:type owl:Class .
_:s rdf:type owl:Class .
_:u rdf:type owl:Class .
oiled:p2 rdf:type owl:Class .
oiled:p3 rdf:type owl:Class .
oiled:p4 rdf:type owl:Class .
oiled:p5 rdf:type owl:Class .
_:w rdf:first oiled:p5 .
_:w rdf:rest rdf:nil .
_:y rdf:first oiled:p4 .
_:y rdf:rest _:w .
_:a1 rdf:first oiled:p3 .
_:a1 rdf:rest _:y .
_:c1 rdf:first oiled:p2 .
_:c1 rdf:rest _:a1 .
_:u owl:unionOf _:c1 .
_:s owl:complementOf _:u .
oiled:p1 rdfs:subClassOf _:s .
oiled:p2 rdf:type owl:Class .
_:e1 rdf:type owl:Class .
_:g1 rdf:type owl:Class .
oiled:p3 rdf:type owl:Class .
oiled:p4 rdf:type owl:Class .
oiled:p5 rdf:type owl:Class .
_:i1 rdf:first oiled:p5 .
_:i1 rdf:rest rdf:nil .
_:k1 rdf:first oiled:p4 .
_:k1 rdf:rest _:i1 .
_:m1 rdf:first oiled:p3 .
_:m1 rdf:rest _:k1 .
_:g1 owl:unionOf _:m1 .
_:e1 owl:complementOf _:g1 .
oiled:p2 rdfs:subClassOf _:e1 .
oiled:p3 rdf:type owl:Class .
_:o1 rdf:type owl:Class .
_:q1 rdf:type owl:Class .
oiled:p4 rdf:type owl:Class .
oiled:p5 rdf:type owl:Class .
_:s1 rdf:first oiled:p5 .
_:s1 rdf:rest rdf:nil .
_:u1 rdf:first oiled:p4 .
_:u1 rdf:rest _:s1 .
_:q1 owl:unionOf _:u1 .
_:o1 owl:complementOf _:q1 .
oiled:p3 rdfs:subClassOf _:o1 .
oiled:p4 rdf:type owl:Class .
_:w1 rdf:type owl:Class .
oiled:p5 rdf:type owl:Class .
_:w1 owl:complementOf oiled:p5 .
oiled:p4 rdfs:subClassOf _:w1 .
oiled:p5 rdf:type owl:Class .
oiled:invR rdf:type owl:ObjectProperty .
oiled:invR owl:inverseOf oiled:r .
oiled:r rdf:type owl:ObjectProperty .
_:y1 rdf:type oiled:Unsatisfiable .

DL FullConsistent document.009
Description: (informative) <description-logic/Manifest009#test>
DL Test: t10.1
N3 format is informative.
DLConsistent: <description-logic/consistent009>
<rdf:RDF
    xml:base="http://www.w3.org/2002/03owlt/description-logic/consistent009"
    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#Satisfiable">
        <owl:equivalentClass>
            <owl:Class>
                <owl:intersectionOf rdf:parseType="Collection">
                    <owl:Restriction>
                        <owl:onProperty rdf:resource="http://oiled.man.example.net/test#f"/>
                        <owl:someValuesFrom>
                            <owl:Class rdf:about="http://oiled.man.example.net/test#p"/>
                        </owl:someValuesFrom>
                    </owl:Restriction>
                    <owl:Restriction>
                        <owl:onProperty rdf:resource="http://oiled.man.example.net/test#f1"/>
                        <owl:someValuesFrom>
                            <owl:Class>
                                <owl:complementOf>
                                    <owl:Class rdf:about="http://oiled.man.example.net/test#p"/>
                                </owl:complementOf>
                            </owl:Class>
                        </owl:someValuesFrom>
                    </owl:Restriction>
                </owl:intersectionOf>
            </owl:Class>
        </owl:equivalentClass>
    </owl:Class>
    <owl:Class rdf:about="http://oiled.man.example.net/test#p"/>
    <owl:ObjectProperty rdf:about="http://oiled.man.example.net/test#invF">
        <owl:inverseOf rdf:resource="http://oiled.man.example.net/test#f"/>
    </owl:ObjectProperty>
    <owl:ObjectProperty rdf:about="http://oiled.man.example.net/test#invS">
        <owl:inverseOf rdf:resource="http://oiled.man.example.net/test#s"/>
    </owl:ObjectProperty>
    <owl:ObjectProperty rdf:about="http://oiled.man.example.net/test#invF1">
        <owl:inverseOf rdf:resource="http://oiled.man.example.net/test#f1"/>
    </owl:ObjectProperty>
    <owl:ObjectProperty rdf:about="http://oiled.man.example.net/test#f"/>
    <owl:FunctionalProperty rdf:about="http://oiled.man.example.net/test#f"/>
    <owl:ObjectProperty rdf:about="http://oiled.man.example.net/test#s">
        <rdfs:subPropertyOf rdf:resource="http://oiled.man.example.net/test#f"/>
        <rdfs:subPropertyOf rdf:resource="http://oiled.man.example.net/test#f1"/>
    </owl:ObjectProperty>
    <owl:FunctionalProperty rdf:about="http://oiled.man.example.net/test#s"/>
    <owl:ObjectProperty rdf:about="http://oiled.man.example.net/test#f1"/>
    <owl:FunctionalProperty rdf:about="http://oiled.man.example.net/test#f1"/>
    <rdf:Description>
        <rdf:type rdf:resource="http://oiled.man.example.net/test#Satisfiable"/>
    </rdf:Description>
</rdf:RDF>
<description-logic/consistent009> rdf:type owl:Ontology .
oiled:Satisfiable rdf:type owl:Class .
_:a rdf:type owl:Class .
_:c rdf:type owl:Restriction .
_:c owl:onProperty oiled:f .
oiled:p rdf:type owl:Class .
_:c owl:someValuesFrom oiled:p .
_:e rdf:type owl:Restriction .
_:e owl:onProperty oiled:f1 .
_:g rdf:type owl:Class .
oiled:p rdf:type owl:Class .
_:g owl:complementOf oiled:p .
_:e owl:someValuesFrom _:g .
_:i rdf:first _:e .
_:i rdf:rest rdf:nil .
_:k rdf:first _:c .
_:k rdf:rest _:i .
_:a owl:intersectionOf _:k .
oiled:Satisfiable owl:equivalentClass _:a .
oiled:p rdf:type owl:Class .
oiled:invF rdf:type owl:ObjectProperty .
oiled:invF owl:inverseOf oiled:f .
oiled:invS rdf:type owl:ObjectProperty .
oiled:invS owl:inverseOf oiled:s .
oiled:invF1 rdf:type owl:ObjectProperty .
oiled:invF1 owl:inverseOf oiled:f1 .
oiled:f rdf:type owl:ObjectProperty .
oiled:f rdf:type owl:FunctionalProperty .
oiled:s rdf:type owl:ObjectProperty .
oiled:s rdfs:subPropertyOf oiled:f .
oiled:s rdfs:subPropertyOf oiled:f1 .
oiled:s rdf:type owl:FunctionalProperty .
oiled:f1 rdf:type owl:ObjectProperty .
oiled:f1 rdf:type owl:FunctionalProperty .
_:m rdf:type oiled:Satisfiable .

DL FullInconsistent document.010
Description: (informative) <description-logic/Manifest010#test>
DL Test: t10.2
N3 format is informative.
DLInconsistent: <description-logic/inconsistent010>
<rdf:RDF
    xml:base="http://www.w3.org/2002/03owlt/description-logic/inconsistent010"
    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:Class>
                        <owl:complementOf>
                            <owl:Class rdf:about="http://oiled.man.example.net/test#p"/>
                        </owl:complementOf>
                    </owl:Class>
                    <owl:Restriction>
                        <owl:onProperty rdf:resource="http://oiled.man.example.net/test#f"/>
                        <owl:someValuesFrom>
                            <owl:Class>
                                <owl:intersectionOf rdf:parseType="Collection">
                                    <owl:Restriction>
                                    <owl:onProperty rdf:resource="http://oiled.man.example.net/test#invS"/>
                                    <owl:allValuesFrom>
                                    <owl:Class rdf:about="http://oiled.man.example.net/test#p"/>
                                    </owl:allValuesFrom>
                                    </owl:Restriction>
                                    <owl:Restriction>
                                    <owl:onProperty rdf:resource="http://oiled.man.example.net/test#invF"/>
                                    <owl:allValuesFrom>
                                    <owl:Restriction>
                                    <owl:onProperty rdf:resource="http://oiled.man.example.net/test#s"/>
                                    <owl:someValuesFrom>
                                    <owl:Class rdf:about="http://oiled.man.example.net/test#p"/>
                                    </owl:someValuesFrom>
                                    </owl:Restriction>
                                    </owl:allValuesFrom>
                                    </owl:Restriction>
                                </owl:intersectionOf>
                            </owl:Class>
                        </owl:someValuesFrom>
                    </owl:Restriction>
                </owl:intersectionOf>
            </owl:Class>
        </owl:equivalentClass>
    </owl:Class>
    <owl:Class rdf:about="http://oiled.man.example.net/test#p"/>
    <owl:ObjectProperty rdf:about="http://oiled.man.example.net/test#invF">
        <owl:inverseOf rdf:resource="http://oiled.man.example.net/test#f"/>
    </owl:ObjectProperty>
    <owl:ObjectProperty rdf:about="http://oiled.man.example.net/test#invS">
        <owl:inverseOf rdf:resource="http://oiled.man.example.net/test#s"/>
    </owl:ObjectProperty>
    <owl:ObjectProperty rdf:about="http://oiled.man.example.net/test#invF1">
        <owl:inverseOf rdf:resource="http://oiled.man.example.net/test#f1"/>
    </owl:ObjectProperty>
    <owl:ObjectProperty rdf:about="http://oiled.man.example.net/test#f"/>
    <owl:FunctionalProperty rdf:about="http://oiled.man.example.net/test#f"/>
    <owl:ObjectProperty rdf:about="http://oiled.man.example.net/test#s">
        <rdfs:subPropertyOf rdf:resource="http://oiled.man.example.net/test#f"/>
        <rdfs:subPropertyOf rdf:resource="http://oiled.man.example.net/test#f1"/>
    </owl:ObjectProperty>
    <owl:FunctionalProperty rdf:about="http://oiled.man.example.net/test#s"/>
    <owl:ObjectProperty rdf:about="http://oiled.man.example.net/test#f1"/>
    <owl:FunctionalProperty rdf:about="http://oiled.man.example.net/test#f1"/>
    <rdf:Description>
        <rdf:type rdf:resource="http://oiled.man.example.net/test#Unsatisfiable"/>
    </rdf:Description>
</rdf:RDF>
<description-logic/inconsistent010> rdf:type owl:Ontology .
oiled:Unsatisfiable rdf:type owl:Class .
_:a rdf:type owl:Class .
_:c rdf:type owl:Class .
oiled:p rdf:type owl:Class .
_:c owl:complementOf oiled:p .
_:e rdf:type owl:Restriction .
_:e owl:onProperty oiled:f .
_:g rdf:type owl:Class .
_:i rdf:type owl:Restriction .
_:i owl:onProperty oiled:invS .
oiled:p rdf:type owl:Class .
_:i owl:allValuesFrom oiled:p .
_:k rdf:type owl:Restriction .
_:k owl:onProperty oiled:invF .
_:m rdf:type owl:Restriction .
_:m owl:onProperty oiled:s .
oiled:p rdf:type owl:Class .
_:m owl:someValuesFrom oiled:p .
_:k owl:allValuesFrom _:m .
_:o rdf:first _:k .
_:o rdf:rest rdf:nil .
_:q rdf:first _:i .
_:q rdf:rest _:o .
_:g owl:intersectionOf _:q .
_:e owl:someValuesFrom _:g .
_:s rdf:first _:e .
_:s rdf:rest rdf:nil .
_:u rdf:first _:c .
_:u rdf:rest _:s .
_:a owl:intersectionOf _:u .
oiled:Unsatisfiable owl:equivalentClass _:a .
oiled:p rdf:type owl:Class .
oiled:invF rdf:type owl:ObjectProperty .
oiled:invF owl:inverseOf oiled:f .
oiled:invS rdf:type owl:ObjectProperty .
oiled:invS owl:inverseOf oiled:s .
oiled:invF1 rdf:type owl:ObjectProperty .
oiled:invF1 owl:inverseOf oiled:f1 .
oiled:f rdf:type owl:ObjectProperty .
oiled:f rdf:type owl:FunctionalProperty .
oiled:s rdf:type owl:ObjectProperty .
oiled:s rdfs:subPropertyOf oiled:f .
oiled:s rdfs:subPropertyOf oiled:f1 .
oiled:s rdf:type owl:FunctionalProperty .
oiled:f1 rdf:type owl:ObjectProperty .
oiled:f1 rdf:type owl:FunctionalProperty .
_:w rdf:type oiled:Unsatisfiable .

DL FullInconsistent document.011
Description: (informative) <description-logic/Manifest011#test>
DL Test: t10.3
N3 format is informative.
DLInconsistent: <description-logic/inconsistent011>
<rdf:RDF
    xml:base="http://www.w3.org/2002/03owlt/description-logic/inconsistent011"
    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#s"/>
                        <owl:allValuesFrom>
                            <owl:Class>
                                <owl:complementOf>
                                    <owl:Class rdf:about="http://oiled.man.example.net/test#p"/>
                                </owl:complementOf>
                            </owl:Class>
                        </owl:allValuesFrom>
                    </owl:Restriction>
                    <owl:Restriction>
                        <owl:onProperty rdf:resource="http://oiled.man.example.net/test#s"/>
                        <owl:someValuesFrom>
                            <owl:Class>
                                <owl:intersectionOf rdf:parseType="Collection">
                                    <owl:Class rdf:about="http://oiled.man.example.net/test#p"/>
                                    <owl:Restriction>
                                    <owl:onProperty rdf:resource="http://oiled.man.example.net/test#invS"/>
                                    <owl:someValuesFrom>
                                    <owl:Class rdf:about="http://oiled.man.example.net/test#p"/>
                                    </owl:someValuesFrom>
                                    </owl:Restriction>
                                </owl:intersectionOf>
                            </owl:Class>
                        </owl:someValuesFrom>
                    </owl:Restriction>
                </owl:intersectionOf>
            </owl:Class>
        </owl:equivalentClass>
    </owl:Class>
    <owl:Class rdf:about="http://oiled.man.example.net/test#p"/>
    <owl:ObjectProperty rdf:about="http://oiled.man.example.net/test#invF">
        <owl:inverseOf rdf:resource="http://oiled.man.example.net/test#f"/>
    </owl:ObjectProperty>
    <owl:ObjectProperty rdf:about="http://oiled.man.example.net/test#invS">
        <owl:inverseOf rdf:resource="http://oiled.man.example.net/test#s"/>
    </owl:ObjectProperty>
    <owl:ObjectProperty rdf:about="http://oiled.man.example.net/test#invF1">
        <owl:inverseOf rdf:resource="http://oiled.man.example.net/test#f1"/>
    </owl:ObjectProperty>
    <owl:ObjectProperty rdf:about="http://oiled.man.example.net/test#f"/>
    <owl:FunctionalProperty rdf:about="http://oiled.man.example.net/test#f"/>
    <owl:ObjectProperty rdf:about="http://oiled.man.example.net/test#s">
        <rdfs:subPropertyOf rdf:resource="http://oiled.man.example.net/test#f"/>
        <rdfs:subPropertyOf rdf:resource="http://oiled.man.example.net/test#f1"/>
    </owl:ObjectProperty>
    <owl:FunctionalProperty rdf:about="http://oiled.man.example.net/test#s"/>
    <owl:ObjectProperty rdf:about="http://oiled.man.example.net/test#f1"/>
    <owl:FunctionalProperty rdf:about="http://oiled.man.example.net/test#f1"/>
    <rdf:Description>
        <rdf:type rdf:resource="http://oiled.man.example.net/test#Unsatisfiable"/>
    </rdf:Description>
</rdf:RDF>
<description-logic/inconsistent011> rdf:type owl:Ontology .
oiled:Unsatisfiable rdf:type owl:Class .
_:a rdf:type owl:Class .
_:c rdf:type owl:Restriction .
_:c owl:onProperty oiled:s .
_:e rdf:type owl:Class .
oiled:p rdf:type owl:Class .
_:e owl:complementOf oiled:p .
_:c owl:allValuesFrom _:e .
_:g rdf:type owl:Restriction .
_:g owl:onProperty oiled:s .
_:i rdf:type owl:Class .
oiled:p rdf:type owl:Class .
_:k rdf:type owl:Restriction .
_:k owl:onProperty oiled:invS .
oiled:p rdf:type owl:Class .
_:k owl:someValuesFrom oiled:p .
_:m rdf:first _:k .
_:m rdf:rest rdf:nil .
_:o rdf:first oiled:p .
_:o rdf:rest _:m .
_:i owl:intersectionOf _:o .
_:g owl:someValuesFrom _:i .
_:q rdf:first _:g .
_:q rdf:rest rdf:nil .
_:s rdf:first _:c .
_:s rdf:rest _:q .
_:a owl:intersectionOf _:s .
oiled:Unsatisfiable owl:equivalentClass _:a .
oiled:p rdf:type owl:Class .
oiled:invF rdf:type owl:ObjectProperty .
oiled:invF owl:inverseOf oiled:f .
oiled:invS rdf:type owl:ObjectProperty .
oiled:invS owl:inverseOf oiled:s .
oiled:invF1 rdf:type owl:ObjectProperty .
oiled:invF1 owl:inverseOf oiled:f1 .
oiled:f rdf:type owl:ObjectProperty .
oiled:f rdf:type owl:FunctionalProperty .
oiled:s rdf:type owl:ObjectProperty .
oiled:s rdfs:subPropertyOf oiled:f .
oiled:s rdfs:subPropertyOf oiled:f1 .
oiled:s rdf:type owl:FunctionalProperty .
oiled:f1 rdf:type owl:ObjectProperty .
oiled:f1 rdf:type owl:FunctionalProperty .
_:u rdf:type oiled:Unsatisfiable .

DL FullInconsistent document.012
Description: (informative) <description-logic/Manifest012#test>
DL Test: t10.4
N3 format is informative.
DLInconsistent: <description-logic/inconsistent012>
<rdf:RDF
    xml:base="http://www.w3.org/2002/03owlt/description-logic/inconsistent012"
    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#f"/>
                        <owl:someValuesFrom>
                            <owl:Class rdf:about="http://oiled.man.example.net/test#p"/>
                        </owl:someValuesFrom>
                    </owl:Restriction>
                    <owl:Restriction>
                        <owl:onProperty rdf:resource="http://oiled.man.example.net/test#s"/>
                        <owl:someValuesFrom>
                            <owl:Class rdf:about="http://www.w3.org/2002/07/owl#Thing"/>
                        </owl:someValuesFrom>
                    </owl:Restriction>
                    <owl:Restriction>
                        <owl:onProperty rdf:resource="http://oiled.man.example.net/test#f1"/>
                        <owl:someValuesFrom>
                            <owl:Class>
                                <owl:complementOf>
                                    <owl:Class rdf:about="http://oiled.man.example.net/test#p"/>
                                </owl:complementOf>
                            </owl:Class>
                        </owl:someValuesFrom>
                    </owl:Restriction>
                </owl:intersectionOf>
            </owl:Class>
        </owl:equivalentClass>
    </owl:Class>
    <owl:Class rdf:about="http://oiled.man.example.net/test#p"/>
    <owl:ObjectProperty rdf:about="http://oiled.man.example.net/test#invF">
        <owl:inverseOf rdf:resource="http://oiled.man.example.net/test#f"/>
    </owl:ObjectProperty>
    <owl:ObjectProperty rdf:about="http://oiled.man.example.net/test#invS">
        <owl:inverseOf rdf:resource="http://oiled.man.example.net/test#s"/>
    </owl:ObjectProperty>
    <owl:ObjectProperty rdf:about="http://oiled.man.example.net/test#invF1">
        <owl:inverseOf rdf:resource="http://oiled.man.example.net/test#f1"/>
    </owl:ObjectProperty>
    <owl:ObjectProperty rdf:about="http://oiled.man.example.net/test#f"/>
    <owl:FunctionalProperty rdf:about="http://oiled.man.example.net/test#f"/>
    <owl:ObjectProperty rdf:about="http://oiled.man.example.net/test#s">
        <rdfs:subPropertyOf rdf:resource="http://oiled.man.example.net/test#f"/>
        <rdfs:subPropertyOf rdf:resource="http://oiled.man.example.net/test#f1"/>
    </owl:ObjectProperty>
    <owl:FunctionalProperty rdf:about="http://oiled.man.example.net/test#s"/>
    <owl:ObjectProperty rdf:about="http://oiled.man.example.net/test#f1"/>
    <owl:FunctionalProperty rdf:about="http://oiled.man.example.net/test#f1"/>
    <rdf:Description>
        <rdf:type rdf:resource="http://oiled.man.example.net/test#Unsatisfiable"/>
    </rdf:Description>
</rdf:RDF>
<description-logic/inconsistent012> rdf:type owl:Ontology .
oiled:Unsatisfiable rdf:type owl:Class .
_:a rdf:type owl:Class .
_:c rdf:type owl:Restriction .
_:c owl:onProperty oiled:f .
oiled:p rdf:type owl:Class .
_:c owl:someValuesFrom oiled:p .
_:e rdf:type owl:Restriction .
_:e owl:onProperty oiled:s .
owl:Thing rdf:type owl:Class .
_:e owl:someValuesFrom owl:Thing .
_:g rdf:type owl:Restriction .
_:g owl:onProperty oiled:f1 .
_:i rdf:type owl:Class .
oiled:p rdf:type owl:Class .
_:i owl:complementOf oiled:p .
_:g owl:someValuesFrom _:i .
_:k rdf:first _:g .
_:k rdf:rest rdf:nil .
_:m rdf:first _:e .
_:m rdf:rest _:k .
_:o rdf:first _:c .
_:o rdf:rest _:m .
_:a owl:intersectionOf _:o .
oiled:Unsatisfiable owl:equivalentClass _:a .
oiled:p rdf:type owl:Class .
oiled:invF rdf:type owl:ObjectProperty .
oiled:invF owl:inverseOf oiled:f .
oiled:invS rdf:type owl:ObjectProperty .
oiled:invS owl:inverseOf oiled:s .
oiled:invF1 rdf:type owl:ObjectProperty .
oiled:invF1 owl:inverseOf oiled:f1 .
oiled:f rdf:type owl:ObjectProperty .
oiled:f rdf:type owl:FunctionalProperty .
oiled:s rdf:type owl:ObjectProperty .
oiled:s rdfs:subPropertyOf oiled:f .
oiled:s rdfs:subPropertyOf oiled:f1 .
oiled:s rdf:type owl:FunctionalProperty .
oiled:f1 rdf:type owl:ObjectProperty .
oiled:f1 rdf:type owl:FunctionalProperty .
_:q rdf:type oiled:Unsatisfiable .

DL FullInconsistent document.013
Description: (informative) <description-logic/Manifest013#test>
DL Test: t10.5
N3 format is informative.
DLInconsistent: <description-logic/inconsistent013>
<rdf:RDF
    xml:base="http://www.w3.org/2002/03owlt/description-logic/inconsistent013"
    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#f"/>
                        <owl:someValuesFrom>
                            <owl:Class rdf:about="http://oiled.man.example.net/test#p"/>
                        </owl:someValuesFrom>
                    </owl:Restriction>
                    <owl:Restriction>
                        <owl:onProperty rdf:resource="http://oiled.man.example.net/test#f1"/>
                        <owl:someValuesFrom>
                            <owl:Class>
                                <owl:intersectionOf rdf:parseType="Collection">
                                    <owl:Class>
                                    <owl:complementOf>
                                    <owl:Class rdf:about="http://oiled.man.example.net/test#p"/>
                                    </owl:complementOf>
                                    </owl:Class>
                                    <owl:Restriction>
                                    <owl:onProperty rdf:resource="http://oiled.man.example.net/test#invF1"/>
                                    <owl:allValuesFrom>
                                    <owl:Restriction>
                                    <owl:onProperty rdf:resource="http://oiled.man.example.net/test#s"/>
                                    <owl:someValuesFrom>
                                    <owl:Class rdf:about="http://www.w3.org/2002/07/owl#Thing"/>
                                    </owl:someValuesFrom>
                                    </owl:Restriction>
                                    </owl:allValuesFrom>
                                    </owl:Restriction>
                                </owl:intersectionOf>
                            </owl:Class>
                        </owl:someValuesFrom>
                    </owl:Restriction>
                </owl:intersectionOf>
            </owl:Class>
        </owl:equivalentClass>
    </owl:Class>
    <owl:Class rdf:about="http://oiled.man.example.net/test#p"/>
    <owl:ObjectProperty rdf:about="http://oiled.man.example.net/test#invF">
        <owl:inverseOf rdf:resource="http://oiled.man.example.net/test#f"/>
    </owl:ObjectProperty>
    <owl:ObjectProperty rdf:about="http://oiled.man.example.net/test#invS">
        <owl:inverseOf rdf:resource="http://oiled.man.example.net/test#s"/>
    </owl:ObjectProperty>
    <owl:ObjectProperty rdf:about="http://oiled.man.example.net/test#invF1">
        <owl:inverseOf rdf:resource="http://oiled.man.example.net/test#f1"/>
    </owl:ObjectProperty>
    <owl:ObjectProperty rdf:about="http://oiled.man.example.net/test#f"/>
    <owl:FunctionalProperty rdf:about="http://oiled.man.example.net/test#f"/>
    <owl:ObjectProperty rdf:about="http://oiled.man.example.net/test#s">
        <rdfs:subPropertyOf rdf:resource="http://oiled.man.example.net/test#f"/>
        <rdfs:subPropertyOf rdf:resource="http://oiled.man.example.net/test#f1"/>
    </owl:ObjectProperty>
    <owl:FunctionalProperty rdf:about="http://oiled.man.example.net/test#s"/>
    <owl:ObjectProperty rdf:about="http://oiled.man.example.net/test#f1"/>
    <owl:FunctionalProperty rdf:about="http://oiled.man.example.net/test#f1"/>
    <rdf:Description>
        <rdf:type rdf:resource="http://oiled.man.example.net/test#Unsatisfiable"/>
    </rdf:Description>
</rdf:RDF>
<description-logic/inconsistent013> rdf:type owl:Ontology .
oiled:Unsatisfiable rdf:type owl:Class .
_:a rdf:type owl:Class .
_:c rdf:type owl:Restriction .
_:c owl:onProperty oiled:f .
oiled:p rdf:type owl:Class .
_:c owl:someValuesFrom oiled:p .
_:e rdf:type owl:Restriction .
_:e owl:onProperty oiled:f1 .
_:g rdf:type owl:Class .
_:i rdf:type owl:Class .
oiled:p rdf:type owl:Class .
_:i owl:complementOf oiled:p .
_:k rdf:type owl:Restriction .
_:k owl:onProperty oiled:invF1 .
_:m rdf:type owl:Restriction .
_:m owl:onProperty oiled:s .
owl:Thing rdf:type owl:Class .
_:m owl:someValuesFrom owl:Thing .
_:k owl:allValuesFrom _:m .
_:o rdf:first _:k .
_:o rdf:rest rdf:nil .
_:q rdf:first _:i .
_:q rdf:rest _:o .
_:g owl:intersectionOf _:q .
_:e owl:someValuesFrom _:g .
_:s rdf:first _:e .
_:s rdf:rest rdf:nil .
_:u rdf:first _:c .
_:u rdf:rest _:s .
_:a owl:intersectionOf _:u .
oiled:Unsatisfiable owl:equivalentClass _:a .
oiled:p rdf:type owl:Class .
oiled:invF rdf:type owl:ObjectProperty .
oiled:invF owl:inverseOf oiled:f .
oiled:invS rdf:type owl:ObjectProperty .
oiled:invS owl:inverseOf oiled:s .
oiled:invF1 rdf:type owl:ObjectProperty .
oiled:invF1 owl:inverseOf oiled:f1 .
oiled:f rdf:type owl:ObjectProperty .
oiled:f rdf:type owl:FunctionalProperty .
oiled:s rdf:type owl:ObjectProperty .
oiled:s rdfs:subPropertyOf oiled:f .
oiled:s rdfs:subPropertyOf oiled:f1 .
oiled:s rdf:type owl:FunctionalProperty .
oiled:f1 rdf:type owl:ObjectProperty .
oiled:f1 rdf:type owl:FunctionalProperty .
_:w rdf:type oiled:Unsatisfiable .

DL FullInconsistent document.014
Description: (informative) <description-logic/Manifest014#test>
DL Test: t11.1
N3 format is informative.
DLInconsistent: <description-logic/inconsistent014>
<rdf:RDF
    xml:base="http://www.w3.org/2002/03owlt/description-logic/inconsistent014"
    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:Class>
                        <owl:complementOf>
                            <owl:Class rdf:about="http://oiled.man.example.net/test#p"/>
                        </owl:complementOf>
                    </owl:Class>
                    <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:Restriction>
                        <owl:onProperty rdf:resource="http://oiled.man.example.net/test#r"/>
                        <owl:someValuesFrom>
                            <owl:Restriction>
                                <owl:onProperty rdf:resource="http://oiled.man.example.net/test#invS"/>
                                <owl:allValuesFrom>
                                    <owl:Class rdf:about="http://oiled.man.example.net/test#p"/>
                                </owl:allValuesFrom>
                            </owl:Restriction>
                        </owl:someValuesFrom>
                    </owl:Restriction>
                    <owl:Restriction>
                        <owl:onProperty rdf:resource="http://oiled.man.example.net/test#s"/>
                        <owl:someValuesFrom>
                            <owl:Class rdf:about="http://oiled.man.example.net/test#p"/>
                        </owl:someValuesFrom>
                    </owl:Restriction>
                </owl:intersectionOf>
            </owl:Class>
        </owl:equivalentClass>
    </owl:Class>
    <owl:Class rdf:about="http://oiled.man.example.net/test#p"/>
    <owl:ObjectProperty rdf:about="http://oiled.man.example.net/test#invS">
        <owl:inverseOf rdf:resource="http://oiled.man.example.net/test#s"/>
    </owl:ObjectProperty>
    <owl:ObjectProperty rdf:about="http://oiled.man.example.net/test#r"/>
    <owl:ObjectProperty rdf:about="http://oiled.man.example.net/test#s">
        <rdfs:subPropertyOf rdf:resource="http://oiled.man.example.net/test#r"/>
    </owl:ObjectProperty>
    <rdf:Description>
        <rdf:type rdf:resource="http://oiled.man.example.net/test#Unsatisfiable"/>
    </rdf:Description>
</rdf:RDF>
<description-logic/inconsistent014> rdf:type owl:Ontology .
oiled:Unsatisfiable rdf:type owl:Class .
_:a rdf:type owl:Class .
_:c rdf:type owl:Class .
oiled:p rdf:type owl:Class .
_:c owl:complementOf oiled:p .
_:e rdf:type owl:Restriction .
_:e owl:onProperty oiled:r .
_:e owl:maxCardinality "1"^^xsd:nonNegativeInteger  .
_:g rdf:type owl:Restriction .
_:g owl:onProperty oiled:r .
_:i rdf:type owl:Restriction .
_:i owl:onProperty oiled:invS .
oiled:p rdf:type owl:Class .
_:i owl:allValuesFrom oiled:p .
_:g owl:someValuesFrom _:i .
_:k rdf:type owl:Restriction .
_:k owl:onProperty oiled:s .
oiled:p rdf:type owl:Class .
_:k owl:someValuesFrom oiled:p .
_:m rdf:first _:k .
_:m rdf:rest rdf:nil .
_:o rdf:first _:g .
_:o rdf:rest _:m .
_:q rdf:first _:e .
_:q rdf:rest _:o .
_:s rdf:first _:c .
_:s rdf:rest _:q .
_:a owl:intersectionOf _:s .
oiled:Unsatisfiable owl:equivalentClass _:a .
oiled:p rdf:type owl:Class .
oiled:invS rdf:type owl:ObjectProperty .
oiled:invS owl:inverseOf oiled:s .
oiled:r rdf:type owl:ObjectProperty .
oiled:s rdf:type owl:ObjectProperty .
oiled:s rdfs:subPropertyOf oiled:r .
_:u rdf:type oiled:Unsatisfiable .

DL FullInconsistent document.015
Description: (informative) <description-logic/Manifest015#test>
DL Test: t12.1
N3 format is informative.
DLInconsistent: <description-logic/inconsistent015>
<rdf:RDF
    xml:base="http://www.w3.org/2002/03owlt/description-logic/inconsistent015"
    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#s"/>
                        <owl:someValuesFrom>
                            <owl:Class>
                                <owl:intersectionOf rdf:parseType="Collection">
                                    <owl:Class>
                                    <owl:complementOf>
                                    <owl:Class rdf:about="http://oiled.man.example.net/test#p"/>
                                    </owl:complementOf>
                                    </owl:Class>
                                    <owl:Class>
                                    <owl:complementOf>
                                    <owl:Class rdf:about="http://oiled.man.example.net/test#q"/>
                                    </owl:complementOf>
                                    </owl:Class>
                                </owl:intersectionOf>
                            </owl:Class>
                        </owl:someValuesFrom>
                    </owl:Restriction>
                    <owl:Restriction>
                        <owl:onProperty rdf:resource="http://oiled.man.example.net/test#r"/>
                        <owl:someValuesFrom>
                            <owl:Class>
                                <owl:intersectionOf rdf:parseType="Collection">
                                    <owl:Restriction>
                                    <owl:onProperty rdf:resource="http://oiled.man.example.net/test#invR"/>
                                    <owl:maxCardinality rdf:datatype="http://www.w3.org/2001/XMLSchema#nonNegativeInteger">1</owl:maxCardinality>
                                    </owl:Restriction>
                                    <owl:Restriction>
                                    <owl:onProperty rdf:resource="http://oiled.man.example.net/test#invR"/>
                                    <owl:someValuesFrom>
                                    <owl:Restriction>
                                    <owl:onProperty rdf:resource="http://oiled.man.example.net/test#s"/>
                                    <owl:allValuesFrom>
                                    <owl:Class rdf:about="http://oiled.man.example.net/test#p"/>
                                    </owl:allValuesFrom>
                                    </owl:Restriction>
                                    </owl:someValuesFrom>
                                    </owl:Restriction>
                                </owl:intersectionOf>
                            </owl:Class>
                        </owl:someValuesFrom>
                    </owl:Restriction>
                </owl:intersectionOf>
            </owl:Class>
        </owl:equivalentClass>
    </owl:Class>
    <owl:Class rdf:about="http://oiled.man.example.net/test#p"/>
    <owl:Class rdf:about="http://oiled.man.example.net/test#q"/>
    <owl:ObjectProperty rdf:about="http://oiled.man.example.net/test#invR">
        <owl:inverseOf rdf:resource="http://oiled.man.example.net/test#r"/>
    </owl:ObjectProperty>
    <owl:ObjectProperty rdf:about="http://oiled.man.example.net/test#r"/>
    <owl:ObjectProperty rdf:about="http://oiled.man.example.net/test#s"/>
    <rdf:Description>
        <rdf:type rdf:resource="http://oiled.man.example.net/test#Unsatisfiable"/>
    </rdf:Description>
</rdf:RDF>
<description-logic/inconsistent015> rdf:type owl:Ontology .
oiled:Unsatisfiable rdf:type owl:Class .
_:a rdf:type owl:Class .
_:c rdf:type owl:Restriction .
_:c owl:onProperty oiled:s .
_:e rdf:type owl:Class .
_:g rdf:type owl:Class .
oiled:p rdf:type owl:Class .
_:g owl:complementOf oiled:p .
_:i rdf:type owl:Class .
oiled:q rdf:type owl:Class .
_:i owl:complementOf oiled:q .
_:k rdf:first _:i .
_:k rdf:rest rdf:nil .
_:m rdf:first _:g .
_:m rdf:rest _:k .
_:e owl:intersectionOf _:m .
_:c owl:someValuesFrom _:e .
_:o rdf:type owl:Restriction .
_:o owl:onProperty oiled:r .
_:q rdf:type owl:Class .
_:s rdf:type owl:Restriction .
_:s owl:onProperty oiled:invR .
_:s owl:maxCardinality "1"^^xsd:nonNegativeInteger  .
_:u rdf:type owl:Restriction .
_:u owl:onProperty oiled:invR .
_:w rdf:type owl:Restriction .
_:w owl:onProperty oiled:s .
oiled:p rdf:type owl:Class .
_:w owl:allValuesFrom oiled:p .
_:u owl:someValuesFrom _:w .
_:y rdf:first _:u .
_:y rdf:rest rdf:nil .
_:a1 rdf:first _:s .
_:a1 rdf:rest _:y .
_:q owl:intersectionOf _:a1 .
_:o owl:someValuesFrom _:q .
_:c1 rdf:first _:o .
_:c1 rdf:rest rdf:nil .
_:e1 rdf:first _:c .
_:e1 rdf:rest _:c1 .
_:a owl:intersectionOf _:e1 .
oiled:Unsatisfiable owl:equivalentClass _:a .
oiled:p rdf:type owl:Class .
oiled:q rdf:type owl:Class .
oiled:invR rdf:type owl:ObjectProperty .
oiled:invR owl:inverseOf oiled:r .
oiled:r rdf:type owl:ObjectProperty .
oiled:s rdf:type owl:ObjectProperty .
_:g1 rdf:type oiled:Unsatisfiable .

DL FullConsistent document.016
Description: (informative) <description-logic/Manifest016#test>
DL Test: t2.1
N3 format is informative.
DLConsistent: <description-logic/consistent016>
<rdf:RDF
    xml:base="http://www.w3.org/2002/03owlt/description-logic/consistent016"
    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#Satisfiable">
        <owl:equivalentClass>
            <owl:Class>
                <owl:intersectionOf rdf:parseType="Collection">
                    <owl:Restriction>
                        <owl:onProperty rdf:resource="http://oiled.man.example.net/test#f1"/>
                        <owl:someValuesFrom>
                            <owl:Class rdf:about="http://oiled.man.example.net/test#p1"/>
                        </owl:someValuesFrom>
                    </owl:Restriction>
                    <owl:Restriction>
                        <owl:onProperty rdf:resource="http://oiled.man.example.net/test#f2"/>
                        <owl:someValuesFrom>
                            <owl:Class rdf:about="http://oiled.man.example.net/test#p2"/>
                        </owl:someValuesFrom>
                    </owl:Restriction>
                </owl:intersectionOf>
            </owl:Class>
        </owl:equivalentClass>
    </owl:Class>
    <owl:Class rdf:about="http://oiled.man.example.net/test#p1">
        <rdfs:subClassOf>
            <owl:Class>
                <owl:complementOf>
                    <owl:Class rdf:about="http://oiled.man.example.net/test#p2"/>
                </owl:complementOf>
            </owl:Class>
        </rdfs:subClassOf>
    </owl:Class>
    <owl:Class rdf:about="http://oiled.man.example.net/test#p2"/>
    <owl:ObjectProperty rdf:about="http://oiled.man.example.net/test#r">
        <rdfs:subPropertyOf rdf:resource="http://oiled.man.example.net/test#f2"/>
        <rdfs:subPropertyOf rdf:resource="http://oiled.man.example.net/test#f1"/>
    </owl:ObjectProperty>
    <owl:ObjectProperty rdf:about="http://oiled.man.example.net/test#f1"/>
    <owl:ObjectProperty rdf:about="http://oiled.man.example.net/test#f2"/>
<rdf:Description rdf:about='http://www.w3.org/2002/07/owl#Thing' >
        <rdfs:subClassOf>
            <owl:Restriction>
                <owl:onProperty rdf:resource="http://oiled.man.example.net/test#f1"/>
                <owl:maxCardinality rdf:datatype="http://www.w3.org/2001/XMLSchema#nonNegativeInteger">1</owl:maxCardinality>
            </owl:Restriction>
        </rdfs:subClassOf>
</rdf:Description>
<rdf:Description rdf:about='http://www.w3.org/2002/07/owl#Thing' >
        <rdfs:subClassOf>
            <owl:Restriction>
                <owl:onProperty rdf:resource="http://oiled.man.example.net/test#f2"/>
                <owl:maxCardinality rdf:datatype="http://www.w3.org/2001/XMLSchema#nonNegativeInteger">1</owl:maxCardinality>
            </owl:Restriction>
        </rdfs:subClassOf>
</rdf:Description>
    <rdf:Description>
        <rdf:type rdf:resource="http://oiled.man.example.net/test#Satisfiable"/>
    </rdf:Description>
</rdf:RDF>
<description-logic/consistent016> rdf:type owl:Ontology .
oiled:Satisfiable rdf:type owl:Class .
_:a rdf:type owl:Class .
_:c rdf:type owl:Restriction .
_:c owl:onProperty oiled:f1 .
oiled:p1 rdf:type owl:Class .
_:c owl:someValuesFrom oiled:p1 .
_:e rdf:type owl:Restriction .
_:e owl:onProperty oiled:f2 .
oiled:p2 rdf:type owl:Class .
_:e owl:someValuesFrom oiled:p2 .
_:g rdf:first _:e .
_:g rdf:rest rdf:nil .
_:i rdf:first _:c .
_:i rdf:rest _:g .
_:a owl:intersectionOf _:i .
oiled:Satisfiable owl:equivalentClass _:a .
oiled:p1 rdf:type owl:Class .
_:k rdf:type owl:Class .
oiled:p2 rdf:type owl:Class .
_:k owl:complementOf oiled:p2 .
oiled:p1 rdfs:subClassOf _:k .
oiled:p2 rdf:type owl:Class .
oiled:r rdf:type owl:ObjectProperty .
oiled:r rdfs:subPropertyOf oiled:f2 .
oiled:r rdfs:subPropertyOf oiled:f1 .
oiled:f1 rdf:type owl:ObjectProperty .
oiled:f2 rdf:type owl:ObjectProperty .
_:m rdf:type owl:Restriction .
_:m owl:onProperty oiled:f1 .
_:m owl:maxCardinality "1"^^xsd:nonNegativeInteger  .
owl:Thing rdfs:subClassOf _:m .
_:o rdf:type owl:Restriction .
_:o owl:onProperty oiled:f2 .
_:o owl:maxCardinality "1"^^xsd:nonNegativeInteger  .
owl:Thing rdfs:subClassOf _:o .
_:q rdf:type oiled:Satisfiable .

DL FullInconsistent document.017
Description: (informative) <description-logic/Manifest017#test>
DL Test: t2.2
N3 format is informative.
DLInconsistent: <description-logic/inconsistent017>
<rdf:RDF
    xml:base="http://www.w3.org/2002/03owlt/description-logic/inconsistent017"
    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#f1"/>
                        <owl:someValuesFrom>
                            <owl:Class rdf:about="http://oiled.man.example.net/test#p1"/>
                        </owl:someValuesFrom>
                    </owl:Restriction>
                    <owl:Restriction>
                        <owl:onProperty rdf:resource="http://oiled.man.example.net/test#f2"/>
                        <owl:someValuesFrom>
                            <owl:Class rdf:about="http://oiled.man.example.net/test#p2"/>
                        </owl:someValuesFrom>
                    </owl:Restriction>
                    <owl:Restriction>
                        <owl:onProperty rdf:resource="http://oiled.man.example.net/test#r"/>
                        <owl:someValuesFrom>
                            <owl:Class rdf:about="http://www.w3.org/2002/07/owl#Thing"/>
                        </owl:someValuesFrom>
                    </owl:Restriction>
                </owl:intersectionOf>
            </owl:Class>
        </owl:equivalentClass>
    </owl:Class>
    <owl:Class rdf:about="http://oiled.man.example.net/test#p1">
        <rdfs:subClassOf>
            <owl:Class>
                <owl:complementOf>
                    <owl:Class rdf:about="http://oiled.man.example.net/test#p2"/>
                </owl:complementOf>
            </owl:Class>
        </rdfs:subClassOf>
    </owl:Class>
    <owl:Class rdf:about="http://oiled.man.example.net/test#p2"/>
    <owl:ObjectProperty rdf:about="http://oiled.man.example.net/test#r">
        <rdfs:subPropertyOf rdf:resource="http://oiled.man.example.net/test#f2"/>
        <rdfs:subPropertyOf rdf:resource="http://oiled.man.example.net/test#f1"/>
    </owl:ObjectProperty>
    <owl:ObjectProperty rdf:about="http://oiled.man.example.net/test#f1"/>
    <owl:ObjectProperty rdf:about="http://oiled.man.example.net/test#f2"/>
<rdf:Description rdf:about='http://www.w3.org/2002/07/owl#Thing' >
        <rdfs:subClassOf>
            <owl:Restriction>
                <owl:onProperty rdf:resource="http://oiled.man.example.net/test#f1"/>
                <owl:maxCardinality rdf:datatype="http://www.w3.org/2001/XMLSchema#nonNegativeInteger">1</owl:maxCardinality>
            </owl:Restriction>
        </rdfs:subClassOf>
</rdf:Description>
<rdf:Description rdf:about='http://www.w3.org/2002/07/owl#Thing' >
        <rdfs:subClassOf>
            <owl:Restriction>
                <owl:onProperty rdf:resource="http://oiled.man.example.net/test#f2"/>
                <owl:maxCardinality rdf:datatype="http://www.w3.org/2001/XMLSchema#nonNegativeInteger">1</owl:maxCardinality>
            </owl:Restriction>
        </rdfs:subClassOf>
</rdf:Description>
    <rdf:Description>
        <rdf:type rdf:resource="http://oiled.man.example.net/test#Unsatisfiable"/>
    </rdf:Description>
</rdf:RDF>
<description-logic/inconsistent017> rdf:type owl:Ontology .
oiled:Unsatisfiable rdf:type owl:Class .
_:a rdf:type owl:Class .
_:c rdf:type owl:Restriction .
_:c owl:onProperty oiled:f1 .
oiled:p1 rdf:type owl:Class .
_:c owl:someValuesFrom oiled:p1 .
_:e rdf:type owl:Restriction .
_:e owl:onProperty oiled:f2 .
oiled:p2 rdf:type owl:Class .
_:e owl:someValuesFrom oiled:p2 .
_:g rdf:type owl:Restriction .
_:g owl:onProperty oiled:r .
owl:Thing rdf:type owl:Class .
_:g owl:someValuesFrom owl:Thing .
_:i rdf:first _:g .
_:i rdf:rest rdf:nil .
_:k rdf:first _:e .
_:k rdf:rest _:i .
_:m rdf:first _:c .
_:m rdf:rest _:k .
_:a owl:intersectionOf _:m .
oiled:Unsatisfiable owl:equivalentClass _:a .
oiled:p1 rdf:type owl:Class .
_:o rdf:type owl:Class .
oiled:p2 rdf:type owl:Class .
_:o owl:complementOf oiled:p2 .
oiled:p1 rdfs:subClassOf _:o .
oiled:p2 rdf:type owl:Class .
oiled:r rdf:type owl:ObjectProperty .
oiled:r rdfs:subPropertyOf oiled:f2 .
oiled:r rdfs:subPropertyOf oiled:f1 .
oiled:f1 rdf:type owl:ObjectProperty .
oiled:f2 rdf:type owl:ObjectProperty .
_:q rdf:type owl:Restriction .
_:q owl:onProperty oiled:f1 .
_:q owl:maxCardinality "1"^^xsd:nonNegativeInteger  .
owl:Thing rdfs:subClassOf _:q .
_:s rdf:type owl:Restriction .
_:s owl:onProperty oiled:f2 .
_:s owl:maxCardinality "1"^^xsd:nonNegativeInteger  .
owl:Thing rdfs:subClassOf _:s .
_:u rdf:type oiled:Unsatisfiable .

DL FullConsistent document.018
Description: (informative) <description-logic/Manifest018#test>
DL Test: t3.1 There are 90 possible partitions in the satisfiable case
N3 format is informative.
DLConsistent: <description-logic/consistent018>
<rdf:RDF
    xml:base="http://www.w3.org/2002/03owlt/description-logic/consistent018"
    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#Satisfiable">
        <owl:equivalentClass>
            <owl:Class>
                <owl:intersectionOf rdf:parseType="Collection">
                    <owl:Restriction>
                        <owl:onProperty rdf:resource="http://oiled.man.example.net/test#r"/>
                        <owl:someValuesFrom>
                            <owl:Class rdf:about="http://oiled.man.example.net/test#p1"/>
                        </owl:someValuesFrom>
                    </owl:Restriction>
                    <owl:Restriction>
                        <owl:onProperty rdf:resource="http://oiled.man.example.net/test#r"/>
                        <owl:someValuesFrom>
                            <owl:Class rdf:about="http://oiled.man.example.net/test#p2"/>
                        </owl:someValuesFrom>
                    </owl:Restriction>
                    <owl:Restriction>
                        <owl:onProperty rdf:resource="http://oiled.man.example.net/test#r"/>
                        <owl:someValuesFrom>
                            <owl:Class rdf:about="http://oiled.man.example.net/test#p3"/>
                        </owl:someValuesFrom>
                    </owl:Restriction>
                    <owl:Restriction>
                        <owl:onProperty rdf:resource="http://oiled.man.example.net/test#r"/>
                        <owl:someValuesFrom>
                            <owl:Class>
                                <owl:intersectionOf rdf:parseType="Collection">
                                    <owl:Class rdf:about="http://oiled.man.example.net/test#p1"/>
                                    <owl:Class rdf:about="http://oiled.man.example.net/test#p"/>
                                </owl:intersectionOf>
                            </owl:Class>
                        </owl:someValuesFrom>
                    </owl:Restriction>
                    <owl:Restriction>
                        <owl:onProperty rdf:resource="http://oiled.man.example.net/test#r"/>
                        <owl:someValuesFrom>
                            <owl:Class>
                                <owl:intersectionOf rdf:parseType="Collection">
                                    <owl:Class rdf:about="http://oiled.man.example.net/test#p2"/>
                                    <owl:Class rdf:about="http://oiled.man.example.net/test#p"/>
                                </owl:intersectionOf>
                            </owl:Class>
                        </owl:someValuesFrom>
                    </owl:Restriction>
                    <owl:Restriction>
                        <owl:onProperty rdf:resource="http://oiled.man.example.net/test#r"/>
                        <owl:someValuesFrom>
                            <owl:Class>
                                <owl:intersectionOf rdf:parseType="Collection">
                                    <owl:Class rdf:about="http://oiled.man.example.net/test#p3"/>
                                    <owl:Class rdf:about="http://oiled.man.example.net/test#p"/>
                                </owl:intersectionOf>
                            </owl:Class>
                        </owl:someValuesFrom>
                    </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">3</owl:maxCardinality>
                    </owl:Restriction>
                </owl:intersectionOf>
            </owl:Class>
        </owl:equivalentClass>
    </owl:Class>
    <owl:Class rdf:about="http://oiled.man.example.net/test#p"/>
    <owl:Class rdf:about="http://oiled.man.example.net/test#p1">
        <rdfs:subClassOf>
            <owl:Class>
                <owl:complementOf>
                    <owl:Class>
                        <owl:unionOf rdf:parseType="Collection">
                            <owl:Class rdf:about="http://oiled.man.example.net/test#p2"/>
                            <owl:Class rdf:about="http://oiled.man.example.net/test#p3"/>
                            <owl:Class rdf:about="http://oiled.man.example.net/test#p4"/>
                            <owl:Class rdf:about="http://oiled.man.example.net/test#p5"/>
                        </owl:unionOf>
                    </owl:Class>
                </owl:complementOf>
            </owl:Class>
        </rdfs:subClassOf>
    </owl:Class>
    <owl:Class rdf:about="http://oiled.man.example.net/test#p2">
        <rdfs:subClassOf>
            <owl:Class>
                <owl:complementOf>
                    <owl:Class>
                        <owl:unionOf rdf:parseType="Collection">
                            <owl:Class rdf:about="http://oiled.man.example.net/test#p3"/>
                            <owl:Class rdf:about="http://oiled.man.example.net/test#p4"/>
                            <owl:Class rdf:about="http://oiled.man.example.net/test#p5"/>
                        </owl:unionOf>
                    </owl:Class>
                </owl:complementOf>
            </owl:Class>
        </rdfs:subClassOf>
    </owl:Class>
    <owl:Class rdf:about="http://oiled.man.example.net/test#p3">
        <rdfs:subClassOf>
            <owl:Class>
                <owl:complementOf>
                    <owl:Class>
                        <owl:unionOf rdf:parseType="Collection">
                            <owl:Class rdf:about="http://oiled.man.example.net/test#p4"/>
                            <owl:Class rdf:about="http://oiled.man.example.net/test#p5"/>
                        </owl:unionOf>
                    </owl:Class>
                </owl:complementOf>
            </owl:Class>
        </rdfs:subClassOf>
    </owl:Class>
    <owl:Class rdf:about="http://oiled.man.example.net/test#p4">
        <rdfs:subClassOf>
            <owl:Class>
                <owl:complementOf>
                    <owl:Class rdf:about="http://oiled.man.example.net/test#p5"/>
                </owl:complementOf>
            </owl:Class>
        </rdfs:subClassOf>
    </owl:Class>
    <owl:Class rdf:about="http://oiled.man.example.net/test#p5"/>
    <owl:ObjectProperty rdf:about="http://oiled.man.example.net/test#r"/>
    <rdf:Description>
        <rdf:type rdf:resource="http://oiled.man.example.net/test#Satisfiable"/>
    </rdf:Description>
</rdf:RDF>
<description-logic/consistent018> rdf:type owl:Ontology .
oiled:Satisfiable rdf:type owl:Class .
_:a rdf:type owl:Class .
_:c rdf:type owl:Restriction .
_:c owl:onProperty oiled:r .
oiled:p1 rdf:type owl:Class .
_:c owl:someValuesFrom oiled:p1 .
_:e rdf:type owl:Restriction .
_:e owl:onProperty oiled:r .
oiled:p2 rdf:type owl:Class .
_:e owl:someValuesFrom oiled:p2 .
_:g rdf:type owl:Restriction .
_:g owl:onProperty oiled:r .
oiled:p3 rdf:type owl:Class .
_:g owl:someValuesFrom oiled:p3 .
_:i rdf:type owl:Restriction .
_:i owl:onProperty oiled:r .
_:k rdf:type owl:Class .
oiled:p1 rdf:type owl:Class .
oiled:p rdf:type owl:Class .
_:m rdf:first oiled:p .
_:m rdf:rest rdf:nil .
_:o rdf:first oiled:p1 .
_:o rdf:rest _:m .
_:k owl:intersectionOf _:o .
_:i owl:someValuesFrom _:k .
_:q rdf:type owl:Restriction .
_:q owl:onProperty oiled:r .
_:s rdf:type owl:Class .
oiled:p2 rdf:type owl:Class .
oiled:p rdf:type owl:Class .
_:u rdf:first oiled:p .
_:u rdf:rest rdf:nil .
_:w rdf:first oiled:p2 .
_:w rdf:rest _:u .
_:s owl:intersectionOf _:w .
_:q owl:someValuesFrom _:s .
_:y rdf:type owl:Restriction .
_:y owl:onProperty oiled:r .
_:a1 rdf:type owl:Class .
oiled:p3 rdf:type owl:Class .
oiled:p rdf:type owl:Class .
_:c1 rdf:first oiled:p .
_:c1 rdf:rest rdf:nil .
_:e1 rdf:first oiled:p3 .
_:e1 rdf:rest _:c1 .
_:a1 owl:intersectionOf _:e1 .
_:y owl:someValuesFrom _:a1 .
_:g1 rdf:type owl:Restriction .
_:g1 owl:onProperty oiled:r .
_:g1 owl:maxCardinality "3"^^xsd:nonNegativeInteger  .
_:i1 rdf:first _:g1 .
_:i1 rdf:rest rdf:nil .
_:k1 rdf:first _:y .
_:k1 rdf:rest _:i1 .
_:m1 rdf:first _:q .
_:m1 rdf:rest _:k1 .
_:o1 rdf:first _:i .
_:o1 rdf:rest _:m1 .
_:q1 rdf:first _:g .
_:q1 rdf:rest _:o1 .
_:s1 rdf:first _:e .
_:s1 rdf:rest _:q1 .
_:u1 rdf:first _:c .
_:u1 rdf:rest _:s1 .
_:a owl:intersectionOf _:u1 .
oiled:Satisfiable owl:equivalentClass _:a .
oiled:p rdf:type owl:Class .
oiled:p1 rdf:type owl:Class .
_:w1 rdf:type owl:Class .
_:y1 rdf:type owl:Class .
oiled:p2 rdf:type owl:Class .
oiled:p3 rdf:type owl:Class .
oiled:p4 rdf:type owl:Class .
oiled:p5 rdf:type owl:Class .
_:a2 rdf:first oiled:p5 .
_:a2 rdf:rest rdf:nil .
_:c2 rdf:first oiled:p4 .
_:c2 rdf:rest _:a2 .
_:e2 rdf:first oiled:p3 .
_:e2 rdf:rest _:c2 .
_:g2 rdf:first oiled:p2 .
_:g2 rdf:rest _:e2 .
_:y1 owl:unionOf _:g2 .
_:w1 owl:complementOf _:y1 .
oiled:p1 rdfs:subClassOf _:w1 .
oiled:p2 rdf:type owl:Class .
_:i2 rdf:type owl:Class .
_:k2 rdf:type owl:Class .
oiled:p3 rdf:type owl:Class .
oiled:p4 rdf:type owl:Class .
oiled:p5 rdf:type owl:Class .
_:m2 rdf:first oiled:p5 .
_:m2 rdf:rest rdf:nil .
_:o2 rdf:first oiled:p4 .
_:o2 rdf:rest _:m2 .
_:q2 rdf:first oiled:p3 .
_:q2 rdf:rest _:o2 .
_:k2 owl:unionOf _:q2 .
_:i2 owl:complementOf _:k2 .
oiled:p2 rdfs:subClassOf _:i2 .
oiled:p3 rdf:type owl:Class .
_:s2 rdf:type owl:Class .
_:u2 rdf:type owl:Class .
oiled:p4 rdf:type owl:Class .
oiled:p5 rdf:type owl:Class .
_:w2 rdf:first oiled:p5 .
_:w2 rdf:rest rdf:nil .
_:y2 rdf:first oiled:p4 .
_:y2 rdf:rest _:w2 .
_:u2 owl:unionOf _:y2 .
_:s2 owl:complementOf _:u2 .
oiled:p3 rdfs:subClassOf _:s2 .
oiled:p4 rdf:type owl:Class .
_:a3 rdf:type owl:Class .
oiled:p5 rdf:type owl:Class .
_:a3 owl:complementOf oiled:p5 .
oiled:p4 rdfs:subClassOf _:a3 .
oiled:p5 rdf:type owl:Class .
oiled:r rdf:type owl:ObjectProperty .
_:c3 rdf:type oiled:Satisfiable .

DL FullInconsistent document.019
Description: (informative) <description-logic/Manifest019#test>
DL Test: t3.2 There are 301 possible partitions in the unsatisfiable case
N3 format is informative.
DLInconsistent: <description-logic/inconsistent019>
<rdf:RDF
    xml:base="http://www.w3.org/2002/03owlt/description-logic/inconsistent019"
    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:someValuesFrom>
                            <owl:Class rdf:about="http://oiled.man.example.net/test#p1"/>
                        </owl:someValuesFrom>
                    </owl:Restriction>
                    <owl:Restriction>
                        <owl:onProperty rdf:resource="http://oiled.man.example.net/test#r"/>
                        <owl:someValuesFrom>
                            <owl:Class rdf:about="http://oiled.man.example.net/test#p2"/>
                        </owl:someValuesFrom>
                    </owl:Restriction>
                    <owl:Restriction>
                        <owl:onProperty rdf:resource="http://oiled.man.example.net/test#r"/>
                        <owl:someValuesFrom>
                            <owl:Class rdf:about="http://oiled.man.example.net/test#p3"/>
                        </owl:someValuesFrom>
                    </owl:Restriction>
                    <owl:Restriction>
                        <owl:onProperty rdf:resource="http://oiled.man.example.net/test#r"/>
                        <owl:someValuesFrom>
                            <owl:Class>
                                <owl:intersectionOf rdf:parseType="Collection">
                                    <owl:Class rdf:about="http://oiled.man.example.net/test#p1"/>
                                    <owl:Class rdf:about="http://oiled.man.example.net/test#p"/>
                                </owl:intersectionOf>
                            </owl:Class>
                        </owl:someValuesFrom>
                    </owl:Restriction>
                    <owl:Restriction>
                        <owl:onProperty rdf:resource="http://oiled.man.example.net/test#r"/>
                        <owl:someValuesFrom>
                            <owl:Class>
                                <owl:intersectionOf rdf:parseType="Collection">
                                    <owl:Class rdf:about="http://oiled.man.example.net/test#p2"/>
                                    <owl:Class rdf:about="http://oiled.man.example.net/test#p"/>
                                </owl:intersectionOf>
                            </owl:Class>
                        </owl:someValuesFrom>
                    </owl:Restriction>
                    <owl:Restriction>
                        <owl:onProperty rdf:resource="http://oiled.man.example.net/test#r"/>
                        <owl:someValuesFrom>
                            <owl:Class>
                                <owl:intersectionOf rdf:parseType="Collection">
                                    <owl:Class rdf:about="http://oiled.man.example.net/test#p3"/>
                                    <owl:Class rdf:about="http://oiled.man.example.net/test#p"/>
                                </owl:intersectionOf>
                            </owl:Class>
                        </owl:someValuesFrom>
                    </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">3</owl:maxCardinality>
                    </owl:Restriction>
                    <owl:Restriction>
                        <owl:onProperty rdf:resource="http://oiled.man.example.net/test#r"/>
                        <owl:someValuesFrom>
                            <owl:Class rdf:about="http://oiled.man.example.net/test#p4"/>
                        </owl:someValuesFrom>
                    </owl:Restriction>
                </owl:intersectionOf>
            </owl:Class>
        </owl:equivalentClass>
    </owl:Class>
    <owl:Class rdf:about="http://oiled.man.example.net/test#p"/>
    <owl:Class rdf:about="http://oiled.man.example.net/test#p1">
        <rdfs:subClassOf>
            <owl:Class>
                <owl:complementOf>
                    <owl:Class>
                        <owl:unionOf rdf:parseType="Collection">
                            <owl:Class rdf:about="http://oiled.man.example.net/test#p2"/>
                            <owl:Class rdf:about="http://oiled.man.example.net/test#p3"/>
                            <owl:Class rdf:about="http://oiled.man.example.net/test#p4"/>
                            <owl:Class rdf:about="http://oiled.man.example.net/test#p5"/>
                        </owl:unionOf>
                    </owl:Class>
                </owl:complementOf>
            </owl:Class>
        </rdfs:subClassOf>
    </owl:Class>
    <owl:Class rdf:about="http://oiled.man.example.net/test#p2">
        <rdfs:subClassOf>
            <owl:Class>
                <owl:complementOf>
                    <owl:Class>
                        <owl:unionOf rdf:parseType="Collection">
                            <owl:Class rdf:about="http://oiled.man.example.net/test#p3"/>
                            <owl:Class rdf:about="http://oiled.man.example.net/test#p4"/>
                            <owl:Class rdf:about="http://oiled.man.example.net/test#p5"/>
                        </owl:unionOf>
                    </owl:Class>
                </owl:complementOf>
            </owl:Class>
        </rdfs:subClassOf>
    </owl:Class>
    <owl:Class rdf:about="http://oiled.man.example.net/test#p3">
        <rdfs:subClassOf>
            <owl:Class>
                <owl:complementOf>
                    <owl:Class>
                        <owl:unionOf rdf:parseType="Collection">
                            <owl:Class rdf:about="http://oiled.man.example.net/test#p4"/>
                            <owl:Class rdf:about="http://oiled.man.example.net/test#p5"/>
                        </owl:unionOf>
                    </owl:Class>
                </owl:complementOf>
            </owl:Class>
        </rdfs:subClassOf>
    </owl:Class>
    <owl:Class rdf:about="http://oiled.man.example.net/test#p4">
        <rdfs:subClassOf>
            <owl:Class>
                <owl:complementOf>
                    <owl:Class rdf:about="http://oiled.man.example.net/test#p5"/>
                </owl:complementOf>
            </owl:Class>
        </rdfs:subClassOf>
    </owl:Class>
    <owl:Class rdf:about="http://oiled.man.example.net/test#p5"/>
    <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/inconsistent019> 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 .
oiled:p1 rdf:type owl:Class .
_:c owl:someValuesFrom oiled:p1 .
_:e rdf:type owl:Restriction .
_:e owl:onProperty oiled:r .
oiled:p2 rdf:type owl:Class .
_:e owl:someValuesFrom oiled:p2 .
_:g rdf:type owl:Restriction .
_:g owl:onProperty oiled:r .
oiled:p3 rdf:type owl:Class .
_:g owl:someValuesFrom oiled:p3 .
_:i rdf:type owl:Restriction .
_:i owl:onProperty oiled:r .
_:k rdf:type owl:Class .
oiled:p1 rdf:type owl:Class .
oiled:p rdf:type owl:Class .
_:m rdf:first oiled:p .
_:m rdf:rest rdf:nil .
_:o rdf:first oiled:p1 .
_:o rdf:rest _:m .
_:k owl:intersectionOf _:o .
_:i owl:someValuesFrom _:k .
_:q rdf:type owl:Restriction .
_:q owl:onProperty oiled:r .
_:s rdf:type owl:Class .
oiled:p2 rdf:type owl:Class .
oiled:p rdf:type owl:Class .
_:u rdf:first oiled:p .
_:u rdf:rest rdf:nil .
_:w rdf:first oiled:p2 .
_:w rdf:rest _:u .
_:s owl:intersectionOf _:w .
_:q owl:someValuesFrom _:s .
_:y rdf:type owl:Restriction .
_:y owl:onProperty oiled:r .
_:a1 rdf:type owl:Class .
oiled:p3 rdf:type owl:Class .
oiled:p rdf:type owl:Class .
_:c1 rdf:first oiled:p .
_:c1 rdf:rest rdf:nil .
_:e1 rdf:first oiled:p3 .
_:e1 rdf:rest _:c1 .
_:a1 owl:intersectionOf _:e1 .
_:y owl:someValuesFrom _:a1 .
_:g1 rdf:type owl:Restriction .
_:g1 owl:onProperty oiled:r .
_:g1 owl:maxCardinality "3"^^xsd:nonNegativeInteger  .
_:i1 rdf:type owl:Restriction .
_:i1 owl:onProperty oiled:r .
oiled:p4 rdf:type owl:Class .
_:i1 owl:someValuesFrom oiled:p4 .
_:k1 rdf:first _:i1 .
_:k1 rdf:rest rdf:nil .
_:m1 rdf:first _:g1 .
_:m1 rdf:rest _:k1 .
_:o1 rdf:first _:y .
_:o1 rdf:rest _:m1 .
_:q1 rdf:first _:q .
_:q1 rdf:rest _:o1 .
_:s1 rdf:first _:i .
_:s1 rdf:rest _:q1 .
_:u1 rdf:first _:g .
_:u1 rdf:rest _:s1 .
_:w1 rdf:first _:e .
_:w1 rdf:rest _:u1 .
_:y1 rdf:first _:c .
_:y1 rdf:rest _:w1 .
_:a owl:intersectionOf _:y1 .
oiled:Unsatisfiable owl:equivalentClass _:a .
oiled:p rdf:type owl:Class .
oiled:p1 rdf:type owl:Class .
_:a2 rdf:type owl:Class .
_:c2 rdf:type owl:Class .
oiled:p2 rdf:type owl:Class .
oiled:p3 rdf:type owl:Class .
oiled:p4 rdf:type owl:Class .
oiled:p5 rdf:type owl:Class .
_:e2 rdf:first oiled:p5 .
_:e2 rdf:rest rdf:nil .
_:g2 rdf:first oiled:p4 .
_:g2 rdf:rest _:e2 .
_:i2 rdf:first oiled:p3 .
_:i2 rdf:rest _:g2 .
_:k2 rdf:first oiled:p2 .
_:k2 rdf:rest _:i2 .
_:c2 owl:unionOf _:k2 .
_:a2 owl:complementOf _:c2 .
oiled:p1 rdfs:subClassOf _:a2 .
oiled:p2 rdf:type owl:Class .
_:m2 rdf:type owl:Class .
_:o2 rdf:type owl:Class .
oiled:p3 rdf:type owl:Class .
oiled:p4 rdf:type owl:Class .
oiled:p5 rdf:type owl:Class .
_:q2 rdf:first oiled:p5 .
_:q2 rdf:rest rdf:nil .
_:s2 rdf:first oiled:p4 .
_:s2 rdf:rest _:q2 .
_:u2 rdf:first oiled:p3 .
_:u2 rdf:rest _:s2 .
_:o2 owl:unionOf _:u2 .
_:m2 owl:complementOf _:o2 .
oiled:p2 rdfs:subClassOf _:m2 .
oiled:p3 rdf:type owl:Class .
_:w2 rdf:type owl:Class .
_:y2 rdf:type owl:Class .
oiled:p4 rdf:type owl:Class .
oiled:p5 rdf:type owl:Class .
_:a3 rdf:first oiled:p5 .
_:a3 rdf:rest rdf:nil .
_:c3 rdf:first oiled:p4 .
_:c3 rdf:rest _:a3 .
_:y2 owl:unionOf _:c3 .
_:w2 owl:complementOf _:y2 .
oiled:p3 rdfs:subClassOf _:w2 .
oiled:p4 rdf:type owl:Class .
_:e3 rdf:type owl:Class .
oiled:p5 rdf:type owl:Class .
_:e3 owl:complementOf oiled:p5 .
oiled:p4 rdfs:subClassOf _:e3 .
oiled:p5 rdf:type owl:Class .
oiled:r rdf:type owl:ObjectProperty .
_:g3 rdf:type oiled:Unsatisfiable .

DL FullConsistent document.020
Description: (informative) <description-logic/Manifest020#test>
DL Test: t3a.1 there are 1,701 possible partitions in the satisfiable case
N3 format is informative.
DLConsistent: <description-logic/consistent020>
<rdf:RDF
    xml:base="http://www.w3.org/2002/03owlt/description-logic/consistent020"
    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#Satisfiable">
        <owl:equivalentClass>
            <owl:Class>
                <owl:intersectionOf rdf:parseType="Collection">
                    <owl:Restriction>
                        <owl:onProperty rdf:resource="http://oiled.man.example.net/test#r"/>
                        <owl:someValuesFrom>
                            <owl:Class rdf:about="http://oiled.man.example.net/test#p1"/>
                        </owl:someValuesFrom>
                    </owl:Restriction>
                    <owl:Restriction>
                        <owl:onProperty rdf:resource="http://oiled.man.example.net/test#r"/>
                        <owl:someValuesFrom>
                            <owl:Class rdf:about="http://oiled.man.example.net/test#p2"/>
                        </owl:someValuesFrom>
                    </owl:Restriction>
                    <owl:Restriction>
                        <owl:onProperty rdf:resource="http://oiled.man.example.net/test#r"/>
                        <owl:someValuesFrom>
                            <owl:Class rdf:about="http://oiled.man.example.net/test#p3"/>
                        </owl:someValuesFrom>
                    </owl:Restriction>
                    <owl:Restriction>
                        <owl:onProperty rdf:resource="http://oiled.man.example.net/test#r"/>
                        <owl:someValuesFrom>
                            <owl:Class rdf:about="http://oiled.man.example.net/test#p4"/>
                        </owl:someValuesFrom>
                    </owl:Restriction>
                    <owl:Restriction>
                        <owl:onProperty rdf:resource="http://oiled.man.example.net/test#r"/>
                        <owl:someValuesFrom>
                            <owl:Class>
                                <owl:intersectionOf rdf:parseType="Collection">
                                    <owl:Class rdf:about="http://oiled.man.example.net/test#p1"/>
                                    <owl:Class rdf:about="http://oiled.man.example.net/test#p"/>
                                </owl:intersectionOf>
                            </owl:Class>
                        </owl:someValuesFrom>
                    </owl:Restriction>
                    <owl:Restriction>
                        <owl:onProperty rdf:resource="http://oiled.man.example.net/test#r"/>
                        <owl:someValuesFrom>
                            <owl:Class>
                                <owl:intersectionOf rdf:parseType="Collection">
                                    <owl:Class rdf:about="http://oiled.man.example.net/test#p2"/>
                                    <owl:Class rdf:about="http://oiled.man.example.net/test#p"/>
                                </owl:intersectionOf>
                            </owl:Class>
                        </owl:someValuesFrom>
                    </owl:Restriction>
                    <owl:Restriction>
                        <owl:onProperty rdf:resource="http://oiled.man.example.net/test#r"/>
                        <owl:someValuesFrom>
                            <owl:Class>
                                <owl:intersectionOf rdf:parseType="Collection">
                                    <owl:Class rdf:about="http://oiled.man.example.net/test#p3"/>
                                    <owl:Class rdf:about="http://oiled.man.example.net/test#p"/>
                                </owl:intersectionOf>
                            </owl:Class>
                        </owl:someValuesFrom>
                    </owl:Restriction>
                    <owl:Restriction>
                        <owl:onProperty rdf:resource="http://oiled.man.example.net/test#r"/>
                        <owl:someValuesFrom>
                            <owl:Class>
                                <owl:intersectionOf rdf:parseType="Collection">
                                    <owl:Class rdf:about="http://oiled.man.example.net/test#p4"/>
                                    <owl:Class rdf:about="http://oiled.man.example.net/test#p"/>
                                </owl:intersectionOf>
                            </owl:Class>
                        </owl:someValuesFrom>
                    </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">4</owl:maxCardinality>
                    </owl:Restriction>
                </owl:intersectionOf>
            </owl:Class>
        </owl:equivalentClass>
    </owl:Class>
    <owl:Class rdf:about="http://oiled.man.example.net/test#p"/>
    <owl:Class rdf:about="http://oiled.man.example.net/test#p1">
        <rdfs:subClassOf>
            <owl:Class>
                <owl:complementOf>
                    <owl:Class>
                        <owl:unionOf rdf:parseType="Collection">
                            <owl:Class rdf:about="http://oiled.man.example.net/test#p2"/>
                            <owl:Class rdf:about="http://oiled.man.example.net/test#p3"/>
                            <owl:Class rdf:about="http://oiled.man.example.net/test#p4"/>
                            <owl:Class rdf:about="http://oiled.man.example.net/test#p5"/>
                        </owl:unionOf>
                    </owl:Class>
                </owl:complementOf>
            </owl:Class>
        </rdfs:subClassOf>
    </owl:Class>
    <owl:Class rdf:about="http://oiled.man.example.net/test#p2">
        <rdfs:subClassOf>
            <owl:Class>
                <owl:complementOf>
                    <owl:Class>
                        <owl:unionOf rdf:parseType="Collection">
                            <owl:Class rdf:about="http://oiled.man.example.net/test#p3"/>
                            <owl:Class rdf:about="http://oiled.man.example.net/test#p4"/>
                            <owl:Class rdf:about="http://oiled.man.example.net/test#p5"/>
                        </owl:unionOf>
                    </owl:Class>
                </owl:complementOf>
            </owl:Class>
        </rdfs:subClassOf>
    </owl:Class>
    <owl:Class rdf:about="http://oiled.man.example.net/test#p3">
        <rdfs:subClassOf>
            <owl:Class>
                <owl:complementOf>
                    <owl:Class>
                        <owl:unionOf rdf:parseType="Collection">
                            <owl:Class rdf:about="http://oiled.man.example.net/test#p4"/>
                            <owl:Class rdf:about="http://oiled.man.example.net/test#p5"/>
                        </owl:unionOf>
                    </owl:Class>
                </owl:complementOf>
            </owl:Class>
        </rdfs:subClassOf>
    </owl:Class>
    <owl:Class rdf:about="http://oiled.man.example.net/test#p4">
        <rdfs:subClassOf>
            <owl:Class>
                <owl:complementOf>
                    <owl:Class rdf:about="http://oiled.man.example.net/test#p5"/>
                </owl:complementOf>
            </owl:Class>
        </rdfs:subClassOf>
    </owl:Class>
    <owl:Class rdf:about="http://oiled.man.example.net/test#p5"/>
    <owl:ObjectProperty rdf:about="http://oiled.man.example.net/test#r"/>
    <rdf:Description>
        <rdf:type rdf:resource="http://oiled.man.example.net/test#Satisfiable"/>
    </rdf:Description>
</rdf:RDF>
<description-logic/consistent020> rdf:type owl:Ontology .
oiled:Satisfiable rdf:type owl:Class .
_:a rdf:type owl:Class .
_:c rdf:type owl:Restriction .
_:c owl:onProperty oiled:r .
oiled:p1 rdf:type owl:Class .
_:c owl:someValuesFrom oiled:p1 .
_:e rdf:type owl:Restriction .
_:e owl:onProperty oiled:r .
oiled:p2 rdf:type owl:Class .
_:e owl:someValuesFrom oiled:p2 .
_:g rdf:type owl:Restriction .
_:g owl:onProperty oiled:r .
oiled:p3 rdf:type owl:Class .
_:g owl:someValuesFrom oiled:p3 .
_:i rdf:type owl:Restriction .
_:i owl:onProperty oiled:r .
oiled:p4 rdf:type owl:Class .
_:i owl:someValuesFrom oiled:p4 .
_:k rdf:type owl:Restriction .
_:k owl:onProperty oiled:r .
_:m rdf:type owl:Class .
oiled:p1 rdf:type owl:Class .
oiled:p rdf:type owl:Class .
_:o rdf:first oiled:p .
_:o rdf:rest rdf:nil .
_:q rdf:first oiled:p1 .
_:q rdf:rest _:o .
_:m owl:intersectionOf _:q .
_:k owl:someValuesFrom _:m .
_:s rdf:type owl:Restriction .
_:s owl:onProperty oiled:r .
_:u rdf:type owl:Class .
oiled:p2 rdf:type owl:Class .
oiled:p rdf:type owl:Class .
_:w rdf:first oiled:p .
_:w rdf:rest rdf:nil .
_:y rdf:first oiled:p2 .
_:y rdf:rest _:w .
_:u owl:intersectionOf _:y .
_:s owl:someValuesFrom _:u .
_:a1 rdf:type owl:Restriction .
_:a1 owl:onProperty oiled:r .
_:c1 rdf:type owl:Class .
oiled:p3 rdf:type owl:Class .
oiled:p rdf:type owl:Class .
_:e1 rdf:first oiled:p .
_:e1 rdf:rest rdf:nil .
_:g1 rdf:first oiled:p3 .
_:g1 rdf:rest _:e1 .
_:c1 owl:intersectionOf _:g1 .
_:a1 owl:someValuesFrom _:c1 .
_:i1 rdf:type owl:Restriction .
_:i1 owl:onProperty oiled:r .
_:k1 rdf:type owl:Class .
oiled:p4 rdf:type owl:Class .
oiled:p rdf:type owl:Class .
_:m1 rdf:first oiled:p .
_:m1 rdf:rest rdf:nil .
_:o1 rdf:first oiled:p4 .
_:o1 rdf:rest _:m1 .
_:k1 owl:intersectionOf _:o1 .
_:i1 owl:someValuesFrom _:k1 .
_:q1 rdf:type owl:Restriction .
_:q1 owl:onProperty oiled:r .
_:q1 owl:maxCardinality "4"^^xsd:nonNegativeInteger  .
_:s1 rdf:first _:q1 .
_:s1 rdf:rest rdf:nil .
_:u1 rdf:first _:i1 .
_:u1 rdf:rest _:s1 .
_:w1 rdf:first _:a1 .
_:w1 rdf:rest _:u1 .
_:y1 rdf:first _:s .
_:y1 rdf:rest _:w1 .
_:a2 rdf:first _:k .
_:a2 rdf:rest _:y1 .
_:c2 rdf:first _:i .
_:c2 rdf:rest _:a2 .
_:e2 rdf:first _:g .
_:e2 rdf:rest _:c2 .
_:g2 rdf:first _:e .
_:g2 rdf:rest _:e2 .
_:i2 rdf:first _:c .
_:i2 rdf:rest _:g2 .
_:a owl:intersectionOf _:i2 .
oiled:Satisfiable owl:equivalentClass _:a .
oiled:p rdf:type owl:Class .
oiled:p1 rdf:type owl:Class .
_:k2 rdf:type owl:Class .
_:m2 rdf:type owl:Class .
oiled:p2 rdf:type owl:Class .
oiled:p3 rdf:type owl:Class .
oiled:p4 rdf:type owl:Class .
oiled:p5 rdf:type owl:Class .
_:o2 rdf:first oiled:p5 .
_:o2 rdf:rest rdf:nil .
_:q2 rdf:first oiled:p4 .
_:q2 rdf:rest _:o2 .
_:s2 rdf:first oiled:p3 .
_:s2 rdf:rest _:q2 .
_:u2 rdf:first oiled:p2 .
_:u2 rdf:rest _:s2 .
_:m2 owl:unionOf _:u2 .
_:k2 owl:complementOf _:m2 .
oiled:p1 rdfs:subClassOf _:k2 .
oiled:p2 rdf:type owl:Class .
_:w2 rdf:type owl:Class .
_:y2 rdf:type owl:Class .
oiled:p3 rdf:type owl:Class .
oiled:p4 rdf:type owl:Class .
oiled:p5 rdf:type owl:Class .
_:a3 rdf:first oiled:p5 .
_:a3 rdf:rest rdf:nil .
_:c3 rdf:first oiled:p4 .
_:c3 rdf:rest _:a3 .
_:e3 rdf:first oiled:p3 .
_:e3 rdf:rest _:c3 .
_:y2 owl:unionOf _:e3 .
_:w2 owl:complementOf _:y2 .
oiled:p2 rdfs:subClassOf _:w2 .
oiled:p3 rdf:type owl:Class .
_:g3 rdf:type owl:Class .
_:i3 rdf:type owl:Class .
oiled:p4 rdf:type owl:Class .
oiled:p5 rdf:type owl:Class .
_:k3 rdf:first oiled:p5 .
_:k3 rdf:rest rdf:nil .
_:m3 rdf:first oiled:p4 .
_:m3 rdf:rest _:k3 .
_:i3 owl:unionOf _:m3 .
_:g3 owl:complementOf _:i3 .
oiled:p3 rdfs:subClassOf _:g3 .
oiled:p4 rdf:type owl:Class .
_:o3 rdf:type owl:Class .
oiled:p5 rdf:type owl:Class .
_:o3 owl:complementOf oiled:p5 .
oiled:p4 rdfs:subClassOf _:o3 .
oiled:p5 rdf:type owl:Class .
oiled:r rdf:type owl:ObjectProperty .
_:q3 rdf:type oiled:Satisfiable .

DL FullConsistent document.021
Description: (informative) <description-logic/Manifest021#test>
DL Test: t3a.2 There are 7,770 possible partitions in the unsatisfiable case
N3 format is informative.
DLConsistent: <description-logic/consistent021>
<rdf:RDF
    xml:base="http://www.w3.org/2002/03owlt/description-logic/consistent021"
    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#Satisfiable">
        <owl:equivalentClass>
            <owl:Class>
                <owl:intersectionOf rdf:parseType="Collection">
                    <owl:Restriction>
                        <owl:onProperty rdf:resource="http://oiled.man.example.net/test#r"/>
                        <owl:someValuesFrom>
                            <owl:Class rdf:about="http://oiled.man.example.net/test#p1"/>
                        </owl:someValuesFrom>
                    </owl:Restriction>
                    <owl:Restriction>
                        <owl:onProperty rdf:resource="http://oiled.man.example.net/test#r"/>
                        <owl:someValuesFrom>
                            <owl:Class rdf:about="http://oiled.man.example.net/test#p2"/>
                        </owl:someValuesFrom>
                    </owl:Restriction>
                    <owl:Restriction>
                        <owl:onProperty rdf:resource="http://oiled.man.example.net/test#r"/>
                        <owl:someValuesFrom>
                            <owl:Class rdf:about="http://oiled.man.example.net/test#p3"/>
                        </owl:someValuesFrom>
                    </owl:Restriction>
                    <owl:Restriction>
                        <owl:onProperty rdf:resource="http://oiled.man.example.net/test#r"/>
                        <owl:someValuesFrom>
                            <owl:Class rdf:about="http://oiled.man.example.net/test#p4"/>
                        </owl:someValuesFrom>
                    </owl:Restriction>
                    <owl:Restriction>
                        <owl:onProperty rdf:resource="http://oiled.man.example.net/test#r"/>
                        <owl:someValuesFrom>
                            <owl:Class>
                                <owl:intersectionOf rdf:parseType="Collection">
                                    <owl:Class rdf:about="http://oiled.man.example.net/test#p1"/>
                                    <owl:Class rdf:about="http://oiled.man.example.net/test#p"/>
                                </owl:intersectionOf>
                            </owl:Class>
                        </owl:someValuesFrom>
                    </owl:Restriction>
                    <owl:Restriction>
                        <owl:onProperty rdf:resource="http://oiled.man.example.net/test#r"/>
                        <owl:someValuesFrom>
                            <owl:Class>
                                <owl:intersectionOf rdf:parseType="Collection">
                                    <owl:Class rdf:about="http://oiled.man.example.net/test#p2"/>
                                    <owl:Class rdf:about="http://oiled.man.example.net/test#p"/>
                                </owl:intersectionOf>
                            </owl:Class>
                        </owl:someValuesFrom>
                    </owl:Restriction>
                    <owl:Restriction>
                        <owl:onProperty rdf:resource="http://oiled.man.example.net/test#r"/>
                        <owl:someValuesFrom>
                            <owl:Class>
                                <owl:intersectionOf rdf:parseType="Collection">
                                    <owl:Class rdf:about="http://oiled.man.example.net/test#p3"/>
                                    <owl:Class rdf:about="http://oiled.man.example.net/test#p"/>
                                </owl:intersectionOf>
                            </owl:Class>
                        </owl:someValuesFrom>
                    </owl:Restriction>
                    <owl:Restriction>
                        <owl:onProperty rdf:resource="http://oiled.man.example.net/test#r"/>
                        <owl:someValuesFrom>
                            <owl:Class>
                                <owl:intersectionOf rdf:parseType="Collection">
                                    <owl:Class rdf:about="http://oiled.man.example.net/test#p4"/>
                                    <owl:Class rdf:about="http://oiled.man.example.net/test#p"/>
                                </owl:intersectionOf>
                            </owl:Class>
                        </owl:someValuesFrom>
                    </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">5</owl:maxCardinality>
                    </owl:Restriction>
                    <owl:Restriction>
                        <owl:onProperty rdf:resource="http://oiled.man.example.net/test#r"/>
                        <owl:someValuesFrom>
                            <owl:Class rdf:about="http://oiled.man.example.net/test#p5"/>
                        </owl:someValuesFrom>
                    </owl:Restriction>
                    <owl:Restriction>
                        <owl:onProperty rdf:resource="http://oiled.man.example.net/test#r"/>
                        <owl:someValuesFrom>
                            <owl:Class>
                                <owl:intersectionOf rdf:parseType="Collection">
                                    <owl:Class rdf:about="http://oiled.man.example.net/test#p5"/>
                                    <owl:Class rdf:about="http://oiled.man.example.net/test#p"/>
                                </owl:intersectionOf>
                            </owl:Class>
                        </owl:someValuesFrom>
                    </owl:Restriction>
                </owl:intersectionOf>
            </owl:Class>
        </owl:equivalentClass>
    </owl:Class>
    <owl:Class rdf:about="http://oiled.man.example.net/test#p"/>
    <owl:Class rdf:about="http://oiled.man.example.net/test#p1">
        <rdfs:subClassOf>
            <owl:Class>
                <owl:complementOf>
                    <owl:Class>
                        <owl:unionOf rdf:parseType="Collection">
                            <owl:Class rdf:about="http://oiled.man.example.net/test#p2"/>
                            <owl:Class rdf:about="http://oiled.man.example.net/test#p3"/>
                            <owl:Class rdf:about="http://oiled.man.example.net/test#p4"/>
                            <owl:Class rdf:about="http://oiled.man.example.net/test#p5"/>
                        </owl:unionOf>
                    </owl:Class>
                </owl:complementOf>
            </owl:Class>
        </rdfs:subClassOf>
    </owl:Class>
    <owl:Class rdf:about="http://oiled.man.example.net/test#p2">
        <rdfs:subClassOf>
            <owl:Class>
                <owl:complementOf>
                    <owl:Class>
                        <owl:unionOf rdf:parseType="Collection">
                            <owl:Class rdf:about="http://oiled.man.example.net/test#p3"/>
                            <owl:Class rdf:about="http://oiled.man.example.net/test#p4"/>
                            <owl:Class rdf:about="http://oiled.man.example.net/test#p5"/>
                        </owl:unionOf>
                    </owl:Class>
                </owl:complementOf>
            </owl:Class>
        </rdfs:subClassOf>
    </owl:Class>
    <owl:Class rdf:about="http://oiled.man.example.net/test#p3">
        <rdfs:subClassOf>
            <owl:Class>
                <owl:complementOf>
                    <owl:Class>
                        <owl:unionOf rdf:parseType="Collection">
                            <owl:Class rdf:about="http://oiled.man.example.net/test#p4"/>
                            <owl:Class rdf:about="http://oiled.man.example.net/test#p5"/>
                        </owl:unionOf>
                    </owl:Class>
                </owl:complementOf>
            </owl:Class>
        </rdfs:subClassOf>
    </owl:Class>
    <owl:Class rdf:about="http://oiled.man.example.net/test#p4">
        <rdfs:subClassOf>
            <owl:Class>
                <owl:complementOf>
                    <owl:Class rdf:about="http://oiled.man.example.net/test#p5"/>
                </owl:complementOf>
            </owl:Class>
        </rdfs:subClassOf>
    </owl:Class>
    <owl:Class rdf:about="http://oiled.man.example.net/test#p5"/>
    <owl:ObjectProperty rdf:about="http://oiled.man.example.net/test#r"/>
    <rdf:Description>
        <rdf:type rdf:resource="http://oiled.man.example.net/test#Satisfiable"/>
    </rdf:Description>
</rdf:RDF>
<description-logic/consistent021> rdf:type owl:Ontology .
oiled:Satisfiable rdf:type owl:Class .
_:a rdf:type owl:Class .
_:c rdf:type owl:Restriction .
_:c owl:onProperty oiled:r .
oiled:p1 rdf:type owl:Class .
_:c owl:someValuesFrom oiled:p1 .
_:e rdf:type owl:Restriction .
_:e owl:onProperty oiled:r .
oiled:p2 rdf:type owl:Class .
_:e owl:someValuesFrom oiled:p2 .
_:g rdf:type owl:Restriction .
_:g owl:onProperty oiled:r .
oiled:p3 rdf:type owl:Class .
_:g owl:someValuesFrom oiled:p3 .
_:i rdf:type owl:Restriction .
_:i owl:onProperty oiled:r .
oiled:p4 rdf:type owl:Class .
_:i owl:someValuesFrom oiled:p4 .
_:k rdf:type owl:Restriction .
_:k owl:onProperty oiled:r .
_:m rdf:type owl:Class .
oiled:p1 rdf:type owl:Class .
oiled:p rdf:type owl:Class .
_:o rdf:first oiled:p .
_:o rdf:rest rdf:nil .
_:q rdf:first oiled:p1 .
_:q rdf:rest _:o .
_:m owl:intersectionOf _:q .
_:k owl:someValuesFrom _:m .
_:s rdf:type owl:Restriction .
_:s owl:onProperty oiled:r .
_:u rdf:type owl:Class .
oiled:p2 rdf:type owl:Class .
oiled:p rdf:type owl:Class .
_:w rdf:first oiled:p .
_:w rdf:rest rdf:nil .
_:y rdf:first oiled:p2 .
_:y rdf:rest _:w .
_:u owl:intersectionOf _:y .
_:s owl:someValuesFrom _:u .
_:a1 rdf:type owl:Restriction .
_:a1 owl:onProperty oiled:r .
_:c1 rdf:type owl:Class .
oiled:p3 rdf:type owl:Class .
oiled:p rdf:type owl:Class .
_:e1 rdf:first oiled:p .
_:e1 rdf:rest rdf:nil .
_:g1 rdf:first oiled:p3 .
_:g1 rdf:rest _:e1 .
_:c1 owl:intersectionOf _:g1 .
_:a1 owl:someValuesFrom _:c1 .
_:i1 rdf:type owl:Restriction .
_:i1 owl:onProperty oiled:r .
_:k1 rdf:type owl:Class .
oiled:p4 rdf:type owl:Class .
oiled:p rdf:type owl:Class .
_:m1 rdf:first oiled:p .
_:m1 rdf:rest rdf:nil .
_:o1 rdf:first oiled:p4 .
_:o1 rdf:rest _:m1 .
_:k1 owl:intersectionOf _:o1 .
_:i1 owl:someValuesFrom _:k1 .
_:q1 rdf:type owl:Restriction .
_:q1 owl:onProperty oiled:r .
_:q1 owl:maxCardinality "5"^^xsd:nonNegativeInteger  .
_:s1 rdf:type owl:Restriction .
_:s1 owl:onProperty oiled:r .
oiled:p5 rdf:type owl:Class .
_:s1 owl:someValuesFrom oiled:p5 .
_:u1 rdf:type owl:Restriction .
_:u1 owl:onProperty oiled:r .
_:w1 rdf:type owl:Class .
oiled:p5 rdf:type owl:Class .
oiled:p rdf:type owl:Class .
_:y1 rdf:first oiled:p .
_:y1 rdf:rest rdf:nil .
_:a2 rdf:first oiled:p5 .
_:a2 rdf:rest _:y1 .
_:w1 owl:intersectionOf _:a2 .
_:u1 owl:someValuesFrom _:w1 .
_:c2 rdf:first _:u1 .
_:c2 rdf:rest rdf:nil .
_:e2 rdf:first _:s1 .
_:e2 rdf:rest _:c2 .
_:g2 rdf:first _:q1 .
_:g2 rdf:rest _:e2 .
_:i2 rdf:first _:i1 .
_:i2 rdf:rest _:g2 .
_:k2 rdf:first _:a1 .
_:k2 rdf:rest _:i2 .
_:m2 rdf:first _:s .
_:m2 rdf:rest _:k2 .
_:o2 rdf:first _:k .
_:o2 rdf:rest _:m2 .
_:q2 rdf:first _:i .
_:q2 rdf:rest _:o2 .
_:s2 rdf:first _:g .
_:s2 rdf:rest _:q2 .
_:u2 rdf:first _:e .
_:u2 rdf:rest _:s2 .
_:w2 rdf:first _:c .
_:w2 rdf:rest _:u2 .
_:a owl:intersectionOf _:w2 .
oiled:Satisfiable owl:equivalentClass _:a .
oiled:p rdf:type owl:Class .
oiled:p1 rdf:type owl:Class .
_:y2 rdf:type owl:Class .
_:a3 rdf:type owl:Class .
oiled:p2 rdf:type owl:Class .
oiled:p3 rdf:type owl:Class .
oiled:p4 rdf:type owl:Class .
oiled:p5 rdf:type owl:Class .
_:c3 rdf:first oiled:p5 .
_:c3 rdf:rest rdf:nil .
_:e3 rdf:first oiled:p4 .
_:e3 rdf:rest _:c3 .
_:g3 rdf:first oiled:p3 .
_:g3 rdf:rest _:e3 .
_:i3 rdf:first oiled:p2 .
_:i3 rdf:rest _:g3 .
_:a3 owl:unionOf _:i3 .
_:y2 owl:complementOf _:a3 .
oiled:p1 rdfs:subClassOf _:y2 .
oiled:p2 rdf:type owl:Class .
_:k3 rdf:type owl:Class .
_:m3 rdf:type owl:Class .
oiled:p3 rdf:type owl:Class .
oiled:p4 rdf:type owl:Class .
oiled:p5 rdf:type owl:Class .
_:o3 rdf:first oiled:p5 .
_:o3 rdf:rest rdf:nil .
_:q3 rdf:first oiled:p4 .
_:q3 rdf:rest _:o3 .
_:s3 rdf:first oiled:p3 .
_:s3 rdf:rest _:q3 .
_:m3 owl:unionOf _:s3 .
_:k3 owl:complementOf _:m3 .
oiled:p2 rdfs:subClassOf _:k3 .
oiled:p3 rdf:type owl:Class .
_:u3 rdf:type owl:Class .
_:w3 rdf:type owl:Class .
oiled:p4 rdf:type owl:Class .
oiled:p5 rdf:type owl:Class .
_:y3 rdf:first oiled:p5 .
_:y3 rdf:rest rdf:nil .
_:a4 rdf:first oiled:p4 .
_:a4 rdf:rest _:y3 .
_:w3 owl:unionOf _:a4 .
_:u3 owl:complementOf _:w3 .
oiled:p3 rdfs:subClassOf _:u3 .
oiled:p4 rdf:type owl:Class .
_:c4 rdf:type owl:Class .
oiled:p5 rdf:type owl:Class .
_:c4 owl:complementOf oiled:p5 .
oiled:p4 rdfs:subClassOf _:c4 .
oiled:p5 rdf:type owl:Class .
oiled:r rdf:type owl:ObjectProperty .
_:e4 rdf:type oiled:Satisfiable .

DL FullInconsistent document.022
Description: (informative) <description-logic/Manifest022#test>
DL Test: t3a.3 There are 42,525 possible partitions in the satisfiable case
N3 format is informative.
DLInconsistent: <description-logic/inconsistent022>
<rdf:RDF
    xml:base="http://www.w3.org/2002/03owlt/description-logic/inconsistent022"
    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:someValuesFrom>
                            <owl:Class rdf:about="http://oiled.man.example.net/test#p1"/>
                        </owl:someValuesFrom>
                    </owl:Restriction>
                    <owl:Restriction>
                        <owl:onProperty rdf:resource="http://oiled.man.example.net/test#r"/>
                        <owl:someValuesFrom>
                            <owl:Class rdf:about="http://oiled.man.example.net/test#p2"/>
                        </owl:someValuesFrom>
                    </owl:Restriction>
                    <owl:Restriction>
                        <owl:onProperty rdf:resource="http://oiled.man.example.net/test#r"/>
                        <owl:someValuesFrom>
                            <owl:Class rdf:about="http://oiled.man.example.net/test#p3"/>
                        </owl:someValuesFrom>
                    </owl:Restriction>
                    <owl:Restriction>
                        <owl:onProperty rdf:resource="http://oiled.man.example.net/test#r"/>
                        <owl:someValuesFrom>
                            <owl:Class rdf:about="http://oiled.man.example.net/test#p4"/>
                        </owl:someValuesFrom>
                    </owl:Restriction>
                    <owl:Restriction>
                        <owl:onProperty rdf:resource="http://oiled.man.example.net/test#r"/>
                        <owl:someValuesFrom>
                            <owl:Class>
                                <owl:intersectionOf rdf:parseType="Collection">
                                    <owl:Class rdf:about="http://oiled.man.example.net/test#p1"/>
                                    <owl:Class rdf:about="http://oiled.man.example.net/test#p"/>
                                </owl:intersectionOf>
                            </owl:Class>
                        </owl:someValuesFrom>
                    </owl:Restriction>
                    <owl:Restriction>
                        <owl:onProperty rdf:resource="http://oiled.man.example.net/test#r"/>
                        <owl:someValuesFrom>
                            <owl:Class>
                                <owl:intersectionOf rdf:parseType="Collection">
                                    <owl:Class rdf:about="http://oiled.man.example.net/test#p2"/>
                                    <owl:Class rdf:about="http://oiled.man.example.net/test#p"/>
                                </owl:intersectionOf>
                            </owl:Class>
                        </owl:someValuesFrom>
                    </owl:Restriction>
                    <owl:Restriction>
                        <owl:onProperty rdf:resource="http://oiled.man.example.net/test#r"/>
                        <owl:someValuesFrom>
                            <owl:Class>
                                <owl:intersectionOf rdf:parseType="Collection">
                                    <owl:Class rdf:about="http://oiled.man.example.net/test#p3"/>
                                    <owl:Class rdf:about="http://oiled.man.example.net/test#p"/>
                                </owl:intersectionOf>
                            </owl:Class>
                        </owl:someValuesFrom>
                    </owl:Restriction>
                    <owl:Restriction>
                        <owl:onProperty rdf:resource="http://oiled.man.example.net/test#r"/>
                        <owl:someValuesFrom>
                            <owl:Class>
                                <owl:intersectionOf rdf:parseType="Collection">
                                    <owl:Class rdf:about="http://oiled.man.example.net/test#p4"/>
                                    <owl:Class rdf:about="http://oiled.man.example.net/test#p"/>
                                </owl:intersectionOf>
                            </owl:Class>
                        </owl:someValuesFrom>
                    </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">4</owl:maxCardinality>
                    </owl:Restriction>
                    <owl:Restriction>
                        <owl:onProperty rdf:resource="http://oiled.man.example.net/test#r"/>
                        <owl:someValuesFrom>
                            <owl:Class rdf:about="http://oiled.man.example.net/test#p5"/>
                        </owl:someValuesFrom>
                    </owl:Restriction>
                </owl:intersectionOf>
            </owl:Class>
        </owl:equivalentClass>
    </owl:Class>
    <owl:Class rdf:about="http://oiled.man.example.net/test#p"/>
    <owl:Class rdf:about="http://oiled.man.example.net/test#p1">
        <rdfs:subClassOf>
            <owl:Class>
                <owl:complementOf>
                    <owl:Class>
                        <owl:unionOf rdf:parseType="Collection">
                            <owl:Class rdf:about="http://oiled.man.example.net/test#p2"/>
                            <owl:Class rdf:about="http://oiled.man.example.net/test#p3"/>
                            <owl:Class rdf:about="http://oiled.man.example.net/test#p4"/>
                            <owl:Class rdf:about="http://oiled.man.example.net/test#p5"/>
                        </owl:unionOf>
                    </owl:Class>
                </owl:complementOf>
            </owl:Class>
        </rdfs:subClassOf>
    </owl:Class>
    <owl:Class rdf:about="http://oiled.man.example.net/test#p2">
        <rdfs:subClassOf>
            <owl:Class>
                <owl:complementOf>
                    <owl:Class>
                        <owl:unionOf rdf:parseType="Collection">
                            <owl:Class rdf:about="http://oiled.man.example.net/test#p3"/>
                            <owl:Class rdf:about="http://oiled.man.example.net/test#p4"/>
                            <owl:Class rdf:about="http://oiled.man.example.net/test#p5"/>
                        </owl:unionOf>
                    </owl:Class>
                </owl:complementOf>
            </owl:Class>
        </rdfs:subClassOf>
    </owl:Class>
    <owl:Class rdf:about="http://oiled.man.example.net/test#p3">
        <rdfs:subClassOf>
            <owl:Class>
                <owl:complementOf>
                    <owl:Class>
                        <owl:unionOf rdf:parseType="Collection">
                            <owl:Class rdf:about="http://oiled.man.example.net/test#p4"/>
                            <owl:Class rdf:about="http://oiled.man.example.net/test#p5"/>
                        </owl:unionOf>
                    </owl:Class>
                </owl:complementOf>
            </owl:Class>
        </rdfs:subClassOf>
    </owl:Class>
    <owl:Class rdf:about="http://oiled.man.example.net/test#p4">
        <rdfs:subClassOf>
            <owl:Class>
                <owl:complementOf>
                    <owl:Class rdf:about="http://oiled.man.example.net/test#p5"/>
                </owl:complementOf>
            </owl:Class>
        </rdfs:subClassOf>
    </owl:Class>
    <owl:Class rdf:about="http://oiled.man.example.net/test#p5"/>
    <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/inconsistent022> 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 .
oiled:p1 rdf:type owl:Class .
_:c owl:someValuesFrom oiled:p1 .
_:e rdf:type owl:Restriction .
_:e owl:onProperty oiled:r .
oiled:p2 rdf:type owl:Class .
_:e owl:someValuesFrom oiled:p2 .
_:g rdf:type owl:Restriction .
_:g owl:onProperty oiled:r .
oiled:p3 rdf:type owl:Class .
_:g owl:someValuesFrom oiled:p3 .
_:i rdf:type owl:Restriction .
_:i owl:onProperty oiled:r .
oiled:p4 rdf:type owl:Class .
_:i owl:someValuesFrom oiled:p4 .
_:k rdf:type owl:Restriction .
_:k owl:onProperty oiled:r .
_:m rdf:type owl:Class .
oiled:p1 rdf:type owl:Class .
oiled:p rdf:type owl:Class .
_:o rdf:first oiled:p .
_:o rdf:rest rdf:nil .
_:q rdf:first oiled:p1 .
_:q rdf:rest _:o .
_:m owl:intersectionOf _:q .
_:k owl:someValuesFrom _:m .
_:s rdf:type owl:Restriction .
_:s owl:onProperty oiled:r .
_:u rdf:type owl:Class .
oiled:p2 rdf:type owl:Class .
oiled:p rdf:type owl:Class .
_:w rdf:first oiled:p .
_:w rdf:rest rdf:nil .
_:y rdf:first oiled:p2 .
_:y rdf:rest _:w .
_:u owl:intersectionOf _:y .
_:s owl:someValuesFrom _:u .
_:a1 rdf:type owl:Restriction .
_:a1 owl:onProperty oiled:r .
_:c1 rdf:type owl:Class .
oiled:p3 rdf:type owl:Class .
oiled:p rdf:type owl:Class .
_:e1 rdf:first oiled:p .
_:e1 rdf:rest rdf:nil .
_:g1 rdf:first oiled:p3 .
_:g1 rdf:rest _:e1 .
_:c1 owl:intersectionOf _:g1 .
_:a1 owl:someValuesFrom _:c1 .
_:i1 rdf:type owl:Restriction .
_:i1 owl:onProperty oiled:r .
_:k1 rdf:type owl:Class .
oiled:p4 rdf:type owl:Class .
oiled:p rdf:type owl:Class .
_:m1 rdf:first oiled:p .
_:m1 rdf:rest rdf:nil .
_:o1 rdf:first oiled:p4 .
_:o1 rdf:rest _:m1 .
_:k1 owl:intersectionOf _:o1 .
_:i1 owl:someValuesFrom _:k1 .
_:q1 rdf:type owl:Restriction .
_:q1 owl:onProperty oiled:r .
_:q1 owl:maxCardinality "4"^^xsd:nonNegativeInteger  .
_:s1 rdf:type owl:Restriction .
_:s1 owl:onProperty oiled:r .
oiled:p5 rdf:type owl:Class .
_:s1 owl:someValuesFrom oiled:p5 .
_:u1 rdf:first _:s1 .
_:u1 rdf:rest rdf:nil .
_:w1 rdf:first _:q1 .
_:w1 rdf:rest _:u1 .
_:y1 rdf:first _:i1 .
_:y1 rdf:rest _:w1 .
_:a2 rdf:first _:a1 .
_:a2 rdf:rest _:y1 .
_:c2 rdf:first _:s .
_:c2 rdf:rest _:a2 .
_:e2 rdf:first _:k .
_:e2 rdf:rest _:c2 .
_:g2 rdf:first _:i .
_:g2 rdf:rest _:e2 .
_:i2 rdf:first _:g .
_:i2 rdf:rest _:g2 .
_:k2 rdf:first _:e .
_:k2 rdf:rest _:i2 .
_:m2 rdf:first _:c .
_:m2 rdf:rest _:k2 .
_:a owl:intersectionOf _:m2 .
oiled:Unsatisfiable owl:equivalentClass _:a .
oiled:p rdf:type owl:Class .
oiled:p1 rdf:type owl:Class .
_:o2 rdf:type owl:Class .
_:q2 rdf:type owl:Class .
oiled:p2 rdf:type owl:Class .
oiled:p3 rdf:type owl:Class .
oiled:p4 rdf:type owl:Class .
oiled:p5 rdf:type owl:Class .
_:s2 rdf:first oiled:p5 .
_:s2 rdf:rest rdf:nil .
_:u2 rdf:first oiled:p4 .
_:u2 rdf:rest _:s2 .
_:w2 rdf:first oiled:p3 .
_:w2 rdf:rest _:u2 .
_:y2 rdf:first oiled:p2 .
_:y2 rdf:rest _:w2 .
_:q2 owl:unionOf _:y2 .
_:o2 owl:complementOf _:q2 .
oiled:p1 rdfs:subClassOf _:o2 .
oiled:p2 rdf:type owl:Class .
_:a3 rdf:type owl:Class .
_:c3 rdf:type owl:Class .
oiled:p3 rdf:type owl:Class .
oiled:p4 rdf:type owl:Class .
oiled:p5 rdf:type owl:Class .
_:e3 rdf:first oiled:p5 .
_:e3 rdf:rest rdf:nil .
_:g3 rdf:first oiled:p4 .
_:g3 rdf:rest _:e3 .
_:i3 rdf:first oiled:p3 .
_:i3 rdf:rest _:g3 .
_:c3 owl:unionOf _:i3 .
_:a3 owl:complementOf _:c3 .
oiled:p2 rdfs:subClassOf _:a3 .
oiled:p3 rdf:type owl:Class .
_:k3 rdf:type owl:Class .
_:m3 rdf:type owl:Class .
oiled:p4 rdf:type owl:Class .
oiled:p5 rdf:type owl:Class .
_:o3 rdf:first oiled:p5 .
_:o3 rdf:rest rdf:nil .
_:q3 rdf:first oiled:p4 .
_:q3 rdf:rest _:o3 .
_:m3 owl:unionOf _:q3 .
_:k3 owl:complementOf _:m3 .
oiled:p3 rdfs:subClassOf _:k3 .
oiled:p4 rdf:type owl:Class .
_:s3 rdf:type owl:Class .
oiled:p5 rdf:type owl:Class .
_:s3 owl:complementOf oiled:p5 .
oiled:p4 rdfs:subClassOf _:s3 .
oiled:p5 rdf:type owl:Class .
oiled:r rdf:type owl:ObjectProperty .
_:u3 rdf:type oiled:Unsatisfiable .

DL FullInconsistent document.023
Description: (informative) <description-logic/Manifest023#test>
DL Test: t4.1 Dynamic blocking example
N3 format is informative.
DLInconsistent: <description-logic/inconsistent023>
<rdf:RDF
    xml:base="http://www.w3.org/2002/03owlt/description-logic/inconsistent023"
    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#a"/>
        </rdfs:subClassOf>
        <rdfs:subClassOf>
            <owl:Restriction>
                <owl:onProperty rdf:resource="http://oiled.man.example.net/test#s"/>
                <owl:someValuesFrom>
                    <owl:Class>
                        <owl:intersectionOf rdf:parseType="Collection">
                            <owl:Restriction>
                                <owl:onProperty rdf:resource="http://oiled.man.example.net/test#r"/>
                                <owl:someValuesFrom>
                                    <owl:Class rdf:about="http://www.w3.org/2002/07/owl#Thing"/>
                                </owl:someValuesFrom>
                            </owl:Restriction>
                            <owl:Restriction>
                                <owl:onProperty rdf:resource="http://oiled.man.example.net/test#p"/>
                                <owl:someValuesFrom>
                                    <owl:Class rdf:about="http://www.w3.org/2002/07/owl#Thing"/>
                                </owl:someValuesFrom>
                            </owl:Restriction>
                            <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>
                            <owl:Restriction>
                                <owl:onProperty rdf:resource="http://oiled.man.example.net/test#p"/>
                                <owl:allValuesFrom>
                                    <owl:Restriction>
                                    <owl:onProperty rdf:resource="http://oiled.man.example.net/test#r"/>
                                    <owl:someValuesFrom>
                                    <owl:Class rdf:about="http://www.w3.org/2002/07/owl#Thing"/>
                                    </owl:someValuesFrom>
                                    </owl:Restriction>
                                </owl:allValuesFrom>
                            </owl:Restriction>
                            <owl:Restriction>
                                <owl:onProperty rdf:resource="http://oiled.man.example.net/test#p"/>
                                <owl:allValuesFrom>
                                    <owl:Restriction>
                                    <owl:onProperty rdf:resource="http://oiled.man.example.net/test#p"/>
                                    <owl:someValuesFrom>
                                    <owl:Class rdf:about="http://www.w3.org/2002/07/owl#Thing"/>
                                    </owl:someValuesFrom>
                                    </owl:Restriction>
                                </owl:allValuesFrom>
                            </owl:Restriction>
                            <owl:Restriction>
                                <owl:onProperty rdf:resource="http://oiled.man.example.net/test#p"/>
                                <owl:allValuesFrom>
                                    <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>
                                </owl:allValuesFrom>
                            </owl:Restriction>
                        </owl:intersectionOf>
                    </owl:Class>
                </owl:someValuesFrom>
            </owl:Restriction>
        </rdfs:subClassOf>
    </owl:Class>
    <owl:Class rdf:about="http://oiled.man.example.net/test#a"/>
    <owl:Class rdf:about="http://oiled.man.example.net/test#c">
        <owl:equivalentClass>
            <owl:Restriction>
                <owl:onProperty rdf:resource="http://oiled.man.example.net/test#invR"/>
                <owl:allValuesFrom>
                    <owl:Restriction>
                        <owl:onProperty rdf:resource="http://oiled.man.example.net/test#invP"/>
                        <owl:allValuesFrom>
                            <owl:Restriction>
                                <owl:onProperty rdf:resource="http://oiled.man.example.net/test#invS"/>
                                <owl:allValuesFrom>
                                    <owl:Class>
                                    <owl:complementOf>
                                    <owl:Class rdf:about="http://oiled.man.example.net/test#a"/>
                                    </owl:complementOf>
                                    </owl:Class>
                                </owl:allValuesFrom>
                            </owl:Restriction>
                        </owl:allValuesFrom>
                    </owl:Restriction>
                </owl:allValuesFrom>
            </owl:Restriction>
        </owl:equivalentClass>
    </owl:Class>
    <owl:ObjectProperty rdf:about="http://oiled.man.example.net/test#invP">
        <owl:inverseOf rdf:resource="http://oiled.man.example.net/test#p"/>
    </owl:ObjectProperty>
    <owl:ObjectProperty rdf:about="http://oiled.man.example.net/test#invR">
        <owl:inverseOf rdf:resource="http://oiled.man.example.net/test#r"/>
    </owl:ObjectProperty>
    <owl:ObjectProperty rdf:about="http://oiled.man.example.net/test#invS">
        <owl:inverseOf rdf:resource="http://oiled.man.example.net/test#s"/>
    </owl:ObjectProperty>
    <owl:ObjectProperty rdf:about="http://oiled.man.example.net/test#p"/>
    <owl:TransitiveProperty rdf:about="http://oiled.man.example.net/test#p"/>
    <owl:ObjectProperty rdf:about="http://oiled.man.example.net/test#r"/>
    <owl:ObjectProperty rdf:about="http://oiled.man.example.net/test#s"/>
    <rdf:Description>
        <rdf:type rdf:resource="http://oiled.man.example.net/test#Unsatisfiable"/>
    </rdf:Description>
</rdf:RDF>
<description-logic/inconsistent023> rdf:type owl:Ontology .
oiled:Unsatisfiable rdf:type owl:Class .
oiled:a rdf:type owl:Class .
oiled:Unsatisfiable rdfs:subClassOf oiled:a .
_:a rdf:type owl:Restriction .
_:a owl:onProperty oiled:s .
_:c rdf:type owl:Class .
_:e rdf:type owl:Restriction .
_:e owl:onProperty oiled:r .
owl:Thing rdf:type owl:Class .
_:e owl:someValuesFrom owl:Thing .
_:g rdf:type owl:Restriction .
_:g owl:onProperty oiled:p .
owl:Thing rdf:type owl:Class .
_:g owl:someValuesFrom owl:Thing .
_:i rdf:type owl:Restriction .
_:i owl:onProperty oiled:r .
oiled:c rdf:type owl:Class .
_:i owl:allValuesFrom oiled:c .
_:k rdf:type owl:Restriction .
_:k owl:onProperty oiled:p .
_:m rdf:type owl:Restriction .
_:m owl:onProperty oiled:r .
owl:Thing rdf:type owl:Class .
_:m owl:someValuesFrom owl:Thing .
_:k owl:allValuesFrom _:m .
_:o rdf:type owl:Restriction .
_:o owl:onProperty oiled:p .
_:q rdf:type owl:Restriction .
_:q owl:onProperty oiled:p .
owl:Thing rdf:type owl:Class .
_:q owl:someValuesFrom owl:Thing .
_:o owl:allValuesFrom _:q .
_:s rdf:type owl:Restriction .
_:s owl:onProperty oiled:p .
_:u rdf:type owl:Restriction .
_:u owl:onProperty oiled:r .
oiled:c rdf:type owl:Class .
_:u owl:allValuesFrom oiled:c .
_:s owl:allValuesFrom _:u .
_:w rdf:first _:s .
_:w rdf:rest rdf:nil .
_:y rdf:first _:o .
_:y rdf:rest _:w .
_:a1 rdf:first _:k .
_:a1 rdf:rest _:y .
_:c1 rdf:first _:i .
_:c1 rdf:rest _:a1 .
_:e1 rdf:first _:g .
_:e1 rdf:rest _:c1 .
_:g1 rdf:first _:e .
_:g1 rdf:rest _:e1 .
_:c owl:intersectionOf _:g1 .
_:a owl:someValuesFrom _:c .
oiled:Unsatisfiable rdfs:subClassOf _:a .
oiled:a rdf:type owl:Class .
oiled:c rdf:type owl:Class .
_:i1 rdf:type owl:Restriction .
_:i1 owl:onProperty oiled:invR .
_:k1 rdf:type owl:Restriction .
_:k1 owl:onProperty oiled:invP .
_:m1 rdf:type owl:Restriction .
_:m1 owl:onProperty oiled:invS .
_:o1 rdf:type owl:Class .
oiled:a rdf:type owl:Class .
_:o1 owl:complementOf oiled:a .
_:m1 owl:allValuesFrom _:o1 .
_:k1 owl:allValuesFrom _:m1 .
_:i1 owl:allValuesFrom _:k1 .
oiled:c owl:equivalentClass _:i1 .
oiled:invP rdf:type owl:ObjectProperty .
oiled:invP owl:inverseOf oiled:p .
oiled:invR rdf:type owl:ObjectProperty .
oiled:invR owl:inverseOf oiled:r .
oiled:invS rdf:type owl:ObjectProperty .
oiled:invS owl:inverseOf oiled:s .
oiled:p rdf:type owl:ObjectProperty .
oiled:p rdf:type owl:TransitiveProperty .
oiled:r rdf:type owl:ObjectProperty .
oiled:s rdf:type owl:ObjectProperty .
_:q1 rdf:type oiled:Unsatisfiable .

DL FullConsistent 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
N3 format is informative.
DLConsistent: <description-logic/consistent024>
<rdf:RDF
    xml:base="http://www.w3.org/2002/03owlt/description-logic/consistent024"
    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#Satisfiable">
        <owl:equivalentClass>
            <owl:Class>
                <owl:intersectionOf rdf:parseType="Collection">
                    <owl:Class>
                        <owl:complementOf>
                            <owl:Class rdf:about="http://oiled.man.example.net/test#a"/>
                        </owl:complementOf>
                    </owl:Class>
                    <owl:Restriction>
                        <owl:onProperty rdf:resource="http://oiled.man.example.net/test#invF"/>
                        <owl:someValuesFrom>
                            <owl:Class rdf:about="http://oiled.man.example.net/test#a"/>
                        </owl:someValuesFrom>
                    </owl:Restriction>
                    <owl:Restriction>
                        <owl:onProperty rdf:resource="http://oiled.man.example.net/test#invR"/>
                        <owl:someValuesFrom>
                            <owl:Restriction>
                                <owl:onProperty rdf:resource="http://oiled.man.example.net/test#invF"/>
                                <owl:someValuesFrom>
                                    <owl:Class rdf:about="http://oiled.man.example.net/test#a"/>
                                </owl:someValuesFrom>
                            </owl:Restriction>
                        </owl:someValuesFrom>
                    </owl:Restriction>
                </owl:intersectionOf>
            </owl:Class>
        </owl:equivalentClass>
    </owl:Class>
    <owl:Class rdf:about="http://oiled.man.example.net/test#a"/>
    <owl:ObjectProperty rdf:about="http://oiled.man.example.net/test#invF">
        <owl:inverseOf rdf:resource="http://oiled.man.example.net/test#f"/>
    </owl:ObjectProperty>
    <owl:ObjectProperty rdf:about="http://oiled.man.example.net/test#invR">
        <owl:inverseOf rdf:resource="http://oiled.man.example.net/test#r"/>
    </owl:ObjectProperty>
    <owl:ObjectProperty rdf:about="http://oiled.man.example.net/test#f">
        <rdfs:subPropertyOf rdf:resource="http://oiled.man.example.net/test#r"/>
    </owl:ObjectProperty>
    <owl:ObjectProperty rdf:about="http://oiled.man.example.net/test#r"/>
    <owl:TransitiveProperty rdf:about="http://oiled.man.example.net/test#r"/>
<rdf:Description rdf:about='http://www.w3.org/2002/07/owl#Thing' >
        <rdfs:subClassOf>
            <owl:Restriction>
                <owl:onProperty rdf:resource="http://oiled.man.example.net/test#f"/>
                <owl:maxCardinality rdf:datatype="http://www.w3.org/2001/XMLSchema#nonNegativeInteger">1</owl:maxCardinality>
            </owl:Restriction>
        </rdfs:subClassOf>
</rdf:Description>
    <rdf:Description>
        <rdf:type rdf:resource="http://oiled.man.example.net/test#Satisfiable"/>
    </rdf:Description>
</rdf:RDF>
<description-logic/consistent024> rdf:type owl:Ontology .
oiled:Satisfiable rdf:type owl:Class .
_:a rdf:type owl:Class .
_:c rdf:type owl:Class .
oiled:a rdf:type owl:Class .
_:c owl:complementOf oiled:a .
_:e rdf:type owl:Restriction .
_:e owl:onProperty oiled:invF .
oiled:a rdf:type owl:Class .
_:e owl:someValuesFrom oiled:a .
_:g rdf:type owl:Restriction .
_:g owl:onProperty oiled:invR .
_:i rdf:type owl:Restriction .
_:i owl:onProperty oiled:invF .
oiled:a rdf:type owl:Class .
_:i owl:someValuesFrom oiled:a .
_:g owl:someValuesFrom _:i .
_:k rdf:first _:g .
_:k rdf:rest rdf:nil .
_:m rdf:first _:e .
_:m rdf:rest _:k .
_:o rdf:first _:c .
_:o rdf:rest _:m .
_:a owl:intersectionOf _:o .
oiled:Satisfiable owl:equivalentClass _:a .
oiled:a rdf:type owl:Class .
oiled:invF rdf:type owl:ObjectProperty .
oiled:invF owl:inverseOf oiled:f .
oiled:invR rdf:type owl:ObjectProperty .
oiled:invR owl:inverseOf oiled:r .
oiled:f rdf:type owl:ObjectProperty .
oiled:f rdfs:subPropertyOf oiled:r .
oiled:r rdf:type owl:ObjectProperty .
oiled:r rdf:type owl:TransitiveProperty .
_:q rdf:type owl:Restriction .
_:q owl:onProperty oiled:f .
_:q owl:maxCardinality "1"^^xsd:nonNegativeInteger  .
owl:Thing rdfs:subClassOf _:q .
_:s rdf:type oiled:Satisfiable .

DL FullConsistent 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
N3 format is informative.
DLConsistent: <description-logic/consistent025>
<rdf:RDF
    xml:base="http://www.w3.org/2002/03owlt/description-logic/consistent025"
    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#Satisfiable">
        <owl:equivalentClass>
            <owl:Class>
                <owl:intersectionOf rdf:parseType="Collection">
                    <owl:Class>
                        <owl:complementOf>
                            <owl:Class rdf:about="http://oiled.man.example.net/test#a"/>
                        </owl:complementOf>
                    </owl:Class>
                    <owl:Restriction>
                        <owl:onProperty rdf:resource="http://oiled.man.example.net/test#invF"/>
                        <owl:someValuesFrom>
                            <owl:Class rdf:about="http://oiled.man.example.net/test#a"/>
                        </owl:someValuesFrom>
                    </owl:Restriction>
                    <owl:Restriction>
                        <owl:onProperty rdf:resource="http://oiled.man.example.net/test#invR"/>
                        <owl:someValuesFrom>
                            <owl:Restriction>
                                <owl:onProperty rdf:resource="http://oiled.man.example.net/test#invF"/>
                                <owl:someValuesFrom>
                                    <owl:Class rdf:about="http://oiled.man.example.net/test#a"/>
                                </owl:someValuesFrom>
                            </owl:Restriction>
                        </owl:someValuesFrom>
                    </owl:Restriction>
                </owl:intersectionOf>
            </owl:Class>
        </owl:equivalentClass>
    </owl:Class>
    <owl:Class rdf:about="http://oiled.man.example.net/test#a"/>
    <owl:ObjectProperty rdf:about="http://oiled.man.example.net/test#invF">
        <owl:inverseOf rdf:resource="http://oiled.man.example.net/test#f"/>
    </owl:ObjectProperty>
    <owl:ObjectProperty rdf:about="http://oiled.man.example.net/test#invR">
        <owl:inverseOf rdf:resource="http://oiled.man.example.net/test#r"/>
    </owl:ObjectProperty>
    <owl:ObjectProperty rdf:about="http://oiled.man.example.net/test#f">
        <rdfs:subPropertyOf rdf:resource="http://oiled.man.example.net/test#r"/>
    </owl:ObjectProperty>
    <owl:FunctionalProperty rdf:about="http://oiled.man.example.net/test#f"/>
    <owl:ObjectProperty rdf:about="http://oiled.man.example.net/test#r"/>
    <owl:TransitiveProperty rdf:about="http://oiled.man.example.net/test#r"/>
    <rdf:Description>
        <rdf:type rdf:resource="http://oiled.man.example.net/test#Satisfiable"/>
    </rdf:Description>
</rdf:RDF>
<description-logic/consistent025> rdf:type owl:Ontology .
oiled:Satisfiable rdf:type owl:Class .
_:a rdf:type owl:Class .
_:c rdf:type owl:Class .
oiled:a rdf:type owl:Class .
_:c owl:complementOf oiled:a .
_:e rdf:type owl:Restriction .
_:e owl:onProperty oiled:invF .
oiled:a rdf:type owl:Class .
_:e owl:someValuesFrom oiled:a .
_:g rdf:type owl:Restriction .
_:g owl:onProperty oiled:invR .
_:i rdf:type owl:Restriction .
_:i owl:onProperty oiled:invF .
oiled:a rdf:type owl:Class .
_:i owl:someValuesFrom oiled:a .
_:g owl:someValuesFrom _:i .
_:k rdf:first _:g .
_:k rdf:rest rdf:nil .
_:m rdf:first _:e .
_:m rdf:rest _:k .
_:o rdf:first _:c .
_:o rdf:rest _:m .
_:a owl:intersectionOf _:o .
oiled:Satisfiable owl:equivalentClass _:a .
oiled:a rdf:type owl:Class .
oiled:invF rdf:type owl:ObjectProperty .
oiled:invF owl:inverseOf oiled:f .
oiled:invR rdf:type owl:ObjectProperty .
oiled:invR owl:inverseOf oiled:r .
oiled:f rdf:type owl:ObjectProperty .
oiled:f rdfs:subPropertyOf oiled:r .
oiled:f rdf:type owl:FunctionalProperty .
oiled:r rdf:type owl:ObjectProperty .
oiled:r rdf:type owl:TransitiveProperty .
_:q rdf:type oiled:Satisfiable .

DL FullInconsistent document.026
Description: (informative) <description-logic/Manifest026#test>
DL Test: t6.1 Double blocking example. The concept should be incoherent but needs double blocking
N3 format is informative.
DLInconsistent: <description-logic/inconsistent026>
<rdf:RDF
    xml:base="http://www.w3.org/2002/03owlt/description-logic/inconsistent026"
    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:Class>
                        <owl:complementOf>
                            <owl:Class rdf:about="http://oiled.man.example.net/test#c"/>
                        </owl:complementOf>
                    </owl:Class>
                    <owl:Restriction>
                        <owl:onProperty rdf:resource="http://oiled.man.example.net/test#invF"/>
                        <owl:someValuesFrom>
                            <owl:Class rdf:about="http://oiled.man.example.net/test#d"/>
                        </owl:someValuesFrom>
                    </owl:Restriction>
                    <owl:Restriction>
                        <owl:onProperty rdf:resource="http://oiled.man.example.net/test#invR"/>
                        <owl:allValuesFrom>
                            <owl:Restriction>
                                <owl:onProperty rdf:resource="http://oiled.man.example.net/test#invF"/>
                                <owl:someValuesFrom>
                                    <owl:Class rdf:about="http://oiled.man.example.net/test#d"/>
                                </owl:someValuesFrom>
                            </owl:Restriction>
                        </owl:allValuesFrom>
                    </owl:Restriction>
                </owl:intersectionOf>
            </owl:Class>
        </owl:equivalentClass>
    </owl:Class>
    <owl:Class rdf:about="http://oiled.man.example.net/test#c"/>
    <owl:Class rdf:about="http://oiled.man.example.net/test#d">
        <owl:equivalentClass>
            <owl:Class>
                <owl:intersectionOf rdf:parseType="Collection">
                    <owl:Class rdf:about="http://oiled.man.example.net/test#c"/>
                    <owl:Restriction>
                        <owl:onProperty rdf:resource="http://oiled.man.example.net/test#f"/>
                        <owl:someValuesFrom>
                            <owl:Class>
                                <owl:complementOf>
                                    <owl:Class rdf:about="http://oiled.man.example.net/test#c"/>
                                </owl:complementOf>
                            </owl:Class>
                        </owl:someValuesFrom>
                    </owl:Restriction>
                </owl:intersectionOf>
            </owl:Class>
        </owl:equivalentClass>
    </owl:Class>
    <owl:ObjectProperty rdf:about="http://oiled.man.example.net/test#invF">
        <owl:inverseOf rdf:resource="http://oiled.man.example.net/test#f"/>
    </owl:ObjectProperty>
    <owl:ObjectProperty rdf:about="http://oiled.man.example.net/test#invR">
        <owl:inverseOf rdf:resource="http://oiled.man.example.net/test#r"/>
    </owl:ObjectProperty>
    <owl:ObjectProperty rdf:about="http://oiled.man.example.net/test#f">
        <rdfs:subPropertyOf rdf:resource="http://oiled.man.example.net/test#r"/>
    </owl:ObjectProperty>
    <owl:ObjectProperty rdf:about="http://oiled.man.example.net/test#r"/>
    <owl:TransitiveProperty rdf:about="http://oiled.man.example.net/test#r"/>
<rdf:Description rdf:about='http://www.w3.org/2002/07/owl#Thing' >
        <rdfs:subClassOf>
            <owl:Restriction>
                <owl:onProperty rdf:resource="http://oiled.man.example.net/test#f"/>
                <owl:maxCardinality rdf:datatype="http://www.w3.org/2001/XMLSchema#nonNegativeInteger">1</owl:maxCardinality>
            </owl:Restriction>
        </rdfs:subClassOf>
</rdf:Description>
    <rdf:Description>
        <rdf:type rdf:resource="http://oiled.man.example.net/test#Unsatisfiable"/>
    </rdf:Description>
</rdf:RDF>
<description-logic/inconsistent026> rdf:type owl:Ontology .
oiled:Unsatisfiable rdf:type owl:Class .
_:a rdf:type owl:Class .
_:c rdf:type owl:Class .
oiled:c rdf:type owl:Class .
_:c owl:complementOf oiled:c .
_:e rdf:type owl:Restriction .
_:e owl:onProperty oiled:invF .
oiled:d rdf:type owl:Class .
_:e owl:someValuesFrom oiled:d .
_:g rdf:type owl:Restriction .
_:g owl:onProperty oiled:invR .
_:i rdf:type owl:Restriction .
_:i owl:onProperty oiled:invF .
oiled:d rdf:type owl:Class .
_:i owl:someValuesFrom oiled:d .
_:g owl:allValuesFrom _:i .
_:k rdf:first _:g .
_:k rdf:rest rdf:nil .
_:m rdf:first _:e .
_:m rdf:rest _:k .
_:o rdf:first _:c .
_:o rdf:rest _:m .
_:a owl:intersectionOf _:o .
oiled:Unsatisfiable owl:equivalentClass _:a .
oiled:c rdf:type owl:Class .
oiled:d rdf:type owl:Class .
_:q rdf:type owl:Class .
oiled:c rdf:type owl:Class .
_:s rdf:type owl:Restriction .
_:s owl:onProperty oiled:f .
_:u rdf:type owl:Class .
oiled:c rdf:type owl:Class .
_:u owl:complementOf oiled:c .
_:s owl:someValuesFrom _:u .
_:w rdf:first _:s .
_:w rdf:rest rdf:nil .
_:y rdf:first oiled:c .
_:y rdf:rest _:w .
_:q owl:intersectionOf _:y .
oiled:d owl:equivalentClass _:q .
oiled:invF rdf:type owl:ObjectProperty .
oiled:invF owl:inverseOf oiled:f .
oiled:invR rdf:type owl:ObjectProperty .
oiled:invR owl:inverseOf oiled:r .
oiled:f rdf:type owl:ObjectProperty .
oiled:f rdfs:subPropertyOf oiled:r .
oiled:r rdf:type owl:ObjectProperty .
oiled:r rdf:type owl:TransitiveProperty .
_:a1 rdf:type owl:Restriction .
_:a1 owl:onProperty oiled:f .
_:a1 owl:maxCardinality "1"^^xsd:nonNegativeInteger  .
owl:Thing rdfs:subClassOf _:a1 .
_:c1 rdf:type oiled:Unsatisfiable .

DL FullInconsistent document.027
Description: (informative) <description-logic/Manifest027#test>
DL Test: t6f.1 Double blocking example. The concept should be incoherent but needs double blocking
N3 format is informative.
DLInconsistent: <description-logic/inconsistent027>
<rdf:RDF
    xml:base="http://www.w3.org/2002/03owlt/description-logic/inconsistent027"
    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:Class>
                        <owl:complementOf>
                            <owl:Class rdf:about="http://oiled.man.example.net/test#c"/>
                        </owl:complementOf>
                    </owl:Class>
                    <owl:Restriction>
                        <owl:onProperty rdf:resource="http://oiled.man.example.net/test#invF"/>
                        <owl:someValuesFrom>
                            <owl:Class rdf:about="http://oiled.man.example.net/test#d"/>
                        </owl:someValuesFrom>
                    </owl:Restriction>
                    <owl:Restriction>
                        <owl:onProperty rdf:resource="http://oiled.man.example.net/test#invR"/>
                        <owl:allValuesFrom>
                            <owl:Restriction>
                                <owl:onProperty rdf:resource="http://oiled.man.example.net/test#invF"/>
                                <owl:someValuesFrom>
                                    <owl:Class rdf:about="http://oiled.man.example.net/test#d"/>
                                </owl:someValuesFrom>
                            </owl:Restriction>
                        </owl:allValuesFrom>
                    </owl:Restriction>
                </owl:intersectionOf>
            </owl:Class>
        </owl:equivalentClass>
    </owl:Class>
    <owl:Class rdf:about="http://oiled.man.example.net/test#c"/>
    <owl:Class rdf:about="http://oiled.man.example.net/test#d">
        <owl:equivalentClass>
            <owl:Class>
                <owl:intersectionOf rdf:parseType="Collection">
                    <owl:Class rdf:about="http://oiled.man.example.net/test#c"/>
                    <owl:Restriction>
                        <owl:onProperty rdf:resource="http://oiled.man.example.net/test#f"/>
                        <owl:someValuesFrom>
                            <owl:Class>
                                <owl:complementOf>
                                    <owl:Class rdf:about="http://oiled.man.example.net/test#c"/>
                                </owl:complementOf>
                            </owl:Class>
                        </owl:someValuesFrom>
                    </owl:Restriction>
                </owl:intersectionOf>
            </owl:Class>
        </owl:equivalentClass>
    </owl:Class>
    <owl:ObjectProperty rdf:about="http://oiled.man.example.net/test#invF">
        <owl:inverseOf rdf:resource="http://oiled.man.example.net/test#f"/>
    </owl:ObjectProperty>
    <owl:ObjectProperty rdf:about="http://oiled.man.example.net/test#invR">
        <owl:inverseOf rdf:resource="http://oiled.man.example.net/test#r"/>
    </owl:ObjectProperty>
    <owl:ObjectProperty rdf:about="http://oiled.man.example.net/test#f">
        <rdfs:subPropertyOf rdf:resource="http://oiled.man.example.net/test#r"/>
    </owl:ObjectProperty>
    <owl:FunctionalProperty rdf:about="http://oiled.man.example.net/test#f"/>
    <owl:ObjectProperty rdf:about="http://oiled.man.example.net/test#r"/>
    <owl:TransitiveProperty 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/inconsistent027> rdf:type owl:Ontology .
oiled:Unsatisfiable rdf:type owl:Class .
_:a rdf:type owl:Class .
_:c rdf:type owl:Class .
oiled:c rdf:type owl:Class .
_:c owl:complementOf oiled:c .
_:e rdf:type owl:Restriction .
_:e owl:onProperty oiled:invF .
oiled:d rdf:type owl:Class .
_:e owl:someValuesFrom oiled:d .
_:g rdf:type owl:Restriction .
_:g owl:onProperty oiled:invR .
_:i rdf:type owl:Restriction .
_:i owl:onProperty oiled:invF .
oiled:d rdf:type owl:Class .
_:i owl:someValuesFrom oiled:d .
_:g owl:allValuesFrom _:i .
_:k rdf:first _:g .
_:k rdf:rest rdf:nil .
_:m rdf:first _:e .
_:m rdf:rest _:k .
_:o rdf:first _:c .
_:o rdf:rest _:m .
_:a owl:intersectionOf _:o .
oiled:Unsatisfiable owl:equivalentClass _:a .
oiled:c rdf:type owl:Class .
oiled:d rdf:type owl:Class .
_:q rdf:type owl:Class .
oiled:c rdf:type owl:Class .
_:s rdf:type owl:Restriction .
_:s owl:onProperty oiled:f .
_:u rdf:type owl:Class .
oiled:c rdf:type owl:Class .
_:u owl:complementOf oiled:c .
_:s owl:someValuesFrom _:u .
_:w rdf:first _:s .
_:w rdf:rest rdf:nil .
_:y rdf:first oiled:c .
_:y rdf:rest _:w .
_:q owl:intersectionOf _:y .
oiled:d owl:equivalentClass _:q .
oiled:invF rdf:type owl:ObjectProperty .
oiled:invF owl:inverseOf oiled:f .
oiled:invR rdf:type owl:ObjectProperty .
oiled:invR owl:inverseOf oiled:r .
oiled:f rdf:type owl:ObjectProperty .
oiled:f rdfs:subPropertyOf oiled:r .
oiled:f rdf:type owl:FunctionalProperty .
oiled:r rdf:type owl:ObjectProperty .
oiled:r rdf:type owl:TransitiveProperty .
_:a1 rdf:type oiled:Unsatisfiable .

DL FullConsistent document.028
Description: (informative) <description-logic/Manifest028#test>
DL Test: t7.1
N3 format is informative.
DLConsistent: <description-logic/consistent028>
<rdf:RDF
    xml:base="http://www.w3.org/2002/03owlt/description-logic/consistent028"
    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#Satisfiable">
        <owl:equivalentClass>
            <owl:Class>
                <owl:intersectionOf rdf:parseType="Collection">
                    <owl:Class rdf:about="http://oiled.man.example.net/test#p1"/>
                    <owl:Restriction>
                        <owl:onProperty rdf:resource="http://oiled.man.example.net/test#r"/>
                        <owl:someValuesFrom>
                            <owl:Restriction>
                                <owl:onProperty rdf:resource="http://oiled.man.example.net/test#r"/>
                                <owl:someValuesFrom>
                                    <owl:Class>
                                    <owl:intersectionOf rdf:parseType="Collection">
                                    <owl:Class rdf:about="http://oiled.man.example.net/test#p1"/>
                                    <owl:Restriction>
                                    <owl:onProperty rdf:resource="http://oiled.man.example.net/test#invR"/>
                                    <owl:allValuesFrom>
                                    <owl:Class>
                                    <owl:unionOf rdf:parseType="Collection">
                                    <owl:Class>
                                    <owl:complementOf>

                                    <owl:Class rdf:about="http://oiled.man.example.net/test#p1"/>
                                    </owl:complementOf>
                                    </owl:Class>
                                    <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#p1"/>
                                    </owl:allValuesFrom>
                                    </owl:Restriction>
                                    </owl:unionOf>
                                    </owl:Class>
                                    </owl:allValuesFrom>
                                    </owl:Restriction>
                                    </owl:intersectionOf>
                                    </owl:Class>
                                </owl:someValuesFrom>
                            </owl:Restriction>
                        </owl:someValuesFrom>
                    </owl:Restriction>
                </owl:intersectionOf>
            </owl:Class>
        </owl:equivalentClass>
    </owl:Class>
    <owl:Class rdf:about="http://oiled.man.example.net/test#p1"/>
    <owl:ObjectProperty rdf:about="http://oiled.man.example.net/test#invF">
        <owl:inverseOf rdf:resource="http://oiled.man.example.net/test#f"/>
    </owl:ObjectProperty>
    <owl:ObjectProperty rdf:about="http://oiled.man.example.net/test#invR">
        <owl:inverseOf rdf:resource="http://oiled.man.example.net/test#r"/>
    </owl:ObjectProperty>
    <owl:ObjectProperty rdf:about="http://oiled.man.example.net/test#f"/>
    <owl:ObjectProperty rdf:about="http://oiled.man.example.net/test#r"/>
    <owl:TransitiveProperty rdf:about="http://oiled.man.example.net/test#r"/>
<rdf:Description rdf:about='http://www.w3.org/2002/07/owl#Thing' >
        <rdfs:subClassOf>
            <owl:Restriction>
                <owl:onProperty rdf:resource="http://oiled.man.example.net/test#f"/>
                <owl:maxCardinality rdf:datatype="http://www.w3.org/2001/XMLSchema#nonNegativeInteger">1</owl:maxCardinality>
            </owl:Restriction>
        </rdfs:subClassOf>
</rdf:Description>
    <rdf:Description>
        <rdf:type rdf:resource="http://oiled.man.example.net/test#Satisfiable"/>
    </rdf:Description>
</rdf:RDF>
<description-logic/consistent028> rdf:type owl:Ontology .
oiled:Satisfiable rdf:type owl:Class .
_:a rdf:type owl:Class .
oiled:p1 rdf:type owl:Class .
_:c rdf:type owl:Restriction .
_:c owl:onProperty oiled:r .
_:e rdf:type owl:Restriction .
_:e owl:onProperty oiled:r .
_:g rdf:type owl:Class .
oiled:p1 rdf:type owl:Class .
_:i rdf:type owl:Restriction .
_:i owl:onProperty oiled:invR .
_:k rdf:type owl:Class .
_:m rdf:type owl:Class .
oiled:p1 rdf:type owl:Class .
_:m owl:complementOf oiled:p1 .
_:o rdf:type owl:Restriction .
_:o owl:onProperty oiled:r .
oiled:p1 rdf:type owl:Class .
_:o owl:allValuesFrom oiled:p1 .
_:q rdf:first _:o .
_:q rdf:rest rdf:nil .
_:s rdf:first _:m .
_:s rdf:rest _:q .
_:k owl:unionOf _:s .
_:i owl:allValuesFrom _:k .
_:u rdf:first _:i .
_:u rdf:rest rdf:nil .
_:w rdf:first oiled:p1 .
_:w rdf:rest _:u .
_:g owl:intersectionOf _:w .
_:e owl:someValuesFrom _:g .
_:c owl:someValuesFrom _:e .
_:y rdf:first _:c .
_:y rdf:rest rdf:nil .
_:a1 rdf:first oiled:p1 .
_:a1 rdf:rest _:y .
_:a owl:intersectionOf _:a1 .
oiled:Satisfiable owl:equivalentClass _:a .
oiled:p1 rdf:type owl:Class .
oiled:invF rdf:type owl:ObjectProperty .
oiled:invF owl:inverseOf oiled:f .
oiled:invR rdf:type owl:ObjectProperty .
oiled:invR owl:inverseOf oiled:r .
oiled:f rdf:type owl:ObjectProperty .
oiled:r rdf:type owl:ObjectProperty .
oiled:r rdf:type owl:TransitiveProperty .
_:c1 rdf:type owl:Restriction .
_:c1 owl:onProperty oiled:f .
_:c1 owl:maxCardinality "1"^^xsd:nonNegativeInteger  .
owl:Thing rdfs:subClassOf _:c1 .
_:e1 rdf:type oiled:Satisfiable .

DL FullInconsistent document.029
Description: (informative) <description-logic/Manifest029#test>
DL Test: t7.2
N3 format is informative.
DLInconsistent: <description-logic/inconsistent029>
<rdf:RDF
    xml:base="http://www.w3.org/2002/03owlt/description-logic/inconsistent029"
    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:Class rdf:about="http://oiled.man.example.net/test#p1"/>
                    <owl:Restriction>
                        <owl:onProperty rdf:resource="http://oiled.man.example.net/test#r"/>
                        <owl:someValuesFrom>
                            <owl:Restriction>
                                <owl:onProperty rdf:resource="http://oiled.man.example.net/test#r"/>
                                <owl:someValuesFrom>
                                    <owl:Class>
                                    <owl:intersectionOf rdf:parseType="Collection">
                                    <owl:Class rdf:about="http://oiled.man.example.net/test#p1"/>
                                    <owl:Restriction>
                                    <owl:onProperty rdf:resource="http://oiled.man.example.net/test#invR"/>
                                    <owl:allValuesFrom>
                                    <owl:Class>
                                    <owl:complementOf>
                                    <owl:Class rdf:about="http://oiled.man.example.net/test#p1"/>
                                    </owl:complementOf>
                                    </owl:Class>
                                    </owl:allValuesFrom>
                                    </owl:Restriction>
                                    </owl:intersectionOf>
                                    </owl:Class>
                                </owl:someValuesFrom>
                            </owl:Restriction>
                        </owl:someValuesFrom>
                    </owl:Restriction>
                </owl:intersectionOf>
            </owl:Class>
        </owl:equivalentClass>
    </owl:Class>
    <owl:Class rdf:about="http://oiled.man.example.net/test#p1"/>
    <owl:ObjectProperty rdf:about="http://oiled.man.example.net/test#invF">
        <owl:inverseOf rdf:resource="http://oiled.man.example.net/test#f"/>
    </owl:ObjectProperty>
    <owl:ObjectProperty rdf:about="http://oiled.man.example.net/test#invR">
        <owl:inverseOf rdf:resource="http://oiled.man.example.net/test#r"/>
    </owl:ObjectProperty>
    <owl:ObjectProperty rdf:about="http://oiled.man.example.net/test#f"/>
    <owl:ObjectProperty rdf:about="http://oiled.man.example.net/test#r"/>
    <owl:TransitiveProperty rdf:about="http://oiled.man.example.net/test#r"/>
<rdf:Description rdf:about='http://www.w3.org/2002/07/owl#Thing' >
        <rdfs:subClassOf>
            <owl:Restriction>
                <owl:onProperty rdf:resource="http://oiled.man.example.net/test#f"/>
                <owl:maxCardinality rdf:datatype="http://www.w3.org/2001/XMLSchema#nonNegativeInteger">1</owl:maxCardinality>
            </owl:Restriction>
        </rdfs:subClassOf>
</rdf:Description>
    <rdf:Description>
        <rdf:type rdf:resource="http://oiled.man.example.net/test#Unsatisfiable"/>
    </rdf:Description>
</rdf:RDF>
<description-logic/inconsistent029> rdf:type owl:Ontology .
oiled:Unsatisfiable rdf:type owl:Class .
_:a rdf:type owl:Class .
oiled:p1 rdf:type owl:Class .
_:c rdf:type owl:Restriction .
_:c owl:onProperty oiled:r .
_:e rdf:type owl:Restriction .
_:e owl:onProperty oiled:r .
_:g rdf:type owl:Class .
oiled:p1 rdf:type owl:Class .
_:i rdf:type owl:Restriction .
_:i owl:onProperty oiled:invR .
_:k rdf:type owl:Class .
oiled:p1 rdf:type owl:Class .
_:k owl:complementOf oiled:p1 .
_:i owl:allValuesFrom _:k .
_:m rdf:first _:i .
_:m rdf:rest rdf:nil .
_:o rdf:first oiled:p1 .
_:o rdf:rest _:m .
_:g owl:intersectionOf _:o .
_:e owl:someValuesFrom _:g .
_:c owl:someValuesFrom _:e .
_:q rdf:first _:c .
_:q rdf:rest rdf:nil .
_:s rdf:first oiled:p1 .
_:s rdf:rest _:q .
_:a owl:intersectionOf _:s .
oiled:Unsatisfiable owl:equivalentClass _:a .
oiled:p1 rdf:type owl:Class .
oiled:invF rdf:type owl:ObjectProperty .
oiled:invF owl:inverseOf oiled:f .
oiled:invR rdf:type owl:ObjectProperty .
oiled:invR owl:inverseOf oiled:r .
oiled:f rdf:type owl:ObjectProperty .
oiled:r rdf:type owl:ObjectProperty .
oiled:r rdf:type owl:TransitiveProperty .
_:u rdf:type owl:Restriction .
_:u owl:onProperty oiled:f .
_:u owl:maxCardinality "1"^^xsd:nonNegativeInteger  .
owl:Thing rdfs:subClassOf _:u .
_:w rdf:type oiled:Unsatisfiable .

DL FullInconsistent document.030
Description: (informative) <description-logic/Manifest030#test>
DL Test: t7.3
N3 format is informative.
DLInconsistent: <description-logic/inconsistent030>
<rdf:RDF
    xml:base="http://www.w3.org/2002/03owlt/description-logic/inconsistent030"
    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:Restriction>
                <owl:onProperty rdf:resource="http://oiled.man.example.net/test#f"/>
                <owl:someValuesFrom>
                    <owl:Class>
                        <owl:intersectionOf rdf:parseType="Collection">
                            <owl:Class rdf:about="http://oiled.man.example.net/test#p1"/>
                            <owl:Restriction>
                                <owl:onProperty rdf:resource="http://oiled.man.example.net/test#invF"/>
                                <owl:someValuesFrom>
                                    <owl:Restriction>
                                    <owl:onProperty rdf:resource="http://oiled.man.example.net/test#f"/>
                                    <owl:someValuesFrom>
                                    <owl:Class>
                                    <owl:complementOf>
                                    <owl:Class rdf:about="http://oiled.man.example.net/test#p1"/>
                                    </owl:complementOf>
                                    </owl:Class>
                                    </owl:someValuesFrom>
                                    </owl:Restriction>
                                </owl:someValuesFrom>
                            </owl:Restriction>
                        </owl:intersectionOf>
                    </owl:Class>
                </owl:someValuesFrom>
            </owl:Restriction>
        </owl:equivalentClass>
    </owl:Class>
    <owl:Class rdf:about="http://oiled.man.example.net/test#p1"/>
    <owl:ObjectProperty rdf:about="http://oiled.man.example.net/test#invF">
        <owl:inverseOf rdf:resource="http://oiled.man.example.net/test#f"/>
    </owl:ObjectProperty>
    <owl:ObjectProperty rdf:about="http://oiled.man.example.net/test#invR">
        <owl:inverseOf rdf:resource="http://oiled.man.example.net/test#r"/>
    </owl:ObjectProperty>
    <owl:ObjectProperty rdf:about="http://oiled.man.example.net/test#f"/>
    <owl:ObjectProperty rdf:about="http://oiled.man.example.net/test#r"/>
    <owl:TransitiveProperty rdf:about="http://oiled.man.example.net/test#r"/>
<rdf:Description rdf:about='http://www.w3.org/2002/07/owl#Thing' >
        <rdfs:subClassOf>
            <owl:Restriction>
                <owl:onProperty rdf:resource="http://oiled.man.example.net/test#f"/>
                <owl:maxCardinality rdf:datatype="http://www.w3.org/2001/XMLSchema#nonNegativeInteger">1</owl:maxCardinality>
            </owl:Restriction>
        </rdfs:subClassOf>
</rdf:Description>
    <rdf:Description>
        <rdf:type rdf:resource="http://oiled.man.example.net/test#Unsatisfiable"/>
    </rdf:Description>
</rdf:RDF>
<description-logic/inconsistent030> rdf:type owl:Ontology .
oiled:Unsatisfiable rdf:type owl:Class .
_:a rdf:type owl:Restriction .
_:a owl:onProperty oiled:f .
_:c rdf:type owl:Class .
oiled:p1 rdf:type owl:Class .
_:e rdf:type owl:Restriction .
_:e owl:onProperty oiled:invF .
_:g rdf:type owl:Restriction .
_:g owl:onProperty oiled:f .
_:i rdf:type owl:Class .
oiled:p1 rdf:type owl:Class .
_:i owl:complementOf oiled:p1 .
_:g owl:someValuesFrom _:i .
_:e owl:someValuesFrom _:g .
_:k rdf:first _:e .
_:k rdf:rest rdf:nil .
_:m rdf:first oiled:p1 .
_:m rdf:rest _:k .
_:c owl:intersectionOf _:m .
_:a owl:someValuesFrom _:c .
oiled:Unsatisfiable owl:equivalentClass _:a .
oiled:p1 rdf:type owl:Class .
oiled:invF rdf:type owl:ObjectProperty .
oiled:invF owl:inverseOf oiled:f .
oiled:invR rdf:type owl:ObjectProperty .
oiled:invR owl:inverseOf oiled:r .
oiled:f rdf:type owl:ObjectProperty .
oiled:r rdf:type owl:ObjectProperty .
oiled:r rdf:type owl:TransitiveProperty .
_:o rdf:type owl:Restriction .
_:o owl:onProperty oiled:f .
_:o owl:maxCardinality "1"^^xsd:nonNegativeInteger  .
owl:Thing rdfs:subClassOf _:o .
_:q rdf:type oiled:Unsatisfiable .

DL FullConsistent document.031
Description: (informative) <description-logic/Manifest031#test>
DL Test: t7f.1
N3 format is informative.
DLConsistent: <description-logic/consistent031>
<rdf:RDF
    xml:base="http://www.w3.org/2002/03owlt/description-logic/consistent031"
    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#Satisfiable">
        <owl:equivalentClass>
            <owl:Class>
                <owl:intersectionOf rdf:parseType="Collection">
                    <owl:Class rdf:about="http://oiled.man.example.net/test#p1"/>
                    <owl:Restriction>
                        <owl:onProperty rdf:resource="http://oiled.man.example.net/test#r"/>
                        <owl:someValuesFrom>
                            <owl:Restriction>
                                <owl:onProperty rdf:resource="http://oiled.man.example.net/test#r"/>
                                <owl:someValuesFrom>
                                    <owl:Class>
                                    <owl:intersectionOf rdf:parseType="Collection">
                                    <owl:Class rdf:about="http://oiled.man.example.net/test#p1"/>
                                    <owl:Restriction>
                                    <owl:onProperty rdf:resource="http://oiled.man.example.net/test#invR"/>
                                    <owl:allValuesFrom>
                                    <owl:Class>
                                    <owl:unionOf rdf:parseType="Collection">
                                    <owl:Class>
                                    <owl:complementOf>

                                    <owl:Class rdf:about="http://oiled.man.example.net/test#p1"/>
                                    </owl:complementOf>
                                    </owl:Class>
                                    <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#p1"/>
                                    </owl:allValuesFrom>
                                    </owl:Restriction>
                                    </owl:unionOf>
                                    </owl:Class>
                                    </owl:allValuesFrom>
                                    </owl:Restriction>
                                    </owl:intersectionOf>
                                    </owl:Class>
                                </owl:someValuesFrom>
                            </owl:Restriction>
                        </owl:someValuesFrom>
                    </owl:Restriction>
                </owl:intersectionOf>
            </owl:Class>
        </owl:equivalentClass>
    </owl:Class>
    <owl:Class rdf:about="http://oiled.man.example.net/test#p1"/>
    <owl:ObjectProperty rdf:about="http://oiled.man.example.net/test#invF">
        <owl:inverseOf rdf:resource="http://oiled.man.example.net/test#f"/>
    </owl:ObjectProperty>
    <owl:ObjectProperty rdf:about="http://oiled.man.example.net/test#invR">
        <owl:inverseOf rdf:resource="http://oiled.man.example.net/test#r"/>
    </owl:ObjectProperty>
    <owl:ObjectProperty rdf:about="http://oiled.man.example.net/test#f"/>
    <owl:FunctionalProperty rdf:about="http://oiled.man.example.net/test#f"/>
    <owl:ObjectProperty rdf:about="http://oiled.man.example.net/test#r"/>
    <owl:TransitiveProperty rdf:about="http://oiled.man.example.net/test#r"/>
    <rdf:Description>
        <rdf:type rdf:resource="http://oiled.man.example.net/test#Satisfiable"/>
    </rdf:Description>
</rdf:RDF>
<description-logic/consistent031> rdf:type owl:Ontology .
oiled:Satisfiable rdf:type owl:Class .
_:a rdf:type owl:Class .
oiled:p1 rdf:type owl:Class .
_:c rdf:type owl:Restriction .
_:c owl:onProperty oiled:r .
_:e rdf:type owl:Restriction .
_:e owl:onProperty oiled:r .
_:g rdf:type owl:Class .
oiled:p1 rdf:type owl:Class .
_:i rdf:type owl:Restriction .
_:i owl:onProperty oiled:invR .
_:k rdf:type owl:Class .
_:m rdf:type owl:Class .
oiled:p1 rdf:type owl:Class .
_:m owl:complementOf oiled:p1 .
_:o rdf:type owl:Restriction .
_:o owl:onProperty oiled:r .
oiled:p1 rdf:type owl:Class .
_:o owl:allValuesFrom oiled:p1 .
_:q rdf:first _:o .
_:q rdf:rest rdf:nil .
_:s rdf:first _:m .
_:s rdf:rest _:q .
_:k owl:unionOf _:s .
_:i owl:allValuesFrom _:k .
_:u rdf:first _:i .
_:u rdf:rest rdf:nil .
_:w rdf:first oiled:p1 .
_:w rdf:rest _:u .
_:g owl:intersectionOf _:w .
_:e owl:someValuesFrom _:g .
_:c owl:someValuesFrom _:e .
_:y rdf:first _:c .
_:y rdf:rest rdf:nil .
_:a1 rdf:first oiled:p1 .
_:a1 rdf:rest _:y .
_:a owl:intersectionOf _:a1 .
oiled:Satisfiable owl:equivalentClass _:a .
oiled:p1 rdf:type owl:Class .
oiled:invF rdf:type owl:ObjectProperty .
oiled:invF owl:inverseOf oiled:f .
oiled:invR rdf:type owl:ObjectProperty .
oiled:invR owl:inverseOf oiled:r .
oiled:f rdf:type owl:ObjectProperty .
oiled:f rdf:type owl:FunctionalProperty .
oiled:r rdf:type owl:ObjectProperty .
oiled:r rdf:type owl:TransitiveProperty .
_:c1 rdf:type oiled:Satisfiable .

DL FullInconsistent document.032
Description: (informative) <description-logic/Manifest032#test>
DL Test: t7f.2
N3 format is informative.
DLInconsistent: <description-logic/inconsistent032>
<rdf:RDF
    xml:base="http://www.w3.org/2002/03owlt/description-logic/inconsistent032"
    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:Class rdf:about="http://oiled.man.example.net/test#p1"/>
                    <owl:Restriction>
                        <owl:onProperty rdf:resource="http://oiled.man.example.net/test#r"/>
                        <owl:someValuesFrom>
                            <owl:Restriction>
                                <owl:onProperty rdf:resource="http://oiled.man.example.net/test#r"/>
                                <owl:someValuesFrom>
                                    <owl:Class>
                                    <owl:intersectionOf rdf:parseType="Collection">
                                    <owl:Class rdf:about="http://oiled.man.example.net/test#p1"/>
                                    <owl:Restriction>
                                    <owl:onProperty rdf:resource="http://oiled.man.example.net/test#invR"/>
                                    <owl:allValuesFrom>
                                    <owl:Class>
                                    <owl:complementOf>
                                    <owl:Class rdf:about="http://oiled.man.example.net/test#p1"/>
                                    </owl:complementOf>
                                    </owl:Class>
                                    </owl:allValuesFrom>
                                    </owl:Restriction>
                                    </owl:intersectionOf>
                                    </owl:Class>
                                </owl:someValuesFrom>
                            </owl:Restriction>
                        </owl:someValuesFrom>
                    </owl:Restriction>
                </owl:intersectionOf>
            </owl:Class>
        </owl:equivalentClass>
    </owl:Class>
    <owl:Class rdf:about="http://oiled.man.example.net/test#p1"/>
    <owl:ObjectProperty rdf:about="http://oiled.man.example.net/test#invF">
        <owl:inverseOf rdf:resource="http://oiled.man.example.net/test#f"/>
    </owl:ObjectProperty>
    <owl:ObjectProperty rdf:about="http://oiled.man.example.net/test#invR">
        <owl:inverseOf rdf:resource="http://oiled.man.example.net/test#r"/>
    </owl:ObjectProperty>
    <owl:ObjectProperty rdf:about="http://oiled.man.example.net/test#f"/>
    <owl:FunctionalProperty rdf:about="http://oiled.man.example.net/test#f"/>
    <owl:ObjectProperty rdf:about="http://oiled.man.example.net/test#r"/>
    <owl:TransitiveProperty 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/inconsistent032> rdf:type owl:Ontology .
oiled:Unsatisfiable rdf:type owl:Class .
_:a rdf:type owl:Class .
oiled:p1 rdf:type owl:Class .
_:c rdf:type owl:Restriction .
_:c owl:onProperty oiled:r .
_:e rdf:type owl:Restriction .
_:e owl:onProperty oiled:r .
_:g rdf:type owl:Class .
oiled:p1 rdf:type owl:Class .
_:i rdf:type owl:Restriction .
_:i owl:onProperty oiled:invR .
_:k rdf:type owl:Class .
oiled:p1 rdf:type owl:Class .
_:k owl:complementOf oiled:p1 .
_:i owl:allValuesFrom _:k .
_:m rdf:first _:i .
_:m rdf:rest rdf:nil .
_:o rdf:first oiled:p1 .
_:o rdf:rest _:m .
_:g owl:intersectionOf _:o .
_:e owl:someValuesFrom _:g .
_:c owl:someValuesFrom _:e .
_:q rdf:first _:c .
_:q rdf:rest rdf:nil .
_:s rdf:first oiled:p1 .
_:s rdf:rest _:q .
_:a owl:intersectionOf _:s .
oiled:Unsatisfiable owl:equivalentClass _:a .
oiled:p1 rdf:type owl:Class .
oiled:invF rdf:type owl:ObjectProperty .
oiled:invF owl:inverseOf oiled:f .
oiled:invR rdf:type owl:ObjectProperty .
oiled:invR owl:inverseOf oiled:r .
oiled:f rdf:type owl:ObjectProperty .
oiled:f rdf:type owl:FunctionalProperty .
oiled:r rdf:type owl:ObjectProperty .
oiled:r rdf:type owl:TransitiveProperty .
_:u rdf:type oiled:Unsatisfiable .

DL FullInconsistent document.033
Description: (informative) <description-logic/Manifest033#test>
DL Test: t7f.3
N3 format is informative.
DLInconsistent: <description-logic/inconsistent033>
<rdf:RDF
    xml:base="http://www.w3.org/2002/03owlt/description-logic/inconsistent033"
    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:Restriction>
                <owl:onProperty rdf:resource="http://oiled.man.example.net/test#f"/>
                <owl:someValuesFrom>
                    <owl:Class>
                        <owl:intersectionOf rdf:parseType="Collection">
                            <owl:Class rdf:about="http://oiled.man.example.net/test#p1"/>
                            <owl:Restriction>
                                <owl:onProperty rdf:resource="http://oiled.man.example.net/test#invF"/>
                                <owl:allValuesFrom>
                                    <owl:Restriction>
                                    <owl:onProperty rdf:resource="http://oiled.man.example.net/test#f"/>
                                    <owl:someValuesFrom>
                                    <owl:Class>
                                    <owl:complementOf>
                                    <owl:Class rdf:about="http://oiled.man.example.net/test#p1"/>
                                    </owl:complementOf>
                                    </owl:Class>
                                    </owl:someValuesFrom>
                                    </owl:Restriction>
                                </owl:allValuesFrom>
                            </owl:Restriction>
                        </owl:intersectionOf>
                    </owl:Class>
                </owl:someValuesFrom>
            </owl:Restriction>
        </owl:equivalentClass>
    </owl:Class>
    <owl:Class rdf:about="http://oiled.man.example.net/test#p1"/>
    <owl:ObjectProperty rdf:about="http://oiled.man.example.net/test#invF">
        <owl:inverseOf rdf:resource="http://oiled.man.example.net/test#f"/>
    </owl:ObjectProperty>
    <owl:ObjectProperty rdf:about="http://oiled.man.example.net/test#invR">
        <owl:inverseOf rdf:resource="http://oiled.man.example.net/test#r"/>
    </owl:ObjectProperty>
    <owl:ObjectProperty rdf:about="http://oiled.man.example.net/test#f"/>
    <owl:FunctionalProperty rdf:about="http://oiled.man.example.net/test#f"/>
    <owl:ObjectProperty rdf:about="http://oiled.man.example.net/test#r"/>
    <owl:TransitiveProperty 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/inconsistent033> rdf:type owl:Ontology .
oiled:Unsatisfiable rdf:type owl:Class .
_:a rdf:type owl:Restriction .
_:a owl:onProperty oiled:f .
_:c rdf:type owl:Class .
oiled:p1 rdf:type owl:Class .
_:e rdf:type owl:Restriction .
_:e owl:onProperty oiled:invF .
_:g rdf:type owl:Restriction .
_:g owl:onProperty oiled:f .
_:i rdf:type owl:Class .
oiled:p1 rdf:type owl:Class .
_:i owl:complementOf oiled:p1 .
_:g owl:someValuesFrom _:i .
_:e owl:allValuesFrom _:g .
_:k rdf:first _:e .
_:k rdf:rest rdf:nil .
_:m rdf:first oiled:p1 .
_:m rdf:rest _:k .
_:c owl:intersectionOf _:m .
_:a owl:someValuesFrom _:c .
oiled:Unsatisfiable owl:equivalentClass _:a .
oiled:p1 rdf:type owl:Class .
oiled:invF rdf:type owl:ObjectProperty .
oiled:invF owl:inverseOf oiled:f .
oiled:invR rdf:type owl:ObjectProperty .
oiled:invR owl:inverseOf oiled:r .
oiled:f rdf:type owl:ObjectProperty .
oiled:f rdf:type owl:FunctionalProperty .
oiled:r rdf:type owl:ObjectProperty .
oiled:r rdf:type owl:TransitiveProperty .
_:o rdf:type oiled:Unsatisfiable .

DL FullConsistent document.034
Description: (informative) <description-logic/Manifest034#test>
DL Test: t8.1
N3 format is informative.
DLConsistent: <description-logic/consistent034>
<rdf:RDF
    xml:base="http://www.w3.org/2002/03owlt/description-logic/consistent034"
    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#Satisfiable">
        <owl:equivalentClass>
            <owl:Class>
                <owl:intersectionOf rdf:parseType="Collection">
                    <owl:Restriction>
                        <owl:onProperty rdf:resource="http://oiled.man.example.net/test#r"/>
                        <owl:someValuesFrom>
                            <owl:Restriction>
                                <owl:onProperty rdf:resource="http://oiled.man.example.net/test#invR"/>
                                <owl:allValuesFrom>
                                    <owl:Restriction>
                                    <owl:onProperty rdf:resource="http://oiled.man.example.net/test#r1"/>
                                    <owl:allValuesFrom>
                                    <owl:Class rdf:about="http://oiled.man.example.net/test#p"/>
                                    </owl:allValuesFrom>
                                    </owl:Restriction>
                                </owl:allValuesFrom>
                            </owl:Restriction>
                        </owl:someValuesFrom>
                    </owl:Restriction>
                    <owl:Restriction>
                        <owl:onProperty rdf:resource="http://oiled.man.example.net/test#r"/>
                        <owl:someValuesFrom>
                            <owl:Restriction>
                                <owl:onProperty rdf:resource="http://oiled.man.example.net/test#invR"/>
                                <owl:allValuesFrom>
                                    <owl:Restriction>
                                    <owl:onProperty rdf:resource="http://oiled.man.example.net/test#r1"/>
                                    <owl:allValuesFrom>
                                    <owl:Class>
                                    <owl:complementOf>
                                    <owl:Class rdf:about="http://oiled.man.example.net/test#p"/>
                                    </owl:complementOf>
                                    </owl:Class>
                                    </owl:allValuesFrom>
                                    </owl:Restriction>
                                </owl:allValuesFrom>
                            </owl:Restriction>
                        </owl:someValuesFrom>
                    </owl:Restriction>
                </owl:intersectionOf>
            </owl:Class>
        </owl:equivalentClass>
    </owl:Class>
    <owl:Class rdf:about="http://oiled.man.example.net/test#p"/>
    <owl:ObjectProperty rdf:about="http://oiled.man.example.net/test#invR">
        <owl:inverseOf rdf:resource="http://oiled.man.example.net/test#r"/>
    </owl:ObjectProperty>
    <owl:ObjectProperty rdf:about="http://oiled.man.example.net/test#r"/>
    <owl:ObjectProperty rdf:about="http://oiled.man.example.net/test#r1"/>
    <rdf:Description>
        <rdf:type rdf:resource="http://oiled.man.example.net/test#Satisfiable"/>
    </rdf:Description>
</rdf:RDF>
<description-logic/consistent034> rdf:type owl:Ontology .
oiled:Satisfiable rdf:type owl:Class .
_:a rdf:type owl:Class .
_:c rdf:type owl:Restriction .
_:c owl:onProperty oiled:r .
_:e rdf:type owl:Restriction .
_:e owl:onProperty oiled:invR .
_:g rdf:type owl:Restriction .
_:g owl:onProperty oiled:r1 .
oiled:p rdf:type owl:Class .
_:g owl:allValuesFrom oiled:p .
_:e owl:allValuesFrom _:g .
_:c owl:someValuesFrom _:e .
_:i rdf:type owl:Restriction .
_:i owl:onProperty oiled:r .
_:k rdf:type owl:Restriction .
_:k owl:onProperty oiled:invR .
_:m rdf:type owl:Restriction .
_:m owl:onProperty oiled:r1 .
_:o rdf:type owl:Class .
oiled:p rdf:type owl:Class .
_:o owl:complementOf oiled:p .
_:m owl:allValuesFrom _:o .
_:k owl:allValuesFrom _:m .
_:i owl:someValuesFrom _:k .
_:q rdf:first _:i .
_:q rdf:rest rdf:nil .
_:s rdf:first _:c .
_:s rdf:rest _:q .
_:a owl:intersectionOf _:s .
oiled:Satisfiable owl:equivalentClass _:a .
oiled:p rdf:type owl:Class .
oiled:invR rdf:type owl:ObjectProperty .
oiled:invR owl:inverseOf oiled:r .
oiled:r rdf:type owl:ObjectProperty .
oiled:r1 rdf:type owl:ObjectProperty .
_:u rdf:type oiled:Satisfiable .

7.3.2. Heinsohn's Tests

See [Heinsohn et al.].

DL FullInconsistent document.101
Description: (informative) <description-logic/Manifest101#test>
DL Test: heinsohn1.1 Tbox tests from [Heinsohn et al.] Tests incoherency caused by disjoint concept
N3 format is informative.
DLInconsistent: <description-logic/inconsistent101>
<rdf:RDF
    xml:base="http://www.w3.org/2002/03owlt/description-logic/inconsistent101"
    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:Class rdf:about="http://oiled.man.example.net/test#c"/>
                    <owl:Class rdf:about="http://oiled.man.example.net/test#d"/>
                </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:Class rdf:about="http://oiled.man.example.net/test#f">
        <rdfs:subClassOf>
            <owl:Class rdf:about="http://oiled.man.example.net/test#d"/>
        </rdfs:subClassOf>
    </owl:Class>
    <owl:Class rdf:about="http://oiled.man.example.net/test#c1">
        <rdfs:subClassOf>
            <owl:Class rdf:about="http://oiled.man.example.net/test#d1"/>
        </rdfs:subClassOf>
        <rdfs:subClassOf>
            <owl:Class>
                <owl:complementOf>
                    <owl:Class rdf:about="http://oiled.man.example.net/test#d1"/>
                </owl:complementOf>
            </owl:Class>
        </rdfs:subClassOf>
    </owl:Class>
    <owl:Class rdf:about="http://oiled.man.example.net/test#d1"/>
    <owl:Class rdf:about="http://oiled.man.example.net/test#e3">
        <rdfs:subClassOf>
            <owl:Class rdf:about="http://oiled.man.example.net/test#c"/>
        </rdfs:subClassOf>
    </owl:Class>
    <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/inconsistent101> rdf:type owl:Ontology .
oiled:Unsatisfiable rdf:type owl:Class .
_:a rdf:type owl:Class .
oiled:c rdf:type owl:Class .
oiled:d rdf:type owl:Class .
_:c rdf:first oiled:d .
_:c rdf:rest rdf:nil .
_:e rdf:first oiled:c .
_:e rdf:rest _:c .
_:a owl:intersectionOf _:e .
oiled:Unsatisfiable owl:equivalentClass _:a .
oiled:c rdf:type owl:Class .
_:g rdf:type owl:Class .
oiled:d rdf:type owl:Class .
_:g owl:complementOf oiled:d .
oiled:c rdfs:subClassOf _:g .
oiled:d rdf:type owl:Class .
oiled:f rdf:type owl:Class .
oiled:d rdf:type owl:Class .
oiled:f rdfs:subClassOf oiled:d .
oiled:c1 rdf:type owl:Class .
oiled:d1 rdf:type owl:Class .
oiled:c1 rdfs:subClassOf oiled:d1 .
_:i rdf:type owl:Class .
oiled:d1 rdf:type owl:Class .
_:i owl:complementOf oiled:d1 .
oiled:c1 rdfs:subClassOf _:i .
oiled:d1 rdf:type owl:Class .
oiled:e3 rdf:type owl:Class .
oiled:c rdf:type owl:Class .
oiled:e3 rdfs:subClassOf oiled:c .
oiled:r rdf:type owl:ObjectProperty .
_:k rdf:type oiled:Unsatisfiable .

DL FullInconsistent document.102
Description: (informative) <description-logic/Manifest102#test>
DL Test: heinsohn1.2 Tbox tests from [Heinsohn et al.] Tests incoherency caused by disjoint concept
N3 format is informative.
DLInconsistent: <description-logic/inconsistent102>
<rdf:RDF
    xml:base="http://www.w3.org/2002/03owlt/description-logic/inconsistent102"
    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:allValuesFrom>
                            <owl:Class>
                                <owl:intersectionOf rdf:parseType="Collection">
                                    <owl:Class rdf:about="http://oiled.man.example.net/test#c"/>
                                    <owl:Class rdf:about="http://oiled.man.example.net/test#d"/>
                                </owl:intersectionOf>
                            </owl:Class>
                        </owl:allValuesFrom>
                    </owl:Restriction>
                    <owl:Restriction>
                        <owl:onProperty rdf:resource="http://oiled.man.example.net/test#r"/>
                        <owl:someValuesFrom>
                            <owl:Class rdf:about="http://www.w3.org/2002/07/owl#Thing"/>
                        </owl:someValuesFrom>
                    </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:Class rdf:about="http://oiled.man.example.net/test#f">
        <rdfs:subClassOf>
            <owl:Class rdf:about="http://oiled.man.example.net/test#d"/>
        </rdfs:subClassOf>
    </owl:Class>
    <owl:Class rdf:about="http://oiled.man.example.net/test#c1">
        <rdfs:subClassOf>
            <owl:Class rdf:about="http://oiled.man.example.net/test#d1"/>
        </rdfs:subClassOf>
        <rdfs:subClassOf>
            <owl:Class>
                <owl:complementOf>
                    <owl:Class rdf:about="http://oiled.man.example.net/test#d1"/>
                </owl:complementOf>
            </owl:Class>
        </rdfs:subClassOf>
    </owl:Class>
    <owl:Class rdf:about="http://oiled.man.example.net/test#d1"/>
    <owl:Class rdf:about="http://oiled.man.example.net/test#e3">
        <rdfs:subClassOf>
            <owl:Class rdf:about="http://oiled.man.example.net/test#c"/>
        </rdfs:subClassOf>
    </owl:Class>
    <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/inconsistent102> 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 .
_:e rdf:type owl:Class .
oiled:c rdf:type owl:Class .
oiled:d rdf:type owl:Class .
_:g rdf:first oiled:d .
_:g rdf:rest rdf:nil .
_:i rdf:first oiled:c .
_:i rdf:rest _:g .
_:e owl:intersectionOf _:i .
_:c owl:allValuesFrom _:e .
_:k rdf:type owl:Restriction .
_:k owl:onProperty oiled:r .
owl:Thing rdf:type owl:Class .
_:k owl:someValuesFrom owl:Thing .
_:m rdf:first _:k .
_:m rdf:rest rdf:nil .
_:o rdf:first _:c .
_:o rdf:rest _:m .
_:a owl:intersectionOf _:o .
oiled:Unsatisfiable owl:equivalentClass _:a .
oiled:c rdf:type owl:Class .
_:q rdf:type owl:Class .
oiled:d rdf:type owl:Class .
_:q owl:complementOf oiled:d .
oiled:c rdfs:subClassOf _:q .
oiled:d rdf:type owl:Class .
oiled:f rdf:type owl:Class .
oiled:d rdf:type owl:Class .
oiled:f rdfs:subClassOf oiled:d .
oiled:c1 rdf:type owl:Class .
oiled:d1 rdf:type owl:Class .
oiled:c1 rdfs:subClassOf oiled:d1 .
_:s rdf:type owl:Class .
oiled:d1 rdf:type owl:Class .
_:s owl:complementOf oiled:d1 .
oiled:c1 rdfs:subClassOf _:s .
oiled:d1 rdf:type owl:Class .
oiled:e3 rdf:type owl:Class .
oiled:c rdf:type owl:Class .
oiled:e3 rdfs:subClassOf oiled:c .
oiled:r rdf:type owl:ObjectProperty .
_:u rdf:type oiled:Unsatisfiable .

DL FullInconsistent document.103
Description: (informative) <description-logic/Manifest103#test>
DL Test: heinsohn1.3 Tbox tests from [Heinsohn et al.] Tests incoherency caused by disjoint concept
N3 format is informative.
DLInconsistent: <description-logic/inconsistent103>
<rdf:RDF
    xml:base="http://www.w3.org/2002/03owlt/description-logic/inconsistent103"
    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:Class rdf:about="http://oiled.man.example.net/test#e3"/>
                    <owl:Class rdf:about="http://oiled.man.example.net/test#f"/>
                </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:Class rdf:about="http://oiled.man.example.net/test#f">
        <rdfs:subClassOf>
            <owl:Class rdf:about="http://oiled.man.example.net/test#d"/>
        </rdfs:subClassOf>
    </owl:Class>
    <owl:Class rdf:about="http://oiled.man.example.net/test#c1">
        <rdfs:subClassOf>
            <owl:Class rdf:about="http://oiled.man.example.net/test#d1"/>
        </rdfs:subClassOf>
        <rdfs:subClassOf>
            <owl:Class>
                <owl:complementOf>
                    <owl:Class rdf:about="http://oiled.man.example.net/test#d1"/>
                </owl:complementOf>
            </owl:Class>
        </rdfs:subClassOf>
    </owl:Class>
    <owl:Class rdf:about="http://oiled.man.example.net/test#d1"/>
    <owl:Class rdf:about="http://oiled.man.example.net/test#e3">
        <rdfs:subClassOf>
            <owl:Class rdf:about="http://oiled.man.example.net/test#c"/>
        </rdfs:subClassOf>
    </owl:Class>
    <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/inconsistent103> rdf:type owl:Ontology .
oiled:Unsatisfiable rdf:type owl:Class .
_:a rdf:type owl:Class .
oiled:e3 rdf:type owl:Class .
oiled:f rdf:type owl:Class .
_:c rdf:first oiled:f .
_:c rdf:rest rdf:nil .
_:e rdf:first oiled:e3 .
_:e rdf:rest _:c .
_:a owl:intersectionOf _:e .
oiled:Unsatisfiable owl:equivalentClass _:a .
oiled:c rdf:type owl:Class .
_:g rdf:type owl:Class .
oiled:d rdf:type owl:Class .
_:g owl:complementOf oiled:d .
oiled:c rdfs:subClassOf _:g .
oiled:d rdf:type owl:Class .
oiled:f rdf:type owl:Class .
oiled:d rdf:type owl:Class .
oiled:f rdfs:subClassOf oiled:d .
oiled:c1 rdf:type owl:Class .
oiled:d1 rdf:type owl:Class .
oiled:c1 rdfs:subClassOf oiled:d1 .
_:i rdf:type owl:Class .
oiled:d1 rdf:type owl:Class .
_:i owl:complementOf oiled:d1 .
oiled:c1 rdfs:subClassOf _:i .
oiled:d1 rdf:type owl:Class .
oiled:e3 rdf:type owl:Class .
oiled:c rdf:type owl:Class .
oiled:e3 rdfs:subClassOf oiled:c .
oiled:r rdf:type owl:ObjectProperty .
_:k rdf:type oiled:Unsatisfiable .

DL FullInconsistent document.104
Description: (informative) <description-logic/Manifest104#test>
DL Test: heinsohn1.4 Tbox tests from [Heinsohn et al.] Tests incoherency caused by disjoint concept
N3 format is informative.
DLInconsistent: <description-logic/inconsistent104>
<rdf:RDF
    xml:base="http://www.w3.org/2002/03owlt/description-logic/inconsistent104"
    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 rdf:about="http://oiled.man.example.net/test#c1"/>
        </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:Class rdf:about="http://oiled.man.example.net/test#f">
        <rdfs:subClassOf>
            <owl:Class rdf:about="http://oiled.man.example.net/test#d"/>
        </rdfs:subClassOf>
    </owl:Class>
    <owl:Class rdf:about="http://oiled.man.example.net/test#c1">
        <rdfs:subClassOf>
            <owl:Class rdf:about="http://oiled.man.example.net/test#d1"/>
        </rdfs:subClassOf>
        <rdfs:subClassOf>
            <owl:Class>
                <owl:complementOf>
                    <owl:Class rdf:about="http://oiled.man.example.net/test#d1"/>
                </owl:complementOf>
            </owl:Class>
        </rdfs:subClassOf>
    </owl:Class>
    <owl:Class rdf:about="http://oiled.man.example.net/test#d1"/>
    <owl:Class rdf:about="http://oiled.man.example.net/test#e3">
        <rdfs:subClassOf>
            <owl:Class rdf:about="http://oiled.man.example.net/test#c"/>
        </rdfs:subClassOf>
    </owl:Class>
    <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/inconsistent104> rdf:type owl:Ontology .
oiled:Unsatisfiable rdf:type owl:Class .
oiled:c1 rdf:type owl:Class .
oiled:Unsatisfiable owl:equivalentClass oiled:c1 .
oiled:c rdf:type owl:Class .
_:a rdf:type owl:Class .
oiled:d rdf:type owl:Class .
_:a owl:complementOf oiled:d .
oiled:c rdfs:subClassOf _:a .
oiled:d rdf:type owl:Class .
oiled:f rdf:type owl:Class .
oiled:d rdf:type owl:Class .
oiled:f rdfs:subClassOf oiled:d .
oiled:c1 rdf:type owl:Class .
oiled:d1 rdf:type owl:Class .
oiled:c1 rdfs:subClassOf oiled:d1 .
_:c rdf:type owl:Class .
oiled:d1 rdf:type owl:Class .
_:c owl:complementOf oiled:d1 .
oiled:c1 rdfs:subClassOf _:c .
oiled:d1 rdf:type owl:Class .
oiled:e3 rdf:type owl:Class .
oiled:c rdf:type owl:Class .
oiled:e3 rdfs:subClassOf oiled:c .
oiled:r rdf:type owl:ObjectProperty .
_:e rdf:type oiled:Unsatisfiable .

DL FullInconsistent 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 FullInconsistent document.106
Description: (informative) <description-logic/Manifest106#test>
DL Test: heinsohn2.2 Tbox tests from [Heinsohn et al.] Tests incoherency caused by number restrictions
N3 format is informative.
DLInconsistent: <description-logic/inconsistent106>
<rdf:RDF 
    xml:base="http://www.w3.org/2002/03owlt/description-logic/inconsistent106" 
    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:maxCardinality
 rdf:datatype="http://www.w3.org/2001/XMLSchema#nonNegativeInteger"
                        >1</owl:maxCardinality>
                    </owl:Restriction>
                    <owl:Restriction>
                        <owl:onProperty rdf:resource="http://oiled.man.example.net/test#r"/>
                        <owl:someValuesFrom>
                            <owl:Class rdf:about="http://oiled.man.example.net/test#c"/>
                        </owl:someValuesFrom>
                    </owl:Restriction>
                    <owl:Restriction>
                        <owl:onProperty rdf:resource="http://oiled.man.example.net/test#r"/>
                        <owl:someValuesFrom>
                            <owl:Class rdf:about="http://oiled.man.example.net/test#d"/>
                        </owl:someValuesFrom>
                    </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/inconsistent106> 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:maxCardinality "1"^^xsd:nonNegativeInteger  .
_:e rdf:type owl:Restriction .
_:e owl:onProperty oiled:r .
oiled:c rdf:type owl:Class .
_:e owl:someValuesFrom oiled:c .
_:g rdf:type owl:Restriction .
_:g owl:onProperty oiled:r .
oiled:d rdf:type owl:Class .
_:g owl:someValuesFrom oiled:d .
_:i rdf:first _:g .
_:i rdf:rest rdf:nil .
_:k rdf:first _:e .
_:k rdf:rest _:i .
_:m rdf:first _:c .
_:m rdf:rest _:k .
_:a owl:intersectionOf _:m .
oiled:Unsatisfiable owl:equivalentClass _:a .
oiled:c rdf:type owl:Class .
_:o rdf:type owl:Class .
oiled:d rdf:type owl:Class .
_:o owl:complementOf oiled:d .
oiled:c rdfs:subClassOf _:o .
oiled:d rdf:type owl:Class .
oiled:r rdf:type owl:ObjectProperty .
_:q rdf:type oiled:Unsatisfiable .

DL FullInconsistent 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
N3 format is informative.
DLInconsistent: <description-logic/inconsistent107>
<rdf:RDF
    xml:base="http://www.w3.org/2002/03owlt/description-logic/inconsistent107"
    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:Class>
                        <owl:complementOf>
                            <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:complementOf>
                    </owl:Class>
                    <owl:Restriction>
                        <owl:onProperty rdf:resource="http://oiled.man.example.net/test#r"/>
                        <owl:minCardinality
 rdf:datatype="http://www.w3.org/2001/XMLSchema#nonNegativeInteger"
                        >1</owl:minCardinality>
                    </owl:Restriction>
                    <owl:Restriction>
                        <owl:onProperty rdf:resource="http://oiled.man.example.net/test#r"/>
                        <owl:someValuesFrom>
                            <owl:Class rdf:about="http://oiled.man.example.net/test#c"/>
                        </owl:someValuesFrom>
                    </owl:Restriction>
                    <owl:Restriction>
                        <owl:onProperty rdf:resource="http://oiled.man.example.net/test#r"/>
                        <owl:someValuesFrom>
                            <owl:Class rdf:about="http://oiled.man.example.net/test#d"/>
                        </owl:someValuesFrom>
                    </owl:Restriction>
                </owl:intersectionOf>
            </owl:Class>
        </owl:equivalentClass>
    </owl:Class>
    <owl:Class rdf:about="http://oiled.man.example.net/test#a">
        <owl:equivalentClass>
            <owl:Class>
                <owl:unionOf rdf:parseType="Collection">
                    <owl:Class rdf:about="http://oiled.man.example.net/test#c"/>
                    <owl:Class rdf:about="http://oiled.man.example.net/test#d"/>
                </owl:unionOf>
            </owl:Class>
        </owl:equivalentClass>
    </owl:Class>
    <owl:Class rdf:about="http://oiled.man.example.net/test#c"/>
    <owl:Class rdf:about="http://oiled.man.example.net/test#d"/>
    <owl:Class rdf:about="http://oiled.man.example.net/test#e"/>
    <owl:ObjectProperty rdf:about="http://oiled.man.example.net/test#r"/>
    <owl:ObjectProperty rdf:about="http://oiled.man.example.net/test#r1">
        <rdfs:subPropertyOf rdf:resource="http://oiled.man.example.net/test#r"/>
    </owl:ObjectProperty>
    <owl:ObjectProperty rdf:about="http://oiled.man.example.net/test#r2">
        <rdfs:subPropertyOf rdf:resource="http://oiled.man.example.net/test#r"/>
    </owl:ObjectProperty>
    <owl:ObjectProperty rdf:about="http://oiled.man.example.net/test#r3">
        <rdfs:subPropertyOf rdf:resource="http://oiled.man.example.net/test#r"/>
    </owl:ObjectProperty>
    <owl:ObjectProperty rdf:about="http://oiled.man.example.net/test#t1">
        <rdfs:subPropertyOf rdf:resource="http://oiled.man.example.net/test#tt"/>
    </owl:ObjectProperty>
    <owl:ObjectProperty rdf:about="http://oiled.man.example.net/test#t2">
        <rdfs:subPropertyOf rdf:resource="http://oiled.man.example.net/test#tt"/>
    </owl:ObjectProperty>
    <owl:ObjectProperty rdf:about="http://oiled.man.example.net/test#t3">
        <rdfs:subPropertyOf rdf:resource="http://oiled.man.example.net/test#tt"/>
    </owl:ObjectProperty>
    <owl:ObjectProperty rdf:about="http://oiled.man.example.net/test#tt"/>
    <owl:Class rdf:about="http://oiled.man.example.net/test#c">
        <owl:disjointWith>
            <owl:Class rdf:about="http://oiled.man.example.net/test#d"/>
        </owl:disjointWith>
    </owl:Class>
    <owl:Class rdf:about="http://oiled.man.example.net/test#c">
        <owl:disjointWith>
            <owl:Class rdf:about="http://oiled.man.example.net/test#e"/>
        </owl:disjointWith>
    </owl:Class>
    <owl:Class rdf:about="http://oiled.man.example.net/test#d">
        <owl:disjointWith>
            <owl:Class rdf:about="http://oiled.man.example.net/test#e"/>
        </owl:disjointWith>
    </owl:Class>
    <rdf:Description>
        <rdf:type rdf:resource="http://oiled.man.example.net/test#Unsatisfiable"/>
    </rdf:Description>
</rdf:RDF>
<description-logic/inconsistent107> rdf:type owl:Ontology .
oiled:Unsatisfiable rdf:type owl:Class .
_:a rdf:type owl:Class .
_:c rdf:type owl:Class .
_:e rdf:type owl:Restriction .
_:e owl:onProperty oiled:r .
_:e owl:minCardinality "2"^^xsd:nonNegativeInteger  .
_:c owl:complementOf _:e .
_:g rdf:type owl:Restriction .
_:g owl:onProperty oiled:r .
_:g owl:minCardinality "1"^^xsd:nonNegativeInteger  .
_:i rdf:type owl:Restriction .
_:i owl:onProperty oiled:r .
oiled:c rdf:type owl:Class .
_:i owl:someValuesFrom oiled:c .
_:k rdf:type owl:Restriction .
_:k owl:onProperty oiled:r .
oiled:d rdf:type owl:Class .
_:k owl:someValuesFrom oiled:d .
_:m rdf:first _:k .
_:m rdf:rest rdf:nil .
_:o rdf:first _:i .
_:o rdf:rest _:m .
_:q rdf:first _:g .
_:q rdf:rest _:o .
_:s rdf:first _:c .
_:s rdf:rest _:q .
_:a owl:intersectionOf _:s .
oiled:Unsatisfiable owl:equivalentClass _:a .
oiled:a rdf:type owl:Class .
_:u rdf:type owl:Class .
oiled:c rdf:type owl:Class .
oiled:d rdf:type owl:Class .
_:w rdf:first oiled:d .
_:w rdf:rest rdf:nil .
_:y rdf:first oiled:c .
_:y rdf:rest _:w .
_:u owl:unionOf _:y .
oiled:a owl:equivalentClass _:u .
oiled:c rdf:type owl:Class .
oiled:d rdf:type owl:Class .
oiled:e rdf:type owl:Class .
oiled:r rdf:type owl:ObjectProperty .
oiled:r1 rdf:type owl:ObjectProperty .
oiled:r1 rdfs:subPropertyOf oiled:r .
oiled:r2 rdf:type owl:ObjectProperty .
oiled:r2 rdfs:subPropertyOf oiled:r .
oiled:r3 rdf:type owl:ObjectProperty .
oiled:r3 rdfs:subPropertyOf oiled:r .
oiled:t1 rdf:type owl:ObjectProperty .
oiled:t1 rdfs:subPropertyOf oiled:tt .
oiled:t2 rdf:type owl:ObjectProperty .
oiled:t2 rdfs:subPropertyOf oiled:tt .
oiled:t3 rdf:type owl:ObjectProperty .
oiled:t3 rdfs:subPropertyOf oiled:tt .
oiled:tt rdf:type owl:ObjectProperty .
oiled:c rdf:type owl:Class .
oiled:d rdf:type owl:Class .
oiled:c owl:disjointWith oiled:d .
oiled:c rdf:type owl:Class .
oiled:e rdf:type owl:Class .
oiled:c owl:disjointWith oiled:e .
oiled:d rdf:type owl:Class .
oiled:e rdf:type owl:Class .
oiled:d owl:disjointWith oiled:e .
_:a1 rdf:type oiled:Unsatisfiable .

DL FullInconsistent 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
N3 format is informative.
DLInconsistent: <description-logic/inconsistent108>
<rdf:RDF
    xml:base="http://www.w3.org/2002/03owlt/description-logic/inconsistent108"
    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:Class>
                        <owl:complementOf>
                            <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:complementOf>
                    </owl:Class>
                    <owl:Restriction>
                        <owl:onProperty rdf:resource="http://oiled.man.example.net/test#r1"/>
                        <owl:someValuesFrom>
                            <owl:Class>
                                <owl:intersectionOf rdf:parseType="Collection">
                                    <owl:Restriction>
                                    <owl:onProperty rdf:resource="http://oiled.man.example.net/test#tt"/>
                                    <owl:maxCardinality
 rdf:datatype="http://www.w3.org/2001/XMLSchema#nonNegativeInteger"
                                    >1</owl:maxCardinality>
                                    </owl:Restriction>
                                    <owl:Restriction>
                                    <owl:onProperty rdf:resource="http://oiled.man.example.net/test#t1"/>
                                    <owl:someValuesFrom>
                                    <owl:Class rdf:about="http://oiled.man.example.net/test#c"/>
                                    </owl:someValuesFrom>
                                    </owl:Restriction>
                                </owl:intersectionOf>
                            </owl:Class>
                        </owl:someValuesFrom>
                    </owl:Restriction>
                    <owl:Restriction>
                        <owl:onProperty rdf:resource="http://oiled.man.example.net/test#r2"/>
                        <owl:someValuesFrom>
                            <owl:Class>
                                <owl:intersectionOf rdf:parseType="Collection">
                                    <owl:Restriction>
                                    <owl:onProperty rdf:resource="http://oiled.man.example.net/test#tt"/>
                                    <owl:maxCardinality
 rdf:datatype="http://www.w3.org/2001/XMLSchema#nonNegativeInteger"
                                    >1</owl:maxCardinality>
                                    </owl:Restriction>
                                    <owl:Restriction>
                                    <owl:onProperty rdf:resource="http://oiled.man.example.net/test#t2"/>
                                    <owl:someValuesFrom>
                                    <owl:Class rdf:about="http://oiled.man.example.net/test#d"/>
                                    </owl:someValuesFrom>
                                    </owl:Restriction>
                                </owl:intersectionOf>
                            </owl:Class>
                        </owl:someValuesFrom>
                    </owl:Restriction>
                    <owl:Restriction>
                        <owl:onProperty rdf:resource="http://oiled.man.example.net/test#r3"/>
                        <owl:someValuesFrom>
                            <owl:Class>
                                <owl:intersectionOf rdf:parseType="Collection">
                                    <owl:Restriction>
                                    <owl:onProperty rdf:resource="http://oiled.man.example.net/test#tt"/>
                                    <owl:maxCardinality
 rdf:datatype="http://www.w3.org/2001/XMLSchema#nonNegativeInteger"
                                    >1</owl:maxCardinality>
                                    </owl:Restriction>
                                    <owl:Restriction>
                                    <owl:onProperty rdf:resource="http://oiled.man.example.net/test#t3"/>
                                    <owl:someValuesFrom>
                                    <owl:Class rdf:about="http://oiled.man.example.net/test#e"/>
                                    </owl:someValuesFrom>
                                    </owl:Restriction>
                                </owl:intersectionOf>
                            </owl:Class>
                        </owl:someValuesFrom>
                    </owl:Restriction>
                </owl:intersectionOf>
            </owl:Class>
        </owl:equivalentClass>
    </owl:Class>
    <owl:Class rdf:about="http://oiled.man.example.net/test#a">
        <owl:equivalentClass>
            <owl:Class>
                <owl:unionOf rdf:parseType="Collection">
                    <owl:Class rdf:about="http://oiled.man.example.net/test#c"/>
                    <owl:Class rdf:about="http://oiled.man.example.net/test#d"/>
                </owl:unionOf>
            </owl:Class>
        </owl:equivalentClass>
    </owl:Class>
    <owl:Class rdf:about="http://oiled.man.example.net/test#c"/>
    <owl:Class rdf:about="http://oiled.man.example.net/test#d"/>
    <owl:Class rdf:about="http://oiled.man.example.net/test#e"/>
    <owl:ObjectProperty rdf:about="http://oiled.man.example.net/test#r"/>
    <owl:ObjectProperty rdf:about="http://oiled.man.example.net/test#r1">
        <rdfs:subPropertyOf rdf:resource="http://oiled.man.example.net/test#r"/>
    </owl:ObjectProperty>
    <owl:ObjectProperty rdf:about="http://oiled.man.example.net/test#r2">
        <rdfs:subPropertyOf rdf:resource="http://oiled.man.example.net/test#r"/>
    </owl:ObjectProperty>
    <owl:ObjectProperty rdf:about="http://oiled.man.example.net/test#r3">
        <rdfs:subPropertyOf rdf:resource="http://oiled.man.example.net/test#r"/>
    </owl:ObjectProperty>
    <owl:ObjectProperty rdf:about="http://oiled.man.example.net/test#t1">
        <rdfs:subPropertyOf rdf:resource="http://oiled.man.example.net/test#tt"/>
    </owl:ObjectProperty>
    <owl:ObjectProperty rdf:about="http://oiled.man.example.net/test#t2">
        <rdfs:subPropertyOf rdf:resource="http://oiled.man.example.net/test#tt"/>
    </owl:ObjectProperty>
    <owl:ObjectProperty rdf:about="http://oiled.man.example.net/test#t3">
        <rdfs:subPropertyOf rdf:resource="http://oiled.man.example.net/test#tt"/>
    </owl:ObjectProperty>
    <owl:ObjectProperty rdf:about="http://oiled.man.example.net/test#tt"/>
    <owl:Class rdf:about="http://oiled.man.example.net/test#c">
        <owl:disjointWith>
            <owl:Class rdf:about="http://oiled.man.example.net/test#d"/>
        </owl:disjointWith>
    </owl:Class>
    <owl:Class rdf:about="http://oiled.man.example.net/test#c">
        <owl:disjointWith>
            <owl:Class rdf:about="http://oiled.man.example.net/test#e"/>
        </owl:disjointWith>
    </owl:Class>
    <owl:Class rdf:about="http://oiled.man.example.net/test#d">
        <owl:disjointWith>
            <owl:Class rdf:about="http://oiled.man.example.net/test#e"/>
        </owl:disjointWith>
    </owl:Class>
    <rdf:Description>
        <rdf:type rdf:resource="http://oiled.man.example.net/test#Unsatisfiable"/>
    </rdf:Description>
</rdf:RDF>
<description-logic/inconsistent108> rdf:type owl:Ontology .
oiled:Unsatisfiable rdf:type owl:Class .
_:a rdf:type owl:Class .
_:c rdf:type owl:Class .
_:e rdf:type owl:Restriction .
_:e owl:onProperty oiled:r .
_:e owl:minCardinality "2"^^xsd:nonNegativeInteger  .
_:c owl:complementOf _:e .
_:g rdf:type owl:Restriction .
_:g owl:onProperty oiled:r1 .
_:i rdf:type owl:Class .
_:k rdf:type owl:Restriction .
_:k owl:onProperty oiled:tt .
_:k owl:maxCardinality "1"^^xsd:nonNegativeInteger  .
_:m rdf:type owl:Restriction .
_:m owl:onProperty oiled:t1 .
oiled:c rdf:type owl:Class .
_:m owl:someValuesFrom oiled:c .
_:o rdf:first _:m .
_:o rdf:rest rdf:nil .
_:q rdf:first _:k .
_:q rdf:rest _:o .
_:i owl:intersectionOf _:q .
_:g owl:someValuesFrom _:i .
_:s rdf:type owl:Restriction .
_:s owl:onProperty oiled:r2 .
_:u rdf:type owl:Class .
_:w rdf:type owl:Restriction .
_:w owl:onProperty oiled:tt .
_:w owl:maxCardinality "1"^^xsd:nonNegativeInteger  .
_:y rdf:type owl:Restriction .
_:y owl:onProperty oiled:t2 .
oiled:d rdf:type owl:Class .
_:y owl:someValuesFrom oiled:d .
_:a1 rdf:first _:y .
_:a1 rdf:rest rdf:nil .
_:c1 rdf:first _:w .
_:c1 rdf:rest _:a1 .
_:u owl:intersectionOf _:c1 .
_:s owl:someValuesFrom _:u .
_:e1 rdf:type owl:Restriction .
_:e1 owl:onProperty oiled:r3 .
_:g1 rdf:type owl:Class .
_:i1 rdf:type owl:Restriction .
_:i1 owl:onProperty oiled:tt .
_:i1 owl:maxCardinality "1"^^xsd:nonNegativeInteger  .
_:k1 rdf:type owl:Restriction .
_:k1 owl:onProperty oiled:t3 .
oiled:e rdf:type owl:Class .
_:k1 owl:someValuesFrom oiled:e .
_:m1 rdf:first _:k1 .
_:m1 rdf:rest rdf:nil .
_:o1 rdf:first _:i1 .
_:o1 rdf:rest _:m1 .
_:g1 owl:intersectionOf _:o1 .
_:e1 owl:someValuesFrom _:g1 .
_:q1 rdf:first _:e1 .
_:q1 rdf:rest rdf:nil .
_:s1 rdf:first _:s .
_:s1 rdf:rest _:q1 .
_:u1 rdf:first _:g .
_:u1 rdf:rest _:s1 .
_:w1 rdf:first _:c .
_:w1 rdf:rest _:u1 .
_:a owl:intersectionOf _:w1 .
oiled:Unsatisfiable owl:equivalentClass _:a .
oiled:a rdf:type owl:Class .
_:y1 rdf:type owl:Class .
oiled:c rdf:type owl:Class .
oiled:d rdf:type owl:Class .
_:a2 rdf:first oiled:d .
_:a2 rdf:rest rdf:nil .
_:c2 rdf:first oiled:c .
_:c2 rdf:rest _:a2 .
_:y1 owl:unionOf _:c2 .
oiled:a owl:equivalentClass _:y1 .
oiled:c rdf:type owl:Class .
oiled:d rdf:type owl:Class .
oiled:e rdf:type owl:Class .
oiled:r rdf:type owl:ObjectProperty .
oiled:r1 rdf:type owl:ObjectProperty .
oiled:r1 rdfs:subPropertyOf oiled:r .
oiled:r2 rdf:type owl:ObjectProperty .
oiled:r2 rdfs:subPropertyOf oiled:r .
oiled:r3 rdf:type owl:ObjectProperty .
oiled:r3 rdfs:subPropertyOf oiled:r .
oiled:t1 rdf:type owl:ObjectProperty .
oiled:t1 rdfs:subPropertyOf oiled:tt .
oiled:t2 rdf:type owl:ObjectProperty .
oiled:t2 rdfs:subPropertyOf oiled:tt .
oiled:t3 rdf:type owl:ObjectProperty .
oiled:t3 rdfs:subPropertyOf oiled:tt .
oiled:tt rdf:type owl:ObjectProperty .
oiled:c rdf:type owl:Class .
oiled:d rdf:type owl:Class .
oiled:c owl:disjointWith oiled:d .
oiled:c rdf:type owl:Class .
oiled:e rdf:type owl:Class .
oiled:c owl:disjointWith oiled:e .
oiled:d rdf:type owl:Class .
oiled:e rdf:type owl:Class .
oiled:d owl:disjointWith oiled:e .
_:e2 rdf:type oiled:Unsatisfiable .

DL FullInconsistent 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
N3 format is informative.
DLInconsistent: <description-logic/inconsistent109>
<rdf:RDF
    xml:base="http://www.w3.org/2002/03owlt/description-logic/inconsistent109"
    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#tt"/>
                        <owl:allValuesFrom>
                            <owl:Class rdf:about="http://oiled.man.example.net/test#a"/>
                        </owl:allValuesFrom>
                    </owl:Restriction>
                    <owl:Restriction>
                        <owl:onProperty rdf:resource="http://oiled.man.example.net/test#tt"/>
                        <owl:minCardinality
 rdf:datatype="http://www.w3.org/2001/XMLSchema#nonNegativeInteger"
                        >3</owl:minCardinality>
                    </owl:Restriction>
                    <owl:Restriction>
                        <owl:onProperty rdf:resource="http://oiled.man.example.net/test#tt"/>
                        <owl:maxCardinality
 rdf:datatype="http://www.w3.org/2001/XMLSchema#nonNegativeInteger"
                         >1</owl:maxCardinality>
                    </owl:Restriction>
                    <owl:Restriction>
                        <owl:onProperty rdf:resource="http://oiled.man.example.net/test#tt"/>
                        <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#a">
        <rdfs:subClassOf>
            <owl:Class>
                <owl:unionOf rdf:parseType="Collection">
                    <owl:Class rdf:about="http://oiled.man.example.net/test#c"/>
                    <owl:Class rdf:about="http://oiled.man.example.net/test#d"/>
                </owl:unionOf>
            </owl:Class>
        </rdfs:subClassOf>
    </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#tt"/>
    <rdf:Description>
        <rdf:type rdf:resource="http://oiled.man.example.net/test#Unsatisfiable"/>
    </rdf:Description>
</rdf:RDF>
<description-logic/inconsistent109> rdf:type owl:Ontology .
oiled:Unsatisfiable rdf:type owl:Class .
_:a rdf:type owl:Class .
_:c rdf:type owl:Restriction .
_:c owl:onProperty oiled:tt .
oiled:a rdf:type owl:Class .
_:c owl:allValuesFrom oiled:a .
_:e rdf:type owl:Restriction .
_:e owl:onProperty oiled:tt .
_:e owl:minCardinality "3"^^xsd:nonNegativeInteger  .
_:g rdf:type owl:Restriction .
_:g owl:onProperty oiled:tt .
_:g owl:maxCardinality "1"^^xsd:nonNegativeInteger  .
_:i rdf:type owl:Restriction .
_:i owl:onProperty oiled:tt .
_:i owl:maxCardinality "1"^^xsd:nonNegativeInteger  .
_:k rdf:first _:i .
_:k rdf:rest rdf:nil .
_:m rdf:first _:g .
_:m rdf:rest _:k .
_:o rdf:first _:e .
_:o rdf:rest _:m .
_:q rdf:first _:c .
_:q rdf:rest _:o .
_:a owl:intersectionOf _:q .
oiled:Unsatisfiable owl:equivalentClass _:a .
oiled:a rdf:type owl:Class .
_:s rdf:type owl:Class .
oiled:c rdf:type owl:Class .
oiled:d rdf:type owl:Class .
_:u rdf:first oiled:d .
_:u rdf:rest rdf:nil .
_:w rdf:first oiled:c .
_:w rdf:rest _:u .
_:s owl:unionOf _:w .
oiled:a rdfs:subClassOf _:s .
oiled:c rdf:type owl:Class .
_:y rdf:type owl:Class .
oiled:d rdf:type owl:Class .
_:y owl:complementOf oiled:d .
oiled:c rdfs:subClassOf _:y .
oiled:d rdf:type owl:Class .
oiled:tt rdf:type owl:ObjectProperty .
_:a1 rdf:type oiled:Unsatisfiable .

DL FullInconsistent document.110
Description: (informative) <description-logic/Manifest110#test>
DL Test: heinsohn4.1 Tbox tests from [Heinsohn et al.] Tests role restrictions
N3 format is informative.
DLInconsistent: <description-logic/inconsistent110>
<rdf:RDF
    xml:base="http://www.w3.org/2002/03owlt/description-logic/inconsistent110"
    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:someValuesFrom>
                            <owl:Class>
                                <owl:complementOf>
                                    <owl:Class rdf:about="http://oiled.man.example.net/test#e"/>
                                </owl:complementOf>
                            </owl:Class>
                        </owl:someValuesFrom>
                    </owl:Restriction>
                    <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#d"/>
                        </owl:allValuesFrom>
                    </owl:Restriction>
                    <owl:Restriction>
                        <owl:onProperty rdf:resource="http://oiled.man.example.net/test#r"/>
                        <owl:allValuesFrom>
                            <owl:Class>
                                <owl:unionOf rdf:parseType="Collection">
                                    <owl:Class rdf:about="http://oiled.man.example.net/test#e"/>
                                    <owl:Class>
                                    <owl:complementOf>
                                    <owl:Class rdf:about="http://oiled.man.example.net/test#d"/>
                                    </owl:complementOf>
                                    </owl:Class>
                                </owl:unionOf>
                            </owl:Class>
                        </owl:allValuesFrom>
                    </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:Class rdf:about="http://oiled.man.example.net/test#e"/>
    <owl:ObjectProperty rdf:about="http://oiled.man.example.net/test#r"/>
    <owl:ObjectProperty rdf:about="http://oiled.man.example.net/test#s"/>
    <rdf:Description>
        <rdf:type rdf:resource="http://oiled.man.example.net/test#Unsatisfiable"/>
    </rdf:Description>
</rdf:RDF>
<description-logic/inconsistent110> 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 .
_:e rdf:type owl:Class .
oiled:e rdf:type owl:Class .
_:e owl:complementOf oiled:e .
_:c owl:someValuesFrom _:e .
_:g rdf:type owl:Restriction .
_:g owl:onProperty oiled:r .
oiled:d rdf:type owl:Class .
_:g owl:allValuesFrom oiled:d .
_:i rdf:type owl:Restriction .
_:i owl:onProperty oiled:r .
_:k rdf:type owl:Class .
oiled:e rdf:type owl:Class .
_:m rdf:type owl:Class .
oiled:d rdf:type owl:Class .
_:m owl:complementOf oiled:d .
_:o rdf:first _:m .
_:o rdf:rest rdf:nil .
_:q rdf:first oiled:e .
_:q rdf:rest _:o .
_:k owl:unionOf _:q .
_:i owl:allValuesFrom _:k .
_:s rdf:first _:i .
_:s rdf:rest rdf:nil .
_:u rdf:first _:g .
_:u rdf:rest _:s .
_:w rdf:first _:c .
_:w rdf:rest _:u .
_:a owl:intersectionOf _:w .
oiled:Unsatisfiable owl:equivalentClass _:a .
oiled:c rdf:type owl:Class .
_:y rdf:type owl:Class .
oiled:d rdf:type owl:Class .
_:y owl:complementOf oiled:d .
oiled:c rdfs:subClassOf _:y .
oiled:d rdf:type owl:Class .
oiled:e rdf:type owl:Class .
oiled:r rdf:type owl:ObjectProperty .
oiled:s rdf:type owl:ObjectProperty .
_:a1 rdf:type oiled:Unsatisfiable .

DL FullInconsistent document.111
Description: (informative) <description-logic/Manifest111#test>
DL Test: heinsohn4.2 Tbox tests from [Heinsohn et al.] Tests role restrictions
N3 format is informative.
DLInconsistent: <description-logic/inconsistent111>
<rdf:RDF
    xml:base="http://www.w3.org/2002/03owlt/description-logic/inconsistent111"
    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:someValuesFrom>
                            <owl:Class>
                                <owl:complementOf>
                                    <owl:Restriction>
                                    <owl:onProperty rdf:resource="http://oiled.man.example.net/test#s"/>
                                    <owl:maxCardinality
 rdf:datatype="http://www.w3.org/2001/XMLSchema#nonNegativeInteger"
                                    >1</owl:maxCardinality>
                                    </owl:Restriction>
                                </owl:complementOf>
                            </owl:Class>
                        </owl:someValuesFrom>
                    </owl:Restriction>
                    <owl:Restriction>
                        <owl:onProperty rdf:resource="http://oiled.man.example.net/test#r"/>
                        <owl:allValuesFrom>
                            <owl:Class>
                                <owl:unionOf rdf:parseType="Collection">
                                    <owl:Class rdf:about="http://oiled.man.example.net/test#c"/>
                                    <owl:Class>
                                    <owl:complementOf>
                                    <owl:Restriction>
                                    <owl:onProperty rdf:resource="http://oiled.man.example.net/test#s"/>
                                    <owl:minCardinality
 rdf:datatype="http://www.w3.org/2001/XMLSchema#nonNegativeInteger"
                                    >2</owl:minCardinality>
                                    </owl:Restriction>
                                    </owl:complementOf>
                                    </owl:Class>
                                </owl:unionOf>
                            </owl:Class>
                        </owl:allValuesFrom>
                    </owl:Restriction>
                    <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#d"/>
                        </owl:allValuesFrom>
                    </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:Class rdf:about="http://oiled.man.example.net/test#e"/>
    <owl:ObjectProperty rdf:about="http://oiled.man.example.net/test#r"/>
    <owl:ObjectProperty rdf:about="http://oiled.man.example.net/test#s"/>
    <rdf:Description>
        <rdf:type rdf:resource="http://oiled.man.example.net/test#Unsatisfiable"/>
    </rdf:Description>
</rdf:RDF>
<description-logic/inconsistent111> 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 .
_:e rdf:type owl:Class .
_:g rdf:type owl:Restriction .
_:g owl:onProperty oiled:s .
_:g owl:maxCardinality "1"^^xsd:nonNegativeInteger  .
_:e owl:complementOf _:g .
_:c owl:someValuesFrom _:e .
_:i rdf:type owl:Restriction .
_:i owl:onProperty oiled:r .
_:k rdf:type owl:Class .
oiled:c rdf:type owl:Class .
_:m rdf:type owl:Class .
_:o rdf:type owl:Restriction .
_:o owl:onProperty oiled:s .
_:o owl:minCardinality "2"^^xsd:nonNegativeInteger  .
_:m owl:complementOf _:o .
_:q rdf:first _:m .
_:q rdf:rest rdf:nil .
_:s rdf:first oiled:c .
_:s rdf:rest _:q .
_:k owl:unionOf _:s .
_:i owl:allValuesFrom _:k .
_:u rdf:type owl:Restriction .
_:u owl:onProperty oiled:r .
oiled:d rdf:type owl:Class .
_:u owl:allValuesFrom oiled:d .
_:w rdf:first _:u .
_:w rdf:rest rdf:nil .
_:y rdf:first _:i .
_:y rdf:rest _:w .
_:a1 rdf:first _:c .
_:a1 rdf:rest _:y .
_:a owl:intersectionOf _:a1 .
oiled:Unsatisfiable owl:equivalentClass _:a .
oiled:c rdf:type owl:Class .
_:c1 rdf:type owl:Class .
oiled:d rdf:type owl:Class .
_:c1 owl:complementOf oiled:d .
oiled:c rdfs:subClassOf _:c1 .
oiled:d rdf:type owl:Class .
oiled:e rdf:type owl:Class .
oiled:r rdf:type owl:ObjectProperty .
oiled:s rdf:type owl:ObjectProperty .
_:e1 rdf:type oiled:Unsatisfiable .

7.3.3. 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 FullInconsistent 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 FullInconsistent document.603
Description: (informative) <description-logic/Manifest603#test>
DL Test: fact3.1
N3 format is informative.
LiteInconsistent: <description-logic/inconsistent603>
<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/inconsistent603">
 <owl:Ontology rdf:about=""/>
 <owl:Class rdf:about="http://oiled.man.example.net/test#p1.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">
  <owl:intersectionOf rdf:parseType="Collection">
   <owl:Restriction>
    <owl:onProperty>
     <owl:ObjectProperty rdf:about="http://oiled.man.example.net/test#f1"/>
    </owl:onProperty>
    <owl:someValuesFrom>
     <owl:Class rdf:about="http://oiled.man.example.net/test#p1"/>
    </owl:someValuesFrom>
   </owl:Restriction>
   <owl:Restriction>
    <owl:onProperty>
     <owl:ObjectProperty rdf:about="http://oiled.man.example.net/test#f2"/>
    </owl:onProperty>
    <owl:someValuesFrom rdf:resource="http://oiled.man.example.net/test#p1.comp"/>
   </owl:Restriction>
   <owl:Restriction>
    <owl:onProperty>
     <owl:ObjectProperty rdf:about="http://oiled.man.example.net/test#f3"/>
    </owl:onProperty>
    <owl:someValuesFrom>
     <owl:Class rdf:about="http://oiled.man.example.net/test#p2"/>
    </owl:someValuesFrom>
   </owl:Restriction>
  </owl:intersectionOf>
 </owl:Class>
 <owl:Class rdf:about="http://oiled.man.example.net/test#p1">
  <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:ObjectProperty rdf:about="http://oiled.man.example.net/test#f3">
  <rdfs:subPropertyOf>
   <owl:ObjectProperty rdf:about="http://oiled.man.example.net/test#f2"/>
  </rdfs:subPropertyOf>
  <rdfs:subPropertyOf>
   <owl:ObjectProperty rdf:about="http://oiled.man.example.net/test#f1"/>
  </rdfs:subPropertyOf>
  <rdf:type rdf:resource="/2002/07/owl#FunctionalProperty"/>
 </owl:ObjectProperty>
 <owl:ObjectProperty rdf:about="http://oiled.man.example.net/test#f2">
  <rdf:type rdf:resource="/2002/07/owl#FunctionalProperty"/>
 </owl:ObjectProperty>
 <owl:ObjectProperty rdf:about="http://oiled.man.example.net/test#f1">
  <rdf:type rdf:resource="/2002/07/owl#FunctionalProperty"/>
 </owl:ObjectProperty>
 <oiled:Unsatisfiable/>
</rdf:RDF>
<description-logic/inconsistent603> rdf:type owl:Ontology .
oiled:p1.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:p1.comp owl:equivalentClass _:a .
oiled:Unsatisfiable rdf:type owl:Class .
_:c rdf:type owl:Restriction .
oiled:f1 rdf:type owl:ObjectProperty .
_:c owl:onProperty oiled:f1 .
oiled:p1 rdf:type owl:Class .
_:c owl:someValuesFrom oiled:p1 .
_:e rdf:type owl:Restriction .
oiled:f2 rdf:type owl:ObjectProperty .
_:e owl:onProperty oiled:f2 .
_:e owl:someValuesFrom oiled:p1.comp .
_:g rdf:type owl:Restriction .
oiled:f3 rdf:type owl:ObjectProperty .
_:g owl:onProperty oiled:f3 .
oiled:p2 rdf:type owl:Class .
_:g owl:someValuesFrom oiled:p2 .
_:i rdf:first _:g .
_:i rdf:rest rdf:nil .
_:k rdf:first _:e .
_:k rdf:rest _:i .
_:m rdf:first _:c .
_:m rdf:rest _:k .
oiled:Unsatisfiable owl:intersectionOf _:m .
oiled:p1 rdf:type owl:Class .
_:o rdf:type owl:Restriction .
_:o owl:onProperty first:P.1 .
_:o owl:maxCardinality "0"^^xsd:int  .
oiled:p1 owl:equivalentClass _:o .
oiled:f3 rdf:type owl:ObjectProperty .
oiled:f2 rdf:type owl:ObjectProperty .
oiled:f3 rdfs:subPropertyOf oiled:f2 .
oiled:f1 rdf:type owl:ObjectProperty .
oiled:f3 rdfs:subPropertyOf oiled:f1 .
oiled:f3 rdf:type owl:FunctionalProperty .
oiled:f2 rdf:type owl:ObjectProperty .
oiled:f2 rdf:type owl:FunctionalProperty .
oiled:f1 rdf:type owl:ObjectProperty .
oiled:f1 rdf:type owl:FunctionalProperty .
_:q rdf:type oiled:Unsatisfiable .

Lite FullInconsistent document.604
Description: (informative) <description-logic/Manifest604#test>
DL Test: fact4.1
N3 format is informative.
LiteInconsistent: <description-logic/inconsistent604>
<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/inconsistent604">
 <owl:Ontology rdf:about=""/>
 <owl:Class rdf:about="http://oiled.man.example.net/test#c2"/>
 <owl:Class rdf:about="http://oiled.man.example.net/test#c1"/>
 <owl:Class rdf:ID="C.1.comp">
  <owl:equivalentClass>
   <owl:Restriction>
    <owl:onProperty>
     <owl:DatatypeProperty rdf:ID="P.1"/>
    </owl:onProperty>
    <owl:maxCardinality rdf:datatype="/2001/XMLSchema#int"
    >0</owl:maxCardinality>
   </owl:Restriction>
  </owl:equivalentClass>
  <owl:equivalentClass>
   <owl:Restriction>
    <owl:onProperty>
     <owl:ObjectProperty rdf:about="http://oiled.man.example.net/test#rx3"/>
    </owl:onProperty>
    <owl:someValuesFrom>
     <owl:Class rdf:about="#A.2"/>
    </owl:someValuesFrom>
   </owl:Restriction>
  </owl:equivalentClass>
 </owl:Class>
 <owl:Class rdf:about="http://oiled.man.example.net/test#Unsatisfiable">
  <owl:intersectionOf rdf:parseType="Collection">
   <owl:Class rdf:about="#C.1"/>
   <owl:Restriction>
    <owl:onProperty>
     <owl:ObjectProperty rdf:about="http://oiled.man.example.net/test#rx3"/>
    </owl:onProperty>
    <owl:someValuesFrom rdf:resource="http://oiled.man.example.net/test#c1"/>
   </owl:Restriction>
   <owl:Restriction>
    <owl:onProperty>
     <owl:ObjectProperty rdf:about="http://oiled.man.example.net/test#rx4"/>
    </owl:onProperty>
    <owl:someValuesFrom rdf:resource="http://oiled.man.example.net/test#c2"/>
   </owl:Restriction>
  </owl:intersectionOf>
 </owl:Class>
 <owl:Class rdf:ID="C.1">
  <owl:equivalentClass>
   <owl:Restriction>
    <owl:onProperty rdf:resource="#P.1"/>
    <owl:minCardinality rdf:datatype="/2001/XMLSchema#int"
    >1</owl:minCardinality>
   </owl:Restriction>
  </owl:equivalentClass>
 </owl:Class>
 <owl:Class rdf:ID="A.2">
  <owl:intersectionOf rdf:parseType="Collection">
   <owl:Class rdf:about="http://oiled.man.example.net/test#c1"/>
   <owl:Class rdf:about="http://oiled.man.example.net/test#c2"/>
  </owl:intersectionOf>
 </owl:Class>
 <owl:ObjectProperty rdf:about="http://oiled.man.example.net/test#rx4">
  <rdfs:subPropertyOf>
   <owl:ObjectProperty rdf:about="http://oiled.man.example.net/test#rx2"/>
  </rdfs:subPropertyOf>
  <rdfs:subPropertyOf>
   <owl:ObjectProperty rdf:about="http://oiled.man.example.net/test#rx"/>
  </rdfs:subPropertyOf>
  <rdf:type rdf:resource="/2002/07/owl#FunctionalProperty"/>
 </owl:ObjectProperty>
 <owl:ObjectProperty rdf:about="http://oiled.man.example.net/test#rx3">
  <rdfs:subPropertyOf>
   <owl:ObjectProperty rdf:about="http://oiled.man.example.net/test#rx1"/>
  </rdfs:subPropertyOf>
  <rdfs:subPropertyOf>
   <owl:ObjectProperty rdf:about="http://oiled.man.example.net/test#rx"/>
  </rdfs:subPropertyOf>
  <rdf:type rdf:resource="/2002/07/owl#FunctionalProperty"/>
 </owl:ObjectProperty>
 <owl:ObjectProperty rdf:about="http://oiled.man.example.net/test#rxa"/>
 <owl:ObjectProperty rdf:about="http://oiled.man.example.net/test#rx">
  <rdf:type rdf:resource="/2002/07/owl#FunctionalProperty"/>
 </owl:ObjectProperty>
 <owl:ObjectProperty rdf:about="http://oiled.man.example.net/test#rx1a"/>
 <owl:ObjectProperty rdf:about="http://oiled.man.example.net/test#rx2a"/>
 <owl:ObjectProperty rdf:about="http://oiled.man.example.net/test#rx3a">
  <rdfs:subPropertyOf rdf:resource="http://oiled.man.example.net/test#rx1a"/>
  <rdfs:subPropertyOf rdf:resource="http://oiled.man.example.net/test#rxa"/>
  <rdf:type rdf:resource="/2002/07/owl#FunctionalProperty"/>
 </owl:ObjectProperty>
 <owl:ObjectProperty rdf:about="http://oiled.man.example.net/test#rx4a">
  <rdfs:subPropertyOf rdf:resource="http://oiled.man.example.net/test#rx2a"/>
  <rdfs:subPropertyOf rdf:resource="http://oiled.man.example.net/test#rxa"/>
  <rdf:type rdf:resource="/2002/07/owl#FunctionalProperty"/>
 </owl:ObjectProperty>
 <oiled:Unsatisfiable/>
</rdf:RDF>
<description-logic/inconsistent604> rdf:type owl:Ontology .
oiled:c2 rdf:type owl:Class .
oiled:c1 rdf:type owl:Class .
first:C.1.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:maxCardinality "0"^^xsd:int  .
first:C.1.comp owl:equivalentClass _:a .
_:c rdf:type owl:Restriction .
oiled:rx3 rdf:type owl:ObjectProperty .
_:c owl:onProperty oiled:rx3 .
first:A.2 rdf:type owl:Class .
_:c owl:someValuesFrom first:A.2 .
first:C.1.comp owl:equivalentClass _:c .
oiled:Unsatisfiable rdf:type owl:Class .
first:C.1 rdf:type owl:Class .
_:e rdf:type owl:Restriction .
oiled:rx3 rdf:type owl:ObjectProperty .
_:e owl:onProperty oiled:rx3 .
_:e owl:someValuesFrom oiled:c1 .
_:g rdf:type owl:Restriction .
oiled:rx4 rdf:type owl:ObjectProperty .
_:g owl:onProperty oiled:rx4 .
_:g owl:someValuesFrom oiled:c2 .
_:i rdf:first _:g .
_:i rdf:rest rdf:nil .
_:k rdf:first _:e .
_:k rdf:rest _:i .
_:m rdf:first first:C.1 .
_:m rdf:rest _:k .
oiled:Unsatisfiable owl:intersectionOf _:m .
first:C.1 rdf:type owl:Class .
_:o rdf:type owl:Restriction .
_:o owl:onProperty first:P.1 .
_:o owl:minCardinality "1"^^xsd:int  .
first:C.1 owl:equivalentClass _:o .
first:A.2 rdf:type owl:Class .
oiled:c1 rdf:type owl:Class .
oiled:c2 rdf:type owl:Class .
_:q rdf:first oiled:c2 .
_:q rdf:rest rdf:nil .
_:s rdf:first oiled:c1 .
_:s rdf:rest _:q .
first:A.2 owl:intersectionOf _:s .
oiled:rx4 rdf:type owl:ObjectProperty .
oiled:rx2 rdf:type owl:ObjectProperty .
oiled:rx4 rdfs:subPropertyOf oiled:rx2 .
oiled:rx rdf:type owl:ObjectProperty .
oiled:rx4 rdfs:subPropertyOf oiled:rx .
oiled:rx4 rdf:type owl:FunctionalProperty .
oiled:rx3 rdf:type owl:ObjectProperty .
oiled:rx1 rdf:type owl:ObjectProperty .
oiled:rx3 rdfs:subPropertyOf oiled:rx1 .
oiled:rx rdf:type owl:ObjectProperty .
oiled:rx3 rdfs:subPropertyOf oiled:rx .
oiled:rx3 rdf:type owl:FunctionalProperty .
oiled:rxa rdf:type owl:ObjectProperty .
oiled:rx rdf:type owl:ObjectProperty .
oiled:rx rdf:type owl:FunctionalProperty .
oiled:rx1a rdf:type owl:ObjectProperty .
oiled:rx2a rdf:type owl:ObjectProperty .
oiled:rx3a rdf:type owl:ObjectProperty .
oiled:rx3a rdfs:subPropertyOf oiled:rx1a .
oiled:rx3a rdfs:subPropertyOf oiled:rxa .
oiled:rx3a rdf:type owl:FunctionalProperty .
oiled:rx4a rdf:type owl:ObjectProperty .
oiled:rx4a rdfs:subPropertyOf oiled:rx2a .
oiled:rx4a rdfs:subPropertyOf oiled:rxa .
oiled:rx4a rdf:type owl:FunctionalProperty .
_:u rdf:type oiled:Unsatisfiable .

Lite FullConsistent document.605
Description: (informative) <description-logic/Manifest605#test>
DL Test: fact4.2
N3 format is informative.
LiteConsistent: <description-logic/consistent605>
<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/consistent605">
 <owl:Ontology rdf:about=""/>
 <owl:Class rdf:about="http://oiled.man.example.net/test#c2"/>
 <owl:Class rdf:about="http://oiled.man.example.net/test#Satisfiable">
  <owl:intersectionOf rdf:parseType="Collection">
   <owl:Class rdf:about="#C.1"/>
   <owl:Restriction>
    <owl:onProperty>
     <owl:ObjectProperty rdf:about="http://oiled.man.example.net/test#rx3a"/>
    </owl:onProperty>
    <owl:someValuesFrom>
     <owl:Class rdf:about="http://oiled.man.example.net/test#c1"/>
    </owl:someValuesFrom>
   </owl:Restriction>
   <owl:Restriction>
    <owl:onProperty>
     <owl:ObjectProperty rdf:about="http://oiled.man.example.net/test#rx4a"/>
    </owl:onProperty>
    <owl:someValuesFrom rdf:resource="http://oiled.man.example.net/test#c2"/>
   </owl:Restriction>
  </owl:intersectionOf>
 </owl:Class>
 <owl:Class rdf:ID="C.1">
  <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:ID="A.2">
  <owl:intersectionOf rdf:parseType="Collection">
   <owl:Class rdf:about="http://oiled.man.example.net/test#c1"/>
   <owl:Class rdf:about="http://oiled.man.example.net/test#c2"/>
  </owl:intersectionOf>
 </owl:Class>
 <owl:Class rdf:ID="C.1.comp">
  <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:equivalentClass>
   <owl:Restriction>
    <owl:onProperty>
     <owl:ObjectProperty rdf:about="http://oiled.man.example.net/test#rx3a"/>
    </owl:onProperty>
    <owl:someValuesFrom rdf:resource="#A.2"/>
   </owl:Restriction>
  </owl:equivalentClass>
 </owl:Class>
 <owl:ObjectProperty rdf:about="http://oiled.man.example.net/test#rx4">
  <rdfs:subPropertyOf>
   <owl:ObjectProperty rdf:about="http://oiled.man.example.net/test#rx2"/>
  </rdfs:subPropertyOf>
  <rdfs:subPropertyOf>
   <owl:ObjectProperty rdf:about="http://oiled.man.example.net/test#rx"/>
  </rdfs:subPropertyOf>
  <rdf:type rdf:resource="/2002/07/owl#FunctionalProperty"/>
 </owl:ObjectProperty>
 <owl:ObjectProperty rdf:about="http://oiled.man.example.net/test#rx3">
  <rdfs:subPropertyOf>
   <owl:ObjectProperty rdf:about="http://oiled.man.example.net/test#rx1"/>
  </rdfs:subPropertyOf>
  <rdfs:subPropertyOf>
   <owl:ObjectProperty rdf:about="http://oiled.man.example.net/test#rx"/>
  </rdfs:subPropertyOf>
  <rdf:type rdf:resource="/2002/07/owl#FunctionalProperty"/>
 </owl:ObjectProperty>
 <owl:ObjectProperty rdf:about="http://oiled.man.example.net/test#rxa"/>
 <owl:ObjectProperty rdf:about="http://oiled.man.example.net/test#rx">
  <rdf:type rdf:resource="/2002/07/owl#FunctionalProperty"/>
 </owl:ObjectProperty>
 <owl:ObjectProperty rdf:about="http://oiled.man.example.net/test#rx1a"/>
 <owl:ObjectProperty rdf:about="http://oiled.man.example.net/test#rx2a"/>
 <owl:ObjectProperty rdf:about="http://oiled.man.example.net/test#rx3a">
  <rdfs:subPropertyOf rdf:resource="http://oiled.man.example.net/test#rx1a"/>
  <rdfs:subPropertyOf rdf:resource="http://oiled.man.example.net/test#rxa"/>
  <rdf:type rdf:resource="/2002/07/owl#FunctionalProperty"/>
 </owl:ObjectProperty>
 <owl:ObjectProperty rdf:about="http://oiled.man.example.net/test#rx4a">
  <rdfs:subPropertyOf rdf:resource="http://oiled.man.example.net/test#rx2a"/>
  <rdfs:subPropertyOf rdf:resource="http://oiled.man.example.net/test#rxa"/>
  <rdf:type rdf:resource="/2002/07/owl#FunctionalProperty"/>
 </owl:ObjectProperty>
 <oiled:Satisfiable/>
</rdf:RDF>
<description-logic/consistent605> rdf:type owl:Ontology .
oiled:c2 rdf:type owl:Class .
oiled:Satisfiable rdf:type owl:Class .
first:C.1 rdf:type owl:Class .
_:a rdf:type owl:Restriction .
oiled:rx3a rdf:type owl:ObjectProperty .
_:a owl:onProperty oiled:rx3a .
oiled:c1 rdf:type owl:Class .
_:a owl:someValuesFrom oiled:c1 .
_:c rdf:type owl:Restriction .
oiled:rx4a rdf:type owl:ObjectProperty .
_:c owl:onProperty oiled:rx4a .
_:c owl:someValuesFrom oiled:c2 .
_:e rdf:first _:c .
_:e rdf:rest rdf:nil .
_:g rdf:first _:a .
_:g rdf:rest _:e .
_:i rdf:first first:C.1 .
_:i rdf:rest _:g .
oiled:Satisfiable owl:intersectionOf _:i .
first:C.1 rdf:type owl:Class .
_:k rdf:type owl:Restriction .
first:P.1 rdf:type owl:DatatypeProperty .
_:k owl:onProperty first:P.1 .
_:k owl:minCardinality "1"^^xsd:int  .
first:C.1 owl:equivalentClass _:k .
first:A.2 rdf:type owl:Class .
oiled:c1 rdf:type owl:Class .
oiled:c2 rdf:type owl:Class .
_:m rdf:first oiled:c2 .
_:m rdf:rest rdf:nil .
_:o rdf:first oiled:c1 .
_:o rdf:rest _:m .
first:A.2 owl:intersectionOf _:o .
first:C.1.comp rdf:type owl:Class .
_:q rdf:type owl:Restriction .
_:q owl:onProperty first:P.1 .
_:q owl:maxCardinality "0"^^xsd:int  .
first:C.1.comp owl:equivalentClass _:q .
_:s rdf:type owl:Restriction .
oiled:rx3a rdf:type owl:ObjectProperty .
_:s owl:onProperty oiled:rx3a .
_:s owl:someValuesFrom first:A.2 .
first:C.1.comp owl:equivalentClass _:s .
oiled:rx4 rdf:type owl:ObjectProperty .
oiled:rx2 rdf:type owl:ObjectProperty .
oiled:rx4 rdfs:subPropertyOf oiled:rx2 .
oiled:rx rdf:type owl:ObjectProperty .
oiled:rx4 rdfs:subPropertyOf oiled:rx .
oiled:rx4 rdf:type owl:FunctionalProperty .
oiled:rx3 rdf:type owl:ObjectProperty .
oiled:rx1 rdf:type owl:ObjectProperty .
oiled:rx3 rdfs:subPropertyOf oiled:rx1 .
oiled:rx rdf:type owl:ObjectProperty .
oiled:rx3 rdfs:subPropertyOf oiled:rx .
oiled:rx3 rdf:type owl:FunctionalProperty .
oiled:rxa rdf:type owl:ObjectProperty .
oiled:rx rdf:type owl:ObjectProperty .
oiled:rx rdf:type owl:FunctionalProperty .
oiled:rx1a rdf:type owl:ObjectProperty .
oiled:rx2a rdf:type owl:ObjectProperty .
oiled:rx3a rdf:type owl:ObjectProperty .
oiled:rx3a rdfs:subPropertyOf oiled:rx1a .
oiled:rx3a rdfs:subPropertyOf oiled:rxa .
oiled:rx3a rdf:type owl:FunctionalProperty .
oiled:rx4a rdf:type owl:ObjectProperty .
oiled:rx4a rdfs:subPropertyOf oiled:rx2a .
oiled:rx4a rdfs:subPropertyOf oiled:rxa .
oiled:rx4a rdf:type owl:FunctionalProperty .
_:u rdf:type oiled:Satisfiable .

Lite FullConsistent document.606
Description: (informative) <description-logic/Manifest606#test>
DL Test: t1.1
N3 format is informative.
LiteConsistent: <description-logic/consistent606>
<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/consistent606">
 <owl:Ontology rdf:about=""/>
 <owl:Class rdf:about="http://oiled.man.example.net/test#p2.comp">
  <owl:equivalentClass>
   <owl:Restriction>
    <owl:onProperty>
     <owl:DatatypeProperty rdf:ID="P.5"/>
    </owl:onProperty>
    <owl:cardinality rdf:datatype="/2001/XMLSchema#decimal"
    >0</owl:cardinality>
   </owl:Restriction>
  </owl:equivalentClass>
 </owl:Class>
 <owl:Class rdf:about="http://oiled.man.example.net/test#p3.comp">
  <owl:equivalentClass>
   <owl:Restriction>
    <owl:onProperty>
     <owl:ObjectProperty rdf:ID="P.6"/>
    </owl:onProperty>
    <owl:maxCardinality rdf:datatype="/2001/XMLSchema#byte"
    >0</owl:maxCardinality>
   </owl:Restriction>
  </owl:equivalentClass>
 </owl:Class>
 <owl:Class rdf:about="http://oiled.man.example.net/test#p4.comp">
  <owl:equivalentClass>
   <owl:Restriction>
    <owl:onProperty>
     <owl:DatatypeProperty rdf:ID="P.7"/>
    </owl:onProperty>
    <owl:minCardinality rdf:datatype="/2001/XMLSchema#integer"
    >1</owl:minCardinality>
   </owl:Restriction>
  </owl:equivalentClass>
 </owl:Class>
 <owl:Class rdf:about="http://oiled.man.example.net/test#p5.comp">
  <owl:equivalentClass>
   <owl:Restriction>
    <owl:onProperty>
     <owl:ObjectProperty rdf:ID="P.4"/>
    </owl:onProperty>
    <owl:minCardinality rdf:datatype="/2001/XMLSchema#nonNegativeInteger"
    >1</owl:minCardinality>
   </owl:Restriction>
  </owl:equivalentClass>
 </owl:Class>
 <owl:Class rdf:ID="C.1.comp">
  <owl:equivalentClass>
   <owl:Restriction>
    <owl:onProperty>
     <owl:DatatypeProperty rdf:ID="P.1"/>
    </owl:onProperty>
    <owl:maxCardinality rdf:datatype="/2001/XMLSchema#int"
    >0</owl:maxCardinality>
   </owl:Restriction>
  </owl:equivalentClass>
 </owl:Class>
 <owl:Class rdf:ID="C.2.comp">
  <owl:equivalentClass>
   <owl:Restriction>
    <owl:onProperty>
     <owl:ObjectProperty rdf:ID="P.2"/>
    </owl:onProperty>
    <owl:minCardinality rdf:datatype="/2001/XMLSchema#short"
    >1</owl:minCardinality>
   </owl:Restriction>
  </owl:equivalentClass>
 </owl:Class>
 <owl:Class rdf:ID="C.3.comp">
  <owl:equivalentClass>
   <owl:Restriction>
    <owl:onProperty>
     <owl:DatatypeProperty rdf:ID="P.3"/>
    </owl:onProperty>
    <owl:minCardinality rdf:datatype="/2001/XMLSchema#unsignedByte"
    >1</owl:minCardinality>
   </owl:Restriction>
  </owl:equivalentClass>
 </owl:Class>
 <owl:Class rdf:about="http://oiled.man.example.net/test#Satisfiable">
  <owl:equivalentClass>
   <owl:Restriction>
    <owl:onProperty>
     <owl:ObjectProperty rdf:about="http://oiled.man.example.net/test#invR"/>
    </owl:onProperty>
    <owl:someValuesFrom>
     <owl:Class rdf:about="#A.14"/>
    </owl:someValuesFrom>
   </owl:Restriction>
  </owl:equivalentClass>
 </owl:Class>
 <owl:Class rdf:ID="A.14">
  <owl:intersectionOf rdf:parseType="Collection">
   <owl:Restriction>
    <owl:onProperty>
     <owl:ObjectProperty rdf:about="http://oiled.man.example.net/test#r"/>
    </owl:onProperty>
    <owl:someValuesFrom>
     <owl:Class rdf:about="http://oiled.man.example.net/test#p1"/>
    </owl:someValuesFrom>
   </owl:Restriction>
   <owl:Restriction>
    <owl:onProperty rdf:resource="http://oiled.man.example.net/test#r"/>
    <owl:maxCardinality rdf:datatype="/2001/XMLSchema#nonNegativeInteger"
    >1</owl:maxCardinality>
   </owl:Restriction>
  </owl:intersectionOf>
 </owl:Class>
 <owl:Class rdf:ID="C.3">
  <owl:equivalentClass>
   <owl:Restriction>
    <owl:onProperty rdf:resource="#P.3"/>
    <owl:cardinality rdf:datatype="/2001/XMLSchema#unsignedByte"
    >0</owl:cardinality>
   </owl:Restriction>
  </owl:equivalentClass>
  <owl:intersectionOf rdf:parseType="Collection">
   <owl:Class rdf:about="http://oiled.man.example.net/test#p4.comp"/>
   <owl:Class rdf:about="http://oiled.man.example.net/test#p5.comp"/>
  </owl:intersectionOf>
 </owl:Class>
 <owl:Class rdf:ID="C.2">
  <owl:equivalentClass>
   <owl:Restriction>
    <owl:onProperty rdf:resource="#P.2"/>
    <owl:cardinality rdf:datatype="/2001/XMLSchema#short"
    >0</owl:cardinality>
   </owl:Restriction>
  </owl:equivalentClass>
  <owl:intersectionOf rdf:parseType="Collection">
   <owl:Class rdf:about="http://oiled.man.example.net/test#p3.comp"/>
   <owl:Class rdf:about="http://oiled.man.example.net/test#p4.comp"/>
   <owl:Class rdf:about="http://oiled.man.example.net/test#p5.comp"/>
  </owl:intersectionOf>
 </owl:Class>
 <owl:Class rdf:ID="C.1">
  <owl:equivalentClass>
   <owl:Restriction>
    <owl:onProperty rdf:resource="#P.1"/>
    <owl:minCardinality rdf:datatype="/2001/XMLSchema#int"
    >1</owl:minCardinality>
   </owl:Restriction>
  </owl:equivalentClass>
  <owl:intersectionOf rdf:parseType="Collection">
   <owl:Class rdf:about="http://oiled.man.example.net/test#p2.comp"/>
   <owl:Class rdf:about="http://oiled.man.example.net/test#p3.comp"/>
   <owl:Class rdf:about="http://oiled.man.example.net/test#p4.comp"/>
   <owl:Class rdf:about="http://oiled.man.example.net/test#p5.comp"/>
  </owl:intersectionOf>
 </owl:Class>
 <owl:Class rdf:about="http://oiled.man.example.net/test#p5">
  <owl:equivalentClass>
   <owl:Restriction>
    <owl:onProperty rdf:resource="#P.4"/>
    <owl:cardinality rdf:datatype="/2001/XMLSchema#nonNegativeInteger"
    >0</owl:cardinality>
   </owl:Restriction>
  </owl:equivalentClass>
 </owl:Class>
 <owl:Class rdf:about="http://oiled.man.example.net/test#p4">
  <rdfs:subClassOf rdf:resource="http://oiled.man.example.net/test#p5.comp"/>
  <owl:equivalentClass>
   <owl:Restriction>
    <owl:onProperty rdf:resource="#P.7"/>
    <owl:cardinality rdf:datatype="/2001/XMLSchema#integer"
    >0</owl:cardinality>
   </owl:Restriction>
  </owl:equivalentClass>
 </owl:Class>
 <owl:Class rdf:about="http://oiled.man.example.net/test#p3">
  <rdfs:subClassOf rdf:resource="#C.3"/>
  <owl:equivalentClass>
   <owl:Restriction>
    <owl:onProperty rdf:resource="#P.6"/>
    <owl:minCardinality rdf:datatype="/2001/XMLSchema#byte"
    >1</owl:minCardinality>
   </owl:Restriction>
  </owl:equivalentClass>
 </owl:Class>
 <owl:Class rdf:about="http://oiled.man.example.net/test#p2">
  <rdfs:subClassOf rdf:resource="#C.2"/>
  <owl:equivalentClass>
   <owl:Restriction>
    <owl:onProperty rdf:resource="#P.5"/>
    <owl:minCardinality rdf:datatype="/2001/XMLSchema#decimal"
    >1</owl:minCardinality>
   </owl:Restriction>
  </owl:equivalentClass>
 </owl:Class>
 <owl:Class rdf:about="http://oiled.man.example.net/test#p1">
  <rdfs:subClassOf rdf:resource="#C.1"/>
 </owl:Class>
 <owl:ObjectProperty rdf:about="http://oiled.man.example.net/test#invR">
  <owl:inverseOf rdf:resource="http://oiled.man.example.net/test#r"/>
 </owl:ObjectProperty>
 <oiled:Satisfiable/>
</rdf:RDF>
<description-logic/consistent606> rdf:type owl:Ontology .
oiled:p2.comp rdf:type owl:Class .
_:a rdf:type owl:Restriction .
first:P.5 rdf:type owl:DatatypeProperty .
_:a owl:onProperty first:P.5 .
_:a owl:cardinality "0"^^xsd:decimal  .
oiled:p2.comp owl:equivalentClass _:a .
oiled:p3.comp rdf:type owl:Class .
_:c rdf:type owl:Restriction .
first:P.6 rdf:type owl:ObjectProperty .
_:c owl:onProperty first:P.6 .
_:c owl:maxCardinality "0"^^xsd:byte  .
oiled:p3.comp owl:equivalentClass _:c .
oiled:p4.comp rdf:type owl:Class .
_:e rdf:type owl:Restriction .
first:P.7 rdf:type owl:DatatypeProperty .
_:e owl:onProperty first:P.7 .
_:e owl:minCardinality "1"^^xsd:integer  .
oiled:p4.comp owl:equivalentClass _:e .
oiled:p5.comp rdf:type owl:Class .
_:g rdf:type owl:Restriction .
first:P.4 rdf:type owl:ObjectProperty .
_:g owl:onProperty first:P.4 .
_:g owl:minCardinality "1"^^xsd:nonNegativeInteger  .
oiled:p5.comp owl:equivalentClass _:g .
first:C.1.comp rdf:type owl:Class .
_:i rdf:type owl:Restriction .
first:P.1 rdf:type owl:DatatypeProperty .
_:i owl:onProperty first:P.1 .
_:i owl:maxCardinality "0"^^xsd:int  .
first:C.1.comp owl:equivalentClass _:i .
first:C.2.comp rdf:type owl:Class .
_:k rdf:type owl:Restriction .
first:P.2 rdf:type owl:ObjectProperty .
_:k owl:onProperty first:P.2 .
_:k owl:minCardinality "1"^^xsd:short  .
first:C.2.comp owl:equivalentClass _:k .
first:C.3.comp rdf:type owl:Class .
_:m rdf:type owl:Restriction .
first:P.3 rdf:type owl:DatatypeProperty .
_:m owl:onProperty first:P.3 .
_:m owl:minCardinality "1"^^xsd:unsignedByte  .
first:C.3.comp owl:equivalentClass _:m .
oiled:Satisfiable rdf:type owl:Class .
_:o rdf:type owl:Restriction .
oiled:invR rdf:type owl:ObjectProperty .
_:o owl:onProperty oiled:invR .
first:A.14 rdf:type owl:Class .
_:o owl:someValuesFrom first:A.14 .
oiled:Satisfiable owl:equivalentClass _:o .
first:A.14 rdf:type owl:Class .
_:q rdf:type owl:Restriction .
oiled:r rdf:type owl:ObjectProperty .
_:q owl:onProperty oiled:r .
oiled:p1 rdf:type owl:Class .
_:q owl:someValuesFrom oiled:p1 .
_:s rdf:type owl:Restriction .
_:s owl:onProperty oiled:r .
_:s owl:maxCardinality "1"^^xsd:nonNegativeInteger  .
_:u rdf:first _:s .
_:u rdf:rest rdf:nil .
_:w rdf:first _:q .
_:w rdf:rest _:u .
first:A.14 owl:intersectionOf _:w .
first:C.3 rdf:type owl:Class .
_:y rdf:type owl:Restriction .
_:y owl:onProperty first:P.3 .
_:y owl:cardinality "0"^^xsd:unsignedByte  .
first:C.3 owl:equivalentClass _:y .
oiled:p4.comp rdf:type owl:Class .
oiled:p5.comp rdf:type owl:Class .
_:a1 rdf:first oiled:p5.comp .
_:a1 rdf:rest rdf:nil .
_:c1 rdf:first oiled:p4.comp .
_:c1 rdf:rest _:a1 .
first:C.3 owl:intersectionOf _:c1 .
first:C.2 rdf:type owl:Class .
_:e1 rdf:type owl:Restriction .
_:e1 owl:onProperty first:P.2 .
_:e1 owl:cardinality "0"^^xsd:short  .
first:C.2 owl:equivalentClass _:e1 .
oiled:p3.comp rdf:type owl:Class .
oiled:p4.comp rdf:type owl:Class .
oiled:p5.comp rdf:type owl:Class .
_:g1 rdf:first oiled:p5.comp .
_:g1 rdf:rest rdf:nil .
_:i1 rdf:first oiled:p4.comp .
_:i1 rdf:rest _:g1 .
_:k1 rdf:first oiled:p3.comp .
_:k1 rdf:rest _:i1 .
first:C.2 owl:intersectionOf _:k1 .
first:C.1 rdf:type owl:Class .
_:m1 rdf:type owl:Restriction .
_:m1 owl:onProperty first:P.1 .
_:m1 owl:minCardinality "1"^^xsd:int  .
first:C.1 owl:equivalentClass _:m1 .
oiled:p2.comp rdf:type owl:Class .
oiled:p3.comp rdf:type owl:Class .
oiled:p4.comp rdf:type owl:Class .
oiled:p5.comp rdf:type owl:Class .
_:o1 rdf:first oiled:p5.comp .
_:o1 rdf:rest rdf:nil .
_:q1 rdf:first oiled:p4.comp .
_:q1 rdf:rest _:o1 .
_:s1 rdf:first oiled:p3.comp .
_:s1 rdf:rest _:q1 .
_:u1 rdf:first oiled:p2.comp .
_:u1 rdf:rest _:s1 .
first:C.1 owl:intersectionOf _:u1 .
oiled:p5 rdf:type owl:Class .
_:w1 rdf:type owl:Restriction .
_:w1 owl:onProperty first:P.4 .
_:w1 owl:cardinality "0"^^xsd:nonNegativeInteger  .
oiled:p5 owl:equivalentClass _:w1 .
oiled:p4 rdf:type owl:Class .
oiled:p4 rdfs:subClassOf oiled:p5.comp .
_:y1 rdf:type owl:Restriction .
_:y1 owl:onProperty first:P.7 .
_:y1 owl:cardinality "0"^^xsd:integer  .
oiled:p4 owl:equivalentClass _:y1 .
oiled:p3 rdf:type owl:Class .
oiled:p3 rdfs:subClassOf first:C.3 .
_:a2 rdf:type owl:Restriction .
_:a2 owl:onProperty first:P.6 .
_:a2 owl:minCardinality "1"^^xsd:byte  .
oiled:p3 owl:equivalentClass _:a2 .
oiled:p2 rdf:type owl:Class .
oiled:p2 rdfs:subClassOf first:C.2 .
_:c2 rdf:type owl:Restriction .
_:c2 owl:onProperty first:P.5 .
_:c2 owl:minCardinality "1"^^xsd:decimal  .
oiled:p2 owl:equivalentClass _:c2 .
oiled:p1 rdf:type owl:Class .
oiled:p1 rdfs:subClassOf first:C.1 .
oiled:invR rdf:type owl:ObjectProperty .
oiled:invR owl:inverseOf oiled:r .
_:e2 rdf:type oiled:Satisfiable .

Lite FullInconsistent document.608
Description: (informative) <description-logic/Manifest608#test>
DL Test: t1.3
N3 format is informative.
LiteInconsistent: <description-logic/inconsistent608>
<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/inconsistent608">
 <owl:Ontology rdf:about=""/>
 <owl:Class rdf:about="http://oiled.man.example.net/test#p2.comp">
  <owl:equivalentClass>
   <owl:Restriction>
    <owl:onProperty>
     <owl:DatatypeProperty rdf:ID="P.5"/>
    </owl:onProperty>
    <owl:cardinality rdf:datatype="/2001/XMLSchema#decimal"
    >0</owl:cardinality>
   </owl:Restriction>
  </owl:equivalentClass>
 </owl:Class>
 <owl:Class rdf:about="http://oiled.man.example.net/test#p3.comp">
  <owl:equivalentClass>
   <owl:Restriction>
    <owl:onProperty>
     <owl:ObjectProperty rdf:ID="P.6"/>
    </owl:onProperty>
    <owl:maxCardinality rdf:datatype="/2001/XMLSchema#byte"
    >0</owl:maxCardinality>
   </owl:Restriction>
  </owl:equivalentClass>
 </owl:Class>
 <owl:Class rdf:about="http://oiled.man.example.net/test#p4.comp">
  <owl:equivalentClass>
   <owl:Restriction>
    <owl:onProperty>
     <owl:DatatypeProperty rdf:ID="P.7"/>
    </owl:onProperty>
    <owl:minCardinality rdf:datatype="/2001/XMLSchema#integer"
    >1</owl:minCardinality>
   </owl:Restriction>
  </owl:equivalentClass>
 </owl:Class>
 <owl:Class rdf:about="http://oiled.man.example.net/test#p5.comp">
  <owl:equivalentClass>
   <owl:Restriction>
    <owl:onProperty>
     <owl:ObjectProperty rdf:ID="P.4"/>
    </owl:onProperty>
    <owl:minCardinality rdf:datatype="/2001/XMLSchema#nonNegativeInteger"
    >1</owl:minCardinality>
   </owl:Restriction>
  </owl:equivalentClass>
 </owl:Class>
 <owl:Class rdf:ID="C.1.comp">
  <owl:equivalentClass>
   <owl:Restriction>
    <owl:onProperty>
     <owl:DatatypeProperty rdf:ID="P.1"/>
    </owl:onProperty>
    <owl:maxCardinality rdf:datatype="/2001/XMLSchema#int"
    >0</owl:maxCardinality>
   </owl:Restriction>
  </owl:equivalentClass>
 </owl:Class>
 <owl:Class rdf:ID="C.2.comp">
  <owl:equivalentClass>
   <owl:Restriction>
    <owl:onProperty>
     <owl:ObjectProperty rdf:ID="P.2"/>
    </owl:onProperty>
    <owl:minCardinality rdf:datatype="/2001/XMLSchema#short"
    >1</owl:minCardinality>
   </owl:Restriction>
  </owl:equivalentClass>
 </owl:Class>
 <owl:Class rdf:about="http://oiled.man.example.net/test#Unsatisfiable">
  <owl:intersectionOf rdf:parseType="Collection">
   <owl:Class rdf:about="http://oiled.man.example.net/test#p2"/>
   <owl:Restriction>
    <owl:onProperty>
     <owl:ObjectProperty rdf:about="http://oiled.man.example.net/test#invR"/>
    </owl:onProperty>
    <owl:someValuesFrom>
     <owl:Class rdf:about="#A.14"/>
    </owl:someValuesFrom>
   </owl:Restriction>
  </owl:intersectionOf>
 </owl:Class>
 <owl:Class rdf:ID="C.3.comp">
  <owl:equivalentClass>
   <owl:Restriction>
    <owl:onProperty>
     <owl:DatatypeProperty rdf:ID="P.3"/>
    </owl:onProperty>
    <owl:minCardinality rdf:datatype="/2001/XMLSchema#unsignedByte"
    >1</owl:minCardinality>
   </owl:Restriction>
  </owl:equivalentClass>
 </owl:Class>
 <owl:Class rdf:ID="A.14">
  <owl:intersectionOf rdf:parseType="Collection">
   <owl:Restriction>
    <owl:onProperty>
     <owl:ObjectProperty rdf:about="http://oiled.man.example.net/test#r"/>
    </owl:onProperty>
    <owl:someValuesFrom>
     <owl:Class rdf:about="http://oiled.man.example.net/test#p1"/>
    </owl:someValuesFrom>
   </owl:Restriction>
   <owl:Restriction>
    <owl:onProperty rdf:resource="http://oiled.man.example.net/test#r"/>
    <owl:maxCardinality rdf:datatype="/2001/XMLSchema#nonNegativeInteger"
    >1</owl:maxCardinality>
   </owl:Restriction>
  </owl:intersectionOf>
 </owl:Class>
 <owl:Class rdf:ID="C.3">
  <owl:equivalentClass>
   <owl:Restriction>
    <owl:onProperty rdf:resource="#P.3"/>
    <owl:cardinality rdf:datatype="/2001/XMLSchema#unsignedByte"
    >0</owl:cardinality>
   </owl:Restriction>
  </owl:equivalentClass>
  <owl:intersectionOf rdf:parseType="Collection">
   <owl:Class rdf:about="http://oiled.man.example.net/test#p4.comp"/>
   <owl:Class rdf:about="http://oiled.man.example.net/test#p5.comp"/>
  </owl:intersectionOf>
 </owl:Class>
 <owl:Class rdf:ID="C.2">
  <owl:equivalentClass>
   <owl:Restriction>
    <owl:onProperty rdf:resource="#P.2"/>
    <owl:cardinality rdf:datatype="/2001/XMLSchema#short"
    >0</owl:cardinality>
   </owl:Restriction>
  </owl:equivalentClass>
  <owl:intersectionOf rdf:parseType="Collection">
   <owl:Class rdf:about="http://oiled.man.example.net/test#p3.comp"/>
   <owl:Class rdf:about="http://oiled.man.example.net/test#p4.comp"/>
   <owl:Class rdf:about="http://oiled.man.example.net/test#p5.comp"/>
  </owl:intersectionOf>
 </owl:Class>
 <owl:Class rdf:ID="C.1">
  <owl:equivalentClass>
   <owl:Restriction>
    <owl:onProperty rdf:resource="#P.1"/>
    <owl:minCardinality rdf:datatype="/2001/XMLSchema#int"
    >1</owl:minCardinality>
   </owl:Restriction>
  </owl:equivalentClass>
  <owl:intersectionOf rdf:parseType="Collection">
   <owl:Class rdf:about="http://oiled.man.example.net/test#p2.comp"/>
   <owl:Class rdf:about="http://oiled.man.example.net/test#p3.comp"/>
   <owl:Class rdf:about="http://oiled.man.example.net/test#p4.comp"/>
   <owl:Class rdf:about="http://oiled.man.example.net/test#p5.comp"/>
  </owl:intersectionOf>
 </owl:Class>
 <owl:Class rdf:about="http://oiled.man.example.net/test#p5">
  <owl:equivalentClass>
   <owl:Restriction>
    <owl:onProperty rdf:resource="#P.4"/>
    <owl:cardinality rdf:datatype="/2001/XMLSchema#nonNegativeInteger"
    >0</owl:cardinality>
   </owl:Restriction>
  </owl:equivalentClass>
 </owl:Class>
 <owl:Class rdf:about="http://oiled.man.example.net/test#p4">
  <rdfs:subClassOf rdf:resource="http://oiled.man.example.net/test#p5.comp"/>
  <owl:equivalentClass>
   <owl:Restriction>
    <owl:onProperty rdf:resource="#P.7"/>
    <owl:cardinality rdf:datatype="/2001/XMLSchema#integer"
    >0</owl:cardinality>
   </owl:Restriction>
  </owl:equivalentClass>
 </owl:Class>
 <owl:Class rdf:about="http://oiled.man.example.net/test#p3">
  <rdfs:subClassOf rdf:resource="#C.3"/>
  <owl:equivalentClass>
   <owl:Restriction>
    <owl:onProperty rdf:resource="#P.6"/>
    <owl:minCardinality rdf:datatype="/2001/XMLSchema#byte"
    >1</owl:minCardinality>
   </owl:Restriction>
  </owl:equivalentClass>
 </owl:Class>
 <owl:Class rdf:about="http://oiled.man.example.net/test#p2">
  <rdfs:subClassOf rdf:resource="#C.2"/>
  <owl:equivalentClass>
   <owl:Restriction>
    <owl:onProperty rdf:resource="#P.5"/>
    <owl:minCardinality rdf:datatype="/2001/XMLSchema#decimal"
    >1</owl:minCardinality>
   </owl:Restriction>
  </owl:equivalentClass>
 </owl:Class>
 <owl:Class rdf:about="http://oiled.man.example.net/test#p1">
  <rdfs:subClassOf rdf:resource="#C.1"/>
 </owl:Class>
 <owl:ObjectProperty rdf:about="http://oiled.man.example.net/test#invR">
  <owl:inverseOf rdf:resource="http://oiled.man.example.net/test#r"/>
 </owl:ObjectProperty>
 <oiled:Unsatisfiable/>
</rdf:RDF>
<description-logic/inconsistent608> rdf:type owl:Ontology .
oiled:p2.comp rdf:type owl:Class .
_:a rdf:type owl:Restriction .
first:P.5 rdf:type owl:DatatypeProperty .
_:a owl:onProperty first:P.5 .
_:a owl:cardinality "0"^^xsd:decimal  .
oiled:p2.comp owl:equivalentClass _:a .
oiled:p3.comp rdf:type owl:Class .
_:c rdf:type owl:Restriction .
first:P.6 rdf:type owl:ObjectProperty .
_:c owl:onProperty first:P.6 .
_:c owl:maxCardinality "0"^^xsd:byte  .
oiled:p3.comp owl:equivalentClass _:c .
oiled:p4.comp rdf:type owl:Class .
_:e rdf:type owl:Restriction .
first:P.7 rdf:type owl:DatatypeProperty .
_:e owl:onProperty first:P.7 .
_:e owl:minCardinality "1"^^xsd:integer  .
oiled:p4.comp owl:equivalentClass _:e .
oiled:p5.comp rdf:type owl:Class .
_:g rdf:type owl:Restriction .
first:P.4 rdf:type owl:ObjectProperty .
_:g owl:onProperty first:P.4 .
_:g owl:minCardinality "1"^^xsd:nonNegativeInteger  .
oiled:p5.comp owl:equivalentClass _:g .
first:C.1.comp rdf:type owl:Class .
_:i rdf:type owl:Restriction .
first:P.1 rdf:type owl:DatatypeProperty .
_:i owl:onProperty first:P.1 .
_:i owl:maxCardinality "0"^^xsd:int  .
first:C.1.comp owl:equivalentClass _:i .
first:C.2.comp rdf:type owl:Class .
_:k rdf:type owl:Restriction .
first:P.2 rdf:type owl:ObjectProperty .
_:k owl:onProperty first:P.2 .
_:k owl:minCardinality "1"^^xsd:short  .
first:C.2.comp owl:equivalentClass _:k .
oiled:Unsatisfiable rdf:type owl:Class .
oiled:p2 rdf:type owl:Class .
_:m rdf:type owl:Restriction .
oiled:invR rdf:type owl:ObjectProperty .
_:m owl:onProperty oiled:invR .
first:A.14 rdf:type owl:Class .
_:m owl:someValuesFrom first:A.14 .
_:o rdf:first _:m .
_:o rdf:rest rdf:nil .
_:q rdf:first oiled:p2 .
_:q rdf:rest _:o .
oiled:Unsatisfiable owl:intersectionOf _:q .
first:C.3.comp rdf:type owl:Class .
_:s rdf:type owl:Restriction .
first:P.3 rdf:type owl:DatatypeProperty .
_:s owl:onProperty first:P.3 .
_:s owl:minCardinality "1"^^xsd:unsignedByte  .
first:C.3.comp owl:equivalentClass _:s .
first:A.14 rdf:type owl:Class .
_:u rdf:type owl:Restriction .
oiled:r rdf:type owl:ObjectProperty .
_:u owl:onProperty oiled:r .
oiled:p1 rdf:type owl:Class .
_:u owl:someValuesFrom oiled:p1 .
_:w rdf:type owl:Restriction .
_:w owl:onProperty oiled:r .
_:w owl:maxCardinality "1"^^xsd:nonNegativeInteger  .
_:y rdf:first _:w .
_:y rdf:rest rdf:nil .
_:a1 rdf:first _:u .
_:a1 rdf:rest _:y .
first:A.14 owl:intersectionOf _:a1 .
first:C.3 rdf:type owl:Class .
_:c1 rdf:type owl:Restriction .
_:c1 owl:onProperty first:P.3 .
_:c1 owl:cardinality "0"^^xsd:unsignedByte  .
first:C.3 owl:equivalentClass _:c1 .
oiled:p4.comp rdf:type owl:Class .
oiled:p5.comp rdf:type owl:Class .
_:e1 rdf:first oiled:p5.comp .
_:e1 rdf:rest rdf:nil .
_:g1 rdf:first oiled:p4.comp .
_:g1 rdf:rest _:e1 .
first:C.3 owl:intersectionOf _:g1 .
first:C.2 rdf:type owl:Class .
_:i1 rdf:type owl:Restriction .
_:i1 owl:onProperty first:P.2 .
_:i1 owl:cardinality "0"^^xsd:short  .
first:C.2 owl:equivalentClass _:i1 .
oiled:p3.comp rdf:type owl:Class .
oiled:p4.comp rdf:type owl:Class .
oiled:p5.comp rdf:type owl:Class .
_:k1 rdf:first oiled:p5.comp .
_:k1 rdf:rest rdf:nil .
_:m1 rdf:first oiled:p4.comp .
_:m1 rdf:rest _:k1 .
_:o1 rdf:first oiled:p3.comp .
_:o1 rdf:rest _:m1 .
first:C.2 owl:intersectionOf _:o1 .
first:C.1 rdf:type owl:Class .
_:q1 rdf:type owl:Restriction .
_:q1 owl:onProperty first:P.1 .
_:q1 owl:minCardinality "1"^^xsd:int  .
first:C.1 owl:equivalentClass _:q1 .
oiled:p2.comp rdf:type owl:Class .
oiled:p3.comp rdf:type owl:Class .
oiled:p4.comp rdf:type owl:Class .
oiled:p5.comp rdf:type owl:Class .
_:s1 rdf:first oiled:p5.comp .
_:s1 rdf:rest rdf:nil .
_:u1 rdf:first oiled:p4.comp .
_:u1 rdf:rest _:s1 .
_:w1 rdf:first oiled:p3.comp .
_:w1 rdf:rest _:u1 .
_:y1 rdf:first oiled:p2.comp .
_:y1 rdf:rest _:w1 .
first:C.1 owl:intersectionOf _:y1 .
oiled:p5 rdf:type owl:Class .
_:a2 rdf:type owl:Restriction .
_:a2 owl:onProperty first:P.4 .
_:a2 owl:cardinality "0"^^xsd:nonNegativeInteger  .
oiled:p5 owl:equivalentClass _:a2 .
oiled:p4 rdf:type owl:Class .
oiled:p4 rdfs:subClassOf oiled:p5.comp .
_:c2 rdf:type owl:Restriction .
_:c2 owl:onProperty first:P.7 .
_:c2 owl:cardinality "0"^^xsd:integer  .
oiled:p4 owl:equivalentClass _:c2 .
oiled:p3 rdf:type owl:Class .
oiled:p3 rdfs:subClassOf first:C.3 .
_:e2 rdf:type owl:Restriction .
_:e2 owl:onProperty first:P.6 .
_:e2 owl:minCardinality "1"^^xsd:byte  .
oiled:p3 owl:equivalentClass _:e2 .
oiled:p2 rdf:type owl:Class .
oiled:p2 rdfs:subClassOf first:C.2 .
_:g2 rdf:type owl:Restriction .
_:g2 owl:onProperty first:P.5 .
_:g2 owl:minCardinality "1"^^xsd:decimal  .
oiled:p2 owl:equivalentClass _:g2 .
oiled:p1 rdf:type owl:Class .
oiled:p1 rdfs:subClassOf first:C.1 .
oiled:invR rdf:type owl:ObjectProperty .
oiled:invR owl:inverseOf oiled:r .
_:i2 rdf:type oiled:Unsatisfiable .

Lite FullConsistent document.609
Description: (informative) <description-logic/Manifest609#test>
DL Test: t10.1
N3 format is informative.
LiteConsistent: <description-logic/consistent609>
<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/consistent609">
 <owl:Ontology rdf:about=""/>
 <owl:Class rdf:about="http://oiled.man.example.net/test#Satisfiable">
  <owl:intersectionOf rdf:parseType="Collection">
   <owl:Restriction>
    <owl:onProperty>
     <owl:ObjectProperty rdf:about="http://oiled.man.example.net/test#f"/>
    </owl:onProperty>
    <owl:someValuesFrom>
     <owl:Class rdf:about="http://oiled.man.example.net/test#p"/>
    </owl:someValuesFrom>
   </owl:Restriction>
   <owl:Restriction>
    <owl:onProperty>
     <owl:ObjectProperty rdf:about="http://oiled.man.example.net/test#f1"/>
    </owl:onProperty>
    <owl:someValuesFrom>
     <owl:Class rdf:about="http://oiled.man.example.net/test#p.comp"/>
    </owl:someValuesFrom>
   </owl:Restriction>
  </owl:intersectionOf>
 </owl:Class>
 <owl:Class rdf:about="http://oiled.man.example.net/test#p.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#p">
  <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:ObjectProperty rdf:about="http://oiled.man.example.net/test#invF1">
  <owl:inverseOf>
   <owl:ObjectProperty rdf:about="http://oiled.man.example.net/test#f1"/>
  </owl:inverseOf>
 </owl:ObjectProperty>
 <owl:ObjectProperty rdf:about="http://oiled.man.example.net/test#f1">
  <rdf:type rdf:resource="/2002/07/owl#FunctionalProperty"/>
 </owl:ObjectProperty>
 <owl:ObjectProperty rdf:about="http://oiled.man.example.net/test#f">
  <rdf:type rdf:resource="/2002/07/owl#FunctionalProperty"/>
 </owl:ObjectProperty>
 <owl:ObjectProperty rdf:about="http://oiled.man.example.net/test#invF">
  <owl:inverseOf rdf:resource="http://oiled.man.example.net/test#f"/>
 </owl:ObjectProperty>
 <owl:ObjectProperty rdf:about="http://oiled.man.example.net/test#s">
  <rdfs:subPropertyOf rdf:resource="http://oiled.man.example.net/test#f"/>
  <rdfs:subPropertyOf rdf:resource="http://oiled.man.example.net/test#f1"/>
  <rdf:type rdf:resource="/2002/07/owl#FunctionalProperty"/>
 </owl:ObjectProperty>
 <owl:ObjectProperty rdf:about="http://oiled.man.example.net/test#invS">
  <owl:inverseOf rdf:resource="http://oiled.man.example.net/test#s"/>
 </owl:ObjectProperty>
 <oiled:Satisfiable/>
</rdf:RDF>
<description-logic/consistent609> rdf:type owl:Ontology .
oiled:Satisfiable rdf:type owl:Class .
_:a rdf:type owl:Restriction .
oiled:f rdf:type owl:ObjectProperty .
_:a owl:onProperty oiled:f .
oiled:p rdf:type owl:Class .
_:a owl:someValuesFrom oiled:p .
_:c rdf:type owl:Restriction .
oiled:f1 rdf:type owl:ObjectProperty .
_:c owl:onProperty oiled:f1 .
oiled:p.comp rdf:type owl:Class .
_:c owl:someValuesFrom oiled:p.comp .
_:e rdf:first _:c .
_:e rdf:rest rdf:nil .
_:g rdf:first _:a .
_:g rdf:rest _:e .
oiled:Satisfiable owl:intersectionOf _:g .
oiled:p.comp rdf:type owl:Class .
_:i rdf:type owl:Restriction .
first:P.1 rdf:type owl:DatatypeProperty .
_:i owl:onProperty first:P.1 .
_:i owl:minCardinality "1"^^xsd:int  .
oiled:p.comp owl:equivalentClass _:i .
oiled:p rdf:type owl:Class .
_:k rdf:type owl:Restriction .
_:k owl:onProperty first:P.1 .
_:k owl:maxCardinality "0"^^xsd:int  .
oiled:p owl:equivalentClass _:k .
oiled:invF1 rdf:type owl:ObjectProperty .
oiled:f1 rdf:type owl:ObjectProperty .
oiled:invF1 owl:inverseOf oiled:f1 .
oiled:f1 rdf:type owl:ObjectProperty .
oiled:f1 rdf:type owl:FunctionalProperty .
oiled:f rdf:type owl:ObjectProperty .
oiled:f rdf:type owl:FunctionalProperty .
oiled:invF rdf:type owl:ObjectProperty .
oiled:invF owl:inverseOf oiled:f .
oiled:s rdf:type owl:ObjectProperty .
oiled:s rdfs:subPropertyOf oiled:f .
oiled:s rdfs:subPropertyOf oiled:f1 .
oiled:s rdf:type owl:FunctionalProperty .
oiled:invS rdf:type owl:ObjectProperty .
oiled:invS owl:inverseOf oiled:s .
_:m rdf:type oiled:Satisfiable .

Lite FullInconsistent document.610
Description: (informative) <description-logic/Manifest610#test>
DL Test: t10.2
N3 format is informative.
LiteInconsistent: <description-logic/inconsistent610>
<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/inconsistent610">
 <owl:Ontology rdf:about=""/>
 <owl:Class rdf:ID="A.2">
  <owl:intersectionOf rdf:parseType="Collection">
   <owl:Restriction>
    <owl:onProperty>
     <owl:ObjectProperty rdf:about="http://oiled.man.example.net/test#invS"/>
    </owl:onProperty>
    <owl:allValuesFrom>
     <owl:Class rdf:about="http://oiled.man.example.net/test#p"/>
    </owl:allValuesFrom>
   </owl:Restriction>
   <owl:Restriction>
    <owl:onProperty>
     <owl:ObjectProperty rdf:about="http://oiled.man.example.net/test#invF"/>
    </owl:onProperty>
    <owl:allValuesFrom>
     <owl:Class rdf:about="#V.3"/>
    </owl:allValuesFrom>
   </owl:Restriction>
  </owl:intersectionOf>
 </owl:Class>
 <owl:Class rdf:about="http://oiled.man.example.net/test#p.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">
  <owl:intersectionOf rdf:parseType="Collection">
   <owl:Class rdf:about="http://oiled.man.example.net/test#p.comp"/>
   <owl:Restriction>
    <owl:onProperty>
     <owl:ObjectProperty rdf:about="http://oiled.man.example.net/test#f"/>
    </owl:onProperty>
    <owl:someValuesFrom rdf:resource="#A.2"/>
   </owl:Restriction>
  </owl:intersectionOf>
 </owl:Class>
 <owl:Class rdf:ID="V.3">
  <owl:equivalentClass>
   <owl:Restriction>
    <owl:onProperty>
     <owl:ObjectProperty rdf:about="http://oiled.man.example.net/test#s"/>
    </owl:onProperty>
    <owl:someValuesFrom>
     <owl:Class rdf:about="http://oiled.man.example.net/test#p"/>
    </owl:someValuesFrom>
   </owl:Restriction>
  </owl:equivalentClass>
 </owl:Class>
 <owl:Class rdf:about="http://oiled.man.example.net/test#p">
  <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:ObjectProperty rdf:about="http://oiled.man.example.net/test#invF1">
  <owl:inverseOf>
   <owl:ObjectProperty rdf:about="http://oiled.man.example.net/test#f1"/>
  </owl:inverseOf>
 </owl:ObjectProperty>
 <owl:ObjectProperty rdf:about="http://oiled.man.example.net/test#f1">
  <rdf:type rdf:resource="/2002/07/owl#FunctionalProperty"/>
 </owl:ObjectProperty>
 <owl:ObjectProperty rdf:about="http://oiled.man.example.net/test#f">
  <rdf:type rdf:resource="/2002/07/owl#FunctionalProperty"/>
 </owl:ObjectProperty>
 <owl:ObjectProperty rdf:about="http://oiled.man.example.net/test#invF">
  <owl:inverseOf rdf:resource="http://oiled.man.example.net/test#f"/>
 </owl:ObjectProperty>
 <owl:ObjectProperty rdf:about="http://oiled.man.example.net/test#s">
  <rdfs:subPropertyOf rdf:resource="http://oiled.man.example.net/test#f"/>
  <rdfs:subPropertyOf rdf:resource="http://oiled.man.example.net/test#f1"/>
  <rdf:type rdf:resource="/2002/07/owl#FunctionalProperty"/>
 </owl:ObjectProperty>
 <owl:ObjectProperty rdf:about="http://oiled.man.example.net/test#invS">
  <owl:inverseOf rdf:resource="http://oiled.man.example.net/test#s"/>
 </owl:ObjectProperty>
 <oiled:Unsatisfiable/>
</rdf:RDF>
<description-logic/inconsistent610> rdf:type owl:Ontology .
first:A.2 rdf:type owl:Class .
_:a rdf:type owl:Restriction .
oiled:invS rdf:type owl:ObjectProperty .
_:a owl:onProperty oiled:invS .
oiled:p rdf:type owl:Class .
_:a owl:allValuesFrom oiled:p .
_:c rdf:type owl:Restriction .
oiled:invF rdf:type owl:ObjectProperty .
_:c owl:onProperty oiled:invF .
first:V.3 rdf:type owl:Class .
_:c owl:allValuesFrom first:V.3 .
_:e rdf:first _:c .
_:e rdf:rest rdf:nil .
_:g rdf:first _:a .
_:g rdf:rest _:e .
first:A.2 owl:intersectionOf _:g .
oiled:p.comp rdf:type owl:Class .
_:i rdf:type owl:Restriction .
first:P.1 rdf:type owl:DatatypeProperty .
_:i owl:onProperty first:P.1 .
_:i owl:minCardinality "1"^^xsd:int  .
oiled:p.comp owl:equivalentClass _:i .
oiled:Unsatisfiable rdf:type owl:Class .
oiled:p.comp rdf:type owl:Class .
_:k rdf:type owl:Restriction .
oiled:f rdf:type owl:ObjectProperty .
_:k owl:onProperty oiled:f .
_:k owl:someValuesFrom first:A.2 .
_:m rdf:first _:k .
_:m rdf:rest rdf:nil .
_:o rdf:first oiled:p.comp .
_:o rdf:rest _:m .
oiled:Unsatisfiable owl:intersectionOf _:o .
first:V.3 rdf:type owl:Class .
_:q rdf:type owl:Restriction .
oiled:s rdf:type owl:ObjectProperty .
_:q owl:onProperty oiled:s .
oiled:p rdf:type owl:Class .
_:q owl:someValuesFrom oiled:p .
first:V.3 owl:equivalentClass _:q .
oiled:p rdf:type owl:Class .
_:s rdf:type owl:Restriction .
_:s owl:onProperty first:P.1 .
_:s owl:maxCardinality "0"^^xsd:int  .
oiled:p owl:equivalentClass _:s .
oiled:invF1 rdf:type owl:ObjectProperty .
oiled:f1 rdf:type owl:ObjectProperty .
oiled:invF1 owl:inverseOf oiled:f1 .
oiled:f1 rdf:type owl:ObjectProperty .
oiled:f1 rdf:type owl:FunctionalProperty .
oiled:f rdf:type owl:ObjectProperty .
oiled:f rdf:type owl:FunctionalProperty .
oiled:invF rdf:type owl:ObjectProperty .
oiled:invF owl:inverseOf oiled:f .
oiled:s rdf:type owl:ObjectProperty .
oiled:s rdfs:subPropertyOf oiled:f .
oiled:s rdfs:subPropertyOf oiled:f1 .
oiled:s rdf:type owl:FunctionalProperty .
oiled:invS rdf:type owl:ObjectProperty .
oiled:invS owl:inverseOf oiled:s .
_:u rdf:type oiled:Unsatisfiable .

Lite FullInconsistent document.611
Description: (informative) <description-logic/Manifest611#test>
DL Test: t10.3
N3 format is informative.
LiteInconsistent: <description-logic/inconsistent611>
<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/inconsistent611">
 <owl:Ontology rdf:about=""/>
 <owl:Class rdf:ID="A.2">
  <owl:intersectionOf rdf:parseType="Collection">
   <owl:Class rdf:about="http://oiled.man.example.net/test#p"/>
   <owl:Restriction>
    <owl:onProperty>
     <owl:ObjectProperty rdf:about="http://oiled.man.example.net/test#invS"/>
    </owl:onProperty>
    <owl:someValuesFrom>
     <owl:Class rdf:about="http://oiled.man.example.net/test#p"/>
    </owl:someValuesFrom>
   </owl:Restriction>
  </owl:intersectionOf>
 </owl:Class>
 <owl:Class rdf:about="http://oiled.man.example.net/test#p.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">
  <owl:intersectionOf rdf:parseType="Collection">
   <owl:Restriction>
    <owl:onProperty>
     <owl:ObjectProperty rdf:about="http://oiled.man.example.net/test#s"/>
    </owl:onProperty>
    <owl:allValuesFrom rdf:resource="http://oiled.man.example.net/test#p.comp"/>
   </owl:Restriction>
   <owl:Restriction>
    <owl:onProperty>
     <owl:ObjectProperty rdf:about="http://oiled.man.example.net/test#s"/>
    </owl:onProperty>
    <owl:someValuesFrom rdf:resource="#A.2"/>
   </owl:Restriction>
  </owl:intersectionOf>
 </owl:Class>
 <owl:Class rdf:about="http://oiled.man.example.net/test#p">
  <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:ObjectProperty rdf:about="http://oiled.man.example.net/test#invF1">
  <owl:inverseOf>
   <owl:ObjectProperty rdf:about="http://oiled.man.example.net/test#f1"/>
  </owl:inverseOf>
 </owl:ObjectProperty>
 <owl:ObjectProperty rdf:about="http://oiled.man.example.net/test#f1">
  <rdf:type rdf:resource="/2002/07/owl#FunctionalProperty"/>
 </owl:ObjectProperty>
 <owl:ObjectProperty rdf:about="http://oiled.man.example.net/test#f">
  <rdf:type rdf:resource="/2002/07/owl#FunctionalProperty"/>
 </owl:ObjectProperty>
 <owl:ObjectProperty rdf:about="http://oiled.man.example.net/test#invF">
  <owl:inverseOf rdf:resource="http://oiled.man.example.net/test#f"/>
 </owl:ObjectProperty>
 <owl:ObjectProperty rdf:about="http://oiled.man.example.net/test#s">
  <rdfs:subPropertyOf rdf:resource="http://oiled.man.example.net/test#f"/>
  <rdfs:subPropertyOf rdf:resource="http://oiled.man.example.net/test#f1"/>
  <rdf:type rdf:resource="/2002/07/owl#FunctionalProperty"/>
 </owl:ObjectProperty>
 <owl:ObjectProperty rdf:about="http://oiled.man.example.net/test#invS">
  <owl:inverseOf rdf:resource="http://oiled.man.example.net/test#s"/>
 </owl:ObjectProperty>
 <oiled:Unsatisfiable/>
</rdf:RDF>
<description-logic/inconsistent611> rdf:type owl:Ontology .
first:A.2 rdf:type owl:Class .
oiled:p rdf:type owl:Class .
_:a rdf:type owl:Restriction .
oiled:invS rdf:type owl:ObjectProperty .
_:a owl:onProperty oiled:invS .
oiled:p rdf:type owl:Class .
_:a owl:someValuesFrom oiled:p .
_:c rdf:first _:a .
_:c rdf:rest rdf:nil .
_:e rdf:first oiled:p .
_:e rdf:rest _:c .
first:A.2 owl:intersectionOf _:e .
oiled:p.comp rdf:type owl:Class .
_:g rdf:type owl:Restriction .
first:P.1 rdf:type owl:DatatypeProperty .
_:g owl:onProperty first:P.1 .
_:g owl:minCardinality "1"^^xsd:int  .
oiled:p.comp owl:equivalentClass _:g .
oiled:Unsatisfiable rdf:type owl:Class .
_:i rdf:type owl:Restriction .
oiled:s rdf:type owl:ObjectProperty .
_:i owl:onProperty oiled:s .
_:i owl:allValuesFrom oiled:p.comp .
_:k rdf:type owl:Restriction .
oiled:s rdf:type owl:ObjectProperty .
_:k owl:onProperty oiled:s .
_:k owl:someValuesFrom first:A.2 .
_:m rdf:first _:k .
_:m rdf:rest rdf:nil .
_:o rdf:first _:i .
_:o rdf:rest _:m .
oiled:Unsatisfiable owl:intersectionOf _:o .
oiled:p rdf:type owl:Class .
_:q rdf:type owl:Restriction .
_:q owl:onProperty first:P.1 .
_:q owl:maxCardinality "0"^^xsd:int  .
oiled:p owl:equivalentClass _:q .
oiled:invF1 rdf:type owl:ObjectProperty .
oiled:f1 rdf:type owl:ObjectProperty .
oiled:invF1 owl:inverseOf oiled:f1 .
oiled:f1 rdf:type owl:ObjectProperty .
oiled:f1 rdf:type owl:FunctionalProperty .
oiled:f rdf:type owl:ObjectProperty .
oiled:f rdf:type owl:FunctionalProperty .
oiled:invF rdf:type owl:ObjectProperty .
oiled:invF owl:inverseOf oiled:f .
oiled:s rdf:type owl:ObjectProperty .
oiled:s rdfs:subPropertyOf oiled:f .
oiled:s rdfs:subPropertyOf oiled:f1 .
oiled:s rdf:type owl:FunctionalProperty .
oiled:invS rdf:type owl:ObjectProperty .
oiled:invS owl:inverseOf oiled:s .
_:s rdf:type oiled:Unsatisfiable .

Lite FullInconsistent document.612
Description: (informative) <description-logic/Manifest612#test>
DL Test: t10.4
N3 format is informative.
LiteInconsistent: <description-logic/inconsistent612>
<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/inconsistent612">
 <owl:Ontology rdf:about=""/>
 <owl:Class rdf:about="http://oiled.man.example.net/test#p.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">
  <owl:intersectionOf rdf:parseType="Collection">
   <owl:Restriction>
    <owl:onProperty>
     <owl:ObjectProperty rdf:about="http://oiled.man.example.net/test#f"/>
    </owl:onProperty>
    <owl:someValuesFrom>
     <owl:Class rdf:about="http://oiled.man.example.net/test#p"/>
    </owl:someValuesFrom>
   </owl:Restriction>
   <owl:Restriction>
    <owl:onProperty>
     <owl:ObjectProperty rdf:about="http://oiled.man.example.net/test#s"/>
    </owl:onProperty>
    <owl:someValuesFrom>
     <owl:Class rdf:about="/2002/07/owl#Thing"/>
    </owl:someValuesFrom>
   </owl:Restriction>
   <owl:Restriction>
    <owl:onProperty>
     <owl:ObjectProperty rdf:about="http://oiled.man.example.net/test#f1"/>
    </owl:onProperty>
    <owl:someValuesFrom rdf:resource="http://oiled.man.example.net/test#p.comp"/>
   </owl:Restriction>
  </owl:intersectionOf>
 </owl:Class>
 <owl:Class rdf:about="http://oiled.man.example.net/test#p">
  <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:ObjectProperty rdf:about="http://oiled.man.example.net/test#invF1">
  <owl:inverseOf>
   <owl:ObjectProperty rdf:about="http://oiled.man.example.net/test#f1"/>
  </owl:inverseOf>
 </owl:ObjectProperty>
 <owl:ObjectProperty rdf:about="http://oiled.man.example.net/test#f1">
  <rdf:type rdf:resource="/2002/07/owl#FunctionalProperty"/>
 </owl:ObjectProperty>
 <owl:ObjectProperty rdf:about="http://oiled.man.example.net/test#f">
  <rdf:type rdf:resource="/2002/07/owl#FunctionalProperty"/>
 </owl:ObjectProperty>
 <owl:ObjectProperty rdf:about="http://oiled.man.example.net/test#invF">
  <owl:inverseOf rdf:resource="http://oiled.man.example.net/test#f"/>
 </owl:ObjectProperty>
 <owl:ObjectProperty rdf:about="http://oiled.man.example.net/test#s">
  <rdfs:subPropertyOf rdf:resource="http://oiled.man.example.net/test#f"/>
  <rdfs:subPropertyOf rdf:resource="http://oiled.man.example.net/test#f1"/>
  <rdf:type rdf:resource="/2002/07/owl#FunctionalProperty"/>
 </owl:ObjectProperty>
 <owl:ObjectProperty rdf:about="http://oiled.man.example.net/test#invS">
  <owl:inverseOf rdf:resource="http://oiled.man.example.net/test#s"/>
 </owl:ObjectProperty>
 <oiled:Unsatisfiable/>
</rdf:RDF>
<description-logic/inconsistent612> rdf:type owl:Ontology .
oiled:p.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:p.comp owl:equivalentClass _:a .
oiled:Unsatisfiable rdf:type owl:Class .
_:c rdf:type owl:Restriction .
oiled:f rdf:type owl:ObjectProperty .
_:c owl:onProperty oiled:f .
oiled:p rdf:type owl:Class .
_:c owl:someValuesFrom oiled:p .
_:e rdf:type owl:Restriction .
oiled:s rdf:type owl:ObjectProperty .
_:e owl:onProperty oiled:s .
owl:Thing rdf:type owl:Class .
_:e owl:someValuesFrom owl:Thing .
_:g rdf:type owl:Restriction .
oiled:f1 rdf:type owl:ObjectProperty .
_:g owl:onProperty oiled:f1 .
_:g owl:someValuesFrom oiled:p.comp .
_:i rdf:first _:g .
_:i rdf:rest rdf:nil .
_:k rdf:first _:e .
_:k rdf:rest _:i .
_:m rdf:first _:c .
_:m rdf:rest _:k .
oiled:Unsatisfiable owl:intersectionOf _:m .
oiled:p rdf:type owl:Class .
_:o rdf:type owl:Restriction .
_:o owl:onProperty first:P.1 .
_:o owl:maxCardinality "0"^^xsd:int  .
oiled:p owl:equivalentClass _:o .
oiled:invF1 rdf:type owl:ObjectProperty .
oiled:f1 rdf:type owl:ObjectProperty .
oiled:invF1 owl:inverseOf oiled:f1 .
oiled:f1 rdf:type owl:ObjectProperty .
oiled:f1 rdf:type owl:FunctionalProperty .
oiled:f rdf:type owl:ObjectProperty .
oiled:f rdf:type owl:FunctionalProperty .
oiled:invF rdf:type owl:ObjectProperty .
oiled:invF owl:inverseOf oiled:f .
oiled:s rdf:type owl:ObjectProperty .
oiled:s rdfs:subPropertyOf oiled:f .
oiled:s rdfs:subPropertyOf oiled:f1 .
oiled:s rdf:type owl:FunctionalProperty .
oiled:invS rdf:type owl:ObjectProperty .
oiled:invS owl:inverseOf oiled:s .
_:q rdf:type oiled:Unsatisfiable .

Lite FullInconsistent document.613
Description: (informative) <description-logic/Manifest613#test>
DL Test: t10.5
N3 format is informative.
LiteInconsistent: <description-logic/inconsistent613>
<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/inconsistent613">
 <owl:Ontology rdf:about=""/>
 <owl:Class rdf:about="http://oiled.man.example.net/test#p.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:ID="V.3">
  <owl:equivalentClass>
   <owl:Restriction>
    <owl:onProperty>
     <owl:ObjectProperty rdf:about="http://oiled.man.example.net/test#s"/>
    </owl:onProperty>
    <owl:someValuesFrom>
     <owl:Class rdf:about="/2002/07/owl#Thing"/>
    </owl:someValuesFrom>
   </owl:Restriction>
  </owl:equivalentClass>
 </owl:Class>
 <owl:Class rdf:about="http://oiled.man.example.net/test#Unsatisfiable">
  <owl:intersectionOf rdf:parseType="Collection">
   <owl:Restriction>
    <owl:onProperty>
     <owl:ObjectProperty rdf:about="http://oiled.man.example.net/test#f"/>
    </owl:onProperty>
    <owl:someValuesFrom>
     <owl:Class rdf:about="http://oiled.man.example.net/test#p"/>
    </owl:someValuesFrom>
   </owl:Restriction>
   <owl:Restriction>
    <owl:onProperty>
     <owl:ObjectProperty rdf:about="http://oiled.man.example.net/test#f1"/>
    </owl:onProperty>
    <owl:someValuesFrom>
     <owl:Class rdf:about="#A.2"/>
    </owl:someValuesFrom>
   </owl:Restriction>
  </owl:intersectionOf>
 </owl:Class>
 <owl:Class rdf:about="http://oiled.man.example.net/test#p">
  <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:ID="A.2">
  <owl:intersectionOf rdf:parseType="Collection">
   <owl:Class rdf:about="http://oiled.man.example.net/test#p.comp"/>
   <owl:Restriction>
    <owl:onProperty>
     <owl:ObjectProperty rdf:about="http://oiled.man.example.net/test#invF1"/>
    </owl:onProperty>
    <owl:allValuesFrom rdf:resource="#V.3"/>
   </owl:Restriction>
  </owl:intersectionOf>
 </owl:Class>
 <owl:ObjectProperty rdf:about="http://oiled.man.example.net/test#invF1">
  <owl:inverseOf>
   <owl:ObjectProperty rdf:about="http://oiled.man.example.net/test#f1"/>
  </owl:inverseOf>
 </owl:ObjectProperty>
 <owl:ObjectProperty rdf:about="http://oiled.man.example.net/test#f1">
  <rdf:type rdf:resource="/2002/07/owl#FunctionalProperty"/>
 </owl:ObjectProperty>
 <owl:ObjectProperty rdf:about="http://oiled.man.example.net/test#f">
  <rdf:type rdf:resource="/2002/07/owl#FunctionalProperty"/>
 </owl:ObjectProperty>
 <owl:ObjectProperty rdf:about="http://oiled.man.example.net/test#invF">
  <owl:inverseOf rdf:resource="http://oiled.man.example.net/test#f"/>
 </owl:ObjectProperty>
 <owl:ObjectProperty rdf:about="http://oiled.man.example.net/test#s">
  <rdfs:subPropertyOf rdf:resource="http://oiled.man.example.net/test#f"/>
  <rdfs:subPropertyOf rdf:resource="http://oiled.man.example.net/test#f1"/>
  <rdf:type rdf:resource="/2002/07/owl#FunctionalProperty"/>
 </owl:ObjectProperty>
 <owl:ObjectProperty rdf:about="http://oiled.man.example.net/test#invS">
  <owl:inverseOf rdf:resource="http://oiled.man.example.net/test#s"/>
 </owl:ObjectProperty>
 <oiled:Unsatisfiable/>
</rdf:RDF>
<description-logic/inconsistent613> rdf:type owl:Ontology .
oiled:p.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:p.comp owl:equivalentClass _:a .
first:V.3 rdf:type owl:Class .
_:c rdf:type owl:Restriction .
oiled:s rdf:type owl:ObjectProperty .
_:c owl:onProperty oiled:s .
owl:Thing rdf:type owl:Class .
_:c owl:someValuesFrom owl:Thing .
first:V.3 owl:equivalentClass _:c .
oiled:Unsatisfiable rdf:type owl:Class .
_:e rdf:type owl:Restriction .
oiled:f rdf:type owl:ObjectProperty .
_:e owl:onProperty oiled:f .
oiled:p rdf:type owl:Class .
_:e owl:someValuesFrom oiled:p .
_:g rdf:type owl:Restriction .
oiled:f1 rdf:type owl:ObjectProperty .
_:g owl:onProperty oiled:f1 .
first:A.2 rdf:type owl:Class .
_:g owl:someValuesFrom first:A.2 .
_:i rdf:first _:g .
_:i rdf:rest rdf:nil .
_:k rdf:first _:e .
_:k rdf:rest _:i .
oiled:Unsatisfiable owl:intersectionOf _:k .
oiled:p rdf:type owl:Class .
_:m rdf:type owl:Restriction .
_:m owl:onProperty first:P.1 .
_:m owl:maxCardinality "0"^^xsd:int  .
oiled:p owl:equivalentClass _:m .
first:A.2 rdf:type owl:Class .
oiled:p.comp rdf:type owl:Class .
_:o rdf:type owl:Restriction .
oiled:invF1 rdf:type owl:ObjectProperty .
_:o owl:onProperty oiled:invF1 .
_:o owl:allValuesFrom first:V.3 .
_:q rdf:first _:o .
_:q rdf:rest rdf:nil .
_:s rdf:first oiled:p.comp .
_:s rdf:rest _:q .
first:A.2 owl:intersectionOf _:s .
oiled:invF1 rdf:type owl:ObjectProperty .
oiled:f1 rdf:type owl:ObjectProperty .
oiled:invF1 owl:inverseOf oiled:f1 .
oiled:f1 rdf:type owl:ObjectProperty .
oiled:f1 rdf:type owl:FunctionalProperty .
oiled:f rdf:type owl:ObjectProperty .
oiled:f rdf:type owl:FunctionalProperty .
oiled:invF rdf:type owl:ObjectProperty .
oiled:invF owl:inverseOf oiled:f .
oiled:s rdf:type owl:ObjectProperty .
oiled:s rdfs:subPropertyOf oiled:f .
oiled:s rdfs:subPropertyOf oiled:f1 .
oiled:s rdf:type owl:FunctionalProperty .
oiled:invS rdf:type owl:ObjectProperty .
oiled:invS owl:inverseOf oiled:s .
_:u rdf:type oiled:Unsatisfiable .

Lite FullInconsistent document.614
Description: (informative) <description-logic/Manifest614#test>
DL Test: t11.1
N3 format is informative.
LiteInconsistent: <description-logic/inconsistent614>
<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/inconsistent614">
 <owl:Ontology rdf:about=""/>
 <owl:Class rdf:about="http://oiled.man.example.net/test#p.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:ID="V.2">
  <owl:equivalentClass>
   <owl:Restriction>
    <owl:onProperty>
     <owl:ObjectProperty rdf:about="http://oiled.man.example.net/test#invS"/>
    </owl:onProperty>
    <owl:allValuesFrom>
     <owl:Class rdf:about="http://oiled.man.example.net/test#p"/>
    </owl:allValuesFrom>
   </owl:Restriction>
  </owl:equivalentClass>
 </owl:Class>
 <owl:Class rdf:about="http://oiled.man.example.net/test#Unsatisfiable">
  <owl:intersectionOf rdf:parseType="Collection">
   <owl:Class rdf:about="http://oiled.man.example.net/test#p.comp"/>
   <owl:Restriction>
    <owl:onProperty>
     <owl:ObjectProperty rdf:about="http://oiled.man.example.net/test#r"/>
    </owl:onProperty>
    <owl:maxCardinality rdf:datatype="/2001/XMLSchema#nonNegativeInteger"
    >1</owl:maxCardinality>
   </owl:Restriction>
   <owl:Restriction>
    <owl:onProperty rdf:resource="http://oiled.man.example.net/test#r"/>
    <owl:someValuesFrom rdf:resource="#V.2"/>
   </owl:Restriction>
   <owl:Restriction>
    <owl:onProperty>
     <owl:ObjectProperty rdf:about="http://oiled.man.example.net/test#s"/>
    </owl:onProperty>
    <owl:someValuesFrom>
     <owl:Class rdf:about="http://oiled.man.example.net/test#p"/>
    </owl:someValuesFrom>
   </owl:Restriction>
  </owl:intersectionOf>
 </owl:Class>
 <owl:Class rdf:about="http://oiled.man.example.net/test#p">
  <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:ObjectProperty rdf:about="http://oiled.man.example.net/test#s">
  <rdfs:subPropertyOf rdf:resource="http://oiled.man.example.net/test#r"/>
 </owl:ObjectProperty>
 <owl:ObjectProperty rdf:about="http://oiled.man.example.net/test#invS">
  <owl:inverseOf rdf:resource="http://oiled.man.example.net/test#s"/>
 </owl:ObjectProperty>
 <oiled:Unsatisfiable/>
</rdf:RDF>
<description-logic/inconsistent614> rdf:type owl:Ontology .
oiled:p.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:p.comp owl:equivalentClass _:a .
first:V.2 rdf:type owl:Class .
_:c rdf:type owl:Restriction .
oiled:invS rdf:type owl:ObjectProperty .
_:c owl:onProperty oiled:invS .
oiled:p rdf:type owl:Class .
_:c owl:allValuesFrom oiled:p .
first:V.2 owl:equivalentClass _:c .
oiled:Unsatisfiable rdf:type owl:Class .
oiled:p.comp rdf:type owl:Class .
_:e rdf:type owl:Restriction .
oiled:r rdf:type owl:ObjectProperty .
_:e owl:onProperty oiled:r .
_:e owl:maxCardinality "1"^^xsd:nonNegativeInteger  .
_:g rdf:type owl:Restriction .
_:g owl:onProperty oiled:r .
_:g owl:someValuesFrom first:V.2 .
_:i rdf:type owl:Restriction .
oiled:s rdf:type owl:ObjectProperty .
_:i owl:onProperty oiled:s .
oiled:p rdf:type owl:Class .
_:i owl:someValuesFrom oiled:p .
_:k rdf:first _:i .
_:k rdf:rest rdf:nil .
_:m rdf:first _:g .
_:m rdf:rest _:k .
_:o rdf:first _:e .
_:o rdf:rest _:m .
_:q rdf:first oiled:p.comp .
_:q rdf:rest _:o .
oiled:Unsatisfiable owl:intersectionOf _:q .
oiled:p rdf:type owl:Class .
_:s rdf:type owl:Restriction .
_:s owl:onProperty first:P.1 .
_:s owl:maxCardinality "0"^^xsd:int  .
oiled:p owl:equivalentClass _:s .
oiled:s rdf:type owl:ObjectProperty .
oiled:s rdfs:subPropertyOf oiled:r .
oiled:invS rdf:type owl:ObjectProperty .
oiled:invS owl:inverseOf oiled:s .
_:u rdf:type oiled:Unsatisfiable .

Lite FullInconsistent document.615
Description: (informative) <description-logic/Manifest615#test>
DL Test: t12.1
N3 format is informative.
LiteInconsistent: <description-logic/inconsistent615>
<rdf:RDF
    xmlns:oiled="http://oiled.man.example.net/test#"
    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/description-logic/inconsistent615">
 <owl:Ontology rdf:about=""/>
 <owl:Class rdf:about="http://oiled.man.example.net/test#p.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#q.comp">
  <owl:equivalentClass>
   <owl:Restriction>
    <owl:onProperty>
     <owl:ObjectProperty rdf:ID="P.2"/>
    </owl:onProperty>
    <owl:cardinality rdf:datatype="/2001/XMLSchema#short"
    >0</owl:cardinality>
   </owl:Restriction>
  </owl:equivalentClass>
 </owl:Class>
 <owl:Class rdf:ID="V.5">
  <owl:equivalentClass>
   <owl:Restriction>
    <owl:onProperty>
     <owl:ObjectProperty rdf:about="http://oiled.man.example.net/test#s"/>
    </owl:onProperty>
    <owl:allValuesFrom>
     <owl:Class rdf:about="http://oiled.man.example.net/test#p"/>
    </owl:allValuesFrom>
   </owl:Restriction>
  </owl:equivalentClass>
 </owl:Class>
 <owl:Class rdf:about="http://oiled.man.example.net/test#Unsatisfiable">
  <owl:intersectionOf rdf:parseType="Collection">
   <owl:Restriction>
    <owl:onProperty rdf:resource="http://oiled.man.example.net/test#s"/>
    <owl:someValuesFrom>
     <owl:Class rdf:about="#A.3"/>
    </owl:someValuesFrom>
   </owl:Restriction>
   <owl:Restriction>
    <owl:onProperty>
     <owl:ObjectProperty rdf:about="http://oiled.man.example.net/test#r"/>
    </owl:onProperty>
    <owl:someValuesFrom>
     <owl:Class rdf:about="#A.4"/>
    </owl:someValuesFrom>
   </owl:Restriction>
  </owl:intersectionOf>
 </owl:Class>
 <owl:Class rdf:ID="A.4">
  <owl:intersectionOf rdf:parseType="Collection">
   <owl:Restriction>
    <owl:onProperty>
     <owl:ObjectProperty rdf:about="http://oiled.man.example.net/test#invR"/>
    </owl:onProperty>
    <owl:maxCardinality rdf:datatype="/2001/XMLSchema#nonNegativeInteger"
    >1</owl:maxCardinality>
   </owl:Restriction>
   <owl:Restriction>
    <owl:onProperty>
     <owl:ObjectProperty rdf:about="http://oiled.man.example.net/test#invR"/>
    </owl:onProperty>
    <owl:someValuesFrom rdf:resource="#V.5"/>
   </owl:Restriction>
  </owl:intersectionOf>
 </owl:Class>
 <owl:Class rdf:ID="A.3">
  <owl:intersectionOf rdf:parseType="Collection">
   <owl:Class rdf:about="http://oiled.man.example.net/test#p.comp"/>
   <owl:Class rdf:about="http://oiled.man.example.net/test#q.comp"/>
  </owl:intersectionOf>
 </owl:Class>
 <owl:Class rdf:about="http://oiled.man.example.net/test#q">
  <owl:equivalentClass>
   <owl:Restriction>
    <owl:onProperty rdf:resource="#P.2"/>
    <owl:minCardinality rdf:datatype="/2001/XMLSchema#short"
    >1</owl:minCardinality>
   </owl:Restriction>
  </owl:equivalentClass>
 </owl:Class>
 <owl:Class rdf:about="http://oiled.man.example.net/test#p">
  <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:ObjectProperty rdf:about="http://oiled.man.example.net/test#invR">
  <owl:inverseOf rdf:resource="http://oiled.man.example.net/test#r"/>
 </owl:ObjectProperty>
 <oiled:Unsatisfiable/>
</rdf:RDF>
<description-logic/inconsistent615> rdf:type owl:Ontology .
oiled:p.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:p.comp owl:equivalentClass _:a .
oiled:q.comp rdf:type owl:Class .
_:c rdf:type owl:Restriction .
first:P.2 rdf:type owl:ObjectProperty .
_:c owl:onProperty first:P.2 .
_:c owl:cardinality "0"^^xsd:short  .
oiled:q.comp owl:equivalentClass _:c .
first:V.5 rdf:type owl:Class .
_:e rdf:type owl:Restriction .
oiled:s rdf:type owl:ObjectProperty .
_:e owl:onProperty oiled:s .
oiled:p rdf:type owl:Class .
_:e owl:allValuesFrom oiled:p .
first:V.5 owl:equivalentClass _:e .
oiled:Unsatisfiable rdf:type owl:Class .
_:g rdf:type owl:Restriction .
_:g owl:onProperty oiled:s .
first:A.3 rdf:type owl:Class .
_:g owl:someValuesFrom first:A.3 .
_:i rdf:type owl:Restriction .
oiled:r rdf:type owl:ObjectProperty .
_:i owl:onProperty oiled:r .
first:A.4 rdf:type owl:Class .
_:i owl:someValuesFrom first:A.4 .
_:k rdf:first _:i .
_:k rdf:rest rdf:nil .
_:m rdf:first _:g .
_:m rdf:rest _:k .
oiled:Unsatisfiable owl:intersectionOf _:m .
first:A.4 rdf:type owl:Class .
_:o rdf:type owl:Restriction .
oiled:invR rdf:type owl:ObjectProperty .
_:o owl:onProperty oiled:invR .
_:o owl:maxCardinality "1"^^xsd:nonNegativeInteger  .
_:q rdf:type owl:Restriction .
oiled:invR rdf:type owl:ObjectProperty .
_:q owl:onProperty oiled:invR .
_:q owl:someValuesFrom first:V.5 .
_:s rdf:first _:q .
_:s rdf:rest rdf:nil .
_:u rdf:first _:o .
_:u rdf:rest _:s .
first:A.4 owl:intersectionOf _:u .
first:A.3 rdf:type owl:Class .
oiled:p.comp rdf:type owl:Class .
oiled:q.comp rdf:type owl:Class .
_:w rdf:first oiled:q.comp .
_:w rdf:rest rdf:nil .
_:y rdf:first oiled:p.comp .
_:y rdf:rest _:w .
first:A.3 owl:intersectionOf _:y .
oiled:q rdf:type owl:Class .
_:a1 rdf:type owl:Restriction .
_:a1 owl:onProperty first:P.2 .
_:a1 owl:minCardinality "1"^^xsd:short  .
oiled:q owl:equivalentClass _:a1 .
oiled:p rdf:type owl:Class .
_:c1 rdf:type owl:Restriction .
_:c1 owl:onProperty first:P.1 .
_:c1 owl:maxCardinality "0"^^xsd:int  .
oiled:p owl:equivalentClass _:c1 .
oiled:invR rdf:type owl:ObjectProperty .
oiled:invR owl:inverseOf oiled:r .
_:e1 rdf:type oiled:Unsatisfiable .

Lite FullConsistent document.616
Description: (informative) <description-logic/Manifest616#test>
DL Test: t2.1
N3 format is informative.
LiteConsistent: <description-logic/consistent616>
<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/consistent616">
 <owl:Ontology rdf:about=""/>
 <owl:Class rdf:about="http://oiled.man.example.net/test#Satisfiable">
  <owl:intersectionOf rdf:parseType="Collection">
   <owl:Restriction>
    <owl:onProperty>
     <owl:ObjectProperty rdf:about="http://oiled.man.example.net/test#f1"/>
    </owl:onProperty>
    <owl:someValuesFrom>
     <owl:Class rdf:about="http://oiled.man.example.net/test#p1"/>
    </owl:someValuesFrom>
   </owl:Restriction>
   <owl:Restriction>
    <owl:onProperty>
     <owl:ObjectProperty rdf:about="http://oiled.man.example.net/test#f2"/>
    </owl:onProperty>
    <owl:someValuesFrom>
     <owl:Class rdf:about="http://oiled.man.example.net/test#p2"/>
    </owl:someValuesFrom>
   </owl:Restriction>
  </owl:intersectionOf>
 </owl:Class>
 <owl:Class rdf:about="http://oiled.man.example.net/test#p2.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#p2">
  <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#p1">
  <rdfs:subClassOf rdf:resource="http://oiled.man.example.net/test#p2.comp"/>
 </owl:Class>
 <owl:ObjectProperty rdf:about="http://oiled.man.example.net/test#r">
  <rdfs:subPropertyOf rdf:resource="http://oiled.man.example.net/test#f2"/>
  <rdfs:subPropertyOf rdf:resource="http://oiled.man.example.net/test#f1"/>
 </owl:ObjectProperty>
 <oiled:Satisfiable/>
 <rdf:Description rdf:about="/2002/07/owl#Thing">
  <rdfs:subClassOf>
   <owl:Restriction>
    <owl:onProperty rdf:resource="http://oiled.man.example.net/test#f1"/>
    <owl:maxCardinality rdf:datatype="/2001/XMLSchema#nonNegativeInteger"
    >1</owl:maxCardinality>
   </owl:Restriction>
  </rdfs:subClassOf>
  <rdfs:subClassOf>
   <owl:Restriction>
    <owl:onProperty rdf:resource="http://oiled.man.example.net/test#f2"/>
    <owl:maxCardinality rdf:datatype="/2001/XMLSchema#nonNegativeInteger"
    >1</owl:maxCardinality>
   </owl:Restriction>
  </rdfs:subClassOf>
 </rdf:Description>
</rdf:RDF>
<description-logic/consistent616> rdf:type owl:Ontology .
oiled:Satisfiable rdf:type owl:Class .
_:a rdf:type owl:Restriction .
oiled:f1 rdf:type owl:ObjectProperty .
_:a owl:onProperty oiled:f1 .
oiled:p1 rdf:type owl:Class .
_:a owl:someValuesFrom oiled:p1 .
_:c rdf:type owl:Restriction .
oiled:f2 rdf:type owl:ObjectProperty .
_:c owl:onProperty oiled:f2 .
oiled:p2 rdf:type owl:Class .
_:c owl:someValuesFrom oiled:p2 .
_:e rdf:first _:c .
_:e rdf:rest rdf:nil .
_:g rdf:first _:a .
_:g rdf:rest _:e .
oiled:Satisfiable owl:intersectionOf _:g .
oiled:p2.comp rdf:type owl:Class .
_:i rdf:type owl:Restriction .
first:P.1 rdf:type owl:DatatypeProperty .
_:i owl:onProperty first:P.1 .
_:i owl:minCardinality "1"^^xsd:int  .
oiled:p2.comp owl:equivalentClass _:i .
oiled:p2 rdf:type owl:Class .
_:k rdf:type owl:Restriction .
_:k owl:onProperty first:P.1 .
_:k owl:maxCardinality "0"^^xsd:int  .
oiled:p2 owl:equivalentClass _:k .
oiled:p1 rdf:type owl:Class .
oiled:p1 rdfs:subClassOf oiled:p2.comp .
oiled:r rdf:type owl:ObjectProperty .
oiled:r rdfs:subPropertyOf oiled:f2 .
oiled:r rdfs:subPropertyOf oiled:f1 .
_:m rdf:type oiled:Satisfiable .
_:o rdf:type owl:Restriction .
_:o owl:onProperty oiled:f1 .
_:o owl:maxCardinality "1"^^xsd:nonNegativeInteger  .
owl:Thing rdfs:subClassOf _:o .
_:q rdf:type owl:Restriction .
_:q owl:onProperty oiled:f2 .
_:q owl:maxCardinality "1"^^xsd:nonNegativeInteger  .
owl:Thing rdfs:subClassOf _:q .

Lite FullInconsistent document.617
Description: (informative) <description-logic/Manifest617#test>
DL Test: t2.2
N3 format is informative.
LiteInconsistent: <description-logic/inconsistent617>
<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/inconsistent617">
 <owl:Ontology rdf:about=""/>
 <owl:Class rdf:about="http://oiled.man.example.net/test#p2.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">
  <owl:intersectionOf rdf:parseType="Collection">
   <owl:Restriction>
    <owl:onProperty>
     <owl:ObjectProperty rdf:about="http://oiled.man.example.net/test#f1"/>
    </owl:onProperty>
    <owl:someValuesFrom>
     <owl:Class rdf:about="http://oiled.man.example.net/test#p1"/>
    </owl:someValuesFrom>
   </owl:Restriction>
   <owl:Restriction>
    <owl:onProperty>
     <owl:ObjectProperty rdf:about="http://oiled.man.example.net/test#f2"/>
    </owl:onProperty>
    <owl:someValuesFrom>
     <owl:Class rdf:about="http://oiled.man.example.net/test#p2"/>
    </owl:someValuesFrom>
   </owl:Restriction>
   <owl:Restriction>
    <owl:onProperty>
     <owl:ObjectProperty rdf:about="http://oiled.man.example.net/test#r"/>
    </owl:onProperty>
    <owl:someValuesFrom>
     <owl:Class rdf:about="/2002/07/owl#Thing"/>
    </owl:someValuesFrom>
   </owl:Restriction>
  </owl:intersectionOf>
 </owl:Class>
 <owl:Class rdf:about="/2002/07/owl#Thing">
  <rdfs:subClassOf>
   <owl:Restriction>
    <owl:onProperty rdf:resource="http://oiled.man.example.net/test#f1"/>
    <owl:maxCardinality rdf:datatype="/2001/XMLSchema#nonNegativeInteger"
    >1</owl:maxCardinality>
   </owl:Restriction>
  </rdfs:subClassOf>
  <rdfs:subClassOf>
   <owl:Restriction>
    <owl:onProperty rdf:resource="http://oiled.man.example.net/test#f2"/>
    <owl:maxCardinality rdf:datatype="/2001/XMLSchema#nonNegativeInteger"
    >1</owl:maxCardinality>
   </owl:Restriction>
  </rdfs:subClassOf>
 </owl:Class>
 <owl:Class rdf:about="http://oiled.man.example.net/test#p2">
  <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#p1">
  <rdfs:subClassOf rdf:resource="http://oiled.man.example.net/test#p2.comp"/>
 </owl:Class>
 <owl:ObjectProperty rdf:about="http://oiled.man.example.net/test#r">
  <rdfs:subPropertyOf rdf:resource="http://oiled.man.example.net/test#f2"/>
  <rdfs:subPropertyOf rdf:resource="http://oiled.man.example.net/test#f1"/>
 </owl:ObjectProperty>
 <oiled:Unsatisfiable/>
</rdf:RDF>
<description-logic/inconsistent617> rdf:type owl:Ontology .
oiled:p2.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:p2.comp owl:equivalentClass _:a .
oiled:Unsatisfiable rdf:type owl:Class .
_:c rdf:type owl:Restriction .
oiled:f1 rdf:type owl:ObjectProperty .
_:c owl:onProperty oiled:f1 .
oiled:p1 rdf:type owl:Class .
_:c owl:someValuesFrom oiled:p1 .
_:e rdf:type owl:Restriction .
oiled:f2 rdf:type owl:ObjectProperty .
_:e owl:onProperty oiled:f2 .
oiled:p2 rdf:type owl:Class .
_:e owl:someValuesFrom oiled:p2 .
_:g rdf:type owl:Restriction .
oiled:r rdf:type owl:ObjectProperty .
_:g owl:onProperty oiled:r .
owl:Thing rdf:type owl:Class .
_:g owl:someValuesFrom owl:Thing .
_:i rdf:first _:g .
_:i rdf:rest rdf:nil .
_:k rdf:first _:e .
_:k rdf:rest _:i .
_:m rdf:first _:c .
_:m rdf:rest _:k .
oiled:Unsatisfiable owl:intersectionOf _:m .
owl:Thing rdf:type owl:Class .
_:o rdf:type owl:Restriction .
_:o owl:onProperty oiled:f1 .
_:o owl:maxCardinality "1"^^xsd:nonNegativeInteger  .
owl:Thing rdfs:subClassOf _:o .
_:q rdf:type owl:Restriction .
_:q owl:onProperty oiled:f2 .
_:q owl:maxCardinality "1"^^xsd:nonNegativeInteger  .
owl:Thing rdfs:subClassOf _:q .
oiled:p2 rdf:type owl:Class .
_:s rdf:type owl:Restriction .
_:s owl:onProperty first:P.1 .
_:s owl:maxCardinality "0"^^xsd:int  .
oiled:p2 owl:equivalentClass _:s .
oiled:p1 rdf:type owl:Class .
oiled:p1 rdfs:subClassOf oiled:p2.comp .
oiled:r rdf:type owl:ObjectProperty .
oiled:r rdfs:subPropertyOf oiled:f2 .
oiled:r rdfs:subPropertyOf oiled:f1 .
_:u rdf:type oiled:Unsatisfiable .

Lite FullInconsistent document.623
Description: (informative) <description-logic/Manifest623#test>
DL Test: t4.1 Dynamic blocking example
N3 format is informative.
LiteInconsistent: <description-logic/inconsistent623>
<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/inconsistent623">
 <owl:Ontology rdf:about=""/>
 <owl:Class rdf:ID="A.2">
  <owl:intersectionOf rdf:parseType="Collection">
   <owl:Restriction>
    <owl:onProperty>
     <owl:ObjectProperty rdf:about="http://oiled.man.example.net/test#r"/>
    </owl:onProperty>
    <owl:someValuesFrom>
     <owl:Class rdf:about="/2002/07/owl#Thing"/>
    </owl:someValuesFrom>
   </owl:Restriction>
   <owl:Restriction>
    <owl:onProperty>
     <owl:ObjectProperty rdf:about="http://oiled.man.example.net/test#p"/>
    </owl:onProperty>
    <owl:someValuesFrom rdf:resource="/2002/07/owl#Thing"/>
   </owl:Restriction>
   <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>
   <owl:Restriction>
    <owl:onProperty>
     <owl:ObjectProperty rdf:about="http://oiled.man.example.net/test#p"/>
    </owl:onProperty>
    <owl:allValuesFrom>
     <owl:Class rdf:about="#V.3"/>
    </owl:allValuesFrom>
   </owl:Restriction>
   <owl:Restriction>
    <owl:onProperty>
     <owl:ObjectProperty rdf:about="http://oiled.man.example.net/test#p"/>
    </owl:onProperty>
    <owl:allValuesFrom>
     <owl:Class rdf:about="#V.4"/>
    </owl:allValuesFrom>
   </owl:Restriction>
   <owl:Restriction>
    <owl:onProperty>
     <owl:ObjectProperty rdf:about="http://oiled.man.example.net/test#p"/>
    </owl:onProperty>
    <owl:allValuesFrom>
     <owl:Class rdf:about="#V.5"/>
    </owl:allValuesFrom>
   </owl:Restriction>
  </owl:intersectionOf>
 </owl:Class>
 <owl:Class rdf:about="http://oiled.man.example.net/test#a.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:ID="V.7">
  <owl:equivalentClass>
   <owl:Restriction>
    <owl:onProperty>
     <owl:ObjectProperty rdf:about="http://oiled.man.example.net/test#invP"/>
    </owl:onProperty>
    <owl:allValuesFrom>
     <owl:Class rdf:about="#V.6"/>
    </owl:allValuesFrom>
   </owl:Restriction>
  </owl:equivalentClass>
 </owl:Class>
 <owl:Class rdf:ID="V.6">
  <owl:equivalentClass>
   <owl:Restriction>
    <owl:onProperty>
     <owl:ObjectProperty rdf:about="http://oiled.man.example.net/test#invS"/>
    </owl:onProperty>
    <owl:allValuesFrom rdf:resource="http://oiled.man.example.net/test#a.comp"/>
   </owl:Restriction>
  </owl:equivalentClass>
 </owl:Class>
 <owl:Class rdf:ID="V.5">
  <owl:equivalentClass>
   <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>
  </owl:equivalentClass>
 </owl:Class>
 <owl:Class rdf:ID="V.4">
  <owl:equivalentClass>
   <owl:Restriction>
    <owl:onProperty>
     <owl:ObjectProperty rdf:about="http://oiled.man.example.net/test#p"/>
    </owl:onProperty>
    <owl:someValuesFrom rdf:resource="/2002/07/owl#Thing"/>
   </owl:Restriction>
  </owl:equivalentClass>
 </owl:Class>
 <owl:Class rdf:ID="V.3">
  <owl:equivalentClass>
   <owl:Restriction>
    <owl:onProperty rdf:resource="http://oiled.man.example.net/test#r"/>
    <owl:someValuesFrom rdf:resource="/2002/07/owl#Thing"/>
   </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#a"/>
  </rdfs:subClassOf>
  <rdfs:subClassOf>
   <owl:Restriction>
    <owl:onProperty>
     <owl:ObjectProperty rdf:about="http://oiled.man.example.net/test#s"/>
    </owl:onProperty>
    <owl:someValuesFrom rdf:resource="#A.2"/>
   </owl:Restriction>
  </rdfs:subClassOf>
 </owl:Class>
 <owl:Class rdf:about="http://oiled.man.example.net/test#c">
  <owl:equivalentClass>
   <owl:Restriction>
    <owl:onProperty>
     <owl:ObjectProperty rdf:about="http://oiled.man.example.net/test#invR"/>
    </owl:onProperty>
    <owl:allValuesFrom rdf:resource="#V.7"/>
   </owl:Restriction>
  </owl:equivalentClass>
 </owl:Class>
 <owl:Class rdf:about="http://oiled.man.example.net/test#a">
  <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:ObjectProperty rdf:about="http://oiled.man.example.net/test#invP">
  <owl:inverseOf>
   <owl:ObjectProperty rdf:about="http://oiled.man.example.net/test#p"/>
  </owl:inverseOf>
 </owl:ObjectProperty>
 <owl:ObjectProperty rdf:about="http://oiled.man.example.net/test#invS">
  <owl:inverseOf rdf:resource="http://oiled.man.example.net/test#s"/>
 </owl:ObjectProperty>
 <owl:ObjectProperty rdf:about="http://oiled.man.example.net/test#p">
  <rdf:type rdf:resource="/2002/07/owl#TransitiveProperty"/>
 </owl:ObjectProperty>
 <owl:ObjectProperty rdf:about="http://oiled.man.example.net/test#invR">
  <owl:inverseOf rdf:resource="http://oiled.man.example.net/test#r"/>
 </owl:ObjectProperty>
 <oiled:Unsatisfiable/>
</rdf:RDF>
<description-logic/inconsistent623> rdf:type owl:Ontology .
first:A.2 rdf:type owl:Class .
_:a rdf:type owl:Restriction .
oiled:r rdf:type owl:ObjectProperty .
_:a owl:onProperty oiled:r .
owl:Thing rdf:type owl:Class .
_:a owl:someValuesFrom owl:Thing .
_:c rdf:type owl:Restriction .
oiled:p rdf:type owl:ObjectProperty .
_:c owl:onProperty oiled:p .
_:c owl:someValuesFrom owl:Thing .
_:e rdf:type owl:Restriction .
_:e owl:onProperty oiled:r .
oiled:c rdf:type owl:Class .
_:e owl:allValuesFrom oiled:c .
_:g rdf:type owl:Restriction .
oiled:p rdf:type owl:ObjectProperty .
_:g owl:onProperty oiled:p .
first:V.3 rdf:type owl:Class .
_:g owl:allValuesFrom first:V.3 .
_:i rdf:type owl:Restriction .
oiled:p rdf:type owl:ObjectProperty .
_:i owl:onProperty oiled:p .
first:V.4 rdf:type owl:Class .
_:i owl:allValuesFrom first:V.4 .
_:k rdf:type owl:Restriction .
oiled:p rdf:type owl:ObjectProperty .
_:k owl:onProperty oiled:p .
first:V.5 rdf:type owl:Class .
_:k owl:allValuesFrom first:V.5 .
_:m rdf:first _:k .
_:m rdf:rest rdf:nil .
_:o rdf:first _:i .
_:o rdf:rest _:m .
_:q rdf:first _:g .
_:q rdf:rest _:o .
_:s rdf:first _:e .
_:s rdf:rest _:q .
_:u rdf:first _:c .
_:u rdf:rest _:s .
_:w rdf:first _:a .
_:w rdf:rest _:u .
first:A.2 owl:intersectionOf _:w .
oiled:a.comp rdf:type owl:Class .
_:y rdf:type owl:Restriction .
first:P.1 rdf:type owl:DatatypeProperty .
_:y owl:onProperty first:P.1 .
_:y owl:minCardinality "1"^^xsd:int  .
oiled:a.comp owl:equivalentClass _:y .
first:V.7 rdf:type owl:Class .
_:a1 rdf:type owl:Restriction .
oiled:invP rdf:type owl:ObjectProperty .
_:a1 owl:onProperty oiled:invP .
first:V.6 rdf:type owl:Class .
_:a1 owl:allValuesFrom first:V.6 .
first:V.7 owl:equivalentClass _:a1 .
first:V.6 rdf:type owl:Class .
_:c1 rdf:type owl:Restriction .
oiled:invS rdf:type owl:ObjectProperty .
_:c1 owl:onProperty oiled:invS .
_:c1 owl:allValuesFrom oiled:a.comp .
first:V.6 owl:equivalentClass _:c1 .
first:V.5 rdf:type owl:Class .
_:e1 rdf:type owl:Restriction .
_:e1 owl:onProperty oiled:r .
oiled:c rdf:type owl:Class .
_:e1 owl:allValuesFrom oiled:c .
first:V.5 owl:equivalentClass _:e1 .
first:V.4 rdf:type owl:Class .
_:g1 rdf:type owl:Restriction .
oiled:p rdf:type owl:ObjectProperty .
_:g1 owl:onProperty oiled:p .
_:g1 owl:someValuesFrom owl:Thing .
first:V.4 owl:equivalentClass _:g1 .
first:V.3 rdf:type owl:Class .
_:i1 rdf:type owl:Restriction .
_:i1 owl:onProperty oiled:r .
_:i1 owl:someValuesFrom owl:Thing .
first:V.3 owl:equivalentClass _:i1 .
oiled:Unsatisfiable rdf:type owl:Class .
oiled:a rdf:type owl:Class .
oiled:Unsatisfiable rdfs:subClassOf oiled:a .
_:k1 rdf:type owl:Restriction .
oiled:s rdf:type owl:ObjectProperty .
_:k1 owl:onProperty oiled:s .
_:k1 owl:someValuesFrom first:A.2 .
oiled:Unsatisfiable rdfs:subClassOf _:k1 .
oiled:c rdf:type owl:Class .
_:m1 rdf:type owl:Restriction .
oiled:invR rdf:type owl:ObjectProperty .
_:m1 owl:onProperty oiled:invR .
_:m1 owl:allValuesFrom first:V.7 .
oiled:c owl:equivalentClass _:m1 .
oiled:a rdf:type owl:Class .
_:o1 rdf:type owl:Restriction .
_:o1 owl:onProperty first:P.1 .
_:o1 owl:maxCardinality "0"^^xsd:int  .
oiled:a owl:equivalentClass _:o1 .
oiled:invP rdf:type owl:ObjectProperty .
oiled:p rdf:type owl:ObjectProperty .
oiled:invP owl:inverseOf oiled:p .
oiled:invS rdf:type owl:ObjectProperty .
oiled:invS owl:inverseOf oiled:s .
oiled:p rdf:type owl:ObjectProperty .
oiled:p rdf:type owl:TransitiveProperty .
oiled:invR rdf:type owl:ObjectProperty .
oiled:invR owl:inverseOf oiled:r .
_:q1 rdf:type oiled:Unsatisfiable .

Lite FullConsistent 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
N3 format is informative.
LiteConsistent: <description-logic/consistent624>
<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/consistent624">
 <owl:Ontology rdf:about=""/>
 <owl:Class rdf:about="http://oiled.man.example.net/test#Satisfiable">
  <owl:intersectionOf rdf:parseType="Collection">
   <owl:Class rdf:about="http://oiled.man.example.net/test#a.comp"/>
   <owl:Restriction>
    <owl:onProperty>
     <owl:ObjectProperty rdf:about="http://oiled.man.example.net/test#invF"/>
    </owl:onProperty>
    <owl:someValuesFrom>
     <owl:Class rdf:about="http://oiled.man.example.net/test#a"/>
    </owl:someValuesFrom>
   </owl:Restriction>
   <owl:Restriction>
    <owl:onProperty>
     <owl:ObjectProperty rdf:about="http://oiled.man.example.net/test#invR"/>
    </owl:onProperty>
    <owl:someValuesFrom>
     <owl:Class rdf:about="#V.2"/>
    </owl:someValuesFrom>
   </owl:Restriction>
  </owl:intersectionOf>
 </owl:Class>
 <owl:Class rdf:about="http://oiled.man.example.net/test#a.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:ID="V.2">
  <owl:equivalentClass>
   <owl:Restriction>
    <owl:onProperty>
     <owl:ObjectProperty rdf:about="http://oiled.man.example.net/test#invF"/>
    </owl:onProperty>
    <owl:someValuesFrom>
     <owl:Class rdf:about="http://oiled.man.example.net/test#a"/>
    </owl:someValuesFrom>
   </owl:Restriction>
  </owl:equivalentClass>
 </owl:Class>
 <owl:Class rdf:about="http://oiled.man.example.net/test#a">
  <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:ObjectProperty rdf:about="http://oiled.man.example.net/test#f">
  <rdfs:subPropertyOf>
   <owl:ObjectProperty rdf:about="http://oiled.man.example.net/test#r"/>
  </rdfs:subPropertyOf>
 </owl:ObjectProperty>
 <owl:ObjectProperty rdf:about="http://oiled.man.example.net/test#invF">
  <owl:inverseOf rdf:resource="http://oiled.man.example.net/test#f"/>
 </owl:ObjectProperty>
 <owl:ObjectProperty rdf:about="http://oiled.man.example.net/test#r">
  <rdf:type rdf:resource="/2002/07/owl#TransitiveProperty"/>
 </owl:ObjectProperty>
 <owl:ObjectProperty rdf:about="http://oiled.man.example.net/test#invR">
  <owl:inverseOf rdf:resource="http://oiled.man.example.net/test#r"/>
 </owl:ObjectProperty>
 <oiled:Satisfiable/>
 <rdf:Description rdf:about="/2002/07/owl#Thing">
  <rdfs:subClassOf>
   <owl:Restriction>
    <owl:onProperty rdf:resource="http://oiled.man.example.net/test#f"/>
    <owl:maxCardinality rdf:datatype="/2001/XMLSchema#nonNegativeInteger"
    >1</owl:maxCardinality>
   </owl:Restriction>
  </rdfs:subClassOf>
 </rdf:Description>
</rdf:RDF>
<description-logic/consistent624> rdf:type owl:Ontology .
oiled:Satisfiable rdf:type owl:Class .
oiled:a.comp rdf:type owl:Class .
_:a rdf:type owl:Restriction .
oiled:invF rdf:type owl:ObjectProperty .
_:a owl:onProperty oiled:invF .
oiled:a rdf:type owl:Class .
_:a owl:someValuesFrom oiled:a .
_:c rdf:type owl:Restriction .
oiled:invR rdf:type owl:ObjectProperty .
_:c owl:onProperty oiled:invR .
first:V.2 rdf:type owl:Class .
_:c owl:someValuesFrom first:V.2 .
_:e rdf:first _:c .
_:e rdf:rest rdf:nil .
_:g rdf:first _:a .
_:g rdf:rest _:e .
_:i rdf:first oiled:a.comp .
_:i rdf:rest _:g .
oiled:Satisfiable owl:intersectionOf _:i .
oiled:a.comp rdf:type owl:Class .
_:k rdf:type owl:Restriction .
first:P.1 rdf:type owl:DatatypeProperty .
_:k owl:onProperty first:P.1 .
_:k owl:minCardinality "1"^^xsd:int  .
oiled:a.comp owl:equivalentClass _:k .
first:V.2 rdf:type owl:Class .
_:m rdf:type owl:Restriction .
oiled:invF rdf:type owl:ObjectProperty .
_:m owl:onProperty oiled:invF .
oiled:a rdf:type owl:Class .
_:m owl:someValuesFrom oiled:a .
first:V.2 owl:equivalentClass _:m .
oiled:a rdf:type owl:Class .
_:o rdf:type owl:Restriction .
_:o owl:onProperty first:P.1 .
_:o owl:maxCardinality "0"^^xsd:int  .
oiled:a owl:equivalentClass _:o .
oiled:f rdf:type owl:ObjectProperty .
oiled:r rdf:type owl:ObjectProperty .
oiled:f rdfs:subPropertyOf oiled:r .
oiled:invF rdf:type owl:ObjectProperty .
oiled:invF owl:inverseOf oiled:f .
oiled:r rdf:type owl:ObjectProperty .
oiled:r rdf:type owl:TransitiveProperty .
oiled:invR rdf:type owl:ObjectProperty .
oiled:invR owl:inverseOf oiled:r .
_:q rdf:type oiled:Satisfiable .
_:s rdf:type owl:Restriction .
_:s owl:onProperty oiled:f .
_:s owl:maxCardinality "1"^^xsd:nonNegativeInteger  .
owl:Thing rdfs:subClassOf _:s .

Lite FullConsistent 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
N3 format is informative.
LiteConsistent: <description-logic/consistent625>
<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/consistent625">
 <owl:Ontology rdf:about=""/>
 <owl:Class rdf:about="http://oiled.man.example.net/test#Satisfiable">
  <owl:intersectionOf rdf:parseType="Collection">
   <owl:Class rdf:about="http://oiled.man.example.net/test#a.comp"/>
   <owl:Restriction>
    <owl:onProperty>
     <owl:ObjectProperty rdf:about="http://oiled.man.example.net/test#invF"/>
    </owl:onProperty>
    <owl:someValuesFrom>
     <owl:Class rdf:about="http://oiled.man.example.net/test#a"/>
    </owl:someValuesFrom>
   </owl:Restriction>
   <owl:Restriction>
    <owl:onProperty>
     <owl:ObjectProperty rdf:about="http://oiled.man.example.net/test#invR"/>
    </owl:onProperty>
    <owl:someValuesFrom>
     <owl:Class rdf:about="#V.2"/>
    </owl:someValuesFrom>
   </owl:Restriction>
  </owl:intersectionOf>
 </owl:Class>
 <owl:Class rdf:ID="V.2">
  <owl:equivalentClass>
   <owl:Restriction>
    <owl:onProperty>
     <owl:ObjectProperty rdf:about="http://oiled.man.example.net/test#invF"/>
    </owl:onProperty>
    <owl:someValuesFrom>
     <owl:Class rdf:about="http://oiled.man.example.net/test#a"/>
    </owl:someValuesFrom>
   </owl:Restriction>
  </owl:equivalentClass>
 </owl:Class>
 <owl:Class rdf:about="http://oiled.man.example.net/test#a.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#a">
  <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:ObjectProperty rdf:about="http://oiled.man.example.net/test#f">
  <rdfs:subPropertyOf>
   <owl:ObjectProperty rdf:about="http://oiled.man.example.net/test#r"/>
  </rdfs:subPropertyOf>
  <rdf:type rdf:resource="/2002/07/owl#FunctionalProperty"/>
 </owl:ObjectProperty>
 <owl:ObjectProperty rdf:about="http://oiled.man.example.net/test#invF">
  <owl:inverseOf rdf:resource="http://oiled.man.example.net/test#f"/>
 </owl:ObjectProperty>
 <owl:ObjectProperty rdf:about="http://oiled.man.example.net/test#r">
  <rdf:type rdf:resource="/2002/07/owl#TransitiveProperty"/>
 </owl:ObjectProperty>
 <owl:ObjectProperty rdf:about="http://oiled.man.example.net/test#invR">
  <owl:inverseOf rdf:resource="http://oiled.man.example.net/test#r"/>
 </owl:ObjectProperty>
 <oiled:Satisfiable/>
</rdf:RDF>
<description-logic/consistent625> rdf:type owl:Ontology .
oiled:Satisfiable rdf:type owl:Class .
oiled:a.comp rdf:type owl:Class .
_:a rdf:type owl:Restriction .
oiled:invF rdf:type owl:ObjectProperty .
_:a owl:onProperty oiled:invF .
oiled:a rdf:type owl:Class .
_:a owl:someValuesFrom oiled:a .
_:c rdf:type owl:Restriction .
oiled:invR rdf:type owl:ObjectProperty .
_:c owl:onProperty oiled:invR .
first:V.2 rdf:type owl:Class .
_:c owl:someValuesFrom first:V.2 .
_:e rdf:first _:c .
_:e rdf:rest rdf:nil .
_:g rdf:first _:a .
_:g rdf:rest _:e .
_:i rdf:first oiled:a.comp .
_:i rdf:rest _:g .
oiled:Satisfiable owl:intersectionOf _:i .
first:V.2 rdf:type owl:Class .
_:k rdf:type owl:Restriction .
oiled:invF rdf:type owl:ObjectProperty .
_:k owl:onProperty oiled:invF .
oiled:a rdf:type owl:Class .
_:k owl:someValuesFrom oiled:a .
first:V.2 owl:equivalentClass _:k .
oiled:a.comp rdf:type owl:Class .
_:m rdf:type owl:Restriction .
first:P.1 rdf:type owl:DatatypeProperty .
_:m owl:onProperty first:P.1 .
_:m owl:minCardinality "1"^^xsd:int  .
oiled:a.comp owl:equivalentClass _:m .
oiled:a rdf:type owl:Class .
_:o rdf:type owl:Restriction .
_:o owl:onProperty first:P.1 .
_:o owl:maxCardinality "0"^^xsd:int  .
oiled:a owl:equivalentClass _:o .
oiled:f rdf:type owl:ObjectProperty .
oiled:r rdf:type owl:ObjectProperty .
oiled:f rdfs:subPropertyOf oiled:r .
oiled:f rdf:type owl:FunctionalProperty .
oiled:invF rdf:type owl:ObjectProperty .
oiled:invF owl:inverseOf oiled:f .
oiled:r rdf:type owl:ObjectProperty .
oiled:r rdf:type owl:TransitiveProperty .
oiled:invR rdf:type owl:ObjectProperty .
oiled:invR owl:inverseOf oiled:r .
_:q rdf:type oiled:Satisfiable .

Lite FullInconsistent document.626
Description: (informative) <description-logic/Manifest626#test>
DL Test: t6.1 Double blocking example. The concept should be incoherent but needs double blocking
N3 format is informative.
LiteInconsistent: <description-logic/inconsistent626>
<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/inconsistent626">
 <owl:Ontology rdf:about=""/>
 <owl:Class rdf:about="http://oiled.man.example.net/test#c.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:ID="V.3">
  <owl:equivalentClass>
   <owl:Restriction>
    <owl:onProperty>
     <owl:ObjectProperty rdf:about="http://oiled.man.example.net/test#invF"/>
    </owl:onProperty>
    <owl:someValuesFrom>
     <owl:Class rdf:about="http://oiled.man.example.net/test#d"/>
    </owl:someValuesFrom>
   </owl:Restriction>
  </owl:equivalentClass>
 </owl:Class>
 <owl:Class rdf:about="http://oiled.man.example.net/test#Unsatisfiable">
  <owl:intersectionOf rdf:parseType="Collection">
   <owl:Class rdf:about="http://oiled.man.example.net/test#c.comp"/>
   <owl:Restriction>
    <owl:onProperty>
     <owl:ObjectProperty rdf:about="http://oiled.man.example.net/test#invF"/>
    </owl:onProperty>
    <owl:someValuesFrom>
     <owl:Class rdf:about="http://oiled.man.example.net/test#d"/>
    </owl:someValuesFrom>
   </owl:Restriction>
   <owl:Restriction>
    <owl:onProperty>
     <owl:ObjectProperty rdf:about="http://oiled.man.example.net/test#invR"/>
    </owl:onProperty>
    <owl:allValuesFrom rdf:resource="#V.3"/>
   </owl:Restriction>
  </owl:intersectionOf>
 </owl:Class>
 <owl:Class rdf:about="http://oiled.man.example.net/test#d">
  <owl:intersectionOf rdf:parseType="Collection">
   <owl:Class rdf:about="http://oiled.man.example.net/test#c"/>
   <owl:Restriction>
    <owl:onProperty>
     <owl:ObjectProperty rdf:about="http://oiled.man.example.net/test#f"/>
    </owl:onProperty>
    <owl:someValuesFrom rdf:resource="http://oiled.man.example.net/test#c.comp"/>
   </owl:Restriction>
  </owl:intersectionOf>
 </owl:Class>
 <owl:Class rdf:about="http://oiled.man.example.net/test#c">
  <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:ObjectProperty rdf:about="http://oiled.man.example.net/test#f">
  <rdfs:subPropertyOf>
   <owl:ObjectProperty rdf:about="http://oiled.man.example.net/test#r"/>
  </rdfs:subPropertyOf>
 </owl:ObjectProperty>
 <owl:ObjectProperty rdf:about="http://oiled.man.example.net/test#invF">
  <owl:inverseOf rdf:resource="http://oiled.man.example.net/test#f"/>
 </owl:ObjectProperty>
 <owl:ObjectProperty rdf:about="http://oiled.man.example.net/test#r">
  <rdf:type rdf:resource="/2002/07/owl#TransitiveProperty"/>
 </owl:ObjectProperty>
 <owl:ObjectProperty rdf:about="http://oiled.man.example.net/test#invR">
  <owl:inverseOf rdf:resource="http://oiled.man.example.net/test#r"/>
 </owl:ObjectProperty>
 <rdf:Description rdf:about="/2002/07/owl#Thing">
  <rdfs:subClassOf>
   <owl:Restriction>
    <owl:onProperty rdf:resource="http://oiled.man.example.net/test#f"/>
    <owl:maxCardinality rdf:datatype="/2001/XMLSchema#nonNegativeInteger"
    >1</owl:maxCardinality>
   </owl:Restriction>
  </rdfs:subClassOf>
 </rdf:Description>
 <oiled:Unsatisfiable/>
</rdf:RDF>
<description-logic/inconsistent626> rdf:type owl:Ontology .
oiled:c.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:c.comp owl:equivalentClass _:a .
first:V.3 rdf:type owl:Class .
_:c rdf:type owl:Restriction .
oiled:invF rdf:type owl:ObjectProperty .
_:c owl:onProperty oiled:invF .
oiled:d rdf:type owl:Class .
_:c owl:someValuesFrom oiled:d .
first:V.3 owl:equivalentClass _:c .
oiled:Unsatisfiable rdf:type owl:Class .
oiled:c.comp rdf:type owl:Class .
_:e rdf:type owl:Restriction .
oiled:invF rdf:type owl:ObjectProperty .
_:e owl:onProperty oiled:invF .
oiled:d rdf:type owl:Class .
_:e owl:someValuesFrom oiled:d .
_:g rdf:type owl:Restriction .
oiled:invR rdf:type owl:ObjectProperty .
_:g owl:onProperty oiled:invR .
_:g owl:allValuesFrom first:V.3 .
_:i rdf:first _:g .
_:i rdf:rest rdf:nil .
_:k rdf:first _:e .
_:k rdf:rest _:i .
_:m rdf:first oiled:c.comp .
_:m rdf:rest _:k .
oiled:Unsatisfiable owl:intersectionOf _:m .
oiled:d rdf:type owl:Class .
oiled:c rdf:type owl:Class .
_:o rdf:type owl:Restriction .
oiled:f rdf:type owl:ObjectProperty .
_:o owl:onProperty oiled:f .
_:o owl:someValuesFrom oiled:c.comp .
_:q rdf:first _:o .
_:q rdf:rest rdf:nil .
_:s rdf:first oiled:c .
_:s rdf:rest _:q .
oiled:d owl:intersectionOf _:s .
oiled:c rdf:type owl:Class .
_:u rdf:type owl:Restriction .
_:u owl:onProperty first:P.1 .
_:u owl:maxCardinality "0"^^xsd:int  .
oiled:c owl:equivalentClass _:u .
oiled:f rdf:type owl:ObjectProperty .
oiled:r rdf:type owl:ObjectProperty .
oiled:f rdfs:subPropertyOf oiled:r .
oiled:invF rdf:type owl:ObjectProperty .
oiled:invF owl:inverseOf oiled:f .
oiled:r rdf:type owl:ObjectProperty .
oiled:r rdf:type owl:TransitiveProperty .
oiled:invR rdf:type owl:ObjectProperty .
oiled:invR owl:inverseOf oiled:r .
_:w rdf:type owl:Restriction .
_:w owl:onProperty oiled:f .
_:w owl:maxCardinality "1"^^xsd:nonNegativeInteger  .
owl:Thing rdfs:subClassOf _:w .
_:y rdf:type oiled:Unsatisfiable .

Lite FullInconsistent document.627
Description: (informative) <description-logic/Manifest627#test>
DL Test: t6f.1 Double blocking example. The concept should be incoherent but needs double blocking
N3 format is informative.
LiteInconsistent: <description-logic/inconsistent627>
<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/inconsistent627">
 <owl:Ontology rdf:about=""/>
 <owl:Class rdf:about="http://oiled.man.example.net/test#c.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:ID="V.3">
  <owl:equivalentClass>
   <owl:Restriction>
    <owl:onProperty>
     <owl:ObjectProperty rdf:about="http://oiled.man.example.net/test#invF"/>
    </owl:onProperty>
    <owl:someValuesFrom>
     <owl:Class rdf:about="http://oiled.man.example.net/test#d"/>
    </owl:someValuesFrom>
   </owl:Restriction>
  </owl:equivalentClass>
 </owl:Class>
 <owl:Class rdf:about="http://oiled.man.example.net/test#d">
  <owl:intersectionOf rdf:parseType="Collection">
   <owl:Class rdf:about="http://oiled.man.example.net/test#c"/>
   <owl:Restriction>
    <owl:onProperty>
     <owl:ObjectProperty rdf:about="http://oiled.man.example.net/test#f"/>
    </owl:onProperty>
    <owl:someValuesFrom rdf:resource="http://oiled.man.example.net/test#c.comp"/>
   </owl:Restriction>
  </owl:intersectionOf>
 </owl:Class>
 <owl:Class rdf:about="http://oiled.man.example.net/test#Unsatisfiable">
  <owl:intersectionOf rdf:parseType="Collection">
   <owl:Class rdf:about="http://oiled.man.example.net/test#c.comp"/>
   <owl:Restriction>
    <owl:onProperty>
     <owl:ObjectProperty rdf:about="http://oiled.man.example.net/test#invF"/>
    </owl:onProperty>
    <owl:someValuesFrom rdf:resource="http://oiled.man.example.net/test#d"/>
   </owl:Restriction>
   <owl:Restriction>
    <owl:onProperty>
     <owl:ObjectProperty rdf:about="http://oiled.man.example.net/test#invR"/>
    </owl:onProperty>
    <owl:allValuesFrom rdf:resource="#V.3"/>
   </owl:Restriction>
  </owl:intersectionOf>
 </owl:Class>
 <owl:Class rdf:about="http://oiled.man.example.net/test#c">
  <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:ObjectProperty rdf:about="http://oiled.man.example.net/test#f">
  <rdfs:subPropertyOf>
   <owl:ObjectProperty rdf:about="http://oiled.man.example.net/test#r"/>
  </rdfs:subPropertyOf>
  <rdf:type rdf:resource="/2002/07/owl#FunctionalProperty"/>
 </owl:ObjectProperty>
 <owl:ObjectProperty rdf:about="http://oiled.man.example.net/test#invF">
  <owl:inverseOf rdf:resource="http://oiled.man.example.net/test#f"/>
 </owl:ObjectProperty>
 <owl:ObjectProperty rdf:about="http://oiled.man.example.net/test#r">
  <rdf:type rdf:resource="/2002/07/owl#TransitiveProperty"/>
 </owl:ObjectProperty>
 <owl:ObjectProperty rdf:about="http://oiled.man.example.net/test#invR">
  <owl:inverseOf rdf:resource="http://oiled.man.example.net/test#r"/>
 </owl:ObjectProperty>
 <oiled:Unsatisfiable/>
</rdf:RDF>
<description-logic/inconsistent627> rdf:type owl:Ontology .
oiled:c.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:c.comp owl:equivalentClass _:a .
first:V.3 rdf:type owl:Class .
_:c rdf:type owl:Restriction .
oiled:invF rdf:type owl:ObjectProperty .
_:c owl:onProperty oiled:invF .
oiled:d rdf:type owl:Class .
_:c owl:someValuesFrom oiled:d .
first:V.3 owl:equivalentClass _:c .
oiled:d rdf:type owl:Class .
oiled:c rdf:type owl:Class .
_:e rdf:type owl:Restriction .
oiled:f rdf:type owl:ObjectProperty .
_:e owl:onProperty oiled:f .
_:e owl:someValuesFrom oiled:c.comp .
_:g rdf:first _:e .
_:g rdf:rest rdf:nil .
_:i rdf:first oiled:c .
_:i rdf:rest _:g .
oiled:d owl:intersectionOf _:i .
oiled:Unsatisfiable rdf:type owl:Class .
oiled:c.comp rdf:type owl:Class .
_:k rdf:type owl:Restriction .
oiled:invF rdf:type owl:ObjectProperty .
_:k owl:onProperty oiled:invF .
_:k owl:someValuesFrom oiled:d .
_:m rdf:type owl:Restriction .
oiled:invR rdf:type owl:ObjectProperty .
_:m owl:onProperty oiled:invR .
_:m owl:allValuesFrom first:V.3 .
_:o rdf:first _:m .
_:o rdf:rest rdf:nil .
_:q rdf:first _:k .
_:q rdf:rest _:o .
_:s rdf:first oiled:c.comp .
_:s rdf:rest _:q .
oiled:Unsatisfiable owl:intersectionOf _:s .
oiled:c rdf:type owl:Class .
_:u rdf:type owl:Restriction .
_:u owl:onProperty first:P.1 .
_:u owl:maxCardinality "0"^^xsd:int  .
oiled:c owl:equivalentClass _:u .
oiled:f rdf:type owl:ObjectProperty .
oiled:r rdf:type owl:ObjectProperty .
oiled:f rdfs:subPropertyOf oiled:r .
oiled:f rdf:type owl:FunctionalProperty .
oiled:invF rdf:type owl:ObjectProperty .
oiled:invF owl:inverseOf oiled:f .
oiled:r rdf:type owl:ObjectProperty .
oiled:r rdf:type owl:TransitiveProperty .
oiled:invR rdf:type owl:ObjectProperty .
oiled:invR owl:inverseOf oiled:r .
_:w rdf:type oiled:Unsatisfiable .

Lite FullConsistent document.628
Description: (informative) <description-logic/Manifest628#test>
DL Test: t7.1
N3 format is informative.
LiteConsistent: <description-logic/consistent628>
<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/consistent628">
 <owl:Ontology rdf:about=""/>
 <owl:Class rdf:about="http://oiled.man.example.net/test#Satisfiable">
  <owl:intersectionOf rdf:parseType="Collection">
   <owl:Class rdf:about="http://oiled.man.example.net/test#p1"/>
   <owl:Restriction>
    <owl:onProperty>
     <owl:ObjectProperty rdf:about="http://oiled.man.example.net/test#r"/>
    </owl:onProperty>
    <owl:someValuesFrom>
     <owl:Class rdf:about="#V.5"/>
    </owl:someValuesFrom>
   </owl:Restriction>
  </owl:intersectionOf>
 </owl:Class>
 <owl:Class rdf:about="http://oiled.man.example.net/test#p1.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:ID="C.3">
  <owl:equivalentClass>
   <owl:Restriction>
    <owl:onProperty>
     <owl:DatatypeProperty rdf:ID="P.3"/>
    </owl:onProperty>
    <owl:cardinality rdf:datatype="/2001/XMLSchema#unsignedByte"
    >0</owl:cardinality>
   </owl:Restriction>
  </owl:equivalentClass>
 </owl:Class>
 <owl:Class rdf:ID="C.2">
  <owl:equivalentClass>
   <owl:Restriction>
    <owl:onProperty>
     <owl:ObjectProperty rdf:ID="P.2"/>
    </owl:onProperty>
    <owl:cardinality rdf:datatype="/2001/XMLSchema#short"
    >0</owl:cardinality>
   </owl:Restriction>
  </owl:equivalentClass>
 </owl:Class>
 <owl:Class rdf:ID="A.4">
  <owl:intersectionOf rdf:parseType="Collection">
   <owl:Class rdf:about="http://oiled.man.example.net/test#p1"/>
   <owl:Restriction>
    <owl:onProperty>
     <owl:ObjectProperty rdf:about="http://oiled.man.example.net/test#invR"/>
    </owl:onProperty>
    <owl:allValuesFrom rdf:resource="#C.2"/>
   </owl:Restriction>
  </owl:intersectionOf>
 </owl:Class>
 <owl:Class rdf:ID="C.2.comp">
  <owl:equivalentClass>
   <owl:Restriction>
    <owl:onProperty rdf:resource="#P.2"/>
    <owl:minCardinality rdf:datatype="/2001/XMLSchema#short"
    >1</owl:minCardinality>
   </owl:Restriction>
  </owl:equivalentClass>
  <owl:intersectionOf rdf:parseType="Collection">
   <owl:Class rdf:about="http://oiled.man.example.net/test#p1"/>
   <owl:Class rdf:about="#C.3"/>
  </owl:intersectionOf>
 </owl:Class>
 <owl:Class rdf:ID="V.5">
  <owl:equivalentClass>
   <owl:Restriction>
    <owl:onProperty>
     <owl:ObjectProperty rdf:about="http://oiled.man.example.net/test#r"/>
    </owl:onProperty>
    <owl:someValuesFrom rdf:resource="#A.4"/>
   </owl:Restriction>
  </owl:equivalentClass>
 </owl:Class>
 <owl:Class rdf:ID="C.3.comp">
  <owl:equivalentClass>
   <owl:Restriction>
    <owl:onProperty rdf:resource="#P.3"/>
    <owl:minCardinality rdf:datatype="/2001/XMLSchema#unsignedByte"
    >1</owl:minCardinality>
   </owl:Restriction>
  </owl:equivalentClass>
  <owl:equivalentClass>
   <owl:Restriction>
    <owl:onProperty>
     <owl:ObjectProperty rdf:about="http://oiled.man.example.net/test#r"/>
    </owl:onProperty>
    <owl:allValuesFrom>
     <owl:Class rdf:about="http://oiled.man.example.net/test#p1"/>
    </owl:allValuesFrom>
   </owl:Restriction>
  </owl:equivalentClass>
 </owl:Class>
 <owl:Class rdf:about="http://oiled.man.example.net/test#p1">
  <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:ObjectProperty rdf:about="http://oiled.man.example.net/test#f"/>
 <owl:ObjectProperty rdf:about="http://oiled.man.example.net/test#invF">
  <owl:inverseOf rdf:resource="http://oiled.man.example.net/test#f"/>
 </owl:ObjectProperty>
 <owl:ObjectProperty rdf:about="http://oiled.man.example.net/test#r">
  <rdf:type rdf:resource="/2002/07/owl#TransitiveProperty"/>
 </owl:ObjectProperty>
 <owl:ObjectProperty rdf:about="http://oiled.man.example.net/test#invR">
  <owl:inverseOf rdf:resource="http://oiled.man.example.net/test#r"/>
 </owl:ObjectProperty>
 <oiled:Satisfiable/>
 <rdf:Description rdf:about="/2002/07/owl#Thing">
  <rdfs:subClassOf>
   <owl:Restriction>
    <owl:onProperty rdf:resource="http://oiled.man.example.net/test#f"/>
    <owl:maxCardinality rdf:datatype="/2001/XMLSchema#nonNegativeInteger"
    >1</owl:maxCardinality>
   </owl:Restriction>
  </rdfs:subClassOf>
 </rdf:Description>
</rdf:RDF>
<description-logic/consistent628> rdf:type owl:Ontology .
oiled:Satisfiable rdf:type owl:Class .
oiled:p1 rdf:type owl:Class .
_:a rdf:type owl:Restriction .
oiled:r rdf:type owl:ObjectProperty .
_:a owl:onProperty oiled:r .
first:V.5 rdf:type owl:Class .
_:a owl:someValuesFrom first:V.5 .
_:c rdf:first _:a .
_:c rdf:rest rdf:nil .
_:e rdf:first oiled:p1 .
_:e rdf:rest _:c .
oiled:Satisfiable owl:intersectionOf _:e .
oiled:p1.comp rdf:type owl:Class .
_:g rdf:type owl:Restriction .
first:P.1 rdf:type owl:DatatypeProperty .
_:g owl:onProperty first:P.1 .
_:g owl:minCardinality "1"^^xsd:int  .
oiled:p1.comp owl:equivalentClass _:g .
first:C.3 rdf:type owl:Class .
_:i rdf:type owl:Restriction .
first:P.3 rdf:type owl:DatatypeProperty .
_:i owl:onProperty first:P.3 .
_:i owl:cardinality "0"^^xsd:unsignedByte  .
first:C.3 owl:equivalentClass _:i .
first:C.2 rdf:type owl:Class .
_:k rdf:type owl:Restriction .
first:P.2 rdf:type owl:ObjectProperty .
_:k owl:onProperty first:P.2 .
_:k owl:cardinality "0"^^xsd:short  .
first:C.2 owl:equivalentClass _:k .
first:A.4 rdf:type owl:Class .
oiled:p1 rdf:type owl:Class .
_:m rdf:type owl:Restriction .
oiled:invR rdf:type owl:ObjectProperty .
_:m owl:onProperty oiled:invR .
_:m owl:allValuesFrom first:C.2 .
_:o rdf:first _:m .
_:o rdf:rest rdf:nil .
_:q rdf:first oiled:p1 .
_:q rdf:rest _:o .
first:A.4 owl:intersectionOf _:q .
first:C.2.comp rdf:type owl:Class .
_:s rdf:type owl:Restriction .
_:s owl:onProperty first:P.2 .
_:s owl:minCardinality "1"^^xsd:short  .
first:C.2.comp owl:equivalentClass _:s .
oiled:p1 rdf:type owl:Class .
first:C.3 rdf:type owl:Class .
_:u rdf:first first:C.3 .
_:u rdf:rest rdf:nil .
_:w rdf:first oiled:p1 .
_:w rdf:rest _:u .
first:C.2.comp owl:intersectionOf _:w .
first:V.5 rdf:type owl:Class .
_:y rdf:type owl:Restriction .
oiled:r rdf:type owl:ObjectProperty .
_:y owl:onProperty oiled:r .
_:y owl:someValuesFrom first:A.4 .
first:V.5 owl:equivalentClass _:y .
first:C.3.comp rdf:type owl:Class .
_:a1 rdf:type owl:Restriction .
_:a1 owl:onProperty first:P.3 .
_:a1 owl:minCardinality "1"^^xsd:unsignedByte  .
first:C.3.comp owl:equivalentClass _:a1 .
_:c1 rdf:type owl:Restriction .
oiled:r rdf:type owl:ObjectProperty .
_:c1 owl:onProperty oiled:r .
oiled:p1 rdf:type owl:Class .
_:c1 owl:allValuesFrom oiled:p1 .
first:C.3.comp owl:equivalentClass _:c1 .
oiled:p1 rdf:type owl:Class .
_:e1 rdf:type owl:Restriction .
_:e1 owl:onProperty first:P.1 .
_:e1 owl:maxCardinality "0"^^xsd:int  .
oiled:p1 owl:equivalentClass _:e1 .
oiled:f rdf:type owl:ObjectProperty .
oiled:invF rdf:type owl:ObjectProperty .
oiled:invF owl:inverseOf oiled:f .
oiled:r rdf:type owl:ObjectProperty .
oiled:r rdf:type owl:TransitiveProperty .
oiled:invR rdf:type owl:ObjectProperty .
oiled:invR owl:inverseOf oiled:r .
_:g1 rdf:type oiled:Satisfiable .
_:i1 rdf:type owl:Restriction .
_:i1 owl:onProperty oiled:f .
_:i1 owl:maxCardinality "1"^^xsd:nonNegativeInteger  .
owl:Thing rdfs:subClassOf _:i1 .

Lite FullInconsistent document.629
Description: (informative) <description-logic/Manifest629#test>
DL Test: t7.2
N3 format is informative.
LiteInconsistent: <description-logic/inconsistent629>
<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/inconsistent629">
 <owl:Ontology rdf:about=""/>
 <owl:Class rdf:about="http://oiled.man.example.net/test#p1.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:ID="V.3">
  <owl:equivalentClass>
   <owl:Restriction>
    <owl:onProperty>
     <owl:ObjectProperty rdf:about="http://oiled.man.example.net/test#r"/>
    </owl:onProperty>
    <owl:someValuesFrom>
     <owl:Class rdf:about="#A.2"/>
    </owl:someValuesFrom>
   </owl:Restriction>
  </owl:equivalentClass>
 </owl:Class>
 <owl:Class rdf:ID="A.2">
  <owl:intersectionOf rdf:parseType="Collection">
   <owl:Class rdf:about="http://oiled.man.example.net/test#p1"/>
   <owl:Restriction>
    <owl:onProperty>
     <owl:ObjectProperty rdf:about="http://oiled.man.example.net/test#invR"/>
    </owl:onProperty>
    <owl:allValuesFrom rdf:resource="http://oiled.man.example.net/test#p1.comp"/>
   </owl:Restriction>
  </owl:intersectionOf>
 </owl:Class>
 <owl:Class rdf:about="http://oiled.man.example.net/test#Unsatisfiable">
  <owl:intersectionOf rdf:parseType="Collection">
   <owl:Class rdf:about="http://oiled.man.example.net/test#p1"/>
   <owl:Restriction>
    <owl:onProperty>
     <owl:ObjectProperty rdf:about="http://oiled.man.example.net/test#r"/>
    </owl:onProperty>
    <owl:someValuesFrom rdf:resource="#V.3"/>
   </owl:Restriction>
  </owl:intersectionOf>
 </owl:Class>
 <owl:Class rdf:about="http://oiled.man.example.net/test#p1">
  <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:ObjectProperty rdf:about="http://oiled.man.example.net/test#f"/>
 <owl:ObjectProperty rdf:about="http://oiled.man.example.net/test#invF">
  <owl:inverseOf rdf:resource="http://oiled.man.example.net/test#f"/>
 </owl:ObjectProperty>
 <owl:ObjectProperty rdf:about="http://oiled.man.example.net/test#r">
  <rdf:type rdf:resource="/2002/07/owl#TransitiveProperty"/>
 </owl:ObjectProperty>
 <owl:ObjectProperty rdf:about="http://oiled.man.example.net/test#invR">
  <owl:inverseOf rdf:resource="http://oiled.man.example.net/test#r"/>
 </owl:ObjectProperty>
 <oiled:Unsatisfiable/>
 <rdf:Description rdf:about="/2002/07/owl#Thing">
  <rdfs:subClassOf>
   <owl:Restriction>
    <owl:onProperty rdf:resource="http://oiled.man.example.net/test#f"/>
    <owl:maxCardinality rdf:datatype="/2001/XMLSchema#nonNegativeInteger"
    >1</owl:maxCardinality>
   </owl:Restriction>
  </rdfs:subClassOf>
 </rdf:Description>
</rdf:RDF>
<description-logic/inconsistent629> rdf:type owl:Ontology .
oiled:p1.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:p1.comp owl:equivalentClass _:a .
first:V.3 rdf:type owl:Class .
_:c rdf:type owl:Restriction .
oiled:r rdf:type owl:ObjectProperty .
_:c owl:onProperty oiled:r .
first:A.2 rdf:type owl:Class .
_:c owl:someValuesFrom first:A.2 .
first:V.3 owl:equivalentClass _:c .
first:A.2 rdf:type owl:Class .
oiled:p1 rdf:type owl:Class .
_:e rdf:type owl:Restriction .
oiled:invR rdf:type owl:ObjectProperty .
_:e owl:onProperty oiled:invR .
_:e owl:allValuesFrom oiled:p1.comp .
_:g rdf:first _:e .
_:g rdf:rest rdf:nil .
_:i rdf:first oiled:p1 .
_:i rdf:rest _:g .
first:A.2 owl:intersectionOf _:i .
oiled:Unsatisfiable rdf:type owl:Class .
oiled:p1 rdf:type owl:Class .
_:k rdf:type owl:Restriction .
oiled:r rdf:type owl:ObjectProperty .
_:k owl:onProperty oiled:r .
_:k owl:someValuesFrom first:V.3 .
_:m rdf:first _:k .
_:m rdf:rest rdf:nil .
_:o rdf:first oiled:p1 .
_:o rdf:rest _:m .
oiled:Unsatisfiable owl:intersectionOf _:o .
oiled:p1 rdf:type owl:Class .
_:q rdf:type owl:Restriction .
_:q owl:onProperty first:P.1 .
_:q owl:maxCardinality "0"^^xsd:int  .
oiled:p1 owl:equivalentClass _:q .
oiled:f rdf:type owl:ObjectProperty .
oiled:invF rdf:type owl:ObjectProperty .
oiled:invF owl:inverseOf oiled:f .
oiled:r rdf:type owl:ObjectProperty .
oiled:r rdf:type owl:TransitiveProperty .
oiled:invR rdf:type owl:ObjectProperty .
oiled:invR owl:inverseOf oiled:r .
_:s rdf:type oiled:Unsatisfiable .
_:u rdf:type owl:Restriction .
_:u owl:onProperty oiled:f .
_:u owl:maxCardinality "1"^^xsd:nonNegativeInteger  .
owl:Thing rdfs:subClassOf _:u .

Lite FullInconsistent document.630
Description: (informative) <description-logic/Manifest630#test>
DL Test: t7.3
N3 format is informative.
LiteInconsistent: <description-logic/inconsistent630>
<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/inconsistent630">
 <owl:Ontology rdf:about=""/>
 <owl:Class rdf:about="http://oiled.man.example.net/test#p1.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:ID="A.2">
  <owl:intersectionOf rdf:parseType="Collection">
   <owl:Class rdf:about="http://oiled.man.example.net/test#p1"/>
   <owl:Restriction>
    <owl:onProperty>
     <owl:ObjectProperty rdf:about="http://oiled.man.example.net/test#invF"/>
    </owl:onProperty>
    <owl:someValuesFrom>
     <owl:Class rdf:about="#V.3"/>
    </owl:someValuesFrom>
   </owl:Restriction>
  </owl:intersectionOf>
 </owl:Class>
 <owl:Class rdf:about="http://oiled.man.example.net/test#Unsatisfiable">
  <owl:equivalentClass>
   <owl:Restriction>
    <owl:onProperty>
     <owl:ObjectProperty rdf:about="http://oiled.man.example.net/test#f"/>
    </owl:onProperty>
    <owl:someValuesFrom rdf:resource="#A.2"/>
   </owl:Restriction>
  </owl:equivalentClass>
 </owl:Class>
 <owl:Class rdf:ID="V.3">
  <owl:equivalentClass>
   <owl:Restriction>
    <owl:onProperty rdf:resource="http://oiled.man.example.net/test#f"/>
    <owl:someValuesFrom rdf:resource="http://oiled.man.example.net/test#p1.comp"/>
   </owl:Restriction>
  </owl:equivalentClass>
 </owl:Class>
 <owl:Class rdf:about="http://oiled.man.example.net/test#p1">
  <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:ObjectProperty rdf:about="http://oiled.man.example.net/test#invF">
  <owl:inverseOf rdf:resource="http://oiled.man.example.net/test#f"/>
 </owl:ObjectProperty>
 <owl:ObjectProperty rdf:about="http://oiled.man.example.net/test#r">
  <rdf:type rdf:resource="/2002/07/owl#TransitiveProperty"/>
 </owl:ObjectProperty>
 <owl:ObjectProperty rdf:about="http://oiled.man.example.net/test#invR">
  <owl:inverseOf rdf:resource="http://oiled.man.example.net/test#r"/>
 </owl:ObjectProperty>
 <oiled:Unsatisfiable/>
 <rdf:Description rdf:about="/2002/07/owl#Thing">
  <rdfs:subClassOf>
   <owl:Restriction>
    <owl:onProperty rdf:resource="http://oiled.man.example.net/test#f"/>
    <owl:maxCardinality rdf:datatype="/2001/XMLSchema#nonNegativeInteger"
    >1</owl:maxCardinality>
   </owl:Restriction>
  </rdfs:subClassOf>
 </rdf:Description>
</rdf:RDF>
<description-logic/inconsistent630> rdf:type owl:Ontology .
oiled:p1.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:p1.comp owl:equivalentClass _:a .
first:A.2 rdf:type owl:Class .
oiled:p1 rdf:type owl:Class .
_:c rdf:type owl:Restriction .
oiled:invF rdf:type owl:ObjectProperty .
_:c owl:onProperty oiled:invF .
first:V.3 rdf:type owl:Class .
_:c owl:someValuesFrom first:V.3 .
_:e rdf:first _:c .
_:e rdf:rest rdf:nil .
_:g rdf:first oiled:p1 .
_:g rdf:rest _:e .
first:A.2 owl:intersectionOf _:g .
oiled:Unsatisfiable rdf:type owl:Class .
_:i rdf:type owl:Restriction .
oiled:f rdf:type owl:ObjectProperty .
_:i owl:onProperty oiled:f .
_:i owl:someValuesFrom first:A.2 .
oiled:Unsatisfiable owl:equivalentClass _:i .
first:V.3 rdf:type owl:Class .
_:k rdf:type owl:Restriction .
_:k owl:onProperty oiled:f .
_:k owl:someValuesFrom oiled:p1.comp .
first:V.3 owl:equivalentClass _:k .
oiled:p1 rdf:type owl:Class .
_:m rdf:type owl:Restriction .
_:m owl:onProperty first:P.1 .
_:m owl:maxCardinality "0"^^xsd:int  .
oiled:p1 owl:equivalentClass _:m .
oiled:invF rdf:type owl:ObjectProperty .
oiled:invF owl:inverseOf oiled:f .
oiled:r rdf:type owl:ObjectProperty .
oiled:r rdf:type owl:TransitiveProperty .
oiled:invR rdf:type owl:ObjectProperty .
oiled:invR owl:inverseOf oiled:r .
_:o rdf:type oiled:Unsatisfiable .
_:q rdf:type owl:Restriction .
_:q owl:onProperty oiled:f .
_:q owl:maxCardinality "1"^^xsd:nonNegativeInteger  .
owl:Thing rdfs:subClassOf _:q .

Lite FullConsistent document.631
Description: (informative) <description-logic/Manifest631#test>
DL Test: t7f.1
N3 format is informative.
LiteConsistent: <description-logic/consistent631>
<rdf:RDF
    xmlns:oiled="http://oiled.man.example.net/test#"
    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/description-logic/consistent631">
 <owl:Ontology rdf:about=""/>
 <owl:Class rdf:about="http://oiled.man.example.net/test#Satisfiable">
  <owl:intersectionOf rdf:parseType="Collection">
   <owl:Class rdf:about="http://oiled.man.example.net/test#p1"/>
   <owl:Restriction>
    <owl:onProperty>
     <owl:ObjectProperty rdf:about="http://oiled.man.example.net/test#r"/>
    </owl:onProperty>
    <owl:someValuesFrom>
     <owl:Class rdf:about="#V.5"/>
    </owl:someValuesFrom>
   </owl:Restriction>
  </owl:intersectionOf>
 </owl:Class>
 <owl:Class rdf:about="http://oiled.man.example.net/test#p1.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:ID="C.2.comp">
  <owl:equivalentClass>
   <owl:Restriction>
    <owl:onProperty>
     <owl:ObjectProperty rdf:ID="P.2"/>
    </owl:onProperty>
    <owl:minCardinality rdf:datatype="/2001/XMLSchema#short"
    >1</owl:minCardinality>
   </owl:Restriction>
  </owl:equivalentClass>
  <owl:intersectionOf rdf:parseType="Collection">
   <owl:Class rdf:about="http://oiled.man.example.net/test#p1"/>
   <owl:Class rdf:about="#C.3"/>
  </owl:intersectionOf>
 </owl:Class>
 <owl:Class rdf:ID="C.3.comp">
  <owl:equivalentClass>
   <owl:Restriction>
    <owl:onProperty>
     <owl:DatatypeProperty rdf:ID="P.3"/>
    </owl:onProperty>
    <owl:minCardinality rdf:datatype="/2001/XMLSchema#unsignedByte"
    >1</owl:minCardinality>
   </owl:Restriction>
  </owl:equivalentClass>
  <owl:equivalentClass>
   <owl:Restriction>
    <owl:onProperty>
     <owl:ObjectProperty rdf:about="http://oiled.man.example.net/test#r"/>
    </owl:onProperty>
    <owl:allValuesFrom>
     <owl:Class rdf:about="http://oiled.man.example.net/test#p1"/>
    </owl:allValuesFrom>
   </owl:Restriction>
  </owl:equivalentClass>
 </owl:Class>
 <owl:Class rdf:ID="V.5">
  <owl:equivalentClass>
   <owl:Restriction>
    <owl:onProperty>
     <owl:ObjectProperty rdf:about="http://oiled.man.example.net/test#r"/>
    </owl:onProperty>
    <owl:someValuesFrom>
     <owl:Class rdf:about="#A.4"/>
    </owl:someValuesFrom>
   </owl:Restriction>
  </owl:equivalentClass>
 </owl:Class>
 <owl:Class rdf:ID="C.3">
  <owl:equivalentClass>
   <owl:Restriction>
    <owl:onProperty rdf:resource="#P.3"/>
    <owl:cardinality rdf:datatype="/2001/XMLSchema#unsignedByte"
    >0</owl:cardinality>
   </owl:Restriction>
  </owl:equivalentClass>
 </owl:Class>
 <owl:Class rdf:ID="C.2">
  <owl:equivalentClass>
   <owl:Restriction>
    <owl:onProperty rdf:resource="#P.2"/>
    <owl:cardinality rdf:datatype="/2001/XMLSchema#short"
    >0</owl:cardinality>
   </owl:Restriction>
  </owl:equivalentClass>
 </owl:Class>
 <owl:Class rdf:ID="A.4">
  <owl:intersectionOf rdf:parseType="Collection">
   <owl:Class rdf:about="http://oiled.man.example.net/test#p1"/>
   <owl:Restriction>
    <owl:onProperty>
     <owl:ObjectProperty rdf:about="http://oiled.man.example.net/test#invR"/>
    </owl:onProperty>
    <owl:allValuesFrom rdf:resource="#C.2"/>
   </owl:Restriction>
  </owl:intersectionOf>
 </owl:Class>
 <owl:Class rdf:about="http://oiled.man.example.net/test#p1">
  <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:ObjectProperty rdf:about="http://oiled.man.example.net/test#f">
  <rdf:type rdf:resource="/2002/07/owl#FunctionalProperty"/>
 </owl:ObjectProperty>
 <owl:ObjectProperty rdf:about="http://oiled.man.example.net/test#invF">
  <owl:inverseOf rdf:resource="http://oiled.man.example.net/test#f"/>
 </owl:ObjectProperty>
 <owl:ObjectProperty rdf:about="http://oiled.man.example.net/test#r">
  <rdf:type rdf:resource="/2002/07/owl#TransitiveProperty"/>
 </owl:ObjectProperty>
 <owl:ObjectProperty rdf:about="http://oiled.man.example.net/test#invR">
  <owl:inverseOf rdf:resource="http://oiled.man.example.net/test#r"/>
 </owl:ObjectProperty>
 <oiled:Satisfiable/>
</rdf:RDF>
<description-logic/consistent631> rdf:type owl:Ontology .
oiled:Satisfiable rdf:type owl:Class .
oiled:p1 rdf:type owl:Class .
_:a rdf:type owl:Restriction .
oiled:r rdf:type owl:ObjectProperty .
_:a owl:onProperty oiled:r .
first:V.5 rdf:type owl:Class .
_:a owl:someValuesFrom first:V.5 .
_:c rdf:first _:a .
_:c rdf:rest rdf:nil .
_:e rdf:first oiled:p1 .
_:e rdf:rest _:c .
oiled:Satisfiable owl:intersectionOf _:e .
oiled:p1.comp rdf:type owl:Class .
_:g rdf:type owl:Restriction .
first:P.1 rdf:type owl:DatatypeProperty .
_:g owl:onProperty first:P.1 .
_:g owl:minCardinality "1"^^xsd:int  .
oiled:p1.comp owl:equivalentClass _:g .
first:C.2.comp rdf:type owl:Class .
_:i rdf:type owl:Restriction .
first:P.2 rdf:type owl:ObjectProperty .
_:i owl:onProperty first:P.2 .
_:i owl:minCardinality "1"^^xsd:short  .
first:C.2.comp owl:equivalentClass _:i .
oiled:p1 rdf:type owl:Class .
first:C.3 rdf:type owl:Class .
_:k rdf:first first:C.3 .
_:k rdf:rest rdf:nil .
_:m rdf:first oiled:p1 .
_:m rdf:rest _:k .
first:C.2.comp owl:intersectionOf _:m .
first:C.3.comp rdf:type owl:Class .
_:o rdf:type owl:Restriction .
first:P.3 rdf:type owl:DatatypeProperty .
_:o owl:onProperty first:P.3 .
_:o owl:minCardinality "1"^^xsd:unsignedByte  .
first:C.3.comp owl:equivalentClass _:o .
_:q rdf:type owl:Restriction .
oiled:r rdf:type owl:ObjectProperty .
_:q owl:onProperty oiled:r .
oiled:p1 rdf:type owl:Class .
_:q owl:allValuesFrom oiled:p1 .
first:C.3.comp owl:equivalentClass _:q .
first:V.5 rdf:type owl:Class .
_:s rdf:type owl:Restriction .
oiled:r rdf:type owl:ObjectProperty .
_:s owl:onProperty oiled:r .
first:A.4 rdf:type owl:Class .
_:s owl:someValuesFrom first:A.4 .
first:V.5 owl:equivalentClass _:s .
first:C.3 rdf:type owl:Class .
_:u rdf:type owl:Restriction .
_:u owl:onProperty first:P.3 .
_:u owl:cardinality "0"^^xsd:unsignedByte  .
first:C.3 owl:equivalentClass _:u .
first:C.2 rdf:type owl:Class .
_:w rdf:type owl:Restriction .
_:w owl:onProperty first:P.2 .
_:w owl:cardinality "0"^^xsd:short  .
first:C.2 owl:equivalentClass _:w .
first:A.4 rdf:type owl:Class .
oiled:p1 rdf:type owl:Class .
_:y rdf:type owl:Restriction .
oiled:invR rdf:type owl:ObjectProperty .
_:y owl:onProperty oiled:invR .
_:y owl:allValuesFrom first:C.2 .
_:a1 rdf:first _:y .
_:a1 rdf:rest rdf:nil .
_:c1 rdf:first oiled:p1 .
_:c1 rdf:rest _:a1 .
first:A.4 owl:intersectionOf _:c1 .
oiled:p1 rdf:type owl:Class .
_:e1 rdf:type owl:Restriction .
_:e1 owl:onProperty first:P.1 .
_:e1 owl:maxCardinality "0"^^xsd:int  .
oiled:p1 owl:equivalentClass _:e1 .
oiled:f rdf:type owl:ObjectProperty .
oiled:f rdf:type owl:FunctionalProperty .
oiled:invF rdf:type owl:ObjectProperty .
oiled:invF owl:inverseOf oiled:f .
oiled:r rdf:type owl:ObjectProperty .
oiled:r rdf:type owl:TransitiveProperty .
oiled:invR rdf:type owl:ObjectProperty .
oiled:invR owl:inverseOf oiled:r .
_:g1 rdf:type oiled:Satisfiable .

Lite FullInconsistent document.632
Description: (informative) <description-logic/Manifest632#test>
DL Test: t7f.2
N3 format is informative.
LiteInconsistent: <description-logic/inconsistent632>
<rdf:RDF
    xmlns:oiled="http://oiled.man.example.net/test#"
    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/description-logic/inconsistent632">
 <owl:Ontology rdf:about=""/>
 <owl:Class rdf:about="http://oiled.man.example.net/test#p1.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:ID="A.2">
  <owl:intersectionOf rdf:parseType="Collection">
   <owl:Class rdf:about="http://oiled.man.example.net/test#p1"/>
   <owl:Restriction>
    <owl:onProperty>
     <owl:ObjectProperty rdf:about="http://oiled.man.example.net/test#invR"/>
    </owl:onProperty>
    <owl:allValuesFrom rdf:resource="http://oiled.man.example.net/test#p1.comp"/>
   </owl:Restriction>
  </owl:intersectionOf>
 </owl:Class>
 <owl:Class rdf:about="http://oiled.man.example.net/test#Unsatisfiable">
  <owl:intersectionOf rdf:parseType="Collection">
   <owl:Class rdf:about="http://oiled.man.example.net/test#p1"/>
   <owl:Restriction>
    <owl:onProperty>
     <owl:ObjectProperty rdf:about="http://oiled.man.example.net/test#r"/>
    </owl:onProperty>
    <owl:someValuesFrom>
     <owl:Class rdf:about="#V.3"/>
    </owl:someValuesFrom>
   </owl:Restriction>
  </owl:intersectionOf>
 </owl:Class>
 <owl:Class rdf:ID="V.3">
  <owl:equivalentClass>
   <owl:Restriction>
    <owl:onProperty>
     <owl:ObjectProperty rdf:about="http://oiled.man.example.net/test#r"/>
    </owl:onProperty>
    <owl:someValuesFrom rdf:resource="#A.2"/>
   </owl:Restriction>
  </owl:equivalentClass>
 </owl:Class>
 <owl:Class rdf:about="http://oiled.man.example.net/test#p1">
  <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:ObjectProperty rdf:about="http://oiled.man.example.net/test#f">
  <rdf:type rdf:resource="/2002/07/owl#FunctionalProperty"/>
 </owl:ObjectProperty>
 <owl:ObjectProperty rdf:about="http://oiled.man.example.net/test#invF">
  <owl:inverseOf rdf:resource="http://oiled.man.example.net/test#f"/>
 </owl:ObjectProperty>
 <owl:ObjectProperty rdf:about="http://oiled.man.example.net/test#r">
  <rdf:type rdf:resource="/2002/07/owl#TransitiveProperty"/>
 </owl:ObjectProperty>
 <owl:ObjectProperty rdf:about="http://oiled.man.example.net/test#invR">
  <owl:inverseOf rdf:resource="http://oiled.man.example.net/test#r"/>
 </owl:ObjectProperty>
 <oiled:Unsatisfiable/>
</rdf:RDF>
<description-logic/inconsistent632> rdf:type owl:Ontology .
oiled:p1.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:p1.comp owl:equivalentClass _:a .
first:A.2 rdf:type owl:Class .
oiled:p1 rdf:type owl:Class .
_:c rdf:type owl:Restriction .
oiled:invR rdf:type owl:ObjectProperty .
_:c owl:onProperty oiled:invR .
_:c owl:allValuesFrom oiled:p1.comp .
_:e rdf:first _:c .
_:e rdf:rest rdf:nil .
_:g rdf:first oiled:p1 .
_:g rdf:rest _:e .
first:A.2 owl:intersectionOf _:g .
oiled:Unsatisfiable rdf:type owl:Class .
oiled:p1 rdf:type owl:Class .
_:i rdf:type owl:Restriction .
oiled:r rdf:type owl:ObjectProperty .
_:i owl:onProperty oiled:r .
first:V.3 rdf:type owl:Class .
_:i owl:someValuesFrom first:V.3 .
_:k rdf:first _:i .
_:k rdf:rest rdf:nil .
_:m rdf:first oiled:p1 .
_:m rdf:rest _:k .
oiled:Unsatisfiable owl:intersectionOf _:m .
first:V.3 rdf:type owl:Class .
_:o rdf:type owl:Restriction .
oiled:r rdf:type owl:ObjectProperty .
_:o owl:onProperty oiled:r .
_:o owl:someValuesFrom first:A.2 .
first:V.3 owl:equivalentClass _:o .
oiled:p1 rdf:type owl:Class .
_:q rdf:type owl:Restriction .
_:q owl:onProperty first:P.1 .
_:q owl:maxCardinality "0"^^xsd:int  .
oiled:p1 owl:equivalentClass _:q .
oiled:f rdf:type owl:ObjectProperty .
oiled:f rdf:type owl:FunctionalProperty .
oiled:invF rdf:type owl:ObjectProperty .
oiled:invF owl:inverseOf oiled:f .
oiled:r rdf:type owl:ObjectProperty .
oiled:r rdf:type owl:TransitiveProperty .
oiled:invR rdf:type owl:ObjectProperty .
oiled:invR owl:inverseOf oiled:r .
_:s rdf:type oiled:Unsatisfiable .

Lite FullInconsistent document.633
Description: (informative) <description-logic/Manifest633#test>
DL Test: t7f.3
N3 format is informative.
LiteInconsistent: <description-logic/inconsistent633>
<rdf:RDF
    xmlns:oiled="http://oiled.man.example.net/test#"
    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/description-logic/inconsistent633">
 <owl:Ontology rdf:about=""/>
 <owl:Class rdf:ID="A.2">
  <owl:intersectionOf rdf:parseType="Collection">
   <owl:Class rdf:about="http://oiled.man.example.net/test#p1"/>
   <owl:Restriction>
    <owl:onProperty>
     <owl:ObjectProperty rdf:about="http://oiled.man.example.net/test#invF"/>
    </owl:onProperty>
    <owl:allValuesFrom>
     <owl:Class rdf:about="#V.3"/>
    </owl:allValuesFrom>
   </owl:Restriction>
  </owl:intersectionOf>
 </owl:Class>
 <owl:Class rdf:about="http://oiled.man.example.net/test#p1.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">
  <owl:equivalentClass>
   <owl:Restriction>
    <owl:onProperty>
     <owl:ObjectProperty rdf:about="http://oiled.man.example.net/test#f"/>
    </owl:onProperty>
    <owl:someValuesFrom rdf:resource="#A.2"/>
   </owl:Restriction>
  </owl:equivalentClass>
 </owl:Class>
 <owl:Class rdf:ID="V.3">
  <owl:equivalentClass>
   <owl:Restriction>
    <owl:onProperty>
     <owl:ObjectProperty rdf:about="http://oiled.man.example.net/test#f"/>
    </owl:onProperty>
    <owl:someValuesFrom rdf:resource="http://oiled.man.example.net/test#p1.comp"/>
   </owl:Restriction>
  </owl:equivalentClass>
 </owl:Class>
 <owl:Class rdf:about="http://oiled.man.example.net/test#p1">
  <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:ObjectProperty rdf:about="http://oiled.man.example.net/test#f">
  <rdf:type rdf:resource="/2002/07/owl#FunctionalProperty"/>
 </owl:ObjectProperty>
 <owl:ObjectProperty rdf:about="http://oiled.man.example.net/test#invF">
  <owl:inverseOf rdf:resource="http://oiled.man.example.net/test#f"/>
 </owl:ObjectProperty>
 <owl:ObjectProperty rdf:about="http://oiled.man.example.net/test#r">
  <rdf:type rdf:resource="/2002/07/owl#TransitiveProperty"/>
 </owl:ObjectProperty>
 <owl:ObjectProperty rdf:about="http://oiled.man.example.net/test#invR">
  <owl:inverseOf rdf:resource="http://oiled.man.example.net/test#r"/>
 </owl:ObjectProperty>
 <oiled:Unsatisfiable/>
</rdf:RDF>
<description-logic/inconsistent633> rdf:type owl:Ontology .
first:A.2 rdf:type owl:Class .
oiled:p1 rdf:type owl:Class .
_:a rdf:type owl:Restriction .
oiled:invF rdf:type owl:ObjectProperty .
_:a owl:onProperty oiled:invF .
first:V.3 rdf:type owl:Class .
_:a owl:allValuesFrom first:V.3 .
_:c rdf:first _:a .
_:c rdf:rest rdf:nil .
_:e rdf:first oiled:p1 .
_:e rdf:rest _:c .
first:A.2 owl:intersectionOf _:e .
oiled:p1.comp rdf:type owl:Class .
_:g rdf:type owl:Restriction .
first:P.1 rdf:type owl:DatatypeProperty .
_:g owl:onProperty first:P.1 .
_:g owl:minCardinality "1"^^xsd:int  .
oiled:p1.comp owl:equivalentClass _:g .
oiled:Unsatisfiable rdf:type owl:Class .
_:i rdf:type owl:Restriction .
oiled:f rdf:type owl:ObjectProperty .
_:i owl:onProperty oiled:f .
_:i owl:someValuesFrom first:A.2 .
oiled:Unsatisfiable owl:equivalentClass _:i .
first:V.3 rdf:type owl:Class .
_:k rdf:type owl:Restriction .
oiled:f rdf:type owl:ObjectProperty .
_:k owl:onProperty oiled:f .
_:k owl:someValuesFrom oiled:p1.comp .
first:V.3 owl:equivalentClass _:k .
oiled:p1 rdf:type owl:Class .
_:m rdf:type owl:Restriction .
_:m owl:onProperty first:P.1 .
_:m owl:maxCardinality "0"^^xsd:int  .
oiled:p1 owl:equivalentClass _:m .
oiled:f rdf:type owl:ObjectProperty .
oiled:f rdf:type owl:FunctionalProperty .
oiled:invF rdf:type owl:ObjectProperty .
oiled:invF owl:inverseOf oiled:f .
oiled:r rdf:type owl:ObjectProperty .
oiled:r rdf:type owl:TransitiveProperty .
oiled:invR rdf:type owl:ObjectProperty .
oiled:invR owl:inverseOf oiled:r .
_:o rdf:type oiled:Unsatisfiable .

Lite FullConsistent document.634
Description: (informative) <description-logic/Manifest634#test>
DL Test: t8.1
N3 format is informative.
LiteConsistent: <description-logic/consistent634>
<rdf:RDF
    xmlns:oiled="http://oiled.man.example.net/test#"
    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/description-logic/consistent634">
 <owl:Ontology rdf:about=""/>
 <owl:Class rdf:about="http://oiled.man.example.net/test#Satisfiable">
  <owl:intersectionOf rdf:parseType="Collection">
   <owl:Restriction>
    <owl:onProperty>
     <owl:ObjectProperty rdf:about="http://oiled.man.example.net/test#r"/>
    </owl:onProperty>
    <owl:someValuesFrom>
     <owl:Class rdf:about="#V.4"/>
    </owl:someValuesFrom>
   </owl:Restriction>
   <owl:Restriction>
    <owl:onProperty rdf:resource="http://oiled.man.example.net/test#r"/>
    <owl:someValuesFrom>
     <owl:Class rdf:about="#V.5"/>
    </owl:someValuesFrom>
   </owl:Restriction>
  </owl:intersectionOf>
 </owl:Class>
 <owl:Class rdf:about="http://oiled.man.example.net/test#p.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:ID="V.5">
  <owl:equivalentClass>
   <owl:Restriction>
    <owl:onProperty>
     <owl:ObjectProperty rdf:about="http://oiled.man.example.net/test#invR"/>
    </owl:onProperty>
    <owl:allValuesFrom>
     <owl:Class rdf:about="#V.3"/>
    </owl:allValuesFrom>
   </owl:Restriction>
  </owl:equivalentClass>
 </owl:Class>
 <owl:Class rdf:ID="V.4">
  <owl:equivalentClass>
   <owl:Restriction>
    <owl:onProperty>
     <owl:ObjectProperty rdf:about="http://oiled.man.example.net/test#invR"/>
    </owl:onProperty>
    <owl:allValuesFrom>
     <owl:Class rdf:about="#V.2"/>
    </owl:allValuesFrom>
   </owl:Restriction>
  </owl:equivalentClass>
 </owl:Class>
 <owl:Class rdf:ID="V.3">
  <owl:equivalentClass>
   <owl:Restriction>
    <owl:onProperty>
     <owl:ObjectProperty rdf:about="http://oiled.man.example.net/test#r1"/>
    </owl:onProperty>
    <owl:allValuesFrom rdf:resource="http://oiled.man.example.net/test#p.comp"/>
   </owl:Restriction>
  </owl:equivalentClass>
 </owl:Class>
 <owl:Class rdf:ID="V.2">
  <owl:equivalentClass>
   <owl:Restriction>
    <owl:onProperty rdf:resource="http://oiled.man.example.net/test#r1"/>
    <owl:allValuesFrom>
     <owl:Class rdf:about="http://oiled.man.example.net/test#p"/>
    </owl:allValuesFrom>
   </owl:Restriction>
  </owl:equivalentClass>
 </owl:Class>
 <owl:Class rdf:about="http://oiled.man.example.net/test#p">
  <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:ObjectProperty rdf:about="http://oiled.man.example.net/test#invR">
  <owl:inverseOf rdf:resource="http://oiled.man.example.net/test#r"/>
 </owl:ObjectProperty>
 <oiled:Satisfiable/>
</rdf:RDF>
<description-logic/consistent634> rdf:type owl:Ontology .
oiled:Satisfiable rdf:type owl:Class .
_:a rdf:type owl:Restriction .
oiled:r rdf:type owl:ObjectProperty .
_:a owl:onProperty oiled:r .
first:V.4 rdf:type owl:Class .
_:a owl:someValuesFrom first:V.4 .
_:c rdf:type owl:Restriction .
_:c owl:onProperty oiled:r .
first:V.5 rdf:type owl:Class .
_:c owl:someValuesFrom first:V.5 .
_:e rdf:first _:c .
_:e rdf:rest rdf:nil .
_:g rdf:first _:a .
_:g rdf:rest _:e .
oiled:Satisfiable owl:intersectionOf _:g .
oiled:p.comp rdf:type owl:Class .
_:i rdf:type owl:Restriction .
first:P.1 rdf:type owl:DatatypeProperty .
_:i owl:onProperty first:P.1 .
_:i owl:minCardinality "1"^^xsd:int  .
oiled:p.comp owl:equivalentClass _:i .
first:V.5 rdf:type owl:Class .
_:k rdf:type owl:Restriction .
oiled:invR rdf:type owl:ObjectProperty .
_:k owl:onProperty oiled:invR .
first:V.3 rdf:type owl:Class .
_:k owl:allValuesFrom first:V.3 .
first:V.5 owl:equivalentClass _:k .
first:V.4 rdf:type owl:Class .
_:m rdf:type owl:Restriction .
oiled:invR rdf:type owl:ObjectProperty .
_:m owl:onProperty oiled:invR .
first:V.2 rdf:type owl:Class .
_:m owl:allValuesFrom first:V.2 .
first:V.4 owl:equivalentClass _:m .
first:V.3 rdf:type owl:Class .
_:o rdf:type owl:Restriction .
oiled:r1 rdf:type owl:ObjectProperty .
_:o owl:onProperty oiled:r1 .
_:o owl:allValuesFrom oiled:p.comp .
first:V.3 owl:equivalentClass _:o .
first:V.2 rdf:type owl:Class .
_:q rdf:type owl:Restriction .
_:q owl:onProperty oiled:r1 .
oiled:p rdf:type owl:Class .
_:q owl:allValuesFrom oiled:p .
first:V.2 owl:equivalentClass _:q .
oiled:p rdf:type owl:Class .
_:s rdf:type owl:Restriction .
_:s owl:onProperty first:P.1 .
_:s owl:maxCardinality "0"^^xsd:int  .
oiled:p owl:equivalentClass _:s .
oiled:invR rdf:type owl:ObjectProperty .
oiled:invR owl:inverseOf oiled:r .
_:u rdf:type oiled:Satisfiable .

Lite FullInconsistent document.641
Description: (informative) <description-logic/Manifest641#test>
DL Test: heinsohn1.1 Tbox tests from [Heinsohn et al.] Tests incoherency caused by disjoint concept
N3 format is informative.
LiteInconsistent: <description-logic/inconsistent641>
<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/inconsistent641">
 <owl:Ontology rdf:about=""/>
 <owl:Class rdf:about="http://oiled.man.example.net/test#c1">
  <rdfs:subClassOf>
   <owl:Class rdf:about="http://oiled.man.example.net/test#d1"/>
  </rdfs:subClassOf>
  <rdfs:subClassOf>
   <owl:Class rdf:about="http://oiled.man.example.net/test#d1.comp"/>
  </rdfs:subClassOf>
 </owl:Class>
 <owl:Class rdf:about="http://oiled.man.example.net/test#e3">
  <rdfs:subClassOf>
   <owl:Class rdf:about="http://oiled.man.example.net/test#c"/>
  </rdfs:subClassOf>
 </owl:Class>
 <owl:Class rdf:about="http://oiled.man.example.net/test#d1">
  <owl:equivalentClass>
   <owl:Restriction>
    <owl:onProperty>
     <owl:ObjectProperty rdf:ID="P.2"/>
    </owl:onProperty>
    <owl:minCardinality rdf:datatype="/2001/XMLSchema#short"
    >1</owl:minCardinality>
   </owl:Restriction>
  </owl:equivalentClass>
 </owl:Class>
 <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#f">
  <rdfs:subClassOf>
   <owl:Class rdf:about="http://oiled.man.example.net/test#d"/>
  </rdfs:subClassOf>
 </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#Unsatisfiable">
  <owl:intersectionOf rdf:parseType="Collection">
   <owl:Class rdf:about="http://oiled.man.example.net/test#c"/>
   <owl:Class rdf:about="http://oiled.man.example.net/test#d"/>
  </owl:intersectionOf>
 </owl:Class>
 <owl:Class rdf:about="http://oiled.man.example.net/test#c">
  <rdfs:subClassOf rdf:resource="http://oiled.man.example.net/test#d.comp"/>
 </owl:Class>
 <owl:Class rdf:about="http://oiled.man.example.net/test#d1.comp">
  <owl:equivalentClass>
   <owl:Restriction>
    <owl:onProperty rdf:resource="#P.2"/>
    <owl:cardinality rdf:datatype="/2001/XMLSchema#short"
    >0</owl:cardinality>
   </owl:Restriction>
  </owl:equivalentClass>
 </owl:Class>
 <owl:ObjectProperty rdf:about="http://oiled.man.example.net/test#r"/>
 <oiled:Unsatisfiable/>
</rdf:RDF>
<description-logic/inconsistent641> rdf:type owl:Ontology .
oiled:c1 rdf:type owl:Class .
oiled:d1 rdf:type owl:Class .
oiled:c1 rdfs:subClassOf oiled:d1 .
oiled:d1.comp rdf:type owl:Class .
oiled:c1 rdfs:subClassOf oiled:d1.comp .
oiled:e3 rdf:type owl:Class .
oiled:c rdf:type owl:Class .
oiled:e3 rdfs:subClassOf oiled:c .
oiled:d1 rdf:type owl:Class .
_:a rdf:type owl:Restriction .
first:P.2 rdf:type owl:ObjectProperty .
_:a owl:onProperty first:P.2 .
_:a owl:minCardinality "1"^^xsd:short  .
oiled:d1 owl:equivalentClass _:a .
oiled:d.comp rdf:type owl:Class .
_:c rdf:type owl:Restriction .
first:P.1 rdf:type owl:DatatypeProperty .
_:c owl:onProperty first:P.1 .
_:c owl:minCardinality "1"^^xsd:int  .
oiled:d.comp owl:equivalentClass _:c .
oiled:f rdf:type owl:Class .
oiled:d rdf:type owl:Class .
oiled:f rdfs:subClassOf oiled:d .
oiled:d rdf:type owl:Class .
_:e rdf:type owl:Restriction .
_:e owl:onProperty first:P.1 .
_:e owl:maxCardinality "0"^^xsd:int  .
oiled:d owl:equivalentClass _:e .
oiled:Unsatisfiable rdf:type owl:Class .
oiled:c rdf:type owl:Class .
oiled:d rdf:type owl:Class .
_:g rdf:first oiled:d .
_:g rdf:rest rdf:nil .
_:i rdf:first oiled:c .
_:i rdf:rest _:g .
oiled:Unsatisfiable owl:intersectionOf _:i .
oiled:c rdf:type owl:Class .
oiled:c rdfs:subClassOf oiled:d.comp .
oiled:d1.comp rdf:type owl:Class .
_:k rdf:type owl:Restriction .
_:k owl:onProperty first:P.2 .
_:k owl:cardinality "0"^^xsd:short  .
oiled:d1.comp owl:equivalentClass _:k .
oiled:r rdf:type owl:ObjectProperty .
_:m rdf:type oiled:Unsatisfiable .

Lite FullInconsistent document.642
Description: (informative) <description-logic/Manifest642#test>
DL Test: heinsohn1.2 Tbox tests from [Heinsohn et al.] Tests incoherency caused by disjoint concept
N3 format is informative.
LiteInconsistent: <description-logic/inconsistent642>
<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/inconsistent642">
 <owl:Ontology rdf:about=""/>
 <owl:Class rdf:about="http://oiled.man.example.net/test#e3">
  <rdfs:subClassOf>
   <owl:Class rdf:about="http://oiled.man.example.net/test#c"/>
  </rdfs:subClassOf>
 </owl:Class>
 <owl:Class rdf:about="http://oiled.man.example.net/test#c1">
  <rdfs:subClassOf>
   <owl:Class rdf:about="http://oiled.man.example.net/test#d1"/>
  </rdfs:subClassOf>
  <rdfs:subClassOf>
   <owl:Class rdf:about="http://oiled.man.example.net/test#d1.comp"/>
  </rdfs:subClassOf>
 </owl:Class>
 <owl:Class rdf:ID="A.3">
  <owl:intersectionOf rdf:parseType="Collection">
   <owl:Class rdf:about="http://oiled.man.example.net/test#c"/>
   <owl:Class rdf:about="http://oiled.man.example.net/test#d"/>
  </owl:intersectionOf>
 </owl:Class>
 <owl:Class rdf:about="http://oiled.man.example.net/test#d1">
  <owl:equivalentClass>
   <owl:Restriction>
    <owl:onProperty>
     <owl:ObjectProperty rdf:ID="P.2"/>
    </owl:onProperty>
    <owl:minCardinality rdf:datatype="/2001/XMLSchema#short"
    >1</owl:minCardinality>
   </owl:Restriction>
  </owl:equivalentClass>
 </owl:Class>
 <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#f">
  <rdfs:subClassOf>
   <owl:Class rdf:about="http://oiled.man.example.net/test#d"/>
  </rdfs:subClassOf>
 </owl:Class>
 <owl:Class rdf:about="http://oiled.man.example.net/test#Unsatisfiable">
  <owl:intersectionOf rdf:parseType="Collection">
   <owl:Restriction>
    <owl:onProperty>
     <owl:ObjectProperty rdf:about="http://oiled.man.example.net/test#r"/>
    </owl:onProperty>
    <owl:allValuesFrom rdf:resource="#A.3"/>
   </owl:Restriction>
   <owl:Restriction>
    <owl:onProperty rdf:resource="http://oiled.man.example.net/test#r"/>
    <owl:someValuesFrom>
     <owl:Class rdf:about="/2002/07/owl#Thing"/>
    </owl:someValuesFrom>
   </owl:Restriction>
  </owl:intersectionOf>
 </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 rdf:resource="http://oiled.man.example.net/test#d.comp"/>
 </owl:Class>
 <owl:Class rdf:about="http://oiled.man.example.net/test#d1.comp">
  <owl:equivalentClass>
   <owl:Restriction>
    <owl:onProperty rdf:resource="#P.2"/>
    <owl:cardinality rdf:datatype="/2001/XMLSchema#short"
    >0</owl:cardinality>
   </owl:Restriction>
  </owl:equivalentClass>
 </owl:Class>
 <oiled:Unsatisfiable/>
</rdf:RDF>
<description-logic/inconsistent642> rdf:type owl:Ontology .
oiled:e3 rdf:type owl:Class .
oiled:c rdf:type owl:Class .
oiled:e3 rdfs:subClassOf oiled:c .
oiled:c1 rdf:type owl:Class .
oiled:d1 rdf:type owl:Class .
oiled:c1 rdfs:subClassOf oiled:d1 .
oiled:d1.comp rdf:type owl:Class .
oiled:c1 rdfs:subClassOf oiled:d1.comp .
first:A.3 rdf:type owl:Class .
oiled:c rdf:type owl:Class .
oiled:d rdf:type owl:Class .
_:a rdf:first oiled:d .
_:a rdf:rest rdf:nil .
_:c rdf:first oiled:c .
_:c rdf:rest _:a .
first:A.3 owl:intersectionOf _:c .
oiled:d1 rdf:type owl:Class .
_:e rdf:type owl:Restriction .
first:P.2 rdf:type owl:ObjectProperty .
_:e owl:onProperty first:P.2 .
_:e owl:minCardinality "1"^^xsd:short  .
oiled:d1 owl:equivalentClass _:e .
oiled:d.comp rdf:type owl:Class .
_:g rdf:type owl:Restriction .
first:P.1 rdf:type owl:DatatypeProperty .
_:g owl:onProperty first:P.1 .
_:g owl:minCardinality "1"^^xsd:int  .
oiled:d.comp owl:equivalentClass _:g .
oiled:f rdf:type owl:Class .
oiled:d rdf:type owl:Class .
oiled:f rdfs:subClassOf oiled:d .
oiled:Unsatisfiable rdf:type owl:Class .
_:i rdf:type owl:Restriction .
oiled:r rdf:type owl:ObjectProperty .
_:i owl:onProperty oiled:r .
_:i owl:allValuesFrom first:A.3 .
_:k rdf:type owl:Restriction .
_:k owl:onProperty oiled:r .
owl:Thing rdf:type owl:Class .
_:k owl:someValuesFrom owl:Thing .
_:m rdf:first _:k .
_:m rdf:rest rdf:nil .
_:o rdf:first _:i .
_:o rdf:rest _:m .
oiled:Unsatisfiable owl:intersectionOf _:o .
oiled:d rdf:type owl:Class .
_:q rdf:type owl:Restriction .
_:q owl:onProperty first:P.1 .
_:q owl:maxCardinality "0"^^xsd:int  .
oiled:d owl:equivalentClass _:q .
oiled:c rdf:type owl:Class .
oiled:c rdfs:subClassOf oiled:d.comp .
oiled:d1.comp rdf:type owl:Class .
_:s rdf:type owl:Restriction .
_:s owl:onProperty first:P.2 .
_:s owl:cardinality "0"^^xsd:short  .
oiled:d1.comp owl:equivalentClass _:s .
_:u rdf:type oiled:Unsatisfiable .

Lite FullInconsistent document.643
Description: (informative) <description-logic/Manifest643#test>
DL Test: heinsohn1.3 Tbox tests from [Heinsohn et al.] Tests incoherency caused by disjoint concept
N3 format is informative.
LiteInconsistent: <description-logic/inconsistent643>
<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/inconsistent643">
 <owl:Ontology rdf:about=""/>
 <owl:Class rdf:about="http://oiled.man.example.net/test#c1">
  <rdfs:subClassOf>
   <owl:Class rdf:about="http://oiled.man.example.net/test#d1"/>
  </rdfs:subClassOf>
  <rdfs:subClassOf>
   <owl:Class rdf:about="http://oiled.man.example.net/test#d1.comp"/>
  </rdfs:subClassOf>
 </owl:Class>
 <owl:Class rdf:about="http://oiled.man.example.net/test#e3">
  <rdfs:subClassOf>
   <owl:Class rdf:about="http://oiled.man.example.net/test#c"/>
  </rdfs:subClassOf>
 </owl:Class>
 <owl:Class rdf:about="http://oiled.man.example.net/test#d1">
  <owl:equivalentClass>
   <owl:Restriction>
    <owl:onProperty>
     <owl:ObjectProperty rdf:ID="P.2"/>
    </owl:onProperty>
    <owl:minCardinality rdf:datatype="/2001/XMLSchema#short"
    >1</owl:minCardinality>
   </owl:Restriction>
  </owl:equivalentClass>
 </owl:Class>
 <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#f">
  <rdfs:subClassOf>
   <owl:Class rdf:about="http://oiled.man.example.net/test#d"/>
  </rdfs:subClassOf>
 </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#Unsatisfiable">
  <owl:intersectionOf rdf:parseType="Collection">
   <owl:Class rdf:about="http://oiled.man.example.net/test#e3"/>
   <owl:Class rdf:about="http://oiled.man.example.net/test#f"/>
  </owl:intersectionOf>
 </owl:Class>
 <owl:Class rdf:about="http://oiled.man.example.net/test#c">
  <rdfs:subClassOf rdf:resource="http://oiled.man.example.net/test#d.comp"/>
 </owl:Class>
 <owl:Class rdf:about="http://oiled.man.example.net/test#d1.comp">
  <owl:equivalentClass>
   <owl:Restriction>
    <owl:onProperty rdf:resource="#P.2"/>
    <owl:cardinality rdf:datatype="/2001/XMLSchema#short"
    >0</owl:cardinality>
   </owl:Restriction>
  </owl:equivalentClass>
 </owl:Class>
 <owl:ObjectProperty rdf:about="http://oiled.man.example.net/test#r"/>
 <oiled:Unsatisfiable/>
</rdf:RDF>
<description-logic/inconsistent643> rdf:type owl:Ontology .
oiled:c1 rdf:type owl:Class .
oiled:d1 rdf:type owl:Class .
oiled:c1 rdfs:subClassOf oiled:d1 .
oiled:d1.comp rdf:type owl:Class .
oiled:c1 rdfs:subClassOf oiled:d1.comp .
oiled:e3 rdf:type owl:Class .
oiled:c rdf:type owl:Class .
oiled:e3 rdfs:subClassOf oiled:c .
oiled:d1 rdf:type owl:Class .
_:a rdf:type owl:Restriction .
first:P.2 rdf:type owl:ObjectProperty .
_:a owl:onProperty first:P.2 .
_:a owl:minCardinality "1"^^xsd:short  .
oiled:d1 owl:equivalentClass _:a .
oiled:d.comp rdf:type owl:Class .
_:c rdf:type owl:Restriction .
first:P.1 rdf:type owl:DatatypeProperty .
_:c owl:onProperty first:P.1 .
_:c owl:minCardinality "1"^^xsd:int  .
oiled:d.comp owl:equivalentClass _:c .
oiled:f rdf:type owl:Class .
oiled:d rdf:type owl:Class .
oiled:f rdfs:subClassOf oiled:d .
oiled:d rdf:type owl:Class .
_:e rdf:type owl:Restriction .
_:e owl:onProperty first:P.1 .
_:e owl:maxCardinality "0"^^xsd:int  .
oiled:d owl:equivalentClass _:e .
oiled:Unsatisfiable rdf:type owl:Class .
oiled:e3 rdf:type owl:Class .
oiled:f rdf:type owl:Class .
_:g rdf:first oiled:f .
_:g rdf:rest rdf:nil .
_:i rdf:first oiled:e3 .
_:i rdf:rest _:g .
oiled:Unsatisfiable owl:intersectionOf _:i .
oiled:c rdf:type owl:Class .
oiled:c rdfs:subClassOf oiled:d.comp .
oiled:d1.comp rdf:type owl:Class .
_:k rdf:type owl:Restriction .
_:k owl:onProperty first:P.2 .
_:k owl:cardinality "0"^^xsd:short  .
oiled:d1.comp owl:equivalentClass _:k .
oiled:r rdf:type owl:ObjectProperty .
_:m rdf:type oiled:Unsatisfiable .

7.3.4. Extended Cardinality Testing

DL FullPositive 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 FullNegative 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 FullPositive 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 FullNegative 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 .

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 FullConsistent document.001
Description: (informative) <miscellaneous/Manifest001#test>
Wine example taken from the guide.
Datatypes that may or may not be supported: xsd:positiveInteger,
N3 format is informative.
Namespaces:
@prefix food: <http://www.w3.org/2002/03owlt/miscellaneous/consistent002#> .
@prefix vin: <http://www.w3.org/2002/03owlt/miscellaneous/consistent001#> .
@prefix : <http://www.w3.org/2002/03owlt/miscellaneous/consistent001#> .
DLConsistent: <miscellaneous/consistent001>
<!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#" >
   ]>

<rdf:RDF
  xmlns     = "&vin;"
  xmlns:vin = "&vin;"
  xml:base  = "&vin;"
  xmlns:food= "&food;"
  xmlns:owl = "&owl;"
  xmlns:rdf = "http://www.w3.org/1999/02/22-rdf-syntax-ns#"
  xmlns:rdfs= "http://www.w3.org/2000/01/rdf-schema#"
  >

  <owl:Ontology rdf:about="">
    <rdfs:comment>An example OWL ontology</rdfs:comment>
    <owl:priorVersion>
      <owl:Ontology rdf:about="http://www.example.org/wine-020303"/>
    </owl:priorVersion>
    <owl:imports rdf:resource="http://www.w3.org/2002/03owlt/miscellaneous/consistent002"/>
    <rdfs:comment>Derived from the DAML Wine ontology at 
      http://ontolingua.stanford.edu/doc/chimaera/ontologies/wines.daml
      Substantially changed, in particular the Region based relations.
    </rdfs:comment>
    <rdfs:label>Wine Ontology</rdfs:label>
  </owl:Ontology>
  
  <owl:Class rdf:ID="Wine">
    <rdfs:subClassOf rdf:resource="&food;PotableLiquid" />
    <rdfs:subClassOf>
      <owl:Restriction>
        <owl:onProperty rdf:resource="#hasMaker" />
 <owl:cardinality rdf:datatype="&xsd;nonNegativeInteger">1</owl:cardinality>
      </owl:Restriction>
    </rdfs:subClassOf>
    <rdfs:subClassOf>
      <owl:Restriction>
        <owl:onProperty rdf:resource="#hasMaker" />
 <owl:allValuesFrom rdf:resource="#Winery" />
      </owl:Restriction>
    </rdfs:subClassOf>
    <rdfs:subClassOf>
      <owl:Restriction>
        <owl:onProperty rdf:resource="#madeFromGrape" />
  <owl:minCardinality rdf:datatype="&xsd;nonNegativeInteger">1</owl:minCardinality>
      </owl:Restriction>
    </rdfs:subClassOf>
    <rdfs:subClassOf>
      <owl:Restriction>
        <owl:onProperty rdf:resource="#hasSugar" />
        <owl:cardinality rdf:datatype="&xsd;nonNegativeInteger">1</owl:cardinality>
      </owl:Restriction>
    </rdfs:subClassOf>
    <rdfs:subClassOf>
      <owl:Restriction>
        <owl:onProperty rdf:resource="#hasFlavor" />
        <owl:cardinality rdf:datatype="&xsd;nonNegativeInteger">1</owl:cardinality>
      </owl:Restriction>
    </rdfs:subClassOf>
    <rdfs:subClassOf>
      <owl:Restriction>
        <owl:onProperty rdf:resource="#hasBody" />
        <owl:cardinality rdf:datatype="&xsd;nonNegativeInteger">1</owl:cardinality>
      </owl:Restriction>
    </rdfs:subClassOf>
    <rdfs:subClassOf>
      <owl:Restriction>
        <owl:onProperty rdf:resource="#hasColor" />
        <owl:cardinality rdf:datatype="&xsd;nonNegativeInteger">1</owl:cardinality>
      </owl:Restriction>
    </rdfs:subClassOf>
    <rdfs:subClassOf>
      <owl:Restriction>
        <owl:onProperty rdf:resource="#locatedIn"/> 
        <owl:someValuesFrom rdf:resource="&vin;Region"/>
      </owl:Restriction>
    </rdfs:subClassOf>
    <rdfs:label xml:lang="en">wine</rdfs:label>
    <rdfs:label xml:lang="fr">vin</rdfs:label>
  </owl:Class>
  
  <owl:Class rdf:ID="Vintage">
    <rdfs:subClassOf>
      <owl:Restriction>
        <owl:onProperty rdf:resource="#hasVintageYear"/>  
        <owl:cardinality rdf:datatype="&xsd;nonNegativeInteger">1</owl:cardinality>
      </owl:Restriction>
    </rdfs:subClassOf>
  </owl:Class>

  <owl:Class rdf:ID="WineGrape">
    <rdfs:subClassOf rdf:resource="&food;Grape" />
  </owl:Class>
  
  <owl:Class rdf:ID="WhiteWine">
    <owl:intersectionOf rdf:parseType="Collection">
      <owl:Class rdf:about="#Wine" />
      <owl:Restriction>
        <owl:onProperty rdf:resource="#hasColor" />
        <owl:hasValue rdf:resource="#White" />
      </owl:Restriction>
    </owl:intersectionOf>
  </owl:Class>
  
  <owl:Class rdf:ID="WhiteTableWine">
    <owl:intersectionOf rdf:parseType="Collection">
      <owl:Class rdf:about="#TableWine" />
      <owl:Restriction>
        <owl:onProperty rdf:resource="#hasColor" />
        <owl:hasValue rdf:resource="#White" />
      </owl:Restriction>
    </owl:intersectionOf>
  </owl:Class>
  
  <owl:Class rdf:ID="WhiteNonSweetWine">
    <owl:intersectionOf rdf:parseType="Collection">
      <owl:Class rdf:about="#WhiteWine" />
      <owl:Restriction>
        <owl:onProperty rdf:resource="#hasSugar" />
        <owl:allValuesFrom>
          <owl:Class>
            <owl:oneOf rdf:parseType="Collection">
              <owl:Thing rdf:about="#Dry" />
              <owl:Thing rdf:about="#OffDry" />
            </owl:oneOf>
          </owl:Class>
        </owl:allValuesFrom>
      </owl:Restriction>
    </owl:intersectionOf>
  </owl:Class>
  
  <owl:Class rdf:ID="WhiteLoire">
    <owl:intersectionOf rdf:parseType="Collection">
      <owl:Class rdf:about="#Loire" />
      <owl:Class rdf:about="#WhiteWine" />
    </owl:intersectionOf>
  </owl:Class>

  <owl:Class rdf:about="#WhiteLoire">
    <rdfs:subClassOf>
      <owl:Restriction>
        <owl:onProperty rdf:resource="#madeFromGrape" />
        <owl:allValuesFrom>
          <owl:Class>
            <owl:oneOf rdf:parseType="Collection">
              <owl:Thing rdf:about="#CheninBlancGrape" />
              <owl:Thing rdf:about="#PinotBlancGrape" />
              <owl:Thing rdf:about="#SauvignonBlancGrape" />
            </owl:oneOf>
          </owl:Class>
        </owl:allValuesFrom>
      </owl:Restriction>
    </rdfs:subClassOf>
  </owl:Class>
  
  <owl:Class rdf:ID="WhiteBurgundy">
    <owl:intersectionOf rdf:parseType="Collection">
      <owl:Class rdf:about="#Burgundy" />
      <owl:Class rdf:about="#WhiteWine" />
    </owl:intersectionOf>
  </owl:Class>

  <owl:Class rdf:about="#WhiteBurgundy">
    <rdfs:subClassOf>
      <owl:Restriction>
        <owl:onProperty rdf:resource="#madeFromGrape" />
        <owl:hasValue rdf:resource="#ChardonnayGrape" />
      </owl:Restriction>
    </rdfs:subClassOf>
    <rdfs:subClassOf>
      <owl:Restriction>
        <owl:onProperty rdf:resource="#madeFromGrape" />
        <owl:maxCardinality rdf:datatype="&xsd;nonNegativeInteger">1</owl:maxCardinality>
      </owl:Restriction>
    </rdfs:subClassOf>
  </owl:Class>
  
  <owl:Class rdf:ID="WhiteBordeaux">
    <owl:intersectionOf rdf:parseType="Collection">
      <owl:Class rdf:about="#Bordeaux" />
      <owl:Class rdf:about="#WhiteWine" />
    </owl:intersectionOf>
  </owl:Class>

  <owl:Class rdf:about="#WhiteBordeaux">
    <rdfs:subClassOf>
      <owl:Restriction>
        <owl:onProperty rdf:resource="#madeFromGrape" />
        <owl:allValuesFrom>
          <owl:Class>
            <owl:oneOf rdf:parseType="Collection">
              <owl:Thing rdf:about="#SemillonGrape" />
              <owl:Thing rdf:about="#SauvignonBlancGrape" />
            </owl:oneOf>
          </owl:Class>
        </owl:allValuesFrom>
      </owl:Restriction>
    </rdfs:subClassOf>
  </owl:Class>
  
  <owl:Class rdf:ID="Region" />

  <owl:ObjectProperty rdf:ID="locatedIn">
    <rdf:type rdf:resource="&owl;TransitiveProperty" />
    <rdfs:domain rdf:resource="http://www.w3.org/2002/07/owl#Thing" />
    <rdfs:range rdf:resource="#Region" />
  </owl:ObjectProperty>

  <owl:ObjectProperty rdf:ID="adjacentRegion">
    <rdf:type rdf:resource="&owl;SymmetricProperty" />
    <rdfs:domain rdf:resource="#Region" />
    <rdfs:range rdf:resource="#Region" />
  </owl:ObjectProperty>
  
  <owl:Class rdf:ID="VintageYear" />

  <owl:DatatypeProperty rdf:ID="yearValue">
    <rdfs:domain rdf:resource="#VintageYear" />    
    <rdfs:range  rdf:resource="&xsd;positiveInteger" />
  </owl:DatatypeProperty>
  
  <VintageYear rdf:ID="Year1998">
    <yearValue rdf:datatype="&xsd;positiveInteger">1998</yearValue>
  </VintageYear>

  <owl:ObjectProperty rdf:ID="hasVintageYear">
    <rdf:type rdf:resource="&owl;FunctionalProperty" />
    <rdfs:domain rdf:resource="#Vintage" />
    <rdfs:range  rdf:resource="#VintageYear" />
  </owl:ObjectProperty>
  
  <owl:ObjectProperty rdf:ID="madeFromGrape">
    <rdfs:subPropertyOf rdf:resource="&food;madeFromFruit" />
    <rdfs:domain rdf:resource="#Wine" />
    <rdfs:range rdf:resource="#WineGrape" />
  </owl:ObjectProperty>

  <owl:ObjectProperty rdf:ID="madeIntoWine">
    <owl:inverseOf rdf:resource="#madeFromGrape" />
  </owl:ObjectProperty>

  <owl:ObjectProperty rdf:ID="hasWineDescriptor">
    <rdfs:domain rdf:resource="#Wine" />
    <rdfs:range  rdf:resource="#WineDescriptor" />
  </owl:ObjectProperty>

  <owl:ObjectProperty rdf:ID="hasSugar">
    <rdf:type rdf:resource="&owl;FunctionalProperty" />
    <rdfs:subPropertyOf rdf:resource="#hasWineDescriptor" />
    <rdfs:range rdf:resource="#WineSugar" />
  </owl:ObjectProperty>
  
  <owl:ObjectProperty rdf:ID="hasBody">
    <rdf:type rdf:resource="&owl;FunctionalProperty" />
    <rdfs:subPropertyOf rdf:resource="#hasWineDescriptor" />
    <rdfs:range rdf:resource="#WineBody" />
  </owl:ObjectProperty>
  
  <owl:ObjectProperty rdf:ID="hasFlavor">
    <rdf:type rdf:resource="&owl;FunctionalProperty" />
    <rdfs:subPropertyOf rdf:resource="#hasWineDescriptor" />
    <rdfs:range rdf:resource="#WineFlavor" />
  </owl:ObjectProperty>
  
  <owl:ObjectProperty rdf:ID="hasColor">
    <rdf:type rdf:resource="&owl;FunctionalProperty" />
    <rdfs:subPropertyOf rdf:resource="#hasWineDescriptor" />
    <rdfs:domain rdf:resource="#Wine" />
    <rdfs:range rdf:resource="#WineColor" />
  </owl:ObjectProperty>

  <owl:ObjectProperty rdf:ID="hasMaker">
    <rdf:type rdf:resource="&owl;FunctionalProperty" />
  </owl:ObjectProperty>
  
  <owl:ObjectProperty rdf:ID="producesWine">
    <owl:inverseOf rdf:resource="#hasMaker" />
  </owl:ObjectProperty>

  <owl:Class rdf:ID="Zinfandel">
    <owl:intersectionOf rdf:parseType="Collection">
      <owl:Class rdf:about="#Wine" />
      <owl:Restriction>
        <owl:onProperty rdf:resource="#madeFromGrape" />
        <owl:hasValue rdf:resource="#ZinfandelGrape" />
      </owl:Restriction>
      <owl:Restriction>
        <owl:onProperty rdf:resource="#madeFromGrape" />
        <owl:maxCardinality rdf:datatype="&xsd;nonNegativeInteger">1</owl:maxCardinality>
      </owl:Restriction>
    </owl:intersectionOf>
  </owl:Class>
  
  <owl:Class rdf:about="#Zinfandel">
    <rdfs:subClassOf>
      <owl:Restriction>
        <owl:onProperty rdf:resource="#hasColor" />
        <owl:hasValue rdf:resource="#Red" />
      </owl:Restriction>
    </rdfs:subClassOf>
    <rdfs:subClassOf>
      <owl:Restriction>
        <owl:onProperty rdf:resource="#hasSugar" />
        <owl:hasValue rdf:resource="#Dry" />
      </owl:Restriction>
    </rdfs:subClassOf>
    <rdfs:subClassOf>
      <owl:Restriction>
        <owl:onProperty rdf:resource="#hasBody" />
        <owl:allValuesFrom>
          <owl:Class>
            <owl:oneOf rdf:parseType="Collection">
              <owl:Thing rdf:about="#Full" />
              <owl:Thing rdf:about="#Medium" />
            </owl:oneOf>
          </owl:Class>
        </owl:allValuesFrom>
      </owl:Restriction>
    </rdfs:subClassOf>
    <rdfs:subClassOf>
      <owl:Restriction>
        <owl:onProperty rdf:resource="#hasFlavor" />
        <owl:allValuesFrom>
          <owl:Class>
            <owl:oneOf rdf:parseType="Collection">
              <owl:Thing rdf:about="#Moderate" />
              <owl:Thing rdf:about="#Strong" />
            </owl:oneOf>
          </owl:Class>
        </owl:allValuesFrom>
      </owl:Restriction>
    </rdfs:subClassOf>
  </owl:Class>
  
  <owl:Class rdf:ID="Winery" />
  
  <owl:Class rdf:ID="WineDescriptor">
    <rdfs:comment>Made WineDescriptor unionType of tastes and color</rdfs:comment>
    <owl:unionOf rdf:parseType="Collection">
      <owl:Class rdf:about="#WineTaste" />
      <owl:Class rdf:about="#WineColor" />
    </owl:unionOf>
  </owl:Class>

  <owl:Class rdf:ID="WineTaste">
    <rdfs:subClassOf rdf:resource="#WineDescriptor" />
  </owl:Class>

  <owl:Class rdf:ID="WineColor">
    <rdfs:subClassOf rdf:resource="#WineDescriptor" />
    <owl:oneOf rdf:parseType="Collection">
      <owl:Thing rdf:about="#White" />
      <owl:Thing rdf:about="#Rose" />
      <owl:Thing rdf:about="#Red" />
    </owl:oneOf>
  </owl:Class>
  
  <owl:Class rdf:ID="WineSugar">
    <rdfs:subClassOf rdf:resource="#WineTaste" />
    <owl:oneOf rdf:parseType="Collection">
      <owl:Thing rdf:about="#Sweet" />
      <owl:Thing rdf:about="#OffDry" />
      <owl:Thing rdf:about="#Dry" />
    </owl:oneOf>
  </owl:Class>
  
  <owl:Class rdf:ID="WineFlavor">
    <rdfs:subClassOf rdf:resource="#WineTaste" />
    <owl:oneOf rdf:parseType="Collection">
      <owl:Thing rdf:about="#Delicate" />
      <owl:Thing rdf:about="#Moderate" />
      <owl:Thing rdf:about="#Strong" />
    </owl:oneOf>
  </owl:Class>
  
  <owl:Class rdf:ID="WineBody">
    <rdfs:subClassOf rdf:resource="#WineTaste" />
    <owl:oneOf rdf:parseType="Collection">
      <owl:Thing rdf:about="#Light" />
      <owl:Thing rdf:about="#Medium" />
      <owl:Thing rdf:about="#Full" />
    </owl:oneOf>
  </owl:Class>
  
  <Region rdf:ID="USRegion" />
  
  <owl:Class rdf:ID="Tours">
    <owl:intersectionOf rdf:parseType="Collection">
      <owl:Class rdf:about="#Loire" />
      <owl:Restriction>
        <owl:onProperty rdf:resource="#locatedIn" />
        <owl:hasValue rdf:resource="#ToursRegion" />
      </owl:Restriction>
    </owl:intersectionOf>
  </owl:Class>

  <owl:Class rdf:about="#Tours">
    <rdfs:subClassOf>
      <owl:Restriction>
        <owl:onProperty rdf:resource="#madeFromGrape" />
        <owl:hasValue rdf:resource="#CheninBlancGrape" />
      </owl:Restriction>
    </rdfs:subClassOf>
    <rdfs:subClassOf>
      <owl:Restriction>
        <owl:onProperty rdf:resource="#madeFromGrape" />
        <owl:maxCardinality rdf:datatype="&xsd;nonNegativeInteger">1</owl:maxCardinality>
      </owl:Restriction>
    </rdfs:subClassOf>
  </owl:Class>
  
  <owl:Class rdf:ID="TableWine">
    <owl:intersectionOf rdf:parseType="Collection">
      <owl:Class rdf:about="#Wine" />
      <owl:Restriction>
        <owl:onProperty rdf:resource="#hasSugar" />
        <owl:hasValue rdf:resource="#Dry" />
      </owl:Restriction>
    </owl:intersectionOf>
  </owl:Class>
  
  <owl:Class rdf:ID="SweetWine">
    <owl:intersectionOf rdf:parseType="Collection">
      <owl:Class rdf:about="#Wine" />
      <owl:Restriction>
        <owl:onProperty rdf:resource="#hasSugar" />
        <owl:hasValue rdf:resource="#Sweet" />
      </owl:Restriction>
    </owl:intersectionOf>
  </owl:Class>
  
  <owl:Class rdf:ID="SweetRiesling">
    <rdfs:subClassOf rdf:resource="#DessertWine" />
    <rdfs:subClassOf>
      <owl:Restriction>
        <owl:onProperty rdf:resource="#hasBody" />
        <owl:hasValue rdf:resource="#Full" />
      </owl:Restriction>
    </rdfs:subClassOf>
    <rdfs:subClassOf>
      <owl:Restriction>
        <owl:onProperty rdf:resource="#hasFlavor" />
        <owl:allValuesFrom>
          <owl:Class>
            <owl:oneOf rdf:parseType="Collection">
              <owl:Thing rdf:about="#Moderate" />
              <owl:Thing rdf:about="#Strong" />
            </owl:oneOf>
          </owl:Class>
        </owl:allValuesFrom>
      </owl:Restriction>
    </rdfs:subClassOf>
    <owl:intersectionOf rdf:parseType="Collection">
      <owl:Class rdf:about="#Riesling" />
      <owl:Restriction>
        <owl:onProperty rdf:resource="#hasSugar" />
        <owl:hasValue rdf:resource="#Sweet" />
      </owl:Restriction>
    </owl:intersectionOf>
  </owl:Class>
  
  <owl:Class rdf:ID="StEmilion">
    <rdfs:subClassOf>
      <owl:Restriction>
        <owl:onProperty rdf:resource="#hasColor" />
        <owl:hasValue rdf:resource="#Red" />
      </owl:Restriction>
    </rdfs:subClassOf>
    <rdfs:subClassOf>
      <owl:Restriction>
        <owl:onProperty rdf:resource="#hasFlavor" />
        <owl:hasValue rdf:resource="#Strong" />
      </owl:Restriction>
    </rdfs:subClassOf>
    <rdfs:subClassOf>
      <owl:Restriction>
        <owl:onProperty rdf:resource="#madeFromGrape" />
        <owl:hasValue rdf:resource="#CabernetSauvignonGrape" />
      </owl:Restriction>
    </rdfs:subClassOf>
    <rdfs:subClassOf>
      <owl:Restriction>
        <owl:onProperty rdf:resource="#madeFromGrape" />
        <owl:maxCardinality rdf:datatype="&xsd;nonNegativeInteger">1</owl:maxCardinality>
      </owl:Restriction>
    </rdfs:subClassOf>
    <owl:intersectionOf rdf:parseType="Collection">
      <owl:Class rdf:about="#Bordeaux" />
      <owl:Restriction>
        <owl:onProperty rdf:resource="#locatedIn" />
        <owl:hasValue rdf:resource="#StEmilionRegion" />
      </owl:Restriction>
    </owl:intersectionOf>
  </owl:Class>
  
  <owl:Class rdf:ID="SemillonOrSauvignonBlanc">
    <rdfs:subClassOf>
      <owl:Restriction>
        <owl:onProperty rdf:resource="#hasColor" />
        <owl:hasValue rdf:resource="#White" />
      </owl:Restriction>
    </rdfs:subClassOf>
    <rdfs:subClassOf>
      <owl:Restriction>
        <owl:onProperty rdf:resource="#hasBody" />
        <owl:allValuesFrom>
          <owl:Class>
            <owl:oneOf rdf:parseType="Collection">
              <owl:Thing rdf:about="#Medium" />
              <owl:Thing rdf:about="#Full" />
            </owl:oneOf>
          </owl:Class>
        </owl:allValuesFrom>
      </owl:Restriction>
    </rdfs:subClassOf>
    <owl:intersectionOf rdf:parseType="Collection">
      <owl:Class rdf:about="#Wine" />
      <owl:Restriction>
        <owl:onProperty rdf:resource="#madeFromGrape" />
        <owl:allValuesFrom>
          <owl:Class>
            <owl:oneOf rdf:parseType="Collection">
              <owl:Thing rdf:about="#SemillonGrape" />
              <owl:Thing rdf:about="#SauvignonBlancGrape" />
            </owl:oneOf>
          </owl:Class>
        </owl:allValuesFrom>
      </owl:Restriction>
    </owl:intersectionOf>
  </owl:Class>
  
  <owl:Class rdf:ID="Semillon">
    <owl:intersectionOf rdf:parseType="Collection">
      <owl:Class rdf:about="#SemillonOrSauvignonBlanc" />
      <owl:Restriction>
        <owl:onProperty rdf:resource="#madeFromGrape" />
        <owl:hasValue rdf:resource="#SemillonGrape" />
      </owl:Restriction>
      <owl:Restriction>
        <owl:onProperty rdf:resource="#madeFromGrape" />
        <owl:maxCardinality rdf:datatype="&xsd;nonNegativeInteger">1</owl:maxCardinality>
      </owl:Restriction>
    </owl:intersectionOf>
  </owl:Class>
  
  <owl:Class rdf:ID="SauvignonBlanc">
    <owl:intersectionOf rdf:parseType="Collection">
      <owl:Class rdf:about="#SemillonOrSauvignonBlanc" />
      <owl:Restriction>
        <owl:onProperty rdf:resource="#madeFromGrape" />
        <owl:hasValue rdf:resource="#SauvignonBlancGrape" />
      </owl:Restriction>
      <owl:Restriction>
        <owl:onProperty rdf:resource="#madeFromGrape" />
        <owl:maxCardinality rdf:datatype="&xsd;nonNegativeInteger">1</owl:maxCardinality>
      </owl:Restriction>
    </owl:intersectionOf>
  </owl:Class>
  
  <owl:Class rdf:ID="Sauterne">
    <rdfs:subClassOf rdf:resource="#LateHarvest" />
    <rdfs:subClassOf rdf:resource="#Bordeaux" />
    <rdfs:subClassOf>
      <owl:Restriction>
        <owl:onProperty rdf:resource="#locatedIn" />
        <owl:hasValue rdf:resource="#SauterneRegion" />
      </owl:Restriction>
    </rdfs:subClassOf>
    <rdfs:subClassOf>
      <owl:Restriction>
        <owl:onProperty rdf:resource="#hasBody" />
        <owl:hasValue rdf:resource="#Medium" />
      </owl:Restriction>
    </rdfs:subClassOf>
    <rdfs:subClassOf>
      <owl:Restriction>
        <owl:onProperty rdf:resource="#hasColor" />
        <owl:hasValue rdf:resource="#White" />
      </owl:Restriction>
    </rdfs:subClassOf>
  </owl:Class>
  
  <owl:Class rdf:ID="Sancerre">
    <rdfs:subClassOf>
      <owl:Restriction>
        <owl:onProperty rdf:resource="#hasBody" />
        <owl:hasValue rdf:resource="#Medium" />
      </owl:Restriction>
    </rdfs:subClassOf>
    <rdfs:subClassOf>
      <owl:Restriction>
        <owl:onProperty rdf:resource="#hasSugar" />
        <owl:hasValue rdf:resource="#OffDry" />
      </owl:Restriction>
    </rdfs:subClassOf>
    <rdfs:subClassOf>
      <owl:Restriction>
        <owl:onProperty rdf:resource="#hasFlavor" />
        <owl:hasValue rdf:resource="#Delicate" />
      </owl:Restriction>
    </rdfs:subClassOf>
    <rdfs:subClassOf>
      <owl:Restriction>
        <owl:onProperty rdf:resource="#madeFromGrape" />
        <owl:hasValue rdf:resource="#SauvignonBlancGrape" />
      </owl:Restriction>
    </rdfs:subClassOf>
    <rdfs:subClassOf>
      <owl:Restriction>
        <owl:onProperty rdf:resource="#madeFromGrape" />
        <owl:maxCardinality rdf:datatype="&xsd;nonNegativeInteger">1</owl:maxCardinality>
      </owl:Restriction>
    </rdfs:subClassOf>
    <owl:intersectionOf rdf:parseType="Collection">
      <owl:Class rdf:about="#Loire" />
      <owl:Restriction>
        <owl:onProperty rdf:resource="#locatedIn" />
        <owl:hasValue rdf:resource="#SancerreRegion" />
      </owl:Restriction>
    </owl:intersectionOf>
  </owl:Class>
  
  <owl:Class rdf:ID="RoseWine">
    <owl:intersectionOf rdf:parseType="Collection">
      <owl:Class rdf:about="#Wine" />
      <owl:Restriction>
        <owl:onProperty rdf:resource="#hasColor" />
        <owl:hasValue rdf:resource="#Rose" />
      </owl:Restriction>
    </owl:intersectionOf>
  </owl:Class>
  
  <owl:Class rdf:ID="Riesling">
    <rdfs:subClassOf>
      <owl:Restriction>
        <owl:onProperty rdf:resource="#hasColor" />
        <owl:hasValue rdf:resource="#White" />
      </owl:Restriction>
    </rdfs:subClassOf>
    <owl:intersectionOf rdf:parseType="Collection">
      <owl:Class rdf:about="#Wine" />
      <owl:Restriction>
        <owl:onProperty rdf:resource="#madeFromGrape" />
        <owl:hasValue rdf:resource="#RieslingGrape" />
      </owl:Restriction>
      <owl:Restriction>
        <owl:onProperty rdf:resource="#madeFromGrape" />
        <owl:maxCardinality rdf:datatype="&xsd;nonNegativeInteger">1</owl:maxCardinality>
      </owl:Restriction>
    </owl:intersectionOf>
  </owl:Class>
  
  <owl:Class rdf:ID="RedWine">
    <owl:intersectionOf rdf:parseType="Collection">
      <owl:Class rdf:about="#Wine" />
      <owl:Restriction>
        <owl:onProperty rdf:resource="#hasColor" />
        <owl:hasValue rdf:resource="#Red" />
      </owl:Restriction>
    </owl:intersectionOf>
  </owl:Class>
  
  <owl:Class rdf:ID="RedTableWine">
    <owl:intersectionOf rdf:parseType="Collection">
      <owl:Class rdf:about="#TableWine" />
      <owl:Restriction>
        <owl:onProperty rdf:resource="#hasColor" />
        <owl:hasValue rdf:resource="#Red" />
      </owl:Restriction>
    </owl:intersectionOf>
  </owl:Class>
  
  <owl:Class rdf:ID="RedBurgundy">
    <rdfs:subClassOf>
      <owl:Restriction>
        <owl:onProperty rdf:resource="#madeFromGrape" />
        <owl:hasValue rdf:resource="#PinotNoirGrape" />
      </owl:Restriction>
    </rdfs:subClassOf>
    <rdfs:subClassOf>
      <owl:Restriction>
        <owl:onProperty rdf:resource="#madeFromGrape" />
        <owl:maxCardinality rdf:datatype="&xsd;nonNegativeInteger">1</owl:maxCardinality>
      </owl:Restriction>
    </rdfs:subClassOf>
    <owl:intersectionOf rdf:parseType="Collection">
      <owl:Class rdf:about="#Burgundy" />
      <owl:Class rdf:about="#RedWine" />
    </owl:intersectionOf>
  </owl:Class>
  
  <owl:Class rdf:ID="RedBordeaux">
    <rdfs:subClassOf>
      <owl:Restriction>
        <owl:onProperty rdf:resource="#madeFromGrape" />
        <owl:allValuesFrom>
          <owl:Class>
            <owl:oneOf rdf:parseType="Collection">
              <owl:Thing rdf:about="#CabernetSauvignonGrape" />
              <owl:Thing rdf:about="#MerlotGrape" />
            </owl:oneOf>
          </owl:Class>
        </owl:allValuesFrom>
      </owl:Restriction>
    </rdfs:subClassOf>
    <owl:intersectionOf rdf:parseType="Collection">
      <owl:Class rdf:about="#Bordeaux" />
      <owl:Class rdf:about="#RedWine" />
    </owl:intersectionOf>
  </owl:Class>
  
  <owl:Class rdf:ID="Port">
    <rdfs:subClassOf rdf:resource="#RedWine" />
    <rdfs:subClassOf>
      <owl:Restriction>
        <owl:onProperty rdf:resource="#locatedIn" />
        <owl:hasValue rdf:resource="#PortugalRegion" />
      </owl:Restriction>
    </rdfs:subClassOf>
    <rdfs:subClassOf>
      <owl:Restriction>
        <owl:onProperty rdf:resource="#hasBody" />
        <owl:hasValue rdf:resource="#Full" />
      </owl:Restriction>
    </rdfs:subClassOf>
    <rdfs:subClassOf>
      <owl:Restriction>
        <owl:onProperty rdf:resource="#hasFlavor" />
        <owl:hasValue rdf:resource="#Strong" />
      </owl:Restriction>
    </rdfs:subClassOf>
    <rdfs:subClassOf>
      <owl:Restriction>
        <owl:onProperty rdf:resource="#hasSugar" />
        <owl:hasValue rdf:resource="#Sweet" />
      </owl:Restriction>
    </rdfs:subClassOf>
  </owl:Class>
  
  <owl:Class rdf:ID="PinotNoir">
    <rdfs:subClassOf>
      <owl:Restriction>
        <owl:onProperty rdf:resource="#hasColor" />
        <owl:hasValue rdf:resource="#Red" />
      </owl:Restriction>
    </rdfs:subClassOf>
    <owl:intersectionOf rdf:parseType="Collection">
      <owl:Class rdf:about="#Wine" />
      <owl:Restriction>
        <owl:onProperty rdf:resource="#madeFromGrape" />
        <owl:hasValue rdf:resource="#PinotNoirGrape" />
      </owl:Restriction>
      <owl:Restriction>
        <owl:onProperty rdf:resource="#madeFromGrape" />
        <owl:maxCardinality rdf:datatype="&xsd;nonNegativeInteger">1</owl:maxCardinality>
      </owl:Restriction>
    </owl:intersectionOf>
  </owl:Class>
  
  <owl:Class rdf:ID="PinotBlanc">
    <rdfs:subClassOf>
      <owl:Restriction>
        <owl:onProperty rdf:resource="#hasColor" />
        <owl:hasValue rdf:resource="#White" />
      </owl:Restriction>
    </rdfs:subClassOf>
    <owl:intersectionOf rdf:parseType="Collection">
      <owl:Class rdf:about="#Wine" />
      <owl:Restriction>
        <owl:onProperty rdf:resource="#madeFromGrape" />
        <owl:hasValue rdf:resource="#PinotBlancGrape" />
      </owl:Restriction>
      <owl:Restriction>
        <owl:onProperty rdf:resource="#madeFromGrape" />
        <owl:maxCardinality rdf:datatype="&xsd;nonNegativeInteger">1</owl:maxCardinality>
      </owl:Restriction>
    </owl:intersectionOf>
  </owl:Class>
  
  <owl:Class rdf:ID="PetiteSyrah">
    <rdfs:subClassOf>
      <owl:Restriction>
        <owl:onProperty rdf:resource="#hasColor" />
        <owl:hasValue rdf:resource="#Red" />
      </owl:Restriction>
    </rdfs:subClassOf>
    <rdfs:subClassOf>
      <owl:Restriction>
        <owl:onProperty rdf:resource="#hasSugar" />
        <owl:hasValue rdf:resource="#Dry" />
      </owl:Restriction>
    </rdfs:subClassOf>
    <rdfs:subClassOf>
      <owl:Restriction>
        <owl:onProperty rdf:resource="#hasFlavor" />
        <owl:allValuesFrom>
          <owl:Class>
            <owl:oneOf rdf:parseType="Collection">
              <owl:Thing rdf:about="#Moderate" />
              <owl:Thing rdf:about="#Strong" />
            </owl:oneOf>
          </owl:Class>
        </owl:allValuesFrom>
      </owl:Restriction>
    </rdfs:subClassOf>
    <rdfs:subClassOf>
      <owl:Restriction>
        <owl:onProperty rdf:resource="#hasBody" />
        <owl:allValuesFrom>
          <owl:Class>
            <owl:oneOf rdf:parseType="Collection">
              <owl:Thing rdf:about="#Medium" />
              <owl:Thing rdf:about="#Full" />
            </owl:oneOf>
          </owl:Class>
        </owl:allValuesFrom>
      </owl:Restriction>
    </rdfs:subClassOf>
    <owl:intersectionOf rdf:parseType="Collection">
      <owl:Class rdf:about="#Wine" />
      <owl:Restriction>
        <owl:onProperty rdf:resource="#madeFromGrape" />
        <owl:hasValue rdf:resource="#PetiteSyrahGrape" />
      </owl:Restriction>
      <owl:Restriction>
        <owl:onProperty rdf:resource="#madeFromGrape" />
        <owl:maxCardinality rdf:datatype="&xsd;nonNegativeInteger">1</owl:maxCardinality>
      </owl:Restriction>
    </owl:intersectionOf>
  </owl:Class>
  
  <owl:Class rdf:ID="Pauillac">
    <rdfs:subClassOf>
      <owl:Restriction>
        <owl:onProperty rdf:resource="#hasBody" />
        <owl:hasValue rdf:resource="#Full" />
      </owl:Restriction>
    </rdfs:subClassOf>
    <rdfs:subClassOf>
      <owl:Restriction>
        <owl:onProperty rdf:resource="#hasFlavor" />
        <owl:hasValue rdf:resource="#Strong" />
      </owl:Restriction>
    </rdfs:subClassOf>
    <rdfs:subClassOf>
      <owl:Restriction>
        <owl:onProperty rdf:resource="#madeFromGrape" />
        <owl:hasValue rdf:resource="#CabernetSauvignonGrape" />
      </owl:Restriction>
    </rdfs:subClassOf>
    <rdfs:subClassOf>
      <owl:Restriction>
        <owl:onProperty rdf:resource="#madeFromGrape" />
        <owl:maxCardinality rdf:datatype="&xsd;nonNegativeInteger">1</owl:maxCardinality>
      </owl:Restriction>
    </rdfs:subClassOf>
    <owl:intersectionOf rdf:parseType="Collection">
      <owl:Class rdf:about="#Medoc" />
      <owl:Restriction>
        <owl:onProperty rdf:resource="#locatedIn" />
        <owl:hasValue rdf:resource="#PauillacRegion" />
      </owl:Restriction>
    </owl:intersectionOf>
  </owl:Class>
  
  <owl:Class rdf:ID="Muscadet">
    <rdfs:subClassOf>
      <owl:Restriction>
        <owl:onProperty rdf:resource="#hasBody" />
        <owl:hasValue rdf:resource="#Light" />
      </owl:Restriction>
    </rdfs:subClassOf>
    <rdfs:subClassOf>
      <owl:Restriction>
        <owl:onProperty rdf:resource="#hasFlavor" />
        <owl:hasValue rdf:resource="#Delicate" />
      </owl:Restriction>
    </rdfs:subClassOf>
    <rdfs:subClassOf>
      <owl:Restriction>
        <owl:onProperty rdf:resource="#hasSugar" />
        <owl:hasValue rdf:resource="#Dry" />
      </owl:Restriction>
    </rdfs:subClassOf>
    <rdfs:subClassOf>
      <owl:Restriction>
        <owl:onProperty rdf:resource="#madeFromGrape" />
        <owl:hasValue rdf:resource="#PinotBlancGrape" />
      </owl:Restriction>
    </rdfs:subClassOf>
    <rdfs:subClassOf>
      <owl:Restriction>
        <owl:onProperty rdf:resource="#madeFromGrape" />
        <owl:maxCardinality rdf:datatype="&xsd;nonNegativeInteger">1</owl:maxCardinality>
      </owl:Restriction>
    </rdfs:subClassOf>
    <owl:intersectionOf rdf:parseType="Collection">
      <owl:Class rdf:about="#Loire" />
      <owl:Restriction>
        <owl:onProperty rdf:resource="#locatedIn" />
        <owl:hasValue rdf:resource="#MuscadetRegion" />
      </owl:Restriction>
    </owl:intersectionOf>
  </owl:Class>
  
  <owl:Class rdf:ID="Meursault">
    <rdfs:subClassOf>
      <owl:Restriction>
        <owl:onProperty rdf:resource="#hasBody" />
        <owl:hasValue rdf:resource="#Full" />
      </owl:Restriction>
    </rdfs:subClassOf>
    <owl:intersectionOf rdf:parseType="Collection">
      <owl:Class rdf:about="#WhiteBurgundy" />
      <owl:Restriction>
        <owl:onProperty rdf:resource="#locatedIn" />
        <owl:hasValue rdf:resource="#MeursaultRegion" />
      </owl:Restriction>
    </owl:intersectionOf>
  </owl:Class>
  
  <owl:Class rdf:ID="Merlot">
    <rdfs:subClassOf>
      <owl:Restriction>
        <owl:onProperty rdf:resource="#hasColor" />
        <owl:hasValue rdf:resource="#Red" />
      </owl:Restriction>
    </rdfs:subClassOf>
    <rdfs:subClassOf>
      <owl:Restriction>
        <owl:onProperty rdf:resource="#hasSugar" />
        <owl:hasValue rdf:resource="#Dry" />
      </owl:Restriction>
    </rdfs:subClassOf>
    <rdfs:subClassOf>
      <owl:Restriction>
        <owl:onProperty rdf:resource="#hasFlavor" />
        <owl:allValuesFrom>
          <owl:Class>
            <owl:oneOf rdf:parseType="Collection">
              <owl:Thing rdf:about="#Moderate" />
              <owl:Thing rdf:about="#Delicate" />
            </owl:oneOf>
          </owl:Class>
        </owl:allValuesFrom>
      </owl:Restriction>
    </rdfs:subClassOf>
    <rdfs:subClassOf>
      <owl:Restriction>
        <owl:onProperty rdf:resource="#hasBody" />
        <owl:allValuesFrom>
          <owl:Class>
            <owl:oneOf rdf:parseType="Collection">
              <owl:Thing rdf:about="#Light" />
              <owl:Thing rdf:about="#Medium" />
            </owl:oneOf>
          </owl:Class>
        </owl:allValuesFrom>
      </owl:Restriction>
    </rdfs:subClassOf>
    <owl:intersectionOf rdf:parseType="Collection">
      <owl:Class rdf:about="#Wine" />
      <owl:Restriction>
        <owl:onProperty rdf:resource="#madeFromGrape" />
        <owl:hasValue rdf:resource="#MerlotGrape" />
      </owl:Restriction>
      <owl:Restriction>
        <owl:onProperty rdf:resource="#madeFromGrape" />
        <owl:maxCardinality rdf:datatype="&xsd;nonNegativeInteger">1</owl:maxCardinality>
      </owl:Restriction>
    </owl:intersectionOf>
  </owl:Class>
  
  <owl:Class rdf:ID="Meritage">
    <rdfs:subClassOf>
      <owl:Restriction>
        <owl:onProperty rdf:resource="#hasColor" />
        <owl:hasValue rdf:resource="#Red" />
      </owl:Restriction>
    </rdfs:subClassOf>
    <owl:intersectionOf rdf:parseType="Collection">
      <owl:Class rdf:about="#Wine" />
      <owl:Restriction>
        <owl:onProperty rdf:resource="#madeFromGrape" />
        <owl:allValuesFrom>
          <owl:Class>
            <owl:oneOf rdf:parseType="Collection">
              <owl:Thing rdf:about="#CabernetSauvignonGrape" />
              <owl:Thing rdf:about="#CabernetFrancGrape" />
              <owl:Thing rdf:about="#MalbecGrape" />
              <owl:Thing rdf:about="#PetiteVerdotGrape" />
              <owl:Thing rdf:about="#MerlotGrape" />
            </owl:oneOf>
          </owl:Class>
        </owl:allValuesFrom>
      </owl:Restriction>
      <owl:Restriction>
        <owl:onProperty rdf:resource="#madeFromGrape" />
        <owl:minCardinality rdf:datatype="&xsd;nonNegativeInteger">2</owl:minCardinality>
      </owl:Restriction>
    </owl:intersectionOf>
  </owl:Class>
  
  <Region rdf:ID="MedocRegion">
    <locatedIn rdf:resource="#BordeauxRegion" />
  </Region>
  
  <owl:Class rdf:ID="Medoc">
    <rdfs:subClassOf>
      <owl:Restriction>
        <owl:onProperty rdf:resource="#hasColor" />
        <owl:hasValue rdf:resource="#Red" />
      </owl:Restriction>
    </rdfs:subClassOf>
    <rdfs:subClassOf>
      <owl:Restriction>
        <owl:onProperty rdf:resource="#hasSugar" />
        <owl:hasValue rdf:resource="#Dry" />
      </owl:Restriction>
    </rdfs:subClassOf>
    <owl:intersectionOf rdf:parseType="Collection">
      <owl:Class rdf:about="#Bordeaux" />
      <owl:Restriction>
        <owl:onProperty rdf:resource="#locatedIn" />
        <owl:hasValue rdf:resource="#MedocRegion" />
      </owl:Restriction>
    </owl:intersectionOf>
  </owl:Class>
  
  <owl:Class rdf:ID="Margaux">
    <rdfs:subClassOf>
      <owl:Restriction>
        <owl:onProperty rdf:resource="#hasFlavor" />
        <owl:hasValue rdf:resource="#Delicate" />
      </owl:Restriction>
    </rdfs:subClassOf>
    <rdfs:subClassOf>
      <owl:Restriction>
        <owl:onProperty rdf:resource="#madeFromGrape" />
        <owl:hasValue rdf:resource="#MerlotGrape" />
      </owl:Restriction>
    </rdfs:subClassOf>
    <rdfs:subClassOf>
      <owl:Restriction>
        <owl:onProperty rdf:resource="#madeFromGrape" />
        <owl:maxCardinality rdf:datatype="&xsd;nonNegativeInteger">1</owl:maxCardinality>
      </owl:Restriction>
    </rdfs:subClassOf>
    <owl:intersectionOf rdf:parseType="Collection">
      <owl:Class rdf:about="#Medoc" />
      <owl:Restriction>
        <owl:onProperty rdf:resource="#locatedIn" />
        <owl:hasValue rdf:resource="#MargauxRegion" />
      </owl:Restriction>
    </owl:intersectionOf>
  </owl:Class>
  
  <Region rdf:ID="LoireRegion">
    <locatedIn rdf:resource="#FrenchRegion" />
  </Region>
  
  <owl:Class rdf:ID="Loire">
    <owl:intersectionOf rdf:parseType="Collection">
      <owl:Class rdf:about="#Wine" />
      <owl:Restriction>
        <owl:onProperty rdf:resource="#locatedIn" />
        <owl:hasValue rdf:resource="#LoireRegion" />
      </owl:Restriction>
    </owl:intersectionOf>
  </owl:Class>
  
  <owl:Class rdf:ID="LateHarvest">
    <rdfs:subClassOf rdf:resource="#Wine" />
    <owl:disjointWith rdf:resource="#EarlyHarvest" />
    <rdfs:subClassOf>
      <owl:Restriction>
        <owl:onProperty rdf:resource="#hasSugar" />
        <owl:hasValue rdf:resource="#Sweet" />
      </owl:Restriction>
    </rdfs:subClassOf>
    <rdfs:subClassOf>
      <owl:Restriction>
        <owl:onProperty rdf:resource="#hasFlavor" />
        <owl:allValuesFrom>
          <owl:Class>
            <owl:oneOf rdf:parseType="Collection">
              <owl:Thing rdf:about="#Moderate" />
              <owl:Thing rdf:about="#Strong" />
            </owl:oneOf>
          </owl:Class>
        </owl:allValuesFrom>
      </owl:Restriction>
    </rdfs:subClassOf>
  </owl:Class>
  
  <owl:Class rdf:ID="ItalianWine">
    <owl:intersectionOf rdf:parseType="Collection">
      <owl:Class rdf:about="#Wine" />
      <owl:Restriction>
        <owl:onProperty rdf:resource="#locatedIn" />
        <owl:hasValue rdf:resource="#ItalianRegion" />
      </owl:Restriction>
    </owl:intersectionOf>
  </owl:Class>
  
  <Region rdf:ID="ItalianRegion" />
  
  <owl:Class rdf:ID="IceWine">
    <rdfs:subClassOf>
      <owl:Restriction>
        <owl:onProperty rdf:resource="#hasBody" />
        <owl:allValuesFrom>
          <owl:Class>
            <owl:oneOf rdf:parseType="Collection">
              <owl:Thing rdf:about="#Medium" />
              <owl:Thing rdf:about="#Full" />
            </owl:oneOf>
          </owl:Class>
        </owl:allValuesFrom>
      </owl:Restriction>
    </rdfs:subClassOf>
    <rdfs:subClassOf>
      <owl:Restriction>
        <owl:onProperty rdf:resource="#hasFlavor" />
        <owl:allValuesFrom>
          <owl:Class>
            <owl:oneOf rdf:parseType="Collection">
              <owl:Thing rdf:about="#Moderate" />
              <owl:Thing rdf:about="#Strong" />
            </owl:oneOf>
          </owl:Class>
        </owl:allValuesFrom>
      </owl:Restriction>
    </rdfs:subClassOf>
    <owl:intersectionOf rdf:parseType="Collection">
      <owl:Class rdf:about="#LateHarvest" />
      <owl:Class rdf:about="#DessertWine" />
      <owl:Restriction>
        <owl:onProperty rdf:resource="#hasColor" />
        <owl:hasValue rdf:resource="#White" />
      </owl:Restriction>
    </owl:intersectionOf>
  </owl:Class>
  
  <owl:Class rdf:ID="GermanWine">
    <owl:intersectionOf rdf:parseType="Collection">
      <owl:Class rdf:about="#Wine" />
      <owl:Restriction>
        <owl:onProperty rdf:resource="#locatedIn" />
        <owl:hasValue rdf:resource="#GermanyRegion" />
      </owl:Restriction>
    </owl:intersectionOf>
  </owl:Class>
  
  <owl:Class rdf:ID="Gamay">
    <owl:intersectionOf rdf:parseType="Collection">
      <owl:Class rdf:about="#Wine" />
      <owl:Restriction>
        <owl:onProperty rdf:resource="#madeFromGrape" />
        <owl:hasValue rdf:resource="#GamayGrape" />
      </owl:Restriction>
      <owl:Restriction>
        <owl:onProperty rdf:resource="#madeFromGrape" />
        <owl:maxCardinality rdf:datatype="&xsd;nonNegativeInteger">1</owl:maxCardinality>
      </owl:Restriction>
    </owl:intersectionOf>
  </owl:Class>
  
  <owl:Class rdf:ID="FullBodiedWine">
    <owl:intersectionOf rdf:parseType="Collection">
      <owl:Class rdf:about="#Wine" />
      <owl:Restriction>
        <owl:onProperty rdf:resource="#hasBody" />
        <owl:hasValue rdf:resource="#Full" />
      </owl:Restriction>
    </owl:intersectionOf>
  </owl:Class>
  
  <Region rdf:ID="FrenchRegion" />
  
  <owl:Class rdf:ID="FrenchWine">
    <owl:intersectionOf rdf:parseType="Collection">
      <owl:Class rdf:about="#Wine" />
      <owl:Restriction>
        <owl:onProperty rdf:resource="#locatedIn" />
        <owl:hasValue rdf:resource="#FrenchRegion" />
      </owl:Restriction>
    </owl:intersectionOf>
  </owl:Class>

  <owl:Class rdf:ID="EarlyHarvest">
    <rdfs:subClassOf rdf:resource="#Wine" />
    <rdfs:subClassOf>
      <owl:Restriction>
        <owl:onProperty rdf:resource="#hasSugar" />
        <owl:allValuesFrom>
          <owl:Class>
            <owl:oneOf rdf:parseType="Collection">
              <owl:Thing rdf:about="#Dry" />
              <owl:Thing rdf:about="#OffDry" />
            </owl:oneOf>
          </owl:Class>
        </owl:allValuesFrom>
      </owl:Restriction>
    </rdfs:subClassOf>
  </owl:Class>
  
  <owl:Class rdf:ID="DryWine">
    <owl:intersectionOf rdf:parseType="Collection">
      <owl:Class rdf:about="#Wine" />
      <owl:Restriction>
        <owl:onProperty rdf:resource="#hasSugar" />
        <owl:hasValue rdf:resource="#Dry" />
      </owl:Restriction>
    </owl:intersectionOf>
  </owl:Class>
  
  <owl:Class rdf:ID="DryWhiteWine">
    <owl:intersectionOf rdf:parseType="Collection">
      <owl:Class rdf:about="#DryWine" />
      <owl:Class rdf:about="#WhiteWine" />
    </owl:intersectionOf>
  </owl:Class>
  
  <owl:Class rdf:ID="DryRiesling">
    <rdfs:subClassOf>
      <owl:Restriction>
        <owl:onProperty rdf:resource="#hasColor" />
        <owl:hasValue rdf:resource="#White" />
      </owl:Restriction>
    </rdfs:subClassOf>
    <rdfs:subClassOf>
      <owl:Restriction>
        <owl:onProperty rdf:resource="#hasFlavor" />
        <owl:hasValue rdf:resource="#Delicate" />
      </owl:Restriction>
    </rdfs:subClassOf>
    <rdfs:subClassOf>
      <owl:Restriction>
        <owl:onProperty rdf:resource="#hasBody" />
        <owl:allValuesFrom>
          <owl:Class>
            <owl:oneOf rdf:parseType="Collection">
              <owl:Thing rdf:about="#Light" />
              <owl:Thing rdf:about="#Medium" />
            </owl:oneOf>
          </owl:Class>
        </owl:allValuesFrom>
      </owl:Restriction>
    </rdfs:subClassOf>
    <owl:intersectionOf rdf:parseType="Collection">
      <owl:Class rdf:about="#Riesling" />
      <owl:Restriction>
        <owl:onProperty rdf:resource="#hasSugar" />
        <owl:hasValue rdf:resource="#Dry" />
      </owl:Restriction>
    </owl:intersectionOf>
  </owl:Class>
  
  <owl:Class rdf:ID="DryRedWine">
    <owl:intersectionOf rdf:parseType="Collection">
      <owl:Class rdf:about="#DryWine" />
      <owl:Class rdf:about="#RedWine" />
    </owl:intersectionOf>
  </owl:Class>
  
  <owl:Class rdf:ID="DessertWine">
    <rdfs:subClassOf rdf:resource="#Wine" />
    <rdfs:subClassOf>
      <owl:Restriction>
        <owl:onProperty rdf:resource="#hasSugar" />
        <owl:allValuesFrom>
          <owl:Class>
            <owl:oneOf rdf:parseType="Collection">
              <owl:Thing rdf:about="#OffDry" />
              <owl:Thing rdf:about="#Sweet" />
            </owl:oneOf>
          </owl:Class>
        </owl:allValuesFrom>
      </owl:Restriction>
    </rdfs:subClassOf>
  </owl:Class>
  
  <owl:Class rdf:ID="CotesDOr">
    <rdfs:subClassOf>
      <owl:Restriction>
        <owl:onProperty rdf:resource="#hasFlavor" />
        <owl:hasValue rdf:resource="#Moderate" />
      </owl:Restriction>
    </rdfs:subClassOf>
    <owl:intersectionOf rdf:parseType="Collection">
      <owl:Class rdf:about="#RedBurgundy" />
      <owl:Restriction>
        <owl:onProperty rdf:resource="#locatedIn" />
        <owl:hasValue rdf:resource="#CotesDOrRegion" />
      </owl:Restriction>
    </owl:intersectionOf>
  </owl:Class>
  
  <owl:Class rdf:ID="Chianti">
    <rdfs:subClassOf rdf:resource="#ItalianWine" />
    <rdfs:subClassOf>
      <owl:Restriction>
        <owl:onProperty rdf:resource="#locatedIn" />
        <owl:hasValue rdf:resource="#ChiantiRegion" />
      </owl:Restriction>
    </rdfs:subClassOf>
    <rdfs:subClassOf>
      <owl:Restriction>
        <owl:onProperty rdf:resource="#hasColor" />
        <owl:hasValue rdf:resource="#Red" />
      </owl:Restriction>
    </rdfs:subClassOf>
    <rdfs:subClassOf>
      <owl:Restriction>
        <owl:onProperty rdf:resource="#madeFromGrape" />
        <owl:hasValue rdf:resource="#SangioveseGrape" />
      </owl:Restriction>
    </rdfs:subClassOf>
    <rdfs:subClassOf>
      <owl:Restriction>
        <owl:onProperty rdf:resource="#hasFlavor" />
        <owl:hasValue rdf:resource="#Moderate" />
      </owl:Restriction>
    </rdfs:subClassOf>
    <rdfs:subClassOf>
      <owl:Restriction>
        <owl:onProperty rdf:resource="#hasSugar" />
        <owl:hasValue rdf:resource="#Dry" />
      </owl:Restriction>
    </rdfs:subClassOf>
    <rdfs:subClassOf>
      <owl:Restriction>
        <owl:onProperty rdf:resource="#hasBody" />
        <owl:allValuesFrom>
          <owl:Class>
            <owl:oneOf rdf:parseType="Collection">
              <owl:Thing rdf:about="#Light" />
              <owl:Thing rdf:about="#Medium" />
            </owl:oneOf>
          </owl:Class>
        </owl:allValuesFrom>
      </owl:Restriction>
    </rdfs:subClassOf>
  </owl:Class>
  
  <owl:Class rdf:ID="CheninBlanc">
    <rdfs:subClassOf>
      <owl:Restriction>
        <owl:onProperty rdf:resource="#hasColor" />
        <owl:hasValue rdf:resource="#White" />
      </owl:Restriction>
    </rdfs:subClassOf>
    <rdfs:subClassOf>
      <owl:Restriction>
        <owl:onProperty rdf:resource="#hasFlavor" />
        <owl:hasValue rdf:resource="#Moderate" />
      </owl:Restriction>
    </rdfs:subClassOf>
    <rdfs:subClassOf>
      <owl:Restriction>
        <owl:onProperty rdf:resource="#hasBody" />
        <owl:allValuesFrom>
          <owl:Class>
            <owl:oneOf rdf:parseType="Collection">
              <owl:Thing rdf:about="#Full" />
              <owl:Thing rdf:about="#Medium" />
            </owl:oneOf>
          </owl:Class>
        </owl:allValuesFrom>
      </owl:Restriction>
    </rdfs:subClassOf>
    <rdfs:subClassOf>
      <owl:Restriction>
        <owl:onProperty rdf:resource="#hasSugar" />
        <owl:allValuesFrom>
          <owl:Class>
            <owl:oneOf rdf:parseType="Collection">
              <owl:Thing rdf:about="#Dry" />
              <owl:Thing rdf:about="#OffDry" />
            </owl:oneOf>
          </owl:Class>
        </owl:allValuesFrom>
      </owl:Restriction>
    </rdfs:subClassOf>
    <owl:intersectionOf rdf:parseType="Collection">
      <owl:Class rdf:about="#Wine" />
      <owl:Restriction>
        <owl:onProperty rdf:resource="#madeFromGrape" />
        <owl:hasValue rdf:resource="#CheninBlancGrape" />
      </owl:Restriction>
      <owl:Restriction>
        <owl:onProperty rdf:resource="#madeFromGrape" />
        <owl:maxCardinality rdf:datatype="&xsd;nonNegativeInteger">1</owl:maxCardinality>
      </owl:Restriction>
    </owl:intersectionOf>
  </owl:Class>
  
  <owl:Class rdf:ID="Chardonnay">
    <rdfs:subClassOf>
      <owl:Restriction>
        <owl:onProperty rdf:resource="#hasColor" />
        <owl:hasValue rdf:resource="#White" />
      </owl:Restriction>
    </rdfs:subClassOf>
    <rdfs:subClassOf>
      <owl:Restriction>
        <owl:onProperty rdf:resource="#hasBody" />
        <owl:allValuesFrom>
          <owl:Class>
            <owl:oneOf rdf:parseType="Collection">
              <owl:Thing rdf:about="#Full" />
              <owl:Thing rdf:about="#Medium" />
            </owl:oneOf>
          </owl:Class>
        </owl:allValuesFrom>
      </owl:Restriction>
    </rdfs:subClassOf>
    <rdfs:subClassOf>
      <owl:Restriction>
        <owl:onProperty rdf:resource="#hasFlavor" />
        <owl:allValuesFrom>
          <owl:Class>
            <owl:oneOf rdf:parseType="Collection">
              <owl:Thing rdf:about="#Strong" />
              <owl:Thing rdf:about="#Moderate" />
            </owl:oneOf>
          </owl:Class>
        </owl:allValuesFrom>
      </owl:Restriction>
    </rdfs:subClassOf>
    <owl:intersectionOf rdf:parseType="Collection">
      <owl:Class rdf:about="#Wine" />
      <owl:Restriction>
        <owl:onProperty rdf:resource="#madeFromGrape" />
        <owl:hasValue rdf:resource="#ChardonnayGrape" />
      </owl:Restriction>
      <owl:Restriction>
        <owl:onProperty rdf:resource="#madeFromGrape" />
        <owl:maxCardinality rdf:datatype="&xsd;nonNegativeInteger">1</owl:maxCardinality>
      </owl:Restriction>
    </owl:intersectionOf>
  </owl:Class>
  
  <Region rdf:ID="CaliforniaRegion">
    <locatedIn rdf:resource="#USRegion" />
  </Region>
  
  <Region rdf:ID="TexasRegion">
    <locatedIn rdf:resource="#USRegion" />
  </Region>
  
  <owl:Class rdf:ID="CaliforniaWine">
    <owl:intersectionOf rdf:parseType="Collection">
      <owl:Class rdf:about="#Wine" />
      <owl:Restriction>
        <owl:onProperty rdf:resource="#locatedIn" />
        <owl:hasValue rdf:resource="#CaliforniaRegion" />
      </owl:Restriction>
    </owl:intersectionOf>
  </owl:Class>
  
  <owl:Class rdf:ID="TexasWine">
    <owl:intersectionOf rdf:parseType="Collection">
      <owl:Class rdf:about="#Wine" />
      <owl:Restriction>
        <owl:onProperty rdf:resource="#locatedIn" />
        <owl:hasValue rdf:resource="#TexasRegion" />
      </owl:Restriction>
    </owl:intersectionOf>
  </owl:Class>
  
  <owl:Class rdf:ID="CabernetSauvignon">
    <rdfs:subClassOf>
      <owl:Restriction>
        <owl:onProperty rdf:resource="#hasColor" />
        <owl:hasValue rdf:resource="#Red" />
      </owl:Restriction>
    </rdfs:subClassOf>
    <rdfs:subClassOf>
      <owl:Restriction>
        <owl:onProperty rdf:resource="#hasSugar" />
        <owl:hasValue rdf:resource="#Dry" />
      </owl:Restriction>
    </rdfs:subClassOf>
    <rdfs:subClassOf>
      <owl:Restriction>
        <owl:onProperty rdf:resource="#hasFlavor" />
        <owl:allValuesFrom>
          <owl:Class>
            <owl:oneOf rdf:parseType="Collection">
              <owl:Thing rdf:about="#Moderate" />
              <owl:Thing rdf:about="#Strong" />
            </owl:oneOf>
          </owl:Class>
        </owl:allValuesFrom>
      </owl:Restriction>
    </rdfs:subClassOf>
    <rdfs:subClassOf>
      <owl:Restriction>
        <owl:onProperty rdf:resource="#hasBody" />
        <owl:allValuesFrom>
          <owl:Class>
            <owl:oneOf rdf:parseType="Collection">
              <owl:Thing rdf:about="#Medium" />
              <owl:Thing rdf:about="#Full" />
            </owl:oneOf>
          </owl:Class>
        </owl:allValuesFrom>
      </owl:Restriction>
    </rdfs:subClassOf>
    <owl:intersectionOf rdf:parseType="Collection">
      <owl:Class rdf:about="#Wine" />
      <owl:Restriction>
        <owl:onProperty rdf:resource="#madeFromGrape" />
        <owl:hasValue rdf:resource="#CabernetSauvignonGrape" />
      </owl:Restriction>
      <owl:Restriction>
        <owl:onProperty rdf:resource="#madeFromGrape" />
        <owl:maxCardinality rdf:datatype="&xsd;nonNegativeInteger">1</owl:maxCardinality>
      </owl:Restriction>
    </owl:intersectionOf>
  </owl:Class>
  
  <owl:Class rdf:ID="CabernetFranc">
    <rdfs:subClassOf>
      <owl:Restriction>
        <owl:onProperty rdf:resource="#hasColor" />
        <owl:hasValue rdf:resource="#Red" />
      </owl:Restriction>
    </rdfs:subClassOf>
    <rdfs:subClassOf>
      <owl:Restriction>
        <owl:onProperty rdf:resource="#hasFlavor" />
        <owl:hasValue rdf:resource="#Moderate" />
      </owl:Restriction>
    </rdfs:subClassOf>
    <rdfs:subClassOf>
      <owl:Restriction>
        <owl:onProperty rdf:resource="#hasBody" />
        <owl:hasValue rdf:resource="#Medium" />
      </owl:Restriction>
    </rdfs:subClassOf>
    <rdfs:subClassOf>
      <owl:Restriction>
        <owl:onProperty rdf:resource="#hasSugar" />
        <owl:hasValue rdf:resource="#Dry" />
      </owl:Restriction>
    </rdfs:subClassOf>
    <owl:intersectionOf rdf:parseType="Collection">
      <owl:Class rdf:about="#Wine" />
      <owl:Restriction>
        <owl:onProperty rdf:resource="#madeFromGrape" />
        <owl:hasValue rdf:resource="#CabernetFrancGrape" />
      </owl:Restriction>
      <owl:Restriction>
        <owl:onProperty rdf:resource="#madeFromGrape" />
        <owl:maxCardinality rdf:datatype="&xsd;nonNegativeInteger">1</owl:maxCardinality>
      </owl:Restriction>
    </owl:intersectionOf>
  </owl:Class>
  
  <owl:Class rdf:ID="Burgundy">
    <owl:intersectionOf rdf:parseType="Collection">
      <owl:Class rdf:about="#Wine" />
      <owl:Restriction>
        <owl:onProperty rdf:resource="#locatedIn" />
        <owl:hasValue rdf:resource="#BourgogneRegion" />
      </owl:Restriction>
    </owl:intersectionOf>
    <rdfs:subClassOf>
      <owl:Restriction>
        <owl:onProperty rdf:resource="#hasSugar" />
        <owl:hasValue rdf:resource="#Dry" />
      </owl:Restriction>
    </rdfs:subClassOf>
  </owl:Class>
  
  <Region rdf:ID="BourgogneRegion">
    <locatedIn rdf:resource="#FrenchRegion" />
  </Region>
  
  <Region rdf:ID="BordeauxRegion">
    <locatedIn rdf:resource="#FrenchRegion" />
  </Region>
  
  <owl:Class rdf:ID="Bordeaux">
    <owl:intersectionOf rdf:parseType="Collection">
      <owl:Class rdf:about="#Wine" />
      <owl:Restriction>
        <owl:onProperty rdf:resource="#locatedIn" />
        <owl:hasValue rdf:resource="#BordeauxRegion" />
      </owl:Restriction>
    </owl:intersectionOf>
  </owl:Class>
  
  <owl:Class rdf:ID="Beaujolais">
    <rdfs:subClassOf>
      <owl:Restriction>
        <owl:onProperty rdf:resource="#hasColor" />
        <owl:hasValue rdf:resource="#Red" />
      </owl:Restriction>
    </rdfs:subClassOf>
    <rdfs:subClassOf>
      <owl:Restriction>
        <owl:onProperty rdf:resource="#hasBody" />
        <owl:hasValue rdf:resource="#Light" />
      </owl:Restriction>
    </rdfs:subClassOf>
    <rdfs:subClassOf>
      <owl:Restriction>
        <owl:onProperty rdf:resource="#hasSugar" />
        <owl:hasValue rdf:resource="#Dry" />
      </owl:Restriction>
    </rdfs:subClassOf>
    <rdfs:subClassOf>
      <owl:Restriction>
        <owl:onProperty rdf:resource="#hasFlavor" />
        <owl:hasValue rdf:resource="#Delicate" />
      </owl:Restriction>
    </rdfs:subClassOf>
    <rdfs:subClassOf>
      <owl:Restriction>
        <owl:onProperty rdf:resource="#madeFromGrape" />
        <owl:hasValue rdf:resource="#GamayGrape" />
      </owl:Restriction>
    </rdfs:subClassOf>
    <rdfs:subClassOf>
      <owl:Restriction>
        <owl:onProperty rdf:resource="#madeFromGrape" />
        <owl:maxCardinality rdf:datatype="&xsd;nonNegativeInteger">1</owl:maxCardinality>
      </owl:Restriction>
    </rdfs:subClassOf>
    <owl:intersectionOf rdf:parseType="Collection">
      <owl:Class rdf:about="#Wine" />
      <owl:Restriction>
        <owl:onProperty rdf:resource="#locatedIn" />
        <owl:hasValue rdf:resource="#BeaujolaisRegion" />
      </owl:Restriction>
    </owl:intersectionOf>
  </owl:Class>
  
  <Region rdf:ID="AustralianRegion" />
  
  <owl:Class rdf:ID="Anjou">
    <rdfs:subClassOf>
      <owl:Restriction>
        <owl:onProperty rdf:resource="#hasColor" />
        <owl:hasValue rdf:resource="#Rose" />
      </owl:Restriction>
    </rdfs:subClassOf>
    <rdfs:subClassOf>
      <owl:Restriction>
        <owl:onProperty rdf:resource="#hasBody" />
        <owl:hasValue rdf:resource="#Light" />
      </owl:Restriction>
    </rdfs:subClassOf>
    <rdfs:subClassOf>
      <owl:Restriction>
        <owl:onProperty rdf:resource="#hasFlavor" />
        <owl:hasValue rdf:resource="#Delicate" />
      </owl:Restriction>
    </rdfs:subClassOf>
    <rdfs:subClassOf>
      <owl:Restriction>
        <owl:onProperty rdf:resource="#hasSugar" />
        <owl:hasValue rdf:resource="#OffDry" />
      </owl:Restriction>
    </rdfs:subClassOf>
    <owl:intersectionOf rdf:parseType="Collection">
      <owl:Class rdf:about="#Loire" />
      <owl:Restriction>
        <owl:onProperty rdf:resource="#locatedIn" />
        <owl:hasValue rdf:resource="#AnjouRegion" />
      </owl:Restriction>
    </owl:intersectionOf>
  </owl:Class>
  
  <owl:Class rdf:ID="AmericanWine">
    <owl:intersectionOf rdf:parseType="Collection">
      <owl:Class rdf:about="#Wine" />
      <owl:Restriction>
        <owl:onProperty rdf:resource="#locatedIn" />
        <owl:hasValue rdf:resource="#USRegion" />
      </owl:Restriction>
    </owl:intersectionOf>
  </owl:Class>
  
  <owl:Class rdf:ID="AlsatianWine">
    <owl:intersectionOf rdf:parseType="Collection">
      <owl:Class rdf:about="#Wine" />
      <owl:Restriction>
        <owl:onProperty rdf:resource="#locatedIn" />
        <owl:hasValue rdf:resource="#AlsaceRegion" />
      </owl:Restriction>
    </owl:intersectionOf>
  </owl:Class>
  
  <WineBody rdf:ID="Full" />
  
  <WineBody rdf:ID="Medium" />
  
  <WineBody rdf:ID="Light" />
  
  <WineColor rdf:ID="Red" />
  
  <WineColor rdf:ID="Rose" />
  
  <WineColor rdf:ID="White" />
  
  <WineFlavor rdf:ID="Strong" />
  
  <WineFlavor rdf:ID="Moderate" />
  
  <WineFlavor rdf:ID="Delicate" />
  
  <WineSugar rdf:ID="Dry" />
  
  <WineSugar rdf:ID="OffDry">
    <owl:differentFrom rdf:resource="#Dry"/>
    <owl:differentFrom rdf:resource="#Sweet"/>
  </WineSugar>
  
  <WineSugar rdf:ID="Sweet">
    <owl:differentFrom rdf:resource="#Dry"/>
  </WineSugar>
  
  <owl:AllDifferent>
    <owl:distinctMembers rdf:parseType="Collection">
      <vin:WineColor rdf:about="#Red" />
      <vin:WineColor rdf:about="#White" />
      <vin:WineColor rdf:about="#Rose" />
    </owl:distinctMembers>
  </owl:AllDifferent>

  <owl:AllDifferent>
    <owl:distinctMembers rdf:parseType="Collection">
      <vin:WineBody rdf:about="#Light" />
      <vin:WineBody rdf:about="#Medium" />
      <vin:WineBody rdf:about="#Full" />
    </owl:distinctMembers>
  </owl:AllDifferent>

  <owl:AllDifferent>
    <owl:distinctMembers rdf:parseType="Collection">
      <vin:WineFlavor rdf:about="#Delicate" />
      <vin:WineFlavor rdf:about="#Moderate" />
      <vin:WineFlavor rdf:about="#Strong" />
    </owl:distinctMembers>
  </owl:AllDifferent>
 
  <owl:AllDifferent>
    <owl:distinctMembers rdf:parseType="Collection">
      <vin:WineSugar rdf:about="#Sweet" />
      <vin:WineSugar rdf:about="#OffDry" />
      <vin:WineSugar rdf:about="#Dry" />
    </owl:distinctMembers>
  </owl:AllDifferent>

  <Region rdf:ID="AlsaceRegion">   
    <locatedIn rdf:resource="#FrenchRegion" />
  </Region>

  <Region rdf:ID="AnjouRegion">
    <locatedIn rdf:resource="#LoireRegion" />
  </Region>
  
  <Region rdf:ID="ArroyoGrandeRegion">
    <locatedIn rdf:resource="#CaliforniaRegion" />
  </Region>
  
  <Winery rdf:ID="Beringer" />

  <Winery rdf:ID="Bancroft" />
  
  <Chardonnay rdf:ID="BancroftChardonnay">
    <locatedIn rdf:resource="#NapaRegion" />
    <hasMaker  rdf:resource="#Bancroft" />
    <hasSugar  rdf:resource="#Dry" />
    <hasFlavor rdf:resource="#Moderate" />
    <hasBody   rdf:resource="#Medium" />
  </Chardonnay>
  
  <Region rdf:ID="BeaujolaisRegion">
    <locatedIn rdf:resource="#FrenchRegion" />
  </Region>
  
  <WineGrape rdf:ID="CabernetFrancGrape" />
  
  <WineGrape rdf:ID="CabernetSauvignonGrape" />
  
  <Region rdf:ID="CentralCoastRegion">
    <locatedIn rdf:resource="#CaliforniaRegion" />
  </Region>
  
  <WineGrape rdf:ID="ChardonnayGrape" />
  
  <Winery rdf:ID="ChateauChevalBlanc" />
  
  <StEmilion rdf:ID="ChateauChevalBlancStEmilion">
    <hasMaker  rdf:resource="#ChateauChevalBlanc" />
  </StEmilion>
  
  <Winery rdf:ID="ChateauDYchem" />
  
  <Sauterne rdf:ID="ChateauDYchemSauterne">
    <madeFromGrape rdf:resource="#SauvignonBlancGrape" />
    <madeFromGrape rdf:resource="#SemillonGrape" />
    <hasFlavor rdf:resource="#Strong" />
    <hasMaker  rdf:resource="#ChateauDYchem" />
  </Sauterne> 
  
  <Winery rdf:ID="ChateauDeMeursault" />
  
  <Meursault rdf:ID="ChateauDeMeursaultMeursault">
    <hasFlavor rdf:resource="#Moderate" />
    <hasMaker  rdf:resource="#ChateauDeMeursault" />
  </Meursault>
  
  <Winery rdf:ID="ChateauLafiteRothschild" />
  
  <Pauillac rdf:ID="ChateauLafiteRothschildPauillac">
    <hasMaker  rdf:resource="#ChateauLafiteRothschild" />
  </Pauillac>
  
  <Margaux rdf:ID="ChateauMargaux">
    <hasMaker  rdf:resource="#ChateauMargauxWinery" />
  </Margaux>
  
  <Winery rdf:ID="ChateauMargauxWinery" />
  
  <Winery rdf:ID="ChateauMorgon" />
  
  <Beaujolais rdf:ID="ChateauMorgonBeaujolais">
    <hasMaker  rdf:resource="#ChateauMorgon" />
  </Beaujolais>
  
  <WineGrape rdf:ID="CheninBlancGrape" />

  <WineGrape rdf:ID="ZinfandelGrape" />

  <Chianti rdf:ID="ChiantiClassico">
    <hasBody   rdf:resource="#Medium" />
    <hasMaker  rdf:resource="#McGuinnesso" />
  </Chianti>
  
  <Region rdf:ID="ChiantiRegion">
    <locatedIn rdf:resource="#ItalianRegion" />
  </Region>
  
  <Winery rdf:ID="ClosDeLaPoussie" />
  
  <Sancerre rdf:ID="ClosDeLaPoussieSancerre">
    <hasMaker  rdf:resource="#ClosDeLaPoussie" />
  </Sancerre>
  
  <Winery rdf:ID="ClosDeVougeot" />
  
  <CotesDOr rdf:ID="ClosDeVougeotCotesDOr">
    <hasMaker  rdf:resource="#ClosDeVougeot" />
  </CotesDOr>
  
  <Winery rdf:ID="CongressSprings" />
  
  <Semillon rdf:ID="CongressSpringsSemillon">
    <hasMaker  rdf:resource="#CongressSprings" />
    <hasSugar  rdf:resource="#Dry" />
    <hasFlavor rdf:resource="#Moderate" />
    <hasBody   rdf:resource="#Medium" />
  </Semillon>

  <Winery rdf:ID="Corbans" />
  
  <Riesling rdf:ID="CorbansDryWhiteRiesling">
    <locatedIn rdf:resource="#NewZealandRegion" />
    <hasMaker  rdf:resource="#Corbans" />
    <hasSugar  rdf:resource="#OffDry" />
    <hasFlavor rdf:resource="#Moderate" />
    <hasBody   rdf:resource="#Medium" />
  </Riesling>
  
  <SauvignonBlanc rdf:ID="CorbansPrivateBinSauvignonBlanc">
    <locatedIn rdf:resource="#NewZealandRegion" />
    <hasMaker  rdf:resource="#Corbans" />
    <hasSugar  rdf:resource="#Dry" />
    <hasFlavor rdf:resource="#Strong" />
    <hasBody   rdf:resource="#Full" />
  </SauvignonBlanc>
  
  <SauvignonBlanc rdf:ID="CorbansSauvignonBlanc">
    <locatedIn rdf:resource="#NewZealandRegion" />
    <hasMaker  rdf:resource="#Corbans" />
    <hasSugar  rdf:resource="#Dry" />
    <hasFlavor rdf:resource="#Strong" />
    <hasBody   rdf:resource="#Medium" />
  </SauvignonBlanc>
  
  <Winery rdf:ID="CortonMontrachet" />
  
  <WhiteBurgundy rdf:ID="CortonMontrachetWhiteBurgundy">
    <hasMaker  rdf:resource="#CortonMontrachet" />
    <hasSugar  rdf:resource="#Dry" />
    <hasFlavor rdf:resource="#Strong" />
    <hasBody   rdf:resource="#Full" />
  </WhiteBurgundy>
  
  <Region rdf:ID="CotesDOrRegion">
    <locatedIn rdf:resource="#BourgogneRegion" />
  </Region>
  
  <Winery rdf:ID="Cotturi" />
  
  <Zinfandel rdf:ID="CotturiZinfandel">
    <locatedIn rdf:resource="#SonomaRegion" />
    <hasMaker  rdf:resource="#Cotturi" />
    <hasSugar  rdf:resource="#Dry" />
    <hasFlavor rdf:resource="#Strong" />
    <hasBody   rdf:resource="#Full" />
  </Zinfandel>
  
  <Winery rdf:ID="DAnjou" />
  
  <Region rdf:ID="EdnaValleyRegion">
    <locatedIn rdf:resource="#CaliforniaRegion" />
  </Region>
  
  <Winery rdf:ID="Elyse" />
  
  <Zinfandel rdf:ID="ElyseZinfandel">
    <locatedIn rdf:resource="#NapaRegion" />
    <hasMaker  rdf:resource="#Elyse" />
    <hasSugar  rdf:resource="#Dry" />
    <hasFlavor rdf:resource="#Moderate" />
    <hasBody   rdf:resource="#Full" />
  </Zinfandel>
  
  <Winery rdf:ID="Forman" />
  
  <CabernetSauvignon rdf:ID="FormanCabernetSauvignon">
    <locatedIn rdf:resource="#NapaRegion" />
    <hasMaker  rdf:resource="#Forman" />
    <hasSugar  rdf:resource="#Dry" />
    <hasFlavor rdf:resource="#Strong" />
    <hasBody   rdf:resource="#Medium" />
  </CabernetSauvignon>
  
  <Chardonnay rdf:ID="FormanChardonnay">
    <locatedIn rdf:resource="#NapaRegion" />
    <hasMaker  rdf:resource="#Forman" />
    <hasSugar  rdf:resource="#Dry" />
    <hasFlavor rdf:resource="#Moderate" />
    <hasBody   rdf:resource="#Full" />
  </Chardonnay>
  
  <Winery rdf:ID="Foxen" />
  
  <CheninBlanc rdf:ID="FoxenCheninBlanc">
    <locatedIn rdf:resource="#SantaBarbaraRegion" />
    <hasMaker  rdf:resource="#Foxen" />
    <hasSugar  rdf:resource="#Dry" />
    <hasFlavor rdf:resource="#Moderate" />
    <hasBody   rdf:resource="#Full" />
  </CheninBlanc>
  
  <WineGrape rdf:ID="GamayGrape" />
  
  <Winery rdf:ID="GaryFarrell" />
  
  <Merlot rdf:ID="GaryFarrellMerlot">
    <locatedIn rdf:resource="#SonomaRegion" />
    <hasMaker  rdf:resource="#GaryFarrell" />
    <hasSugar  rdf:resource="#Dry" />
    <hasFlavor rdf:resource="#Moderate" />
    <hasBody   rdf:resource="#Medium" />
  </Merlot>
  
  <Region rdf:ID="GermanyRegion" />
  
  <Winery rdf:ID="Handley" />
  
  <Winery rdf:ID="KalinCellars" />
  
  <Semillon rdf:ID="KalinCellarsSemillon">
    <hasMaker  rdf:resource="#KalinCellars" />
    <hasSugar  rdf:resource="#Dry" />
    <hasFlavor rdf:resource="#Strong" />
    <hasBody   rdf:resource="#Full" />
  </Semillon>
  
  <Winery rdf:ID="KathrynKennedy" />
  
  <Meritage rdf:ID="KathrynKennedyLateral">
    <hasMaker  rdf:resource="#KathrynKennedy" />
    <hasSugar  rdf:resource="#Dry" />
    <hasFlavor rdf:resource="#Delicate" />
    <hasBody   rdf:resource="#Medium" />
  </Meritage>
  
  <Winery rdf:ID="LaneTanner" />
  
  <PinotNoir rdf:ID="LaneTannerPinotNoir">
    <locatedIn rdf:resource="#SantaBarbaraRegion" />
    <hasMaker  rdf:resource="#LaneTanner" />
    <hasSugar  rdf:resource="#Dry" />
    <hasFlavor rdf:resource="#Delicate" />
    <hasBody   rdf:resource="#Light" />
  </PinotNoir>
  
  <Winery rdf:ID="Longridge" />
  
  <Merlot rdf:ID="LongridgeMerlot">
    <locatedIn rdf:resource="#NewZealandRegion" />
    <hasMaker  rdf:resource="#Longridge" />
    <hasSugar  rdf:resource="#Dry" />
    <hasFlavor rdf:resource="#Moderate" />
    <hasBody   rdf:resource="#Light" />
  </Merlot>
  
  <WineGrape rdf:ID="MalbecGrape" />
  
  <Region rdf:ID="MargauxRegion">
    <locatedIn rdf:resource="#MedocRegion" />
  </Region>
  
  <Winery rdf:ID="Marietta" />
  
  <CabernetSauvignon rdf:ID="MariettaCabernetSauvignon">
    <locatedIn rdf:resource="#SonomaRegion" />
    <hasMaker  rdf:resource="#Marietta" />
    <hasSugar  rdf:resource="#Dry" />
    <hasFlavor rdf:resource="#Moderate" />
    <hasBody   rdf:resource="#Medium" />
  </CabernetSauvignon>
  
  <RedTableWine rdf:ID="MariettaOldVinesRed">
    <locatedIn rdf:resource="#SonomaRegion" />
    <hasMaker  rdf:resource="#Marietta" />
    <hasSugar  rdf:resource="#Dry" />
    <hasFlavor rdf:resource="#Moderate" />
    <hasBody   rdf:resource="#Medium" />
  </RedTableWine>
  
  <PetiteSyrah rdf:ID="MariettaPetiteSyrah">
    <locatedIn rdf:resource="#SonomaRegion" />
    <hasMaker  rdf:resource="#Marietta" />
    <hasSugar  rdf:resource="#Dry" />
    <hasFlavor rdf:resource="#Moderate" />
    <hasBody   rdf:resource="#Medium" />
  </PetiteSyrah>
  
  <Zinfandel rdf:ID="MariettaZinfandel">
    <locatedIn rdf:resource="#SonomaRegion" />
    <hasMaker  rdf:resource="#Marietta" />
    <hasSugar  rdf:resource="#Dry" />
    <hasFlavor rdf:resource="#Moderate" />
    <hasBody   rdf:resource="#Medium" />
  </Zinfandel>
  
  <Winery rdf:ID="McGuinnesso" />
  
  <Region rdf:ID="MendocinoRegion">
    <locatedIn rdf:resource="#CaliforniaRegion" />
    <adjacentRegion rdf:resource="#SonomaRegion" />
  </Region>
  
  <WineGrape rdf:ID="MerlotGrape" />
  
  <Region rdf:ID="MeursaultRegion">
    <locatedIn rdf:resource="#BourgogneRegion" />
  </Region>
  
  <Winery rdf:ID="MountEdenVineyard" />
  
  <Chardonnay rdf:ID="MountEdenVineyardEdnaValleyChardonnay">
    <locatedIn rdf:resource="#EdnaValleyRegion" />
    <hasMaker  rdf:resource="#MountEdenVineyard" />
    <hasSugar  rdf:resource="#Dry" />
    <hasFlavor rdf:resource="#Moderate" />
    <hasBody   rdf:resource="#Medium" />
  </Chardonnay>
  
  <PinotNoir rdf:ID="MountEdenVineyardEstatePinotNoir">
    <locatedIn rdf:resource="#EdnaValleyRegion" />
    <hasMaker  rdf:resource="#MountEdenVineyard" />
    <hasSugar  rdf:resource="#Dry" />
    <hasFlavor rdf:resource="#Strong" />
    <hasBody   rdf:resource="#Full" />
  </PinotNoir>
  
  <Winery rdf:ID="Mountadam" />
  
  <Chardonnay rdf:ID="MountadamChardonnay">
    <locatedIn rdf:resource="#SouthAustraliaRegion" />
    <hasMaker  rdf:resource="#Mountadam" />
    <hasSugar  rdf:resource="#Dry" />
    <hasFlavor rdf:resource="#Strong" />
    <hasBody   rdf:resource="#Full" />
  </Chardonnay>
  
  <PinotNoir rdf:ID="MountadamPinotNoir">
    <locatedIn rdf:resource="#SouthAustraliaRegion" />
    <hasMaker  rdf:resource="#Mountadam" />
    <hasSugar  rdf:resource="#Dry" />
    <hasFlavor rdf:resource="#Moderate" />
    <hasBody   rdf:resource="#Medium" />
  </PinotNoir>
  
  <DryRiesling rdf:ID="MountadamRiesling">
    <locatedIn rdf:resource="#SouthAustraliaRegion" />
    <hasMaker  rdf:resource="#Mountadam" />
    <hasSugar  rdf:resource="#Dry" />
    <hasFlavor rdf:resource="#Delicate" />
    <hasBody   rdf:resource="#Medium" />
  </DryRiesling>
  
  <Region rdf:ID="MuscadetRegion">
    <locatedIn rdf:resource="#LoireRegion" />
  </Region>
  
  <Region rdf:ID="NapaRegion">
    <locatedIn rdf:resource="#CaliforniaRegion" />
  </Region>
  
  <Region rdf:ID="NewZealandRegion" />
  
  <Winery rdf:ID="PageMillWinery" />  

  <CabernetSauvignon rdf:ID="PageMillWineryCabernetSauvignon">
    <locatedIn rdf:resource="#NapaRegion" />
    <hasMaker  rdf:resource="#PageMillWinery" />
    <hasSugar  rdf:resource="#Dry" />
    <hasFlavor rdf:resource="#Moderate" />
    <hasBody   rdf:resource="#Medium" />
  </CabernetSauvignon>
  
  <Region rdf:ID="PauillacRegion">
    <locatedIn rdf:resource="#MedocRegion" />
  </Region>
  
  <Winery rdf:ID="PeterMccoy" />
  
  <Chardonnay rdf:ID="PeterMccoyChardonnay">
    <locatedIn rdf:resource="#SonomaRegion" />
    <hasMaker  rdf:resource="#PeterMccoy" />
    <hasSugar  rdf:resource="#Dry" />
    <hasFlavor rdf:resource="#Moderate" />
    <hasBody   rdf:resource="#Medium" />
  </Chardonnay>
  
  <WineGrape rdf:ID="PetiteSyrahGrape" />
  
  <WineGrape rdf:ID="PetiteVerdotGrape" />
  
  <WineGrape rdf:ID="PinotBlancGrape" />
  
  <WineGrape rdf:ID="PinotNoirGrape" />
  
  <Region rdf:ID="PortugalRegion" />
  
  <Winery rdf:ID="PulignyMontrachet" />
  
  <WhiteBurgundy rdf:ID="PulignyMontrachetWhiteBurgundy">
    <hasMaker  rdf:resource="#PulignyMontrachet" />
    <hasSugar  rdf:resource="#Dry" />
    <hasFlavor rdf:resource="#Moderate" />
    <hasBody   rdf:resource="#Medium" />
  </WhiteBurgundy>
  
  <WineGrape rdf:ID="RieslingGrape" />
  
  <Anjou rdf:ID="RoseDAnjou">
    <hasMaker  rdf:resource="#DAnjou" />
  </Anjou>
  
  <Region rdf:ID="SancerreRegion">
    <locatedIn rdf:resource="#LoireRegion" />
  </Region>
  
  <WineGrape rdf:ID="SangioveseGrape" />
  
  <Region rdf:ID="SantaBarbaraRegion">
    <locatedIn rdf:resource="#CaliforniaRegion" />
  </Region>
  
  <Winery rdf:ID="SantaCruzMountainVineyard" />
  
  <CabernetSauvignon rdf:ID="SantaCruzMountainVineyardCabernetSauvignon">
    <locatedIn rdf:resource="#SantaCruzMountainsRegion" />
    <hasMaker  rdf:resource="#SantaCruzMountainVineyard" />
    <hasSugar  rdf:resource="#Dry" />
    <hasFlavor rdf:resource="#Strong" />
    <hasBody   rdf:resource="#Full" />
  </CabernetSauvignon>
  
  <Region rdf:ID="CentralTexasRegion">
    <locatedIn rdf:resource="#TexasRegion" />
  </Region>

  <Winery rdf:ID="StGenevieve" />

  <WhiteWine rdf:ID="StGenevieveTexasWhite">
    <locatedIn rdf:resource="#CentralTexasRegion" />
    <hasMaker  rdf:resource="#StGenevieve" />
    <hasSugar  rdf:resource="#Dry" />
    <hasFlavor rdf:resource="#Moderate" />
  </WhiteWine>

  <Region rdf:ID="SantaCruzMountainsRegion">
    <locatedIn rdf:resource="#CaliforniaRegion" />
  </Region>
  
  <Winery rdf:ID="SaucelitoCanyon" />
  
  <Zinfandel rdf:ID="SaucelitoCanyonZinfandel">
    <locatedIn rdf:resource="#ArroyoGrandeRegion" />
    <hasMaker  rdf:resource="#SaucelitoCanyon" />
    <hasSugar  rdf:resource="#Dry" />
    <hasFlavor rdf:resource="#Moderate" />
    <hasBody   rdf:resource="#Medium" />
  </Zinfandel>
  
  <Zinfandel rdf:ID="SaucelitoCanyonZinfandel1998">
    <locatedIn rdf:resource="#ArroyoGrandeRegion" />
    <hasVintageYear rdf:resource="#Year1998" />
    <hasMaker  rdf:resource="#SaucelitoCanyon" />
    <hasSugar  rdf:resource="#Dry" />
    <hasFlavor rdf:resource="#Moderate" />
    <hasBody   rdf:resource="#Medium" />
  </Zinfandel>

  <Region rdf:ID="SauterneRegion">
    <locatedIn rdf:resource="#BordeauxRegion" />
  </Region>
  
  <WineGrape rdf:ID="SauvignonBlancGrape" />
  
  <Winery rdf:ID="SchlossRothermel" />
  
  <SweetRiesling rdf:ID="SchlossRothermelTrochenbierenausleseRiesling">
    <locatedIn rdf:resource="#GermanyRegion" />
    <hasMaker  rdf:resource="#SchlossRothermel" />
    <hasSugar  rdf:resource="#Sweet" />
    <hasFlavor rdf:resource="#Strong" />
    <hasBody   rdf:resource="#Full" />
  </SweetRiesling>
  
  <Winery rdf:ID="SchlossVolrad" />
  
  <SweetRiesling rdf:ID="SchlossVolradTrochenbierenausleseRiesling">
    <locatedIn rdf:resource ="#GermanyRegion" />
    <hasMaker  rdf:resource="#SchlossVolrad" />
    <hasSugar  rdf:resource="#Sweet" />
    <hasFlavor rdf:resource="#Moderate" />
    <hasBody   rdf:resource="#Full" />
  </SweetRiesling>
  
  <Winery rdf:ID="SeanThackrey" />
  
  <PetiteSyrah rdf:ID="SeanThackreySiriusPetiteSyrah">
    <locatedIn rdf:resource="#NapaRegion" />
    <hasMaker  rdf:resource="#SeanThackrey" />
    <hasSugar  rdf:resource="#Dry" />
    <hasFlavor rdf:resource="#Strong" />
    <hasBody   rdf:resource="#Full" />
  </PetiteSyrah>
  
  <Winery rdf:ID="Selaks" />
  
  <IceWine rdf:ID="SelaksIceWine">
    <locatedIn rdf:resource="#NewZealandRegion" />
    <hasMaker  rdf:resource="#Selaks" />
    <hasFlavor rdf:resource="#Moderate" />
    <hasBody   rdf:resource="#Medium" />
    <hasColor rdf:resource="#White" />
  </IceWine>
  
  <SauvignonBlanc rdf:ID="SelaksSauvignonBlanc">
    <locatedIn rdf:resource="#NewZealandRegion" />
    <hasMaker  rdf:resource="#Selaks" />
    <hasSugar  rdf:resource="#Dry" />
    <hasFlavor rdf:resource="#Moderate" />
    <hasBody   rdf:resource="#Medium" />
  </SauvignonBlanc>
  
  <WineGrape rdf:ID="SemillonGrape" />
  
  <Winery rdf:ID="SevreEtMaine" />
  
  <Muscadet rdf:ID="SevreEtMaineMuscadet">
    <hasMaker  rdf:resource="#SevreEtMaine" />
  </Muscadet>
  
  <Region rdf:ID="SonomaRegion">
    <locatedIn rdf:resource="#CaliforniaRegion" />
  </Region>
  
  <Region rdf:ID="SouthAustraliaRegion">
    <locatedIn rdf:resource="#AustralianRegion" />
  </Region>
  
  <Region rdf:ID="StEmilionRegion">
    <locatedIn rdf:resource="#BordeauxRegion" />
  </Region>
  
  <Winery rdf:ID="Stonleigh" />
  
  <SauvignonBlanc rdf:ID="StonleighSauvignonBlanc">
    <locatedIn rdf:resource="#NewZealandRegion" />
    <hasMaker  rdf:resource="#Stonleigh" />
    <hasSugar  rdf:resource="#Dry" />
    <hasFlavor rdf:resource="#Delicate" />
    <hasBody   rdf:resource="#Medium" />
  </SauvignonBlanc>
  
  <Winery rdf:ID="Taylor" />
  
  <Port rdf:ID="TaylorPort">
    <hasMaker  rdf:resource="#Taylor" />
  </Port>
  
  <Region rdf:ID="ToursRegion">
    <locatedIn rdf:resource="#LoireRegion" />
  </Region>
  
  <Winery rdf:ID="Ventana" />
  
  <CheninBlanc rdf:ID="VentanaCheninBlanc">
    <locatedIn rdf:resource="#CentralCoastRegion" />
    <hasMaker  rdf:resource="#Ventana" />
    <hasSugar  rdf:resource="#OffDry" />
    <hasFlavor rdf:resource="#Moderate" />
    <hasBody   rdf:resource="#Medium" />
  </CheninBlanc>
  
  <Winery rdf:ID="WhitehallLane" />
  
  <CabernetFranc rdf:ID="WhitehallLaneCabernetFranc">
    <locatedIn rdf:resource="#NapaRegion" />
    <hasMaker  rdf:resource="#WhitehallLane" />
    <hasSugar  rdf:resource="#Dry" />
    <hasFlavor rdf:resource="#Moderate" />
    <hasBody   rdf:resource="#Medium" />
  </CabernetFranc>
  
  <DessertWine rdf:ID="WhitehallLanePrimavera">
    <locatedIn rdf:resource="#NapaRegion" />
    <hasSugar  rdf:resource="#Sweet" />
    <hasFlavor rdf:resource="#Delicate" />
    <hasBody   rdf:resource="#Light" />
  </DessertWine>
  
  <owl:AllDifferent>
    <owl:distinctMembers rdf:parseType="Collection">
      <vin:Winery rdf:about="#Bancroft" />
      <vin:Winery rdf:about="#ChateauChevalBlanc" />
      <vin:Winery rdf:about="#ChateauDYchem" />
      <vin:Winery rdf:about="#ChateauDeMeursault" />
      <vin:Winery rdf:about="#ChateauLafiteRothschild" />
      <vin:Winery rdf:about="#ChateauMargauxWinery" />
      <vin:Winery rdf:about="#ChateauMorgon" />
      <vin:Winery rdf:about="#ClosDeLaPoussie" />
      <vin:Winery rdf:about="#ClosDeVougeot" />
      <vin:Winery rdf:about="#CongressSprings" />
      <vin:Winery rdf:about="#Corbans" />
      <vin:Winery rdf:about="#CortonMontrachet" />
      <vin:Winery rdf:about="#Cotturi" />
      <vin:Winery rdf:about="#DAnjou" />
      <vin:Winery rdf:about="#Elyse" />
      <vin:Winery rdf:about="#Forman" />
      <vin:Winery rdf:about="#Foxen" />
      <vin:Winery rdf:about="#GaryFarrell" />
      <vin:Winery rdf:about="#KalinCellars" />
      <vin:Winery rdf:about="#KathrynKennedy" />
      <vin:Winery rdf:about="#LaneTanner" />
      <vin:Winery rdf:about="#Longridge" />
      <vin:Winery rdf:about="#Marietta" />
      <vin:Winery rdf:about="#McGuinnesso" />
      <vin:Winery rdf:about="#MountEdenVineyard" />
      <vin:Winery rdf:about="#Mountadam" />
      <vin:Winery rdf:about="#PageMillWinery" />
      <vin:Winery rdf:about="#PeterMccoy" />
      <vin:Winery rdf:about="#PulignyMontrachet" />
      <vin:Winery rdf:about="#SantaCruzMountainVineyard" />
      <vin:Winery rdf:about="#SaucelitoCanyon" />
      <vin:Winery rdf:about="#SchlossRothermel" />
      <vin:Winery rdf:about="#SchlossVolrad" />
      <vin:Winery rdf:about="#SeanThackrey" />
      <vin:Winery rdf:about="#Selaks" />
      <vin:Winery rdf:about="#SevreEtMaine" />
      <vin:Winery rdf:about="#StGenevieve" />
      <vin:Winery rdf:about="#Stonleigh" />
      <vin:Winery rdf:about="#Taylor" />
      <vin:Winery rdf:about="#Ventana" />
      <vin:Winery rdf:about="#WhitehallLane" />
    </owl:distinctMembers>
  </owl:AllDifferent>

</rdf:RDF>
<miscellaneous/consistent001> rdf:type owl:Ontology .
<miscellaneous/consistent001> rdfs:comment "An example OWL ontology" .
<http://www.example.org/wine-020303> rdf:type owl:Ontology .
<miscellaneous/consistent001> owl:priorVersion <http://www.example.org/wine-020303> .
<miscellaneous/consistent001> owl:imports <miscellaneous/consistent002> .
<miscellaneous/consistent001> rdfs:comment """Derived from the DAML Wine ontology at 
      http://ontolingua.stanford.edu/doc/chimaera/ontologies/wines.daml
      Substantially changed, in particular the Region based relations.
    """ .
<miscellaneous/consistent001> rdfs:label "Wine Ontology" .
vin:Wine rdf:type owl:Class .
vin:Wine rdfs:subClassOf food:PotableLiquid .
_:a rdf:type owl:Restriction .
_:a owl:onProperty vin:hasMaker .
_:a owl:cardinality "1"^^xsd:nonNegativeInteger  .
vin:Wine rdfs:subClassOf _:a .
_:c rdf:type owl:Restriction .
_:c owl:onProperty vin:hasMaker .
_:c owl:allValuesFrom vin:Winery .
vin:Wine rdfs:subClassOf _:c .
_:e rdf:type owl:Restriction .
_:e owl:onProperty vin:madeFromGrape .
_:e owl:minCardinality "1"^^xsd:nonNegativeInteger  .
vin:Wine rdfs:subClassOf _:e .
_:g rdf:type owl:Restriction .
_:g owl:onProperty vin:hasSugar .
_:g owl:cardinality "1"^^xsd:nonNegativeInteger  .
vin:Wine rdfs:subClassOf _:g .
_:i rdf:type owl:Restriction .
_:i owl:onProperty vin:hasFlavor .
_:i owl:cardinality "1"^^xsd:nonNegativeInteger  .
vin:Wine rdfs:subClassOf _:i .
_:k rdf:type owl:Restriction .
_:k owl:onProperty vin:hasBody .
_:k owl:cardinality "1"^^xsd:nonNegativeInteger  .
vin:Wine rdfs:subClassOf _:k .
_:m rdf:type owl:Restriction .
_:m owl:onProperty vin:hasColor .
_:m owl:cardinality "1"^^xsd:nonNegativeInteger  .
vin:Wine rdfs:subClassOf _:m .
_:o rdf:type owl:Restriction .
_:o owl:onProperty vin:locatedIn .
_:o owl:someValuesFrom vin:Region .
vin:Wine rdfs:subClassOf _:o .
vin:Wine rdfs:label "wine"@en .
vin:Wine rdfs:label "vin"@fr .
vin:Vintage rdf:type owl:Class .
_:q rdf:type owl:Restriction .
_:q owl:onProperty vin:hasVintageYear .
_:q owl:cardinality "1"^^xsd:nonNegativeInteger  .
vin:Vintage rdfs:subClassOf _:q .
vin:WineGrape rdf:type owl:Class .
vin:WineGrape rdfs:subClassOf food:Grape .
vin:WhiteWine rdf:type owl:Class .
vin:Wine rdf:type owl:Class .
_:s rdf:type owl:Restriction .
_:s owl:onProperty vin:hasColor .
_:s owl:hasValue vin:White .
_:u rdf:first _:s .
_:u rdf:rest rdf:nil .
_:w rdf:first vin:Wine .
_:w rdf:rest _:u .
vin:WhiteWine owl:intersectionOf _:w .
vin:WhiteTableWine rdf:type owl:Class .
vin:TableWine rdf:type owl:Class .
_:y rdf:type owl:Restriction .
_:y owl:onProperty vin:hasColor .
_:y owl:hasValue vin:White .
_:a1 rdf:first _:y .
_:a1 rdf:rest rdf:nil .
_:c1 rdf:first vin:TableWine .
_:c1 rdf:rest _:a1 .
vin:WhiteTableWine owl:intersectionOf _:c1 .
vin:WhiteNonSweetWine rdf:type owl:Class .
vin:WhiteWine rdf:type owl:Class .
_:e1 rdf:type owl:Restriction .
_:e1 owl:onProperty vin:hasSugar .
_:g1 rdf:type owl:Class .
vin:Dry rdf:type owl:Thing .
vin:OffDry rdf:type owl:Thing .
_:i1 rdf:first vin:OffDry .
_:i1 rdf:rest rdf:nil .
_:k1 rdf:first vin:Dry .
_:k1 rdf:rest _:i1 .
_:g1 owl:oneOf _:k1 .
_:e1 owl:allValuesFrom _:g1 .
_:m1 rdf:first _:e1 .
_:m1 rdf:rest rdf:nil .
_:o1 rdf:first vin:WhiteWine .
_:o1 rdf:rest _:m1 .
vin:WhiteNonSweetWine owl:intersectionOf _:o1 .
vin:WhiteLoire rdf:type owl:Class .
vin:Loire rdf:type owl:Class .
vin:WhiteWine rdf:type owl:Class .
_:q1 rdf:first vin:WhiteWine .
_:q1 rdf:rest rdf:nil .
_:s1 rdf:first vin:Loire .
_:s1 rdf:rest _:q1 .
vin:WhiteLoire owl:intersectionOf _:s1 .
vin:WhiteLoire rdf:type owl:Class .
_:u1 rdf:type owl:Restriction .
_:u1 owl:onProperty vin:madeFromGrape .
_:w1 rdf:type owl:Class .
vin:CheninBlancGrape rdf:type owl:Thing .
vin:PinotBlancGrape rdf:type owl:Thing .
vin:SauvignonBlancGrape rdf:type owl:Thing .
_:y1 rdf:first vin:SauvignonBlancGrape .
_:y1 rdf:rest rdf:nil .
_:a2 rdf:first vin:PinotBlancGrape .
_:a2 rdf:rest _:y1 .
_:c2 rdf:first vin:CheninBlancGrape .
_:c2 rdf:rest _:a2 .
_:w1 owl:oneOf _:c2 .
_:u1 owl:allValuesFrom _:w1 .
vin:WhiteLoire rdfs:subClassOf _:u1 .
vin:WhiteBurgundy rdf:type owl:Class .
vin:Burgundy rdf:type owl:Class .
vin:WhiteWine rdf:type owl:Class .
_:e2 rdf:first vin:WhiteWine .
_:e2 rdf:rest rdf:nil .
_:g2 rdf:first vin:Burgundy .
_:g2 rdf:rest _:e2 .
vin:WhiteBurgundy owl:intersectionOf _:g2 .
vin:WhiteBurgundy rdf:type owl:Class .
_:i2 rdf:type owl:Restriction .
_:i2 owl:onProperty vin:madeFromGrape .
_:i2 owl:hasValue vin:ChardonnayGrape .
vin:WhiteBurgundy rdfs:subClassOf _:i2 .
_:k2 rdf:type owl:Restriction .
_:k2 owl:onProperty vin:madeFromGrape .
_:k2 owl:maxCardinality "1"^^xsd:nonNegativeInteger  .
vin:WhiteBurgundy rdfs:subClassOf _:k2 .
vin:WhiteBordeaux rdf:type owl:Class .
vin:Bordeaux rdf:type owl:Class .
vin:WhiteWine rdf:type owl:Class .
_:m2 rdf:first vin:WhiteWine .
_:m2 rdf:rest rdf:nil .
_:o2 rdf:first vin:Bordeaux .
_:o2 rdf:rest _:m2 .
vin:WhiteBordeaux owl:intersectionOf _:o2 .
vin:WhiteBordeaux rdf:type owl:Class .
_:q2 rdf:type owl:Restriction .
_:q2 owl:onProperty vin:madeFromGrape .
_:s2 rdf:type owl:Class .
vin:SemillonGrape rdf:type owl:Thing .
vin:SauvignonBlancGrape rdf:type owl:Thing .
_:u2 rdf:first vin:SauvignonBlancGrape .
_:u2 rdf:rest rdf:nil .
_:w2 rdf:first vin:SemillonGrape .
_:w2 rdf:rest _:u2 .
_:s2 owl:oneOf _:w2 .
_:q2 owl:allValuesFrom _:s2 .
vin:WhiteBordeaux rdfs:subClassOf _:q2 .
vin:Region rdf:type owl:Class .
vin:locatedIn rdf:type owl:ObjectProperty .
vin:locatedIn rdf:type owl:TransitiveProperty .
vin:locatedIn rdfs:domain owl:Thing .
vin:locatedIn rdfs:range vin:Region .
vin:adjacentRegion rdf:type owl:ObjectProperty .
vin:adjacentRegion rdf:type owl:SymmetricProperty .
vin:adjacentRegion rdfs:domain vin:Region .
vin:adjacentRegion rdfs:range vin:Region .
vin:VintageYear rdf:type owl:Class .
vin:yearValue rdf:type owl:DatatypeProperty .
vin:yearValue rdfs:domain vin:VintageYear .
vin:yearValue rdfs:range xsd:positiveInteger .
vin:Year1998 rdf:type vin:VintageYear .
vin:Year1998 vin:yearValue "1998"^^xsd:positiveInteger  .
vin:hasVintageYear rdf:type owl:ObjectProperty .
vin:hasVintageYear rdf:type owl:FunctionalProperty .
vin:hasVintageYear rdfs:domain vin:Vintage .
vin:hasVintageYear rdfs:range vin:VintageYear .
vin:madeFromGrape rdf:type owl:ObjectProperty .
vin:madeFromGrape rdfs:subPropertyOf food:madeFromFruit .
vin:madeFromGrape rdfs:domain vin:Wine .
vin:madeFromGrape rdfs:range vin:WineGrape .
vin:madeIntoWine rdf:type owl:ObjectProperty .
vin:madeIntoWine owl:inverseOf vin:madeFromGrape .
vin:hasWineDescriptor rdf:type owl:ObjectProperty .
vin:hasWineDescriptor rdfs:domain vin:Wine .
vin:hasWineDescriptor rdfs:range vin:WineDescriptor .
vin:hasSugar rdf:type owl:ObjectProperty .
vin:hasSugar rdf:type owl:FunctionalProperty .
vin:hasSugar rdfs:subPropertyOf vin:hasWineDescriptor .
vin:hasSugar rdfs:range vin:WineSugar .
vin:hasBody rdf:type owl:ObjectProperty .
vin:hasBody rdf:type owl:FunctionalProperty .
vin:hasBody rdfs:subPropertyOf vin:hasWineDescriptor .
vin:hasBody rdfs:range vin:WineBody .
vin:hasFlavor rdf:type owl:ObjectProperty .
vin:hasFlavor rdf:type owl:FunctionalProperty .
vin:hasFlavor rdfs:subPropertyOf vin:hasWineDescriptor .
vin:hasFlavor rdfs:range vin:WineFlavor .
vin:hasColor rdf:type owl:ObjectProperty .
vin:hasColor rdf:type owl:FunctionalProperty .
vin:hasColor rdfs:subPropertyOf vin:hasWineDescriptor .
vin:hasColor rdfs:domain vin:Wine .
vin:hasColor rdfs:range vin:WineColor .
vin:hasMaker rdf:type owl:ObjectProperty .
vin:hasMaker rdf:type owl:FunctionalProperty .
vin:producesWine rdf:type owl:ObjectProperty .
vin:producesWine owl:inverseOf vin:hasMaker .
vin:Zinfandel rdf:type owl:Class .
vin:Wine rdf:type owl:Class .
_:y2 rdf:type owl:Restriction .
_:y2 owl:onProperty vin:madeFromGrape .
_:y2 owl:hasValue vin:ZinfandelGrape .
_:a3 rdf:type owl:Restriction .
_:a3 owl:onProperty vin:madeFromGrape .
_:a3 owl:maxCardinality "1"^^xsd:nonNegativeInteger  .
_:c3 rdf:first _:a3 .
_:c3 rdf:rest rdf:nil .
_:e3 rdf:first _:y2 .
_:e3 rdf:rest _:c3 .
_:g3 rdf:first vin:Wine .
_:g3 rdf:rest _:e3 .
vin:Zinfandel owl:intersectionOf _:g3 .
vin:Zinfandel rdf:type owl:Class .
_:i3 rdf:type owl:Restriction .
_:i3 owl:onProperty vin:hasColor .
_:i3 owl:hasValue vin:Red .
vin:Zinfandel rdfs:subClassOf _:i3 .
_:k3 rdf:type owl:Restriction .
_:k3 owl:onProperty vin:hasSugar .
_:k3 owl:hasValue vin:Dry .
vin:Zinfandel rdfs:subClassOf _:k3 .
_:m3 rdf:type owl:Restriction .
_:m3 owl:onProperty vin:hasBody .
_:o3 rdf:type owl:Class .
vin:Full rdf:type owl:Thing .
vin:Medium rdf:type owl:Thing .
_:q3 rdf:first vin:Medium .
_:q3 rdf:rest rdf:nil .
_:s3 rdf:first vin:Full .
_:s3 rdf:rest _:q3 .
_:o3 owl:oneOf _:s3 .
_:m3 owl:allValuesFrom _:o3 .
vin:Zinfandel rdfs:subClassOf _:m3 .
_:u3 rdf:type owl:Restriction .
_:u3 owl:onProperty vin:hasFlavor .
_:w3 rdf:type owl:Class .
vin:Moderate rdf:type owl:Thing .
vin:Strong rdf:type owl:Thing .
_:y3 rdf:first vin:Strong .
_:y3 rdf:rest rdf:nil .
_:a4 rdf:first vin:Moderate .
_:a4 rdf:rest _:y3 .
_:w3 owl:oneOf _:a4 .
_:u3 owl:allValuesFrom _:w3 .
vin:Zinfandel rdfs:subClassOf _:u3 .
vin:Winery rdf:type owl:Class .
vin:WineDescriptor rdf:type owl:Class .
vin:WineDescriptor rdfs:comment "Made WineDescriptor unionType of tastes and color" .
vin:WineTaste rdf:type owl:Class .
vin:WineColor rdf:type owl:Class .
_:c4 rdf:first vin:WineColor .
_:c4 rdf:rest rdf:nil .
_:e4 rdf:first vin:WineTaste .
_:e4 rdf:rest _:c4 .
vin:WineDescriptor owl:unionOf _:e4 .
vin:WineTaste rdf:type owl:Class .
vin:WineTaste rdfs:subClassOf vin:WineDescriptor .
vin:WineColor rdf:type owl:Class .
vin:WineColor rdfs:subClassOf vin:WineDescriptor .
vin:White rdf:type owl:Thing .
vin:Rose rdf:type owl:Thing .
vin:Red rdf:type owl:Thing .
_:g4 rdf:first vin:Red .
_:g4 rdf:rest rdf:nil .
_:i4 rdf:first vin:Rose .
_:i4 rdf:rest _:g4 .
_:k4 rdf:first vin:White .
_:k4 rdf:rest _:i4 .
vin:WineColor owl:oneOf _:k4 .
vin:WineSugar rdf:type owl:Class .
vin:WineSugar rdfs:subClassOf vin:WineTaste .
vin:Sweet rdf:type owl:Thing .
vin:OffDry rdf:type owl:Thing .
vin:Dry rdf:type owl:Thing .
_:m4 rdf:first vin:Dry .
_:m4 rdf:rest rdf:nil .
_:o4 rdf:first vin:OffDry .
_:o4 rdf:rest _:m4 .
_:q4 rdf:first vin:Sweet .
_:q4 rdf:rest _:o4 .
vin:WineSugar owl:oneOf _:q4 .
vin:WineFlavor rdf:type owl:Class .
vin:WineFlavor rdfs:subClassOf vin:WineTaste .
vin:Delicate rdf:type owl:Thing .
vin:Moderate rdf:type owl:Thing .
vin:Strong rdf:type owl:Thing .
_:s4 rdf:first vin:Strong .
_:s4 rdf:rest rdf:nil .
_:u4 rdf:first vin:Moderate .
_:u4 rdf:rest _:s4 .
_:w4 rdf:first vin:Delicate .
_:w4 rdf:rest _:u4 .
vin:WineFlavor owl:oneOf _:w4 .
vin:WineBody rdf:type owl:Class .
vin:WineBody rdfs:subClassOf vin:WineTaste .
vin:Light rdf:type owl:Thing .
vin:Medium rdf:type owl:Thing .
vin:Full rdf:type owl:Thing .
_:y4 rdf:first vin:Full .
_:y4 rdf:rest rdf:nil .
_:a5 rdf:first vin:Medium .
_:a5 rdf:rest _:y4 .
_:c5 rdf:first vin:Light .
_:c5 rdf:rest _:a5 .
vin:WineBody owl:oneOf _:c5 .
vin:USRegion rdf:type vin:Region .
vin:Tours rdf:type owl:Class .
vin:Loire rdf:type owl:Class .
_:e5 rdf:type owl:Restriction .
_:e5 owl:onProperty vin:locatedIn .
_:e5 owl:hasValue vin:ToursRegion .
_:g5 rdf:first _:e5 .
_:g5 rdf:rest rdf:nil .
_:i5 rdf:first vin:Loire .
_:i5 rdf:rest _:g5 .
vin:Tours owl:intersectionOf _:i5 .
vin:Tours rdf:type owl:Class .
_:k5 rdf:type owl:Restriction .
_:k5 owl:onProperty vin:madeFromGrape .
_:k5 owl:hasValue vin:CheninBlancGrape .
vin:Tours rdfs:subClassOf _:k5 .
_:m5 rdf:type owl:Restriction .
_:m5 owl:onProperty vin:madeFromGrape .
_:m5 owl:maxCardinality "1"^^xsd:nonNegativeInteger  .
vin:Tours rdfs:subClassOf _:m5 .
vin:TableWine rdf:type owl:Class .
vin:Wine rdf:type owl:Class .
_:o5 rdf:type owl:Restriction .
_:o5 owl:onProperty vin:hasSugar .
_:o5 owl:hasValue vin:Dry .
_:q5 rdf:first _:o5 .
_:q5 rdf:rest rdf:nil .
_:s5 rdf:first vin:Wine .
_:s5 rdf:rest _:q5 .
vin:TableWine owl:intersectionOf _:s5 .
vin:SweetWine rdf:type owl:Class .
vin:Wine rdf:type owl:Class .
_:u5 rdf:type owl:Restriction .
_:u5 owl:onProperty vin:hasSugar .
_:u5 owl:hasValue vin:Sweet .
_:w5 rdf:first _:u5 .
_:w5 rdf:rest rdf:nil .
_:y5 rdf:first vin:Wine .
_:y5 rdf:rest _:w5 .
vin:SweetWine owl:intersectionOf _:y5 .
vin:SweetRiesling rdf:type owl:Class .
vin:SweetRiesling rdfs:subClassOf vin:DessertWine .
_:a6 rdf:type owl:Restriction .
_:a6 owl:onProperty vin:hasBody .
_:a6 owl:hasValue vin:Full .
vin:SweetRiesling rdfs:subClassOf _:a6 .
_:c6 rdf:type owl:Restriction .
_:c6 owl:onProperty vin:hasFlavor .
_:e6 rdf:type owl:Class .
vin:Moderate rdf:type owl:Thing .
vin:Strong rdf:type owl:Thing .
_:g6 rdf:first vin:Strong .
_:g6 rdf:rest rdf:nil .
_:i6 rdf:first vin:Moderate .
_:i6 rdf:rest _:g6 .
_:e6 owl:oneOf _:i6 .
_:c6 owl:allValuesFrom _:e6 .
vin:SweetRiesling rdfs:subClassOf _:c6 .
vin:Riesling rdf:type owl:Class .
_:k6 rdf:type owl:Restriction .
_:k6 owl:onProperty vin:hasSugar .
_:k6 owl:hasValue vin:Sweet .
_:m6 rdf:first _:k6 .
_:m6 rdf:rest rdf:nil .
_:o6 rdf:first vin:Riesling .
_:o6 rdf:rest _:m6 .
vin:SweetRiesling owl:intersectionOf _:o6 .
vin:StEmilion rdf:type owl:Class .
_:q6 rdf:type owl:Restriction .
_:q6 owl:onProperty vin:hasColor .
_:q6 owl:hasValue vin:Red .
vin:StEmilion rdfs:subClassOf _:q6 .
_:s6 rdf:type owl:Restriction .
_:s6 owl:onProperty vin:hasFlavor .
_:s6 owl:hasValue vin:Strong .
vin:StEmilion rdfs:subClassOf _:s6 .
_:u6 rdf:type owl:Restriction .
_:u6 owl:onProperty vin:madeFromGrape .
_:u6 owl:hasValue vin:CabernetSauvignonGrape .
vin:StEmilion rdfs:subClassOf _:u6 .
_:w6 rdf:type owl:Restriction .
_:w6 owl:onProperty vin:madeFromGrape .
_:w6 owl:maxCardinality "1"^^xsd:nonNegativeInteger  .
vin:StEmilion rdfs:subClassOf _:w6 .
vin:Bordeaux rdf:type owl:Class .
_:y6 rdf:type owl:Restriction .
_:y6 owl:onProperty vin:locatedIn .
_:y6 owl:hasValue vin:StEmilionRegion .
_:a7 rdf:first _:y6 .
_:a7 rdf:rest rdf:nil .
_:c7 rdf:first vin:Bordeaux .
_:c7 rdf:rest _:a7 .
vin:StEmilion owl:intersectionOf _:c7 .
vin:SemillonOrSauvignonBlanc rdf:type owl:Class .
_:e7 rdf:type owl:Restriction .
_:e7 owl:onProperty vin:hasColor .
_:e7 owl:hasValue vin:White .
vin:SemillonOrSauvignonBlanc rdfs:subClassOf _:e7 .
_:g7 rdf:type owl:Restriction .
_:g7 owl:onProperty vin:hasBody .
_:i7 rdf:type owl:Class .
vin:Medium rdf:type owl:Thing .
vin:Full rdf:type owl:Thing .
_:k7 rdf:first vin:Full .
_:k7 rdf:rest rdf:nil .
_:m7 rdf:first vin:Medium .
_:m7 rdf:rest _:k7 .
_:i7 owl:oneOf _:m7 .
_:g7 owl:allValuesFrom _:i7 .
vin:SemillonOrSauvignonBlanc rdfs:subClassOf _:g7 .
vin:Wine rdf:type owl:Class .
_:o7 rdf:type owl:Restriction .
_:o7 owl:onProperty vin:madeFromGrape .
_:q7 rdf:type owl:Class .
vin:SemillonGrape rdf:type owl:Thing .
vin:SauvignonBlancGrape rdf:type owl:Thing .
_:s7 rdf:first vin:SauvignonBlancGrape .
_:s7 rdf:rest rdf:nil .
_:u7 rdf:first vin:SemillonGrape .
_:u7 rdf:rest _:s7 .
_:q7 owl:oneOf _:u7 .
_:o7 owl:allValuesFrom _:q7 .
_:w7 rdf:first _:o7 .
_:w7 rdf:rest rdf:nil .
_:y7 rdf:first vin:Wine .
_:y7 rdf:rest _:w7 .
vin:SemillonOrSauvignonBlanc owl:intersectionOf _:y7 .
vin:Semillon rdf:type owl:Class .
vin:SemillonOrSauvignonBlanc rdf:type owl:Class .
_:a8 rdf:type owl:Restriction .
_:a8 owl:onProperty vin:madeFromGrape .
_:a8 owl:hasValue vin:SemillonGrape .
_:c8 rdf:type owl:Restriction .
_:c8 owl:onProperty vin:madeFromGrape .
_:c8 owl:maxCardinality "1"^^xsd:nonNegativeInteger  .
_:e8 rdf:first _:c8 .
_:e8 rdf:rest rdf:nil .
_:g8 rdf:first _:a8 .
_:g8 rdf:rest _:e8 .
_:i8 rdf:first vin:SemillonOrSauvignonBlanc .
_:i8 rdf:rest _:g8 .
vin:Semillon owl:intersectionOf _:i8 .
vin:SauvignonBlanc rdf:type owl:Class .
vin:SemillonOrSauvignonBlanc rdf:type owl:Class .
_:k8 rdf:type owl:Restriction .
_:k8 owl:onProperty vin:madeFromGrape .
_:k8 owl:hasValue vin:SauvignonBlancGrape .
_:m8 rdf:type owl:Restriction .
_:m8 owl:onProperty vin:madeFromGrape .
_:m8 owl:maxCardinality "1"^^xsd:nonNegativeInteger  .
_:o8 rdf:first _:m8 .
_:o8 rdf:rest rdf:nil .
_:q8 rdf:first _:k8 .
_:q8 rdf:rest _:o8 .
_:s8 rdf:first vin:SemillonOrSauvignonBlanc .
_:s8 rdf:rest _:q8 .
vin:SauvignonBlanc owl:intersectionOf _:s8 .
vin:Sauterne rdf:type owl:Class .
vin:Sauterne rdfs:subClassOf vin:LateHarvest .
vin:Sauterne rdfs:subClassOf vin:Bordeaux .
_:u8 rdf:type owl:Restriction .
_:u8 owl:onProperty vin:locatedIn .
_:u8 owl:hasValue vin:SauterneRegion .
vin:Sauterne rdfs:subClassOf _:u8 .
_:w8 rdf:type owl:Restriction .
_:w8 owl:onProperty vin:hasBody .
_:w8 owl:hasValue vin:Medium .
vin:Sauterne rdfs:subClassOf _:w8 .
_:y8 rdf:type owl:Restriction .
_:y8 owl:onProperty vin:hasColor .
_:y8 owl:hasValue vin:White .
vin:Sauterne rdfs:subClassOf _:y8 .
vin:Sancerre rdf:type owl:Class .
_:a9 rdf:type owl:Restriction .
_:a9 owl:onProperty vin:hasBody .
_:a9 owl:hasValue vin:Medium .
vin:Sancerre rdfs:subClassOf _:a9 .
_:c9 rdf:type owl:Restriction .
_:c9 owl:onProperty vin:hasSugar .
_:c9 owl:hasValue vin:OffDry .
vin:Sancerre rdfs:subClassOf _:c9 .
_:e9 rdf:type owl:Restriction .
_:e9 owl:onProperty vin:hasFlavor .
_:e9 owl:hasValue vin:Delicate .
vin:Sancerre rdfs:subClassOf _:e9 .
_:g9 rdf:type owl:Restriction .
_:g9 owl:onProperty vin:madeFromGrape .
_:g9 owl:hasValue vin:SauvignonBlancGrape .
vin:Sancerre rdfs:subClassOf _:g9 .
_:i9 rdf:type owl:Restriction .
_:i9 owl:onProperty vin:madeFromGrape .
_:i9 owl:maxCardinality "1"^^xsd:nonNegativeInteger  .
vin:Sancerre rdfs:subClassOf _:i9 .
vin:Loire rdf:type owl:Class .
_:k9 rdf:type owl:Restriction .
_:k9 owl:onProperty vin:locatedIn .
_:k9 owl:hasValue vin:SancerreRegion .
_:m9 rdf:first _:k9 .
_:m9 rdf:rest rdf:nil .
_:o9 rdf:first vin:Loire .
_:o9 rdf:rest _:m9 .
vin:Sancerre owl:intersectionOf _:o9 .
vin:RoseWine rdf:type owl:Class .
vin:Wine rdf:type owl:Class .
_:q9 rdf:type owl:Restriction .
_:q9 owl:onProperty vin:hasColor .
_:q9 owl:hasValue vin:Rose .
_:s9 rdf:first _:q9 .
_:s9 rdf:rest rdf:nil .
_:u9 rdf:first vin:Wine .
_:u9 rdf:rest _:s9 .
vin:RoseWine owl:intersectionOf _:u9 .
vin:Riesling rdf:type owl:Class .
_:w9 rdf:type owl:Restriction .
_:w9 owl:onProperty vin:hasColor .
_:w9 owl:hasValue vin:White .
vin:Riesling rdfs:subClassOf _:w9 .
vin:Wine rdf:type owl:Class .
_:y9 rdf:type owl:Restriction .
_:y9 owl:onProperty vin:madeFromGrape .
_:y9 owl:hasValue vin:RieslingGrape .
_:a10 rdf:type owl:Restriction .
_:a10 owl:onProperty vin:madeFromGrape .
_:a10 owl:maxCardinality "1"^^xsd:nonNegativeInteger  .
_:c10 rdf:first _:a10 .
_:c10 rdf:rest rdf:nil .
_:e10 rdf:first _:y9 .
_:e10 rdf:rest _:c10 .
_:g10 rdf:first vin:Wine .
_:g10 rdf:rest _:e10 .
vin:Riesling owl:intersectionOf _:g10 .
vin:RedWine rdf:type owl:Class .
vin:Wine rdf:type owl:Class .
_:i10 rdf:type owl:Restriction .
_:i10 owl:onProperty vin:hasColor .
_:i10 owl:hasValue vin:Red .
_:k10 rdf:first _:i10 .
_:k10 rdf:rest rdf:nil .
_:m10 rdf:first vin:Wine .
_:m10 rdf:rest _:k10 .
vin:RedWine owl:intersectionOf _:m10 .
vin:RedTableWine rdf:type owl:Class .
vin:TableWine rdf:type owl:Class .
_:o10 rdf:type owl:Restriction .
_:o10 owl:onProperty vin:hasColor .
_:o10 owl:hasValue vin:Red .
_:q10 rdf:first _:o10 .
_:q10 rdf:rest rdf:nil .
_:s10 rdf:first vin:TableWine .
_:s10 rdf:rest _:q10 .
vin:RedTableWine owl:intersectionOf _:s10 .
vin:RedBurgundy rdf:type owl:Class .
_:u10 rdf:type owl:Restriction .
_:u10 owl:onProperty vin:madeFromGrape .
_:u10 owl:hasValue vin:PinotNoirGrape .
vin:RedBurgundy rdfs:subClassOf _:u10 .
_:w10 rdf:type owl:Restriction .
_:w10 owl:onProperty vin:madeFromGrape .
_:w10 owl:maxCardinality "1"^^xsd:nonNegativeInteger  .
vin:RedBurgundy rdfs:subClassOf _:w10 .
vin:Burgundy rdf:type owl:Class .
vin:RedWine rdf:type owl:Class .
_:y10 rdf:first vin:RedWine .
_:y10 rdf:rest rdf:nil .
_:a11 rdf:first vin:Burgundy .
_:a11 rdf:rest _:y10 .
vin:RedBurgundy owl:intersectionOf _:a11 .
vin:RedBordeaux rdf:type owl:Class .
_:c11 rdf:type owl:Restriction .
_:c11 owl:onProperty vin:madeFromGrape .
_:e11 rdf:type owl:Class .
vin:CabernetSauvignonGrape rdf:type owl:Thing .
vin:MerlotGrape rdf:type owl:Thing .
_:g11 rdf:first vin:MerlotGrape .
_:g11 rdf:rest rdf:nil .
_:i11 rdf:first vin:CabernetSauvignonGrape .
_:i11 rdf:rest _:g11 .
_:e11 owl:oneOf _:i11 .
_:c11 owl:allValuesFrom _:e11 .
vin:RedBordeaux rdfs:subClassOf _:c11 .
vin:Bordeaux rdf:type owl:Class .
vin:RedWine rdf:type owl:Class .
_:k11 rdf:first vin:RedWine .
_:k11 rdf:rest rdf:nil .
_:m11 rdf:first vin:Bordeaux .
_:m11 rdf:rest _:k11 .
vin:RedBordeaux owl:intersectionOf _:m11 .
vin:Port rdf:type owl:Class .
vin:Port rdfs:subClassOf vin:RedWine .
_:o11 rdf:type owl:Restriction .
_:o11 owl:onProperty vin:locatedIn .
_:o11 owl:hasValue vin:PortugalRegion .
vin:Port rdfs:subClassOf _:o11 .
_:q11 rdf:type owl:Restriction .
_:q11 owl:onProperty vin:hasBody .
_:q11 owl:hasValue vin:Full .
vin:Port rdfs:subClassOf _:q11 .
_:s11 rdf:type owl:Restriction .
_:s11 owl:onProperty vin:hasFlavor .
_:s11 owl:hasValue vin:Strong .
vin:Port rdfs:subClassOf _:s11 .
_:u11 rdf:type owl:Restriction .
_:u11 owl:onProperty vin:hasSugar .
_:u11 owl:hasValue vin:Sweet .
vin:Port rdfs:subClassOf _:u11 .
vin:PinotNoir rdf:type owl:Class .
_:w11 rdf:type owl:Restriction .
_:w11 owl:onProperty vin:hasColor .
_:w11 owl:hasValue vin:Red .
vin:PinotNoir rdfs:subClassOf _:w11 .
vin:Wine rdf:type owl:Class .
_:y11 rdf:type owl:Restriction .
_:y11 owl:onProperty vin:madeFromGrape .
_:y11 owl:hasValue vin:PinotNoirGrape .
_:a12 rdf:type owl:Restriction .
_:a12 owl:onProperty vin:madeFromGrape .
_:a12 owl:maxCardinality "1"^^xsd:nonNegativeInteger  .
_:c12 rdf:first _:a12 .
_:c12 rdf:rest rdf:nil .
_:e12 rdf:first _:y11 .
_:e12 rdf:rest _:c12 .
_:g12 rdf:first vin:Wine .
_:g12 rdf:rest _:e12 .
vin:PinotNoir owl:intersectionOf _:g12 .
vin:PinotBlanc rdf:type owl:Class .
_:i12 rdf:type owl:Restriction .
_:i12 owl:onProperty vin:hasColor .
_:i12 owl:hasValue vin:White .
vin:PinotBlanc rdfs:subClassOf _:i12 .
vin:Wine rdf:type owl:Class .
_:k12 rdf:type owl:Restriction .
_:k12 owl:onProperty vin:madeFromGrape .
_:k12 owl:hasValue vin:PinotBlancGrape .
_:m12 rdf:type owl:Restriction .
_:m12 owl:onProperty vin:madeFromGrape .
_:m12 owl:maxCardinality "1"^^xsd:nonNegativeInteger  .
_:o12 rdf:first _:m12 .
_:o12 rdf:rest rdf:nil .
_:q12 rdf:first _:k12 .
_:q12 rdf:rest _:o12 .
_:s12 rdf:first vin:Wine .
_:s12 rdf:rest _:q12 .
vin:PinotBlanc owl:intersectionOf _:s12 .
vin:PetiteSyrah rdf:type owl:Class .
_:u12 rdf:type owl:Restriction .
_:u12 owl:onProperty vin:hasColor .
_:u12 owl:hasValue vin:Red .
vin:PetiteSyrah rdfs:subClassOf _:u12 .
_:w12 rdf:type owl:Restriction .
_:w12 owl:onProperty vin:hasSugar .
_:w12 owl:hasValue vin:Dry .
vin:PetiteSyrah rdfs:subClassOf _:w12 .
_:y12 rdf:type owl:Restriction .
_:y12 owl:onProperty vin:hasFlavor .
_:a13 rdf:type owl:Class .
vin:Moderate rdf:type owl:Thing .
vin:Strong rdf:type owl:Thing .
_:c13 rdf:first vin:Strong .
_:c13 rdf:rest rdf:nil .
_:e13 rdf:first vin:Moderate .
_:e13 rdf:rest _:c13 .
_:a13 owl:oneOf _:e13 .
_:y12 owl:allValuesFrom _:a13 .
vin:PetiteSyrah rdfs:subClassOf _:y12 .
_:g13 rdf:type owl:Restriction .
_:g13 owl:onProperty vin:hasBody .
_:i13 rdf:type owl:Class .
vin:Medium rdf:type owl:Thing .
vin:Full rdf:type owl:Thing .
_:k13 rdf:first vin:Full .
_:k13 rdf:rest rdf:nil .
_:m13 rdf:first vin:Medium .
_:m13 rdf:rest _:k13 .
_:i13 owl:oneOf _:m13 .
_:g13 owl:allValuesFrom _:i13 .
vin:PetiteSyrah rdfs:subClassOf _:g13 .
vin:Wine rdf:type owl:Class .
_:o13 rdf:type owl:Restriction .
_:o13 owl:onProperty vin:madeFromGrape .
_:o13 owl:hasValue vin:PetiteSyrahGrape .
_:q13 rdf:type owl:Restriction .
_:q13 owl:onProperty vin:madeFromGrape .
_:q13 owl:maxCardinality "1"^^xsd:nonNegativeInteger  .
_:s13 rdf:first _:q13 .
_:s13 rdf:rest rdf:nil .
_:u13 rdf:first _:o13 .
_:u13 rdf:rest _:s13 .
_:w13 rdf:first vin:Wine .
_:w13 rdf:rest _:u13 .
vin:PetiteSyrah owl:intersectionOf _:w13 .
vin:Pauillac rdf:type owl:Class .
_:y13 rdf:type owl:Restriction .
_:y13 owl:onProperty vin:hasBody .
_:y13 owl:hasValue vin:Full .
vin:Pauillac rdfs:subClassOf _:y13 .
_:a14 rdf:type owl:Restriction .
_:a14 owl:onProperty vin:hasFlavor .
_:a14 owl:hasValue vin:Strong .
vin:Pauillac rdfs:subClassOf _:a14 .
_:c14 rdf:type owl:Restriction .
_:c14 owl:onProperty vin:madeFromGrape .
_:c14 owl:hasValue vin:CabernetSauvignonGrape .
vin:Pauillac rdfs:subClassOf _:c14 .
_:e14 rdf:type owl:Restriction .
_:e14 owl:onProperty vin:madeFromGrape .
_:e14 owl:maxCardinality "1"^^xsd:nonNegativeInteger  .
vin:Pauillac rdfs:subClassOf _:e14 .
vin:Medoc rdf:type owl:Class .
_:g14 rdf:type owl:Restriction .
_:g14 owl:onProperty vin:locatedIn .
_:g14 owl:hasValue vin:PauillacRegion .
_:i14 rdf:first _:g14 .
_:i14 rdf:rest rdf:nil .
_:k14 rdf:first vin:Medoc .
_:k14 rdf:rest _:i14 .
vin:Pauillac owl:intersectionOf _:k14 .
vin:Muscadet rdf:type owl:Class .
_:m14 rdf:type owl:Restriction .
_:m14 owl:onProperty vin:hasBody .
_:m14 owl:hasValue vin:Light .
vin:Muscadet rdfs:subClassOf _:m14 .
_:o14 rdf:type owl:Restriction .
_:o14 owl:onProperty vin:hasFlavor .
_:o14 owl:hasValue vin:Delicate .
vin:Muscadet rdfs:subClassOf _:o14 .
_:q14 rdf:type owl:Restriction .
_:q14 owl:onProperty vin:hasSugar .
_:q14 owl:hasValue vin:Dry .
vin:Muscadet rdfs:subClassOf _:q14 .
_:s14 rdf:type owl:Restriction .
_:s14 owl:onProperty vin:madeFromGrape .
_:s14 owl:hasValue vin:PinotBlancGrape .
vin:Muscadet rdfs:subClassOf _:s14 .
_:u14 rdf:type owl:Restriction .
_:u14 owl:onProperty vin:madeFromGrape .
_:u14 owl:maxCardinality "1"^^xsd:nonNegativeInteger  .
vin:Muscadet rdfs:subClassOf _:u14 .
vin:Loire rdf:type owl:Class .
_:w14 rdf:type owl:Restriction .
_:w14 owl:onProperty vin:locatedIn .
_:w14 owl:hasValue vin:MuscadetRegion .
_:y14 rdf:first _:w14 .
_:y14 rdf:rest rdf:nil .
_:a15 rdf:first vin:Loire .
_:a15 rdf:rest _:y14 .
vin:Muscadet owl:intersectionOf _:a15 .
vin:Meursault rdf:type owl:Class .
_:c15 rdf:type owl:Restriction .
_:c15 owl:onProperty vin:hasBody .
_:c15 owl:hasValue vin:Full .
vin:Meursault rdfs:subClassOf _:c15 .
vin:WhiteBurgundy rdf:type owl:Class .
_:e15 rdf:type owl:Restriction .
_:e15 owl:onProperty vin:locatedIn .
_:e15 owl:hasValue vin:MeursaultRegion .
_:g15 rdf:first _:e15 .
_:g15 rdf:rest rdf:nil .
_:i15 rdf:first vin:WhiteBurgundy .
_:i15 rdf:rest _:g15 .
vin:Meursault owl:intersectionOf _:i15 .
vin:Merlot rdf:type owl:Class .
_:k15 rdf:type owl:Restriction .
_:k15 owl:onProperty vin:hasColor .
_:k15 owl:hasValue vin:Red .
vin:Merlot rdfs:subClassOf _:k15 .
_:m15 rdf:type owl:Restriction .
_:m15 owl:onProperty vin:hasSugar .
_:m15 owl:hasValue vin:Dry .
vin:Merlot rdfs:subClassOf _:m15 .
_:o15 rdf:type owl:Restriction .
_:o15 owl:onProperty vin:hasFlavor .
_:q15 rdf:type owl:Class .
vin:Moderate rdf:type owl:Thing .
vin:Delicate rdf:type owl:Thing .
_:s15 rdf:first vin:Delicate .
_:s15 rdf:rest rdf:nil .
_:u15 rdf:first vin:Moderate .
_:u15 rdf:rest _:s15 .
_:q15 owl:oneOf _:u15 .
_:o15 owl:allValuesFrom _:q15 .
vin:Merlot rdfs:subClassOf _:o15 .
_:w15 rdf:type owl:Restriction .
_:w15 owl:onProperty vin:hasBody .
_:y15 rdf:type owl:Class .
vin:Light rdf:type owl:Thing .
vin:Medium rdf:type owl:Thing .
_:a16 rdf:first vin:Medium .
_:a16 rdf:rest rdf:nil .
_:c16 rdf:first vin:Light .
_:c16 rdf:rest _:a16 .
_:y15 owl:oneOf _:c16 .
_:w15 owl:allValuesFrom _:y15 .
vin:Merlot rdfs:subClassOf _:w15 .
vin:Wine rdf:type owl:Class .
_:e16 rdf:type owl:Restriction .
_:e16 owl:onProperty vin:madeFromGrape .
_:e16 owl:hasValue vin:MerlotGrape .
_:g16 rdf:type owl:Restriction .
_:g16 owl:onProperty vin:madeFromGrape .
_:g16 owl:maxCardinality "1"^^xsd:nonNegativeInteger  .
_:i16 rdf:first _:g16 .
_:i16 rdf:rest rdf:nil .
_:k16 rdf:first _:e16 .
_:k16 rdf:rest _:i16 .
_:m16 rdf:first vin:Wine .
_:m16 rdf:rest _:k16 .
vin:Merlot owl:intersectionOf _:m16 .
vin:Meritage rdf:type owl:Class .
_:o16 rdf:type owl:Restriction .
_:o16 owl:onProperty vin:hasColor .
_:o16 owl:hasValue vin:Red .
vin:Meritage rdfs:subClassOf _:o16 .
vin:Wine rdf:type owl:Class .
_:q16 rdf:type owl:Restriction .
_:q16 owl:onProperty vin:madeFromGrape .
_:s16 rdf:type owl:Class .
vin:CabernetSauvignonGrape rdf:type owl:Thing .
vin:CabernetFrancGrape rdf:type owl:Thing .
vin:MalbecGrape rdf:type owl:Thing .
vin:PetiteVerdotGrape rdf:type owl:Thing .
vin:MerlotGrape rdf:type owl:Thing .
_:u16 rdf:first vin:MerlotGrape .
_:u16 rdf:rest rdf:nil .
_:w16 rdf:first vin:PetiteVerdotGrape .
_:w16 rdf:rest _:u16 .
_:y16 rdf:first vin:MalbecGrape .
_:y16 rdf:rest _:w16 .
_:a17 rdf:first vin:CabernetFrancGrape .
_:a17 rdf:rest _:y16 .
_:c17 rdf:first vin:CabernetSauvignonGrape .
_:c17 rdf:rest _:a17 .
_:s16 owl:oneOf _:c17 .
_:q16 owl:allValuesFrom _:s16 .
_:e17 rdf:type owl:Restriction .
_:e17 owl:onProperty vin:madeFromGrape .
_:e17 owl:minCardinality "2"^^xsd:nonNegativeInteger  .
_:g17 rdf:first _:e17 .
_:g17 rdf:rest rdf:nil .
_:i17 rdf:first _:q16 .
_:i17 rdf:rest _:g17 .
_:k17 rdf:first vin:Wine .
_:k17 rdf:rest _:i17 .
vin:Meritage owl:intersectionOf _:k17 .
vin:MedocRegion rdf:type vin:Region .
vin:MedocRegion vin:locatedIn vin:BordeauxRegion .
vin:Medoc rdf:type owl:Class .
_:m17 rdf:type owl:Restriction .
_:m17 owl:onProperty vin:hasColor .
_:m17 owl:hasValue vin:Red .
vin:Medoc rdfs:subClassOf _:m17 .
_:o17 rdf:type owl:Restriction .
_:o17 owl:onProperty vin:hasSugar .
_:o17 owl:hasValue vin:Dry .
vin:Medoc rdfs:subClassOf _:o17 .
vin:Bordeaux rdf:type owl:Class .
_:q17 rdf:type owl:Restriction .
_:q17 owl:onProperty vin:locatedIn .
_:q17 owl:hasValue vin:MedocRegion .
_:s17 rdf:first _:q17 .
_:s17 rdf:rest rdf:nil .
_:u17 rdf:first vin:Bordeaux .
_:u17 rdf:rest _:s17 .
vin:Medoc owl:intersectionOf _:u17 .
vin:Margaux rdf:type owl:Class .
_:w17 rdf:type owl:Restriction .
_:w17 owl:onProperty vin:hasFlavor .
_:w17 owl:hasValue vin:Delicate .
vin:Margaux rdfs:subClassOf _:w17 .
_:y17 rdf:type owl:Restriction .
_:y17 owl:onProperty vin:madeFromGrape .
_:y17 owl:hasValue vin:MerlotGrape .
vin:Margaux rdfs:subClassOf _:y17 .
_:a18 rdf:type owl:Restriction .
_:a18 owl:onProperty vin:madeFromGrape .
_:a18 owl:maxCardinality "1"^^xsd:nonNegativeInteger  .
vin:Margaux rdfs:subClassOf _:a18 .
vin:Medoc rdf:type owl:Class .
_:c18 rdf:type owl:Restriction .
_:c18 owl:onProperty vin:locatedIn .
_:c18 owl:hasValue vin:MargauxRegion .
_:e18 rdf:first _:c18 .
_:e18 rdf:rest rdf:nil .
_:g18 rdf:first vin:Medoc .
_:g18 rdf:rest _:e18 .
vin:Margaux owl:intersectionOf _:g18 .
vin:LoireRegion rdf:type vin:Region .
vin:LoireRegion vin:locatedIn vin:FrenchRegion .
vin:Loire rdf:type owl:Class .
vin:Wine rdf:type owl:Class .
_:i18 rdf:type owl:Restriction .
_:i18 owl:onProperty vin:locatedIn .
_:i18 owl:hasValue vin:LoireRegion .
_:k18 rdf:first _:i18 .
_:k18 rdf:rest rdf:nil .
_:m18 rdf:first vin:Wine .
_:m18 rdf:rest _:k18 .
vin:Loire owl:intersectionOf _:m18 .
vin:LateHarvest rdf:type owl:Class .
vin:LateHarvest rdfs:subClassOf vin:Wine .
vin:LateHarvest owl:disjointWith vin:EarlyHarvest .
_:o18 rdf:type owl:Restriction .
_:o18 owl:onProperty vin:hasSugar .
_:o18 owl:hasValue vin:Sweet .
vin:LateHarvest rdfs:subClassOf _:o18 .
_:q18 rdf:type owl:Restriction .
_:q18 owl:onProperty vin:hasFlavor .
_:s18 rdf:type owl:Class .
vin:Moderate rdf:type owl:Thing .
vin:Strong rdf:type owl:Thing .
_:u18 rdf:first vin:Strong .
_:u18 rdf:rest rdf:nil .
_:w18 rdf:first vin:Moderate .
_:w18 rdf:rest _:u18 .
_:s18 owl:oneOf _:w18 .
_:q18 owl:allValuesFrom _:s18 .
vin:LateHarvest rdfs:subClassOf _:q18 .
vin:ItalianWine rdf:type owl:Class .
vin:Wine rdf:type owl:Class .
_:y18 rdf:type owl:Restriction .
_:y18 owl:onProperty vin:locatedIn .
_:y18 owl:hasValue vin:ItalianRegion .
_:a19 rdf:first _:y18 .
_:a19 rdf:rest rdf:nil .
_:c19 rdf:first vin:Wine .
_:c19 rdf:rest _:a19 .
vin:ItalianWine owl:intersectionOf _:c19 .
vin:ItalianRegion rdf:type vin:Region .
vin:IceWine rdf:type owl:Class .
_:e19 rdf:type owl:Restriction .
_:e19 owl:onProperty vin:hasBody .
_:g19 rdf:type owl:Class .
vin:Medium rdf:type owl:Thing .
vin:Full rdf:type owl:Thing .
_:i19 rdf:first vin:Full .
_:i19 rdf:rest rdf:nil .
_:k19 rdf:first vin:Medium .
_:k19 rdf:rest _:i19 .
_:g19 owl:oneOf _:k19 .
_:e19 owl:allValuesFrom _:g19 .
vin:IceWine rdfs:subClassOf _:e19 .
_:m19 rdf:type owl:Restriction .
_:m19 owl:onProperty vin:hasFlavor .
_:o19 rdf:type owl:Class .
vin:Moderate rdf:type owl:Thing .
vin:Strong rdf:type owl:Thing .
_:q19 rdf:first vin:Strong .
_:q19 rdf:rest rdf:nil .
_:s19 rdf:first vin:Moderate .
_:s19 rdf:rest _:q19 .
_:o19 owl:oneOf _:s19 .
_:m19 owl:allValuesFrom _:o19 .
vin:IceWine rdfs:subClassOf _:m19 .
vin:LateHarvest rdf:type owl:Class .
vin:DessertWine rdf:type owl:Class .
_:u19 rdf:type owl:Restriction .
_:u19 owl:onProperty vin:hasColor .
_:u19 owl:hasValue vin:White .
_:w19 rdf:first _:u19 .
_:w19 rdf:rest rdf:nil .
_:y19 rdf:first vin:DessertWine .
_:y19 rdf:rest _:w19 .
_:a20 rdf:first vin:LateHarvest .
_:a20 rdf:rest _:y19 .
vin:IceWine owl:intersectionOf _:a20 .
vin:GermanWine rdf:type owl:Class .
vin:Wine rdf:type owl:Class .
_:c20 rdf:type owl:Restriction .
_:c20 owl:onProperty vin:locatedIn .
_:c20 owl:hasValue vin:GermanyRegion .
_:e20 rdf:first _:c20 .
_:e20 rdf:rest rdf:nil .
_:g20 rdf:first vin:Wine .
_:g20 rdf:rest _:e20 .
vin:GermanWine owl:intersectionOf _:g20 .
vin:Gamay rdf:type owl:Class .
vin:Wine rdf:type owl:Class .
_:i20 rdf:type owl:Restriction .
_:i20 owl:onProperty vin:madeFromGrape .
_:i20 owl:hasValue vin:GamayGrape .
_:k20 rdf:type owl:Restriction .
_:k20 owl:onProperty vin:madeFromGrape .
_:k20 owl:maxCardinality "1"^^xsd:nonNegativeInteger  .
_:m20 rdf:first _:k20 .
_:m20 rdf:rest rdf:nil .
_:o20 rdf:first _:i20 .
_:o20 rdf:rest _:m20 .
_:q20 rdf:first vin:Wine .
_:q20 rdf:rest _:o20 .
vin:Gamay owl:intersectionOf _:q20 .
vin:FullBodiedWine rdf:type owl:Class .
vin:Wine rdf:type owl:Class .
_:s20 rdf:type owl:Restriction .
_:s20 owl:onProperty vin:hasBody .
_:s20 owl:hasValue vin:Full .
_:u20 rdf:first _:s20 .
_:u20 rdf:rest rdf:nil .
_:w20 rdf:first vin:Wine .
_:w20 rdf:rest _:u20 .
vin:FullBodiedWine owl:intersectionOf _:w20 .
vin:FrenchRegion rdf:type vin:Region .
vin:FrenchWine rdf:type owl:Class .
vin:Wine rdf:type owl:Class .
_:y20 rdf:type owl:Restriction .
_:y20 owl:onProperty vin:locatedIn .
_:y20 owl:hasValue vin:FrenchRegion .
_:a21 rdf:first _:y20 .
_:a21 rdf:rest rdf:nil .
_:c21 rdf:first vin:Wine .
_:c21 rdf:rest _:a21 .
vin:FrenchWine owl:intersectionOf _:c21 .
vin:EarlyHarvest rdf:type owl:Class .
vin:EarlyHarvest rdfs:subClassOf vin:Wine .
_:e21 rdf:type owl:Restriction .
_:e21 owl:onProperty vin:hasSugar .
_:g21 rdf:type owl:Class .
vin:Dry rdf:type owl:Thing .
vin:OffDry rdf:type owl:Thing .
_:i21 rdf:first vin:OffDry .
_:i21 rdf:rest rdf:nil .
_:k21 rdf:first vin:Dry .
_:k21 rdf:rest _:i21 .
_:g21 owl:oneOf _:k21 .
_:e21 owl:allValuesFrom _:g21 .
vin:EarlyHarvest rdfs:subClassOf _:e21 .
vin:DryWine rdf:type owl:Class .
vin:Wine rdf:type owl:Class .
_:m21 rdf:type owl:Restriction .
_:m21 owl:onProperty vin:hasSugar .
_:m21 owl:hasValue vin:Dry .
_:o21 rdf:first _:m21 .
_:o21 rdf:rest rdf:nil .
_:q21 rdf:first vin:Wine .
_:q21 rdf:rest _:o21 .
vin:DryWine owl:intersectionOf _:q21 .
vin:DryWhiteWine rdf:type owl:Class .
vin:DryWine rdf:type owl:Class .
vin:WhiteWine rdf:type owl:Class .
_:s21 rdf:first vin:WhiteWine .
_:s21 rdf:rest rdf:nil .
_:u21 rdf:first vin:DryWine .
_:u21 rdf:rest _:s21 .
vin:DryWhiteWine owl:intersectionOf _:u21 .
vin:DryRiesling rdf:type owl:Class .
_:w21 rdf:type owl:Restriction .
_:w21 owl:onProperty vin:hasColor .
_:w21 owl:hasValue vin:White .
vin:DryRiesling rdfs:subClassOf _:w21 .
_:y21 rdf:type owl:Restriction .
_:y21 owl:onProperty vin:hasFlavor .
_:y21 owl:hasValue vin:Delicate .
vin:DryRiesling rdfs:subClassOf _:y21 .
_:a22 rdf:type owl:Restriction .
_:a22 owl:onProperty vin:hasBody .
_:c22 rdf:type owl:Class .
vin:Light rdf:type owl:Thing .
vin:Medium rdf:type owl:Thing .
_:e22 rdf:first vin:Medium .
_:e22 rdf:rest rdf:nil .
_:g22 rdf:first vin:Light .
_:g22 rdf:rest _:e22 .
_:c22 owl:oneOf _:g22 .
_:a22 owl:allValuesFrom _:c22 .
vin:DryRiesling rdfs:subClassOf _:a22 .
vin:Riesling rdf:type owl:Class .
_:i22 rdf:type owl:Restriction .
_:i22 owl:onProperty vin:hasSugar .
_:i22 owl:hasValue vin:Dry .
_:k22 rdf:first _:i22 .
_:k22 rdf:rest rdf:nil .
_:m22 rdf:first vin:Riesling .
_:m22 rdf:rest _:k22 .
vin:DryRiesling owl:intersectionOf _:m22 .
vin:DryRedWine rdf:type owl:Class .
vin:DryWine rdf:type owl:Class .
vin:RedWine rdf:type owl:Class .
_:o22 rdf:first vin:RedWine .
_:o22 rdf:rest rdf:nil .
_:q22 rdf:first vin:DryWine .
_:q22 rdf:rest _:o22 .
vin:DryRedWine owl:intersectionOf _:q22 .
vin:DessertWine rdf:type owl:Class .
vin:DessertWine rdfs:subClassOf vin:Wine .
_:s22 rdf:type owl:Restriction .
_:s22 owl:onProperty vin:hasSugar .
_:u22 rdf:type owl:Class .
vin:OffDry rdf:type owl:Thing .
vin:Sweet rdf:type owl:Thing .
_:w22 rdf:first vin:Sweet .
_:w22 rdf:rest rdf:nil .
_:y22 rdf:first vin:OffDry .
_:y22 rdf:rest _:w22 .
_:u22 owl:oneOf _:y22 .
_:s22 owl:allValuesFrom _:u22 .
vin:DessertWine rdfs:subClassOf _:s22 .
vin:CotesDOr rdf:type owl:Class .
_:a23 rdf:type owl:Restriction .
_:a23 owl:onProperty vin:hasFlavor .
_:a23 owl:hasValue vin:Moderate .
vin:CotesDOr rdfs:subClassOf _:a23 .
vin:RedBurgundy rdf:type owl:Class .
_:c23 rdf:type owl:Restriction .
_:c23 owl:onProperty vin:locatedIn .
_:c23 owl:hasValue vin:CotesDOrRegion .
_:e23 rdf:first _:c23 .
_:e23 rdf:rest rdf:nil .
_:g23 rdf:first vin:RedBurgundy .
_:g23 rdf:rest _:e23 .
vin:CotesDOr owl:intersectionOf _:g23 .
vin:Chianti rdf:type owl:Class .
vin:Chianti rdfs:subClassOf vin:ItalianWine .
_:i23 rdf:type owl:Restriction .
_:i23 owl:onProperty vin:locatedIn .
_:i23 owl:hasValue vin:ChiantiRegion .
vin:Chianti rdfs:subClassOf _:i23 .
_:k23 rdf:type owl:Restriction .
_:k23 owl:onProperty vin:hasColor .
_:k23 owl:hasValue vin:Red .
vin:Chianti rdfs:subClassOf _:k23 .
_:m23 rdf:type owl:Restriction .
_:m23 owl:onProperty vin:madeFromGrape .
_:m23 owl:hasValue vin:SangioveseGrape .
vin:Chianti rdfs:subClassOf _:m23 .
_:o23 rdf:type owl:Restriction .
_:o23 owl:onProperty vin:hasFlavor .
_:o23 owl:hasValue vin:Moderate .
vin:Chianti rdfs:subClassOf _:o23 .
_:q23 rdf:type owl:Restriction .
_:q23 owl:onProperty vin:hasSugar .
_:q23 owl:hasValue vin:Dry .
vin:Chianti rdfs:subClassOf _:q23 .
_:s23 rdf:type owl:Restriction .
_:s23 owl:onProperty vin:hasBody .
_:u23 rdf:type owl:Class .
vin:Light rdf:type owl:Thing .
vin:Medium rdf:type owl:Thing .
_:w23 rdf:first vin:Medium .
_:w23 rdf:rest rdf:nil .
_:y23 rdf:first vin:Light .
_:y23 rdf:rest _:w23 .
_:u23 owl:oneOf _:y23 .
_:s23 owl:allValuesFrom _:u23 .
vin:Chianti rdfs:subClassOf _:s23 .
vin:CheninBlanc rdf:type owl:Class .
_:a24 rdf:type owl:Restriction .
_:a24 owl:onProperty vin:hasColor .
_:a24 owl:hasValue vin:White .
vin:CheninBlanc rdfs:subClassOf _:a24 .
_:c24 rdf:type owl:Restriction .
_:c24 owl:onProperty vin:hasFlavor .
_:c24 owl:hasValue vin:Moderate .
vin:CheninBlanc rdfs:subClassOf _:c24 .
_:e24 rdf:type owl:Restriction .
_:e24 owl:onProperty vin:hasBody .
_:g24 rdf:type owl:Class .
vin:Full rdf:type owl:Thing .
vin:Medium rdf:type owl:Thing .
_:i24 rdf:first vin:Medium .
_:i24 rdf:rest rdf:nil .
_:k24 rdf:first vin:Full .
_:k24 rdf:rest _:i24 .
_:g24 owl:oneOf _:k24 .
_:e24 owl:allValuesFrom _:g24 .
vin:CheninBlanc rdfs:subClassOf _:e24 .
_:m24 rdf:type owl:Restriction .
_:m24 owl:onProperty vin:hasSugar .
_:o24 rdf:type owl:Class .
vin:Dry rdf:type owl:Thing .
vin:OffDry rdf:type owl:Thing .
_:q24 rdf:first vin:OffDry .
_:q24 rdf:rest rdf:nil .
_:s24 rdf:first vin:Dry .
_:s24 rdf:rest _:q24 .
_:o24 owl:oneOf _:s24 .
_:m24 owl:allValuesFrom _:o24 .
vin:CheninBlanc rdfs:subClassOf _:m24 .
vin:Wine rdf:type owl:Class .
_:u24 rdf:type owl:Restriction .
_:u24 owl:onProperty vin:madeFromGrape .
_:u24 owl:hasValue vin:CheninBlancGrape .
_:w24 rdf:type owl:Restriction .
_:w24 owl:onProperty vin:madeFromGrape .
_:w24 owl:maxCardinality "1"^^xsd:nonNegativeInteger  .
_:y24 rdf:first _:w24 .
_:y24 rdf:rest rdf:nil .
_:a25 rdf:first _:u24 .
_:a25 rdf:rest _:y24 .
_:c25 rdf:first vin:Wine .
_:c25 rdf:rest _:a25 .
vin:CheninBlanc owl:intersectionOf _:c25 .
vin:Chardonnay rdf:type owl:Class .
_:e25 rdf:type owl:Restriction .
_:e25 owl:onProperty vin:hasColor .
_:e25 owl:hasValue vin:White .
vin:Chardonnay rdfs:subClassOf _:e25 .
_:g25 rdf:type owl:Restriction .
_:g25 owl:onProperty vin:hasBody .
_:i25 rdf:type owl:Class .
vin:Full rdf:type owl:Thing .
vin:Medium rdf:type owl:Thing .
_:k25 rdf:first vin:Medium .
_:k25 rdf:rest rdf:nil .
_:m25 rdf:first vin:Full .
_:m25 rdf:rest _:k25 .
_:i25 owl:oneOf _:m25 .
_:g25 owl:allValuesFrom _:i25 .
vin:Chardonnay rdfs:subClassOf _:g25 .
_:o25 rdf:type owl:Restriction .
_:o25 owl:onProperty vin:hasFlavor .
_:q25 rdf:type owl:Class .
vin:Strong rdf:type owl:Thing .
vin:Moderate rdf:type owl:Thing .
_:s25 rdf:first vin:Moderate .
_:s25 rdf:rest rdf:nil .
_:u25 rdf:first vin:Strong .
_:u25 rdf:rest _:s25 .
_:q25 owl:oneOf _:u25 .
_:o25 owl:allValuesFrom _:q25 .
vin:Chardonnay rdfs:subClassOf _:o25 .
vin:Wine rdf:type owl:Class .
_:w25 rdf:type owl:Restriction .
_:w25 owl:onProperty vin:madeFromGrape .
_:w25 owl:hasValue vin:ChardonnayGrape .
_:y25 rdf:type owl:Restriction .
_:y25 owl:onProperty vin:madeFromGrape .
_:y25 owl:maxCardinality "1"^^xsd:nonNegativeInteger  .
_:a26 rdf:first _:y25 .
_:a26 rdf:rest rdf:nil .
_:c26 rdf:first _:w25 .
_:c26 rdf:rest _:a26 .
_:e26 rdf:first vin:Wine .
_:e26 rdf:rest _:c26 .
vin:Chardonnay owl:intersectionOf _:e26 .
vin:CaliforniaRegion rdf:type vin:Region .
vin:CaliforniaRegion vin:locatedIn vin:USRegion .
vin:TexasRegion rdf:type vin:Region .
vin:TexasRegion vin:locatedIn vin:USRegion .
vin:CaliforniaWine rdf:type owl:Class .
vin:Wine rdf:type owl:Class .
_:g26 rdf:type owl:Restriction .
_:g26 owl:onProperty vin:locatedIn .
_:g26 owl:hasValue vin:CaliforniaRegion .
_:i26 rdf:first _:g26 .
_:i26 rdf:rest rdf:nil .
_:k26 rdf:first vin:Wine .
_:k26 rdf:rest _:i26 .
vin:CaliforniaWine owl:intersectionOf _:k26 .
vin:TexasWine rdf:type owl:Class .
vin:Wine rdf:type owl:Class .
_:m26 rdf:type owl:Restriction .
_:m26 owl:onProperty vin:locatedIn .
_:m26 owl:hasValue vin:TexasRegion .
_:o26 rdf:first _:m26 .
_:o26 rdf:rest rdf:nil .
_:q26 rdf:first vin:Wine .
_:q26 rdf:rest _:o26 .
vin:TexasWine owl:intersectionOf _:q26 .
vin:CabernetSauvignon rdf:type owl:Class .
_:s26 rdf:type owl:Restriction .
_:s26 owl:onProperty vin:hasColor .
_:s26 owl:hasValue vin:Red .
vin:CabernetSauvignon rdfs:subClassOf _:s26 .
_:u26 rdf:type owl:Restriction .
_:u26 owl:onProperty vin:hasSugar .
_:u26 owl:hasValue vin:Dry .
vin:CabernetSauvignon rdfs:subClassOf _:u26 .
_:w26 rdf:type owl:Restriction .
_:w26 owl:onProperty vin:hasFlavor .
_:y26 rdf:type owl:Class .
vin:Moderate rdf:type owl:Thing .
vin:Strong rdf:type owl:Thing .
_:a27 rdf:first vin:Strong .
_:a27 rdf:rest rdf:nil .
_:c27 rdf:first vin:Moderate .
_:c27 rdf:rest _:a27 .
_:y26 owl:oneOf _:c27 .
_:w26 owl:allValuesFrom _:y26 .
vin:CabernetSauvignon rdfs:subClassOf _:w26 .
_:e27 rdf:type owl:Restriction .
_:e27 owl:onProperty vin:hasBody .
_:g27 rdf:type owl:Class .
vin:Medium rdf:type owl:Thing .
vin:Full rdf:type owl:Thing .
_:i27 rdf:first vin:Full .
_:i27 rdf:rest rdf:nil .
_:k27 rdf:first vin:Medium .
_:k27 rdf:rest _:i27 .
_:g27 owl:oneOf _:k27 .
_:e27 owl:allValuesFrom _:g27 .
vin:CabernetSauvignon rdfs:subClassOf _:e27 .
vin:Wine rdf:type owl:Class .
_:m27 rdf:type owl:Restriction .
_:m27 owl:onProperty vin:madeFromGrape .
_:m27 owl:hasValue vin:CabernetSauvignonGrape .
_:o27 rdf:type owl:Restriction .
_:o27 owl:onProperty vin:madeFromGrape .
_:o27 owl:maxCardinality "1"^^xsd:nonNegativeInteger  .
_:q27 rdf:first _:o27 .
_:q27 rdf:rest rdf:nil .
_:s27 rdf:first _:m27 .
_:s27 rdf:rest _:q27 .
_:u27 rdf:first vin:Wine .
_:u27 rdf:rest _:s27 .
vin:CabernetSauvignon owl:intersectionOf _:u27 .
vin:CabernetFranc rdf:type owl:Class .
_:w27 rdf:type owl:Restriction .
_:w27 owl:onProperty vin:hasColor .
_:w27 owl:hasValue vin:Red .
vin:CabernetFranc rdfs:subClassOf _:w27 .
_:y27 rdf:type owl:Restriction .
_:y27 owl:onProperty vin:hasFlavor .
_:y27 owl:hasValue vin:Moderate .
vin:CabernetFranc rdfs:subClassOf _:y27 .
_:a28 rdf:type owl:Restriction .
_:a28 owl:onProperty vin:hasBody .
_:a28 owl:hasValue vin:Medium .
vin:CabernetFranc rdfs:subClassOf _:a28 .
_:c28 rdf:type owl:Restriction .
_:c28 owl:onProperty vin:hasSugar .
_:c28 owl:hasValue vin:Dry .
vin:CabernetFranc rdfs:subClassOf _:c28 .
vin:Wine rdf:type owl:Class .
_:e28 rdf:type owl:Restriction .
_:e28 owl:onProperty vin:madeFromGrape .
_:e28 owl:hasValue vin:CabernetFrancGrape .
_:g28 rdf:type owl:Restriction .
_:g28 owl:onProperty vin:madeFromGrape .
_:g28 owl:maxCardinality "1"^^xsd:nonNegativeInteger  .
_:i28 rdf:first _:g28 .
_:i28 rdf:rest rdf:nil .
_:k28 rdf:first _:e28 .
_:k28 rdf:rest _:i28 .
_:m28 rdf:first vin:Wine .
_:m28 rdf:rest _:k28 .
vin:CabernetFranc owl:intersectionOf _:m28 .
vin:Burgundy rdf:type owl:Class .
vin:Wine rdf:type owl:Class .
_:o28 rdf:type owl:Restriction .
_:o28 owl:onProperty vin:locatedIn .
_:o28 owl:hasValue vin:BourgogneRegion .
_:q28 rdf:first _:o28 .
_:q28 rdf:rest rdf:nil .
_:s28 rdf:first vin:Wine .
_:s28 rdf:rest _:q28 .
vin:Burgundy owl:intersectionOf _:s28 .
_:u28 rdf:type owl:Restriction .
_:u28 owl:onProperty vin:hasSugar .
_:u28 owl:hasValue vin:Dry .
vin:Burgundy rdfs:subClassOf _:u28 .
vin:BourgogneRegion rdf:type vin:Region .
vin:BourgogneRegion vin:locatedIn vin:FrenchRegion .
vin:BordeauxRegion rdf:type vin:Region .
vin:BordeauxRegion vin:locatedIn vin:FrenchRegion .
vin:Bordeaux rdf:type owl:Class .
vin:Wine rdf:type owl:Class .
_:w28 rdf:type owl:Restriction .
_:w28 owl:onProperty vin:locatedIn .
_:w28 owl:hasValue vin:BordeauxRegion .
_:y28 rdf:first _:w28 .
_:y28 rdf:rest rdf:nil .
_:a29 rdf:first vin:Wine .
_:a29 rdf:rest _:y28 .
vin:Bordeaux owl:intersectionOf _:a29 .
vin:Beaujolais rdf:type owl:Class .
_:c29 rdf:type owl:Restriction .
_:c29 owl:onProperty vin:hasColor .
_:c29 owl:hasValue vin:Red .
vin:Beaujolais rdfs:subClassOf _:c29 .
_:e29 rdf:type owl:Restriction .
_:e29 owl:onProperty vin:hasBody .
_:e29 owl:hasValue vin:Light .
vin:Beaujolais rdfs:subClassOf _:e29 .
_:g29 rdf:type owl:Restriction .
_:g29 owl:onProperty vin:hasSugar .
_:g29 owl:hasValue vin:Dry .
vin:Beaujolais rdfs:subClassOf _:g29 .
_:i29 rdf:type owl:Restriction .
_:i29 owl:onProperty vin:hasFlavor .
_:i29 owl:hasValue vin:Delicate .
vin:Beaujolais rdfs:subClassOf _:i29 .
_:k29 rdf:type owl:Restriction .
_:k29 owl:onProperty vin:madeFromGrape .
_:k29 owl:hasValue vin:GamayGrape .
vin:Beaujolais rdfs:subClassOf _:k29 .
_:m29 rdf:type owl:Restriction .
_:m29 owl:onProperty vin:madeFromGrape .
_:m29 owl:maxCardinality "1"^^xsd:nonNegativeInteger  .
vin:Beaujolais rdfs:subClassOf _:m29 .
vin:Wine rdf:type owl:Class .
_:o29 rdf:type owl:Restriction .
_:o29 owl:onProperty vin:locatedIn .
_:o29 owl:hasValue vin:BeaujolaisRegion .
_:q29 rdf:first _:o29 .
_:q29 rdf:rest rdf:nil .
_:s29 rdf:first vin:Wine .
_:s29 rdf:rest _:q29 .
vin:Beaujolais owl:intersectionOf _:s29 .
vin:AustralianRegion rdf:type vin:Region .
vin:Anjou rdf:type owl:Class .
_:u29 rdf:type owl:Restriction .
_:u29 owl:onProperty vin:hasColor .
_:u29 owl:hasValue vin:Rose .
vin:Anjou rdfs:subClassOf _:u29 .
_:w29 rdf:type owl:Restriction .
_:w29 owl:onProperty vin:hasBody .
_:w29 owl:hasValue vin:Light .
vin:Anjou rdfs:subClassOf _:w29 .
_:y29 rdf:type owl:Restriction .
_:y29 owl:onProperty vin:hasFlavor .
_:y29 owl:hasValue vin:Delicate .
vin:Anjou rdfs:subClassOf _:y29 .
_:a30 rdf:type owl:Restriction .
_:a30 owl:onProperty vin:hasSugar .
_:a30 owl:hasValue vin:OffDry .
vin:Anjou rdfs:subClassOf _:a30 .
vin:Loire rdf:type owl:Class .
_:c30 rdf:type owl:Restriction .
_:c30 owl:onProperty vin:locatedIn .
_:c30 owl:hasValue vin:AnjouRegion .
_:e30 rdf:first _:c30 .
_:e30 rdf:rest rdf:nil .
_:g30 rdf:first vin:Loire .
_:g30 rdf:rest _:e30 .
vin:Anjou owl:intersectionOf _:g30 .
vin:AmericanWine rdf:type owl:Class .
vin:Wine rdf:type owl:Class .
_:i30 rdf:type owl:Restriction .
_:i30 owl:onProperty vin:locatedIn .
_:i30 owl:hasValue vin:USRegion .
_:k30 rdf:first _:i30 .
_:k30 rdf:rest rdf:nil .
_:m30 rdf:first vin:Wine .
_:m30 rdf:rest _:k30 .
vin:AmericanWine owl:intersectionOf _:m30 .
vin:AlsatianWine rdf:type owl:Class .
vin:Wine rdf:type owl:Class .
_:o30 rdf:type owl:Restriction .
_:o30 owl:onProperty vin:locatedIn .
_:o30 owl:hasValue vin:AlsaceRegion .
_:q30 rdf:first _:o30 .
_:q30 rdf:rest rdf:nil .
_:s30 rdf:first vin:Wine .
_:s30 rdf:rest _:q30 .
vin:AlsatianWine owl:intersectionOf _:s30 .
vin:Full rdf:type vin:WineBody .
vin:Medium rdf:type vin:WineBody .
vin:Light rdf:type vin:WineBody .
vin:Red rdf:type vin:WineColor .
vin:Rose rdf:type vin:WineColor .
vin:White rdf:type vin:WineColor .
vin:Strong rdf:type vin:WineFlavor .
vin:Moderate rdf:type vin:WineFlavor .
vin:Delicate rdf:type vin:WineFlavor .
vin:Dry rdf:type vin:WineSugar .
vin:OffDry rdf:type vin:WineSugar .
vin:OffDry owl:differentFrom vin:Dry .
vin:OffDry owl:differentFrom vin:Sweet .
vin:Sweet rdf:type vin:WineSugar .
vin:Sweet owl:differentFrom vin:Dry .
_:u30 rdf:type owl:AllDifferent .
vin:Red rdf:type vin:WineColor .
vin:White rdf:type vin:WineColor .
vin:Rose rdf:type vin:WineColor .
_:w30 rdf:first vin:Rose .
_:w30 rdf:rest rdf:nil .
_:y30 rdf:first vin:White .
_:y30 rdf:rest _:w30 .
_:a31 rdf:first vin:Red .
_:a31 rdf:rest _:y30 .
_:u30 owl:distinctMembers _:a31 .
_:c31 rdf:type owl:AllDifferent .
vin:Light rdf:type vin:WineBody .
vin:Medium rdf:type vin:WineBody .
vin:Full rdf:type vin:WineBody .
_:e31 rdf:first vin:Full .
_:e31 rdf:rest rdf:nil .
_:g31 rdf:first vin:Medium .
_:g31 rdf:rest _:e31 .
_:i31 rdf:first vin:Light .
_:i31 rdf:rest _:g31 .
_:c31 owl:distinctMembers _:i31 .
_:k31 rdf:type owl:AllDifferent .
vin:Delicate rdf:type vin:WineFlavor .
vin:Moderate rdf:type vin:WineFlavor .
vin:Strong rdf:type vin:WineFlavor .
_:m31 rdf:first vin:Strong .
_:m31 rdf:rest rdf:nil .
_:o31 rdf:first vin:Moderate .
_:o31 rdf:rest _:m31 .
_:q31 rdf:first vin:Delicate .
_:q31 rdf:rest _:o31 .
_:k31 owl:distinctMembers _:q31 .
_:s31 rdf:type owl:AllDifferent .
vin:Sweet rdf:type vin:WineSugar .
vin:OffDry rdf:type vin:WineSugar .
vin:Dry rdf:type vin:WineSugar .
_:u31 rdf:first vin:Dry .
_:u31 rdf:rest rdf:nil .
_:w31 rdf:first vin:OffDry .
_:w31 rdf:rest _:u31 .
_:y31 rdf:first vin:Sweet .
_:y31 rdf:rest _:w31 .
_:s31 owl:distinctMembers _:y31 .
vin:AlsaceRegion rdf:type vin:Region .
vin:AlsaceRegion vin:locatedIn vin:FrenchRegion .
vin:AnjouRegion rdf:type vin:Region .
vin:AnjouRegion vin:locatedIn vin:LoireRegion .
vin:ArroyoGrandeRegion rdf:type vin:Region .
vin:ArroyoGrandeRegion vin:locatedIn vin:CaliforniaRegion .
vin:Beringer rdf:type vin:Winery .
vin:Bancroft rdf:type vin:Winery .
vin:BancroftChardonnay rdf:type vin:Chardonnay .
vin:BancroftChardonnay vin:locatedIn vin:NapaRegion .
vin:BancroftChardonnay vin:hasMaker vin:Bancroft .
vin:BancroftChardonnay vin:hasSugar vin:Dry .
vin:BancroftChardonnay vin:hasFlavor vin:Moderate .
vin:BancroftChardonnay vin:hasBody vin:Medium .
vin:BeaujolaisRegion rdf:type vin:Region .
vin:BeaujolaisRegion vin:locatedIn vin:FrenchRegion .
vin:CabernetFrancGrape rdf:type vin:WineGrape .
vin:CabernetSauvignonGrape rdf:type vin:WineGrape .
vin:CentralCoastRegion rdf:type vin:Region .
vin:CentralCoastRegion vin:locatedIn vin:CaliforniaRegion .
vin:ChardonnayGrape rdf:type vin:WineGrape .
vin:ChateauChevalBlanc rdf:type vin:Winery .
vin:ChateauChevalBlancStEmilion rdf:type vin:StEmilion .
vin:ChateauChevalBlancStEmilion vin:hasMaker vin:ChateauChevalBlanc .
vin:ChateauDYchem rdf:type vin:Winery .
vin:ChateauDYchemSauterne rdf:type vin:Sauterne .
vin:ChateauDYchemSauterne vin:madeFromGrape vin:SauvignonBlancGrape .
vin:ChateauDYchemSauterne vin:madeFromGrape vin:SemillonGrape .
vin:ChateauDYchemSauterne vin:hasFlavor vin:Strong .
vin:ChateauDYchemSauterne vin:hasMaker vin:ChateauDYchem .
vin:ChateauDeMeursault rdf:type vin:Winery .
vin:ChateauDeMeursaultMeursault rdf:type vin:Meursault .
vin:ChateauDeMeursaultMeursault vin:hasFlavor vin:Moderate .
vin:ChateauDeMeursaultMeursault vin:hasMaker vin:ChateauDeMeursault .
vin:ChateauLafiteRothschild rdf:type vin:Winery .
vin:ChateauLafiteRothschildPauillac rdf:type vin:Pauillac .
vin:ChateauLafiteRothschildPauillac vin:hasMaker vin:ChateauLafiteRothschild .
vin:ChateauMargaux rdf:type vin:Margaux .
vin:ChateauMargaux vin:hasMaker vin:ChateauMargauxWinery .
vin:ChateauMargauxWinery rdf:type vin:Winery .
vin:ChateauMorgon rdf:type vin:Winery .
vin:ChateauMorgonBeaujolais rdf:type vin:Beaujolais .
vin:ChateauMorgonBeaujolais vin:hasMaker vin:ChateauMorgon .
vin:CheninBlancGrape rdf:type vin:WineGrape .
vin:ZinfandelGrape rdf:type vin:WineGrape .
vin:ChiantiClassico rdf:type vin:Chianti .
vin:ChiantiClassico vin:hasBody vin:Medium .
vin:ChiantiClassico vin:hasMaker vin:McGuinnesso .
vin:ChiantiRegion rdf:type vin:Region .
vin:ChiantiRegion vin:locatedIn vin:ItalianRegion .
vin:ClosDeLaPoussie rdf:type vin:Winery .
vin:ClosDeLaPoussieSancerre rdf:type vin:Sancerre .
vin:ClosDeLaPoussieSancerre vin:hasMaker vin:ClosDeLaPoussie .
vin:ClosDeVougeot rdf:type vin:Winery .
vin:ClosDeVougeotCotesDOr rdf:type vin:CotesDOr .
vin:ClosDeVougeotCotesDOr vin:hasMaker vin:ClosDeVougeot .
vin:CongressSprings rdf:type vin:Winery .
vin:CongressSpringsSemillon rdf:type vin:Semillon .
vin:CongressSpringsSemillon vin:hasMaker vin:CongressSprings .
vin:CongressSpringsSemillon vin:hasSugar vin:Dry .
vin:CongressSpringsSemillon vin:hasFlavor vin:Moderate .
vin:CongressSpringsSemillon vin:hasBody vin:Medium .
vin:Corbans rdf:type vin:Winery .
vin:CorbansDryWhiteRiesling rdf:type vin:Riesling .
vin:CorbansDryWhiteRiesling vin:locatedIn vin:NewZealandRegion .
vin:CorbansDryWhiteRiesling vin:hasMaker vin:Corbans .
vin:CorbansDryWhiteRiesling vin:hasSugar vin:OffDry .
vin:CorbansDryWhiteRiesling vin:hasFlavor vin:Moderate .
vin:CorbansDryWhiteRiesling vin:hasBody vin:Medium .
vin:CorbansPrivateBinSauvignonBlanc rdf:type vin:SauvignonBlanc .
vin:CorbansPrivateBinSauvignonBlanc vin:locatedIn vin:NewZealandRegion .
vin:CorbansPrivateBinSauvignonBlanc vin:hasMaker vin:Corbans .
vin:CorbansPrivateBinSauvignonBlanc vin:hasSugar vin:Dry .
vin:CorbansPrivateBinSauvignonBlanc vin:hasFlavor vin:Strong .
vin:CorbansPrivateBinSauvignonBlanc vin:hasBody vin:Full .
vin:CorbansSauvignonBlanc rdf:type vin:SauvignonBlanc .
vin:CorbansSauvignonBlanc vin:locatedIn vin:NewZealandRegion .
vin:CorbansSauvignonBlanc vin:hasMaker vin:Corbans .
vin:CorbansSauvignonBlanc vin:hasSugar vin:Dry .
vin:CorbansSauvignonBlanc vin:hasFlavor vin:Strong .
vin:CorbansSauvignonBlanc vin:hasBody vin:Medium .
vin:CortonMontrachet rdf:type vin:Winery .
vin:CortonMontrachetWhiteBurgundy rdf:type vin:WhiteBurgundy .
vin:CortonMontrachetWhiteBurgundy vin:hasMaker vin:CortonMontrachet .
vin:CortonMontrachetWhiteBurgundy vin:hasSugar vin:Dry .
vin:CortonMontrachetWhiteBurgundy vin:hasFlavor vin:Strong .
vin:CortonMontrachetWhiteBurgundy vin:hasBody vin:Full .
vin:CotesDOrRegion rdf:type vin:Region .
vin:CotesDOrRegion vin:locatedIn vin:BourgogneRegion .
vin:Cotturi rdf:type vin:Winery .
vin:CotturiZinfandel rdf:type vin:Zinfandel .
vin:CotturiZinfandel vin:locatedIn vin:SonomaRegion .
vin:CotturiZinfandel vin:hasMaker vin:Cotturi .
vin:CotturiZinfandel vin:hasSugar vin:Dry .
vin:CotturiZinfandel vin:hasFlavor vin:Strong .
vin:CotturiZinfandel vin:hasBody vin:Full .
vin:DAnjou rdf:type vin:Winery .
vin:EdnaValleyRegion rdf:type vin:Region .
vin:EdnaValleyRegion vin:locatedIn vin:CaliforniaRegion .
vin:Elyse rdf:type vin:Winery .
vin:ElyseZinfandel rdf:type vin:Zinfandel .
vin:ElyseZinfandel vin:locatedIn vin:NapaRegion .
vin:ElyseZinfandel vin:hasMaker vin:Elyse .
vin:ElyseZinfandel vin:hasSugar vin:Dry .
vin:ElyseZinfandel vin:hasFlavor vin:Moderate .
vin:ElyseZinfandel vin:hasBody vin:Full .
vin:Forman rdf:type vin:Winery .
vin:FormanCabernetSauvignon rdf:type vin:CabernetSauvignon .
vin:FormanCabernetSauvignon vin:locatedIn vin:NapaRegion .
vin:FormanCabernetSauvignon vin:hasMaker vin:Forman .
vin:FormanCabernetSauvignon vin:hasSugar vin:Dry .
vin:FormanCabernetSauvignon vin:hasFlavor vin:Strong .
vin:FormanCabernetSauvignon vin:hasBody vin:Medium .
vin:FormanChardonnay rdf:type vin:Chardonnay .
vin:FormanChardonnay vin:locatedIn vin:NapaRegion .
vin:FormanChardonnay vin:hasMaker vin:Forman .
vin:FormanChardonnay vin:hasSugar vin:Dry .
vin:FormanChardonnay vin:hasFlavor vin:Moderate .
vin:FormanChardonnay vin:hasBody vin:Full .
vin:Foxen rdf:type vin:Winery .
vin:FoxenCheninBlanc rdf:type vin:CheninBlanc .
vin:FoxenCheninBlanc vin:locatedIn vin:SantaBarbaraRegion .
vin:FoxenCheninBlanc vin:hasMaker vin:Foxen .
vin:FoxenCheninBlanc vin:hasSugar vin:Dry .
vin:FoxenCheninBlanc vin:hasFlavor vin:Moderate .
vin:FoxenCheninBlanc vin:hasBody vin:Full .
vin:GamayGrape rdf:type vin:WineGrape .
vin:GaryFarrell rdf:type vin:Winery .
vin:GaryFarrellMerlot rdf:type vin:Merlot .
vin:GaryFarrellMerlot vin:locatedIn vin:SonomaRegion .
vin:GaryFarrellMerlot vin:hasMaker vin:GaryFarrell .
vin:GaryFarrellMerlot vin:hasSugar vin:Dry .
vin:GaryFarrellMerlot vin:hasFlavor vin:Moderate .
vin:GaryFarrellMerlot vin:hasBody vin:Medium .
vin:GermanyRegion rdf:type vin:Region .
vin:Handley rdf:type vin:Winery .
vin:KalinCellars rdf:type vin:Winery .
vin:KalinCellarsSemillon rdf:type vin:Semillon .
vin:KalinCellarsSemillon vin:hasMaker vin:KalinCellars .
vin:KalinCellarsSemillon vin:hasSugar vin:Dry .
vin:KalinCellarsSemillon vin:hasFlavor vin:Strong .
vin:KalinCellarsSemillon vin:hasBody vin:Full .
vin:KathrynKennedy rdf:type vin:Winery .
vin:KathrynKennedyLateral rdf:type vin:Meritage .
vin:KathrynKennedyLateral vin:hasMaker vin:KathrynKennedy .
vin:KathrynKennedyLateral vin:hasSugar vin:Dry .
vin:KathrynKennedyLateral vin:hasFlavor vin:Delicate .
vin:KathrynKennedyLateral vin:hasBody vin:Medium .
vin:LaneTanner rdf:type vin:Winery .
vin:LaneTannerPinotNoir rdf:type vin:PinotNoir .
vin:LaneTannerPinotNoir vin:locatedIn vin:SantaBarbaraRegion .
vin:LaneTannerPinotNoir vin:hasMaker vin:LaneTanner .
vin:LaneTannerPinotNoir vin:hasSugar vin:Dry .
vin:LaneTannerPinotNoir vin:hasFlavor vin:Delicate .
vin:LaneTannerPinotNoir vin:hasBody vin:Light .
vin:Longridge rdf:type vin:Winery .
vin:LongridgeMerlot rdf:type vin:Merlot .
vin:LongridgeMerlot vin:locatedIn vin:NewZealandRegion .
vin:LongridgeMerlot vin:hasMaker vin:Longridge .
vin:LongridgeMerlot vin:hasSugar vin:Dry .
vin:LongridgeMerlot vin:hasFlavor vin:Moderate .
vin:LongridgeMerlot vin:hasBody vin:Light .
vin:MalbecGrape rdf:type vin:WineGrape .
vin:MargauxRegion rdf:type vin:Region .
vin:MargauxRegion vin:locatedIn vin:MedocRegion .
vin:Marietta rdf:type vin:Winery .
vin:MariettaCabernetSauvignon rdf:type vin:CabernetSauvignon .
vin:MariettaCabernetSauvignon vin:locatedIn vin:SonomaRegion .
vin:MariettaCabernetSauvignon vin:hasMaker vin:Marietta .
vin:MariettaCabernetSauvignon vin:hasSugar vin:Dry .
vin:MariettaCabernetSauvignon vin:hasFlavor vin:Moderate .
vin:MariettaCabernetSauvignon vin:hasBody vin:Medium .
vin:MariettaOldVinesRed rdf:type vin:RedTableWine .
vin:MariettaOldVinesRed vin:locatedIn vin:SonomaRegion .
vin:MariettaOldVinesRed vin:hasMaker vin:Marietta .
vin:MariettaOldVinesRed vin:hasSugar vin:Dry .
vin:MariettaOldVinesRed vin:hasFlavor vin:Moderate .
vin:MariettaOldVinesRed vin:hasBody vin:Medium .
vin:MariettaPetiteSyrah rdf:type vin:PetiteSyrah .
vin:MariettaPetiteSyrah vin:locatedIn vin:SonomaRegion .
vin:MariettaPetiteSyrah vin:hasMaker vin:Marietta .
vin:MariettaPetiteSyrah vin:hasSugar vin:Dry .
vin:MariettaPetiteSyrah vin:hasFlavor vin:Moderate .
vin:MariettaPetiteSyrah vin:hasBody vin:Medium .
vin:MariettaZinfandel rdf:type vin:Zinfandel .
vin:MariettaZinfandel vin:locatedIn vin:SonomaRegion .
vin:MariettaZinfandel vin:hasMaker vin:Marietta .
vin:MariettaZinfandel vin:hasSugar vin:Dry .
vin:MariettaZinfandel vin:hasFlavor vin:Moderate .
vin:MariettaZinfandel vin:hasBody vin:Medium .
vin:McGuinnesso rdf:type vin:Winery .
vin:MendocinoRegion rdf:type vin:Region .
vin:MendocinoRegion vin:locatedIn vin:CaliforniaRegion .
vin:MendocinoRegion vin:adjacentRegion vin:SonomaRegion .
vin:MerlotGrape rdf:type vin:WineGrape .
vin:MeursaultRegion rdf:type vin:Region .
vin:MeursaultRegion vin:locatedIn vin:BourgogneRegion .
vin:MountEdenVineyard rdf:type vin:Winery .
vin:MountEdenVineyardEdnaValleyChardonnay rdf:type vin:Chardonnay .
vin:MountEdenVineyardEdnaValleyChardonnay vin:locatedIn vin:EdnaValleyRegion .
vin:MountEdenVineyardEdnaValleyChardonnay vin:hasMaker vin:MountEdenVineyard .
vin:MountEdenVineyardEdnaValleyChardonnay vin:hasSugar vin:Dry .
vin:MountEdenVineyardEdnaValleyChardonnay vin:hasFlavor vin:Moderate .
vin:MountEdenVineyardEdnaValleyChardonnay vin:hasBody vin:Medium .
vin:MountEdenVineyardEstatePinotNoir rdf:type vin:PinotNoir .
vin:MountEdenVineyardEstatePinotNoir vin:locatedIn vin:EdnaValleyRegion .
vin:MountEdenVineyardEstatePinotNoir vin:hasMaker vin:MountEdenVineyard .
vin:MountEdenVineyardEstatePinotNoir vin:hasSugar vin:Dry .
vin:MountEdenVineyardEstatePinotNoir vin:hasFlavor vin:Strong .
vin:MountEdenVineyardEstatePinotNoir vin:hasBody vin:Full .
vin:Mountadam rdf:type vin:Winery .
vin:MountadamChardonnay rdf:type vin:Chardonnay .
vin:MountadamChardonnay vin:locatedIn vin:SouthAustraliaRegion .
vin:MountadamChardonnay vin:hasMaker vin:Mountadam .
vin:MountadamChardonnay vin:hasSugar vin:Dry .
vin:MountadamChardonnay vin:hasFlavor vin:Strong .
vin:MountadamChardonnay vin:hasBody vin:Full .
vin:MountadamPinotNoir rdf:type vin:PinotNoir .
vin:MountadamPinotNoir vin:locatedIn vin:SouthAustraliaRegion .
vin:MountadamPinotNoir vin:hasMaker vin:Mountadam .
vin:MountadamPinotNoir vin:hasSugar vin:Dry .
vin:MountadamPinotNoir vin:hasFlavor vin:Moderate .
vin:MountadamPinotNoir vin:hasBody vin:Medium .
vin:MountadamRiesling rdf:type vin:DryRiesling .
vin:MountadamRiesling vin:locatedIn vin:SouthAustraliaRegion .
vin:MountadamRiesling vin:hasMaker vin:Mountadam .
vin:MountadamRiesling vin:hasSugar vin:Dry .
vin:MountadamRiesling vin:hasFlavor vin:Delicate .
vin:MountadamRiesling vin:hasBody vin:Medium .
vin:MuscadetRegion rdf:type vin:Region .
vin:MuscadetRegion vin:locatedIn vin:LoireRegion .
vin:NapaRegion rdf:type vin:Region .
vin:NapaRegion vin:locatedIn vin:CaliforniaRegion .
vin:NewZealandRegion rdf:type vin:Region .
vin:PageMillWinery rdf:type vin:Winery .
vin:PageMillWineryCabernetSauvignon rdf:type vin:CabernetSauvignon .
vin:PageMillWineryCabernetSauvignon vin:locatedIn vin:NapaRegion .
vin:PageMillWineryCabernetSauvignon vin:hasMaker vin:PageMillWinery .
vin:PageMillWineryCabernetSauvignon vin:hasSugar vin:Dry .
vin:PageMillWineryCabernetSauvignon vin:hasFlavor vin:Moderate .
vin:PageMillWineryCabernetSauvignon vin:hasBody vin:Medium .
vin:PauillacRegion rdf:type vin:Region .
vin:PauillacRegion vin:locatedIn vin:MedocRegion .
vin:PeterMccoy rdf:type vin:Winery .
vin:PeterMccoyChardonnay rdf:type vin:Chardonnay .
vin:PeterMccoyChardonnay vin:locatedIn vin:SonomaRegion .
vin:PeterMccoyChardonnay vin:hasMaker vin:PeterMccoy .
vin:PeterMccoyChardonnay vin:hasSugar vin:Dry .
vin:PeterMccoyChardonnay vin:hasFlavor vin:Moderate .
vin:PeterMccoyChardonnay vin:hasBody vin:Medium .
vin:PetiteSyrahGrape rdf:type vin:WineGrape .
vin:PetiteVerdotGrape rdf:type vin:WineGrape .
vin:PinotBlancGrape rdf:type vin:WineGrape .
vin:PinotNoirGrape rdf:type vin:WineGrape .
vin:PortugalRegion rdf:type vin:Region .
vin:PulignyMontrachet rdf:type vin:Winery .
vin:PulignyMontrachetWhiteBurgundy rdf:type vin:WhiteBurgundy .
vin:PulignyMontrachetWhiteBurgundy vin:hasMaker vin:PulignyMontrachet .
vin:PulignyMontrachetWhiteBurgundy vin:hasSugar vin:Dry .
vin:PulignyMontrachetWhiteBurgundy vin:hasFlavor vin:Moderate .
vin:PulignyMontrachetWhiteBurgundy vin:hasBody vin:Medium .
vin:RieslingGrape rdf:type vin:WineGrape .
vin:RoseDAnjou rdf:type vin:Anjou .
vin:RoseDAnjou vin:hasMaker vin:DAnjou .
vin:SancerreRegion rdf:type vin:Region .
vin:SancerreRegion vin:locatedIn vin:LoireRegion .
vin:SangioveseGrape rdf:type vin:WineGrape .
vin:SantaBarbaraRegion rdf:type vin:Region .
vin:SantaBarbaraRegion vin:locatedIn vin:CaliforniaRegion .
vin:SantaCruzMountainVineyard rdf:type vin:Winery .
vin:SantaCruzMountainVineyardCabernetSauvignon rdf:type vin:CabernetSauvignon .
vin:SantaCruzMountainVineyardCabernetSauvignon vin:locatedIn vin:SantaCruzMountainsRegion .
vin:SantaCruzMountainVineyardCabernetSauvignon vin:hasMaker vin:SantaCruzMountainVineyard .
vin:SantaCruzMountainVineyardCabernetSauvignon vin:hasSugar vin:Dry .
vin:SantaCruzMountainVineyardCabernetSauvignon vin:hasFlavor vin:Strong .
vin:SantaCruzMountainVineyardCabernetSauvignon vin:hasBody vin:Full .
vin:CentralTexasRegion rdf:type vin:Region .
vin:CentralTexasRegion vin:locatedIn vin:TexasRegion .
vin:StGenevieve rdf:type vin:Winery .
vin:StGenevieveTexasWhite rdf:type vin:WhiteWine .
vin:StGenevieveTexasWhite vin:locatedIn vin:CentralTexasRegion .
vin:StGenevieveTexasWhite vin:hasMaker vin:StGenevieve .
vin:StGenevieveTexasWhite vin:hasSugar vin:Dry .
vin:StGenevieveTexasWhite vin:hasFlavor vin:Moderate .
vin:SantaCruzMountainsRegion rdf:type vin:Region .
vin:SantaCruzMountainsRegion vin:locatedIn vin:CaliforniaRegion .
vin:SaucelitoCanyon rdf:type vin:Winery .
vin:SaucelitoCanyonZinfandel rdf:type vin:Zinfandel .
vin:SaucelitoCanyonZinfandel vin:locatedIn vin:ArroyoGrandeRegion .
vin:SaucelitoCanyonZinfandel vin:hasMaker vin:SaucelitoCanyon .
vin:SaucelitoCanyonZinfandel vin:hasSugar vin:Dry .
vin:SaucelitoCanyonZinfandel vin:hasFlavor vin:Moderate .
vin:SaucelitoCanyonZinfandel vin:hasBody vin:Medium .
vin:SaucelitoCanyonZinfandel1998 rdf:type vin:Zinfandel .
vin:SaucelitoCanyonZinfandel1998 vin:locatedIn vin:ArroyoGrandeRegion .
vin:SaucelitoCanyonZinfandel1998 vin:hasVintageYear vin:Year1998 .
vin:SaucelitoCanyonZinfandel1998 vin:hasMaker vin:SaucelitoCanyon .
vin:SaucelitoCanyonZinfandel1998 vin:hasSugar vin:Dry .
vin:SaucelitoCanyonZinfandel1998 vin:hasFlavor vin:Moderate .
vin:SaucelitoCanyonZinfandel1998 vin:hasBody vin:Medium .
vin:SauterneRegion rdf:type vin:Region .
vin:SauterneRegion vin:locatedIn vin:BordeauxRegion .
vin:SauvignonBlancGrape rdf:type vin:WineGrape .
vin:SchlossRothermel rdf:type vin:Winery .
vin:SchlossRothermelTrochenbierenausleseRiesling rdf:type vin:SweetRiesling .
vin:SchlossRothermelTrochenbierenausleseRiesling vin:locatedIn vin:GermanyRegion .
vin:SchlossRothermelTrochenbierenausleseRiesling vin:hasMaker vin:SchlossRothermel .
vin:SchlossRothermelTrochenbierenausleseRiesling vin:hasSugar vin:Sweet .
vin:SchlossRothermelTrochenbierenausleseRiesling vin:hasFlavor vin:Strong .
vin:SchlossRothermelTrochenbierenausleseRiesling vin:hasBody vin:Full .
vin:SchlossVolrad rdf:type vin:Winery .
vin:SchlossVolradTrochenbierenausleseRiesling rdf:type vin:SweetRiesling .
vin:SchlossVolradTrochenbierenausleseRiesling vin:locatedIn vin:GermanyRegion .
vin:SchlossVolradTrochenbierenausleseRiesling vin:hasMaker vin:SchlossVolrad .
vin:SchlossVolradTrochenbierenausleseRiesling vin:hasSugar vin:Sweet .
vin:SchlossVolradTrochenbierenausleseRiesling vin:hasFlavor vin:Moderate .
vin:SchlossVolradTrochenbierenausleseRiesling vin:hasBody vin:Full .
vin:SeanThackrey rdf:type vin:Winery .
vin:SeanThackreySiriusPetiteSyrah rdf:type vin:PetiteSyrah .
vin:SeanThackreySiriusPetiteSyrah vin:locatedIn vin:NapaRegion .
vin:SeanThackreySiriusPetiteSyrah vin:hasMaker vin:SeanThackrey .
vin:SeanThackreySiriusPetiteSyrah vin:hasSugar vin:Dry .
vin:SeanThackreySiriusPetiteSyrah vin:hasFlavor vin:Strong .
vin:SeanThackreySiriusPetiteSyrah vin:hasBody vin:Full .
vin:Selaks rdf:type vin:Winery .
vin:SelaksIceWine rdf:type vin:IceWine .
vin:SelaksIceWine vin:locatedIn vin:NewZealandRegion .
vin:SelaksIceWine vin:hasMaker vin:Selaks .
vin:SelaksIceWine vin:hasFlavor vin:Moderate .
vin:SelaksIceWine vin:hasBody vin:Medium .
vin:SelaksIceWine vin:hasColor vin:White .
vin:SelaksSauvignonBlanc rdf:type vin:SauvignonBlanc .
vin:SelaksSauvignonBlanc vin:locatedIn vin:NewZealandRegion .
vin:SelaksSauvignonBlanc vin:hasMaker vin:Selaks .
vin:SelaksSauvignonBlanc vin:hasSugar vin:Dry .
vin:SelaksSauvignonBlanc vin:hasFlavor vin:Moderate .
vin:SelaksSauvignonBlanc vin:hasBody vin:Medium .
vin:SemillonGrape rdf:type vin:WineGrape .
vin:SevreEtMaine rdf:type vin:Winery .
vin:SevreEtMaineMuscadet rdf:type vin:Muscadet .
vin:SevreEtMaineMuscadet vin:hasMaker vin:SevreEtMaine .
vin:SonomaRegion rdf:type vin:Region .
vin:SonomaRegion vin:locatedIn vin:CaliforniaRegion .
vin:SouthAustraliaRegion rdf:type vin:Region .
vin:SouthAustraliaRegion vin:locatedIn vin:AustralianRegion .
vin:StEmilionRegion rdf:type vin:Region .
vin:StEmilionRegion vin:locatedIn vin:BordeauxRegion .
vin:Stonleigh rdf:type vin:Winery .
vin:StonleighSauvignonBlanc rdf:type vin:SauvignonBlanc .
vin:StonleighSauvignonBlanc vin:locatedIn vin:NewZealandRegion .
vin:StonleighSauvignonBlanc vin:hasMaker vin:Stonleigh .
vin:StonleighSauvignonBlanc vin:hasSugar vin:Dry .
vin:StonleighSauvignonBlanc vin:hasFlavor vin:Delicate .
vin:StonleighSauvignonBlanc vin:hasBody vin:Medium .
vin:Taylor rdf:type vin:Winery .
vin:TaylorPort rdf:type vin:Port .
vin:TaylorPort vin:hasMaker vin:Taylor .
vin:ToursRegion rdf:type vin:Region .
vin:ToursRegion vin:locatedIn vin:LoireRegion .
vin:Ventana rdf:type vin:Winery .
vin:VentanaCheninBlanc rdf:type vin:CheninBlanc .
vin:VentanaCheninBlanc vin:locatedIn vin:CentralCoastRegion .
vin:VentanaCheninBlanc vin:hasMaker vin:Ventana .
vin:VentanaCheninBlanc vin:hasSugar vin:OffDry .
vin:VentanaCheninBlanc vin:hasFlavor vin:Moderate .
vin:VentanaCheninBlanc vin:hasBody vin:Medium .
vin:WhitehallLane rdf:type vin:Winery .
vin:WhitehallLaneCabernetFranc rdf:type vin:CabernetFranc .
vin:WhitehallLaneCabernetFranc vin:locatedIn vin:NapaRegion .
vin:WhitehallLaneCabernetFranc vin:hasMaker vin:WhitehallLane .
vin:WhitehallLaneCabernetFranc vin:hasSugar vin:Dry .
vin:WhitehallLaneCabernetFranc vin:hasFlavor vin:Moderate .
vin:WhitehallLaneCabernetFranc vin:hasBody vin:Medium .
vin:WhitehallLanePrimavera rdf:type vin:DessertWine .
vin:WhitehallLanePrimavera vin:locatedIn vin:NapaRegion .
vin:WhitehallLanePrimavera vin:hasSugar vin:Sweet .
vin:WhitehallLanePrimavera vin:hasFlavor vin:Delicate .
vin:WhitehallLanePrimavera vin:hasBody vin:Light .
_:a32 rdf:type owl:AllDifferent .
vin:Bancroft rdf:type vin:Winery .
vin:ChateauChevalBlanc rdf:type vin:Winery .
vin:ChateauDYchem rdf:type vin:Winery .
vin:ChateauDeMeursault rdf:type vin:Winery .
vin:ChateauLafiteRothschild rdf:type vin:Winery .
vin:ChateauMargauxWinery rdf:type vin:Winery .
vin:ChateauMorgon rdf:type vin:Winery .
vin:ClosDeLaPoussie rdf:type vin:Winery .
vin:ClosDeVougeot rdf:type vin:Winery .
vin:CongressSprings rdf:type vin:Winery .
vin:Corbans rdf:type vin:Winery .
vin:CortonMontrachet rdf:type vin:Winery .
vin:Cotturi rdf:type vin:Winery .
vin:DAnjou rdf:type vin:Winery .
vin:Elyse rdf:type vin:Winery .
vin:Forman rdf:type vin:Winery .
vin:Foxen rdf:type vin:Winery .
vin:GaryFarrell rdf:type vin:Winery .
vin:KalinCellars rdf:type vin:Winery .
vin:KathrynKennedy rdf:type vin:Winery .
vin:LaneTanner rdf:type vin:Winery .
vin:Longridge rdf:type vin:Winery .
vin:Marietta rdf:type vin:Winery .
vin:McGuinnesso rdf:type vin:Winery .
vin:MountEdenVineyard rdf:type vin:Winery .
vin:Mountadam rdf:type vin:Winery .
vin:PageMillWinery rdf:type vin:Winery .
vin:PeterMccoy rdf:type vin:Winery .
vin:PulignyMontrachet rdf:type vin:Winery .
vin:SantaCruzMountainVineyard rdf:type vin:Winery .
vin:SaucelitoCanyon rdf:type vin:Winery .
vin:SchlossRothermel rdf:type vin:Winery .
vin:SchlossVolrad rdf:type vin:Winery .
vin:SeanThackrey rdf:type vin:Winery .
vin:Selaks rdf:type vin:Winery .
vin:SevreEtMaine rdf:type vin:Winery .
vin:StGenevieve rdf:type vin:Winery .
vin:Stonleigh rdf:type vin:Winery .
vin:Taylor rdf:type vin:Winery .
vin:Ventana rdf:type vin:Winery .
vin:WhitehallLane rdf:type vin:Winery .
_:c32 rdf:first vin:WhitehallLane .
_:c32 rdf:rest rdf:nil .
_:e32 rdf:first vin:Ventana .
_:e32 rdf:rest _:c32 .
_:g32 rdf:first vin:Taylor .
_:g32 rdf:rest _:e32 .
_:i32 rdf:first vin:Stonleigh .
_:i32 rdf:rest _:g32 .
_:k32 rdf:first vin:StGenevieve .
_:k32 rdf:rest _:i32 .
_:m32 rdf:first vin:SevreEtMaine .
_:m32 rdf:rest _:k32 .
_:o32 rdf:first vin:Selaks .
_:o32 rdf:rest _:m32 .
_:q32 rdf:first vin:SeanThackrey .
_:q32 rdf:rest _:o32 .
_:s32 rdf:first vin:SchlossVolrad .
_:s32 rdf:rest _:q32 .
_:u32 rdf:first vin:SchlossRothermel .
_:u32 rdf:rest _:s32 .
_:w32 rdf:first vin:SaucelitoCanyon .
_:w32 rdf:rest _:u32 .
_:y32 rdf:first vin:SantaCruzMountainVineyard .
_:y32 rdf:rest _:w32 .
_:a33 rdf:first vin:PulignyMontrachet .
_:a33 rdf:rest _:y32 .
_:c33 rdf:first vin:PeterMccoy .
_:c33 rdf:rest _:a33 .
_:e33 rdf:first vin:PageMillWinery .
_:e33 rdf:rest _:c33 .
_:g33 rdf:first vin:Mountadam .
_:g33 rdf:rest _:e33 .
_:i33 rdf:first vin:MountEdenVineyard .
_:i33 rdf:rest _:g33 .
_:k33 rdf:first vin:McGuinnesso .
_:k33 rdf:rest _:i33 .
_:m33 rdf:first vin:Marietta .
_:m33 rdf:rest _:k33 .
_:o33 rdf:first vin:Longridge .
_:o33 rdf:rest _:m33 .
_:q33 rdf:first vin:LaneTanner .
_:q33 rdf:rest _:o33 .
_:s33 rdf:first vin:KathrynKennedy .
_:s33 rdf:rest _:q33 .
_:u33 rdf:first vin:KalinCellars .
_:u33 rdf:rest _:s33 .
_:w33 rdf:first vin:GaryFarrell .
_:w33 rdf:rest _:u33 .
_:y33 rdf:first vin:Foxen .
_:y33 rdf:rest _:w33 .
_:a34 rdf:first vin:Forman .
_:a34 rdf:rest _:y33 .
_:c34 rdf:first vin:Elyse .
_:c34 rdf:rest _:a34 .
_:e34 rdf:first vin:DAnjou .
_:e34 rdf:rest _:c34 .
_:g34 rdf:first vin:Cotturi .
_:g34 rdf:rest _:e34 .
_:i34 rdf:first vin:CortonMontrachet .
_:i34 rdf:rest _:g34 .
_:k34 rdf:first vin:Corbans .
_:k34 rdf:rest _:i34 .
_:m34 rdf:first vin:CongressSprings .
_:m34 rdf:rest _:k34 .
_:o34 rdf:first vin:ClosDeVougeot .
_:o34 rdf:rest _:m34 .
_:q34 rdf:first vin:ClosDeLaPoussie .
_:q34 rdf:rest _:o34 .
_:s34 rdf:first vin:ChateauMorgon .
_:s34 rdf:rest _:q34 .
_:u34 rdf:first vin:ChateauMargauxWinery .
_:u34 rdf:rest _:s34 .
_:w34 rdf:first vin:ChateauLafiteRothschild .
_:w34 rdf:rest _:u34 .
_:y34 rdf:first vin:ChateauDeMeursault .
_:y34 rdf:rest _:w34 .
_:a35 rdf:first vin:ChateauDYchem .
_:a35 rdf:rest _:y34 .
_:c35 rdf:first vin:ChateauChevalBlanc .
_:c35 rdf:rest _:a35 .
_:e35 rdf:first vin:Bancroft .
_:e35 rdf:rest _:c35 .
_:a32 owl:distinctMembers _:e35 .

DL FullConsistent document.002
Description: (informative) <miscellaneous/Manifest002#test>
Food example taken from the guide.
N3 format is informative.
Namespaces:
@prefix food: <http://www.w3.org/2002/03owlt/miscellaneous/consistent002#> .
@prefix vin: <http://www.w3.org/2002/03owlt/miscellaneous/consistent001#> .
@prefix : <http://www.w3.org/2002/03owlt/miscellaneous/consistent002#> .
DLConsistent: <miscellaneous/consistent002>
<!DOCTYPE owl [
     <!ENTITY vin  "http://www.w3.org/2002/03owlt/miscellaneous/consistent001#" >
     <!ENTITY food "http://www.w3.org/2002/03owlt/miscellaneous/consistent002#" >
     <!ENTITY xsd  "http://www.w3.org/2001/XMLSchema#" >
   ]>

<rdf:RDF
  xmlns     = "&food;"
  xmlns:food= "&food;"
  xml:base  = "&food;"
  xmlns:vin = "&vin;"
  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#">

  <owl:Ontology rdf:about="">
    <rdfs:comment>
      Derived from the DAML Wine ontology at 
      http://ontolingua.stanford.edu/doc/chimaera/ontologies/wines.daml
      Substantially modified.
    </rdfs:comment> 
    <owl:imports rdf:resource="http://www.w3.org/2002/03owlt/miscellaneous/consistent001"/>
  </owl:Ontology>

  <owl:Class rdf:ID="ConsumableThing" />

  <owl:Class rdf:ID="NonConsumableThing">
    <owl:complementOf rdf:resource="#ConsumableThing" />
  </owl:Class>

  <owl:Class rdf:ID="EdibleThing">
    <rdfs:subClassOf rdf:resource="#ConsumableThing" />
  </owl:Class>
  
  <owl:Class rdf:ID="PotableLiquid">
    <rdfs:subClassOf rdf:resource="#ConsumableThing" />
    <owl:disjointWith rdf:resource="#EdibleThing" />
  </owl:Class>
  
  <owl:Class rdf:ID="Wine">
    <owl:equivalentClass rdf:resource="&vin;Wine"/>
  </owl:Class>

  <owl:ObjectProperty rdf:ID="madeFromFruit">
    <rdfs:domain rdf:resource="#ConsumableThing" />
    <rdfs:range rdf:resource="#Fruit" />
  </owl:ObjectProperty>

  <owl:Class rdf:ID="Juice">
    <rdfs:subClassOf rdf:resource="#PotableLiquid" />
    <rdfs:subClassOf>
      <owl:Restriction>
        <owl:onProperty rdf:resource="#madeFromFruit" />
  <owl:minCardinality rdf:datatype="&xsd;nonNegativeInteger">1</owl:minCardinality>
      </owl:Restriction>
    </rdfs:subClassOf>
  </owl:Class>

  <owl:ObjectProperty rdf:ID="hasDrink">
    <rdfs:domain rdf:resource="#MealCourse" />
    <rdfs:range rdf:resource="#PotableLiquid" />
  </owl:ObjectProperty>
  
  <owl:Thing rdf:ID="White">
    <owl:sameAs rdf:resource="&vin;White"/>
  </owl:Thing>

  <owl:Thing rdf:ID="Rose">
    <owl:sameAs rdf:resource="&vin;Rose" />
  </owl:Thing>

  <owl:Thing rdf:ID="Red">
    <owl:sameAs rdf:resource="&vin;Red" />
  </owl:Thing>

  <owl:Thing rdf:ID="Sweet">
    <owl:sameAs rdf:resource="&vin;Sweet" />
  </owl:Thing>

  <owl:Thing rdf:ID="OffDry">
    <owl:sameAs rdf:resource="&vin;OffDry" />
  </owl:Thing>

  <owl:Thing rdf:ID="Dry">
    <owl:sameAs rdf:resource="&vin;Dry" />
  </owl:Thing>

  <owl:Thing rdf:ID="Delicate">
    <owl:sameAs rdf:resource="&vin;Delicate" />
  </owl:Thing>

  <owl:Thing rdf:ID="Moderate">
    <owl:sameAs rdf:resource="&vin;Moderate" />
  </owl:Thing>

  <owl:Thing rdf:ID="Strong">
    <owl:sameAs rdf:resource="&vin;Strong" />
  </owl:Thing>

  <owl:Thing rdf:ID="Light">
    <owl:sameAs rdf:resource="&vin;Light" />
  </owl:Thing>

  <owl:Thing rdf:ID="Medium">
    <owl:sameAs rdf:resource="&vin;Medium" />
  </owl:Thing>

  <owl:Thing rdf:ID="Full">
    <owl:sameAs rdf:resource="&vin;Full" />
  </owl:Thing>

  <owl:ObjectProperty rdf:ID="course">
    <rdfs:domain rdf:resource="#Meal" />
    <rdfs:range rdf:resource="#MealCourse" />
  </owl:ObjectProperty>
  
  <owl:Class rdf:ID="Grape">
    <rdfs:subClassOf rdf:resource="#SweetFruit" />
  </owl:Class>
  
  <owl:Class rdf:ID="Pasta">
    <rdfs:subClassOf rdf:resource="#EdibleThing" />
    <owl:disjointWith rdf:resource="#Meat" />
    <owl:disjointWith rdf:resource="#Fowl" />
    <owl:disjointWith rdf:resource="#Seafood" />
    <owl:disjointWith rdf:resource="#Dessert" />
    <owl:disjointWith rdf:resource="#Fruit" />
  </owl:Class>
  
  <owl:Class rdf:ID="PastaWithWhiteSauce">
    <rdfs:subClassOf rdf:resource="#Pasta" />
    <owl:disjointWith rdf:resource="#PastaWithRedSauce" />
  </owl:Class>
  
  <owl:Class rdf:ID="PastaWithSpicyRedSauceCourse">
    <owl:intersectionOf rdf:parseType="Collection">
      <owl:Class rdf:about="#MealCourse" />
      <owl:Restriction>
        <owl:onProperty rdf:resource="#hasFood" />
        <owl:allValuesFrom rdf:resource="#PastaWithSpicyRedSauce" />
      </owl:Restriction>
    </owl:intersectionOf>
    <rdfs:subClassOf>
      <owl:Restriction>
        <owl:onProperty rdf:resource="#hasDrink" />
        <owl:allValuesFrom>
          <owl:Restriction>
            <owl:onProperty rdf:resource="&vin;hasColor" />
            <owl:hasValue rdf:resource="#Red" />
          </owl:Restriction>
        </owl:allValuesFrom>
      </owl:Restriction>
    </rdfs:subClassOf>
    <rdfs:subClassOf>
      <owl:Restriction>
        <owl:onProperty rdf:resource="#hasDrink" />
        <owl:allValuesFrom>
          <owl:Restriction>
            <owl:onProperty rdf:resource="&vin;hasBody" />
            <owl:hasValue rdf:resource="#Full" />
          </owl:Restriction>
        </owl:allValuesFrom>
      </owl:Restriction>
    </rdfs:subClassOf>
    <rdfs:subClassOf>
      <owl:Restriction>
        <owl:onProperty rdf:resource="#hasDrink" />
        <owl:allValuesFrom>
          <owl:Restriction>
            <owl:onProperty rdf:resource="&vin;hasFlavor" />
            <owl:hasValue rdf:resource="#Strong" />
          </owl:Restriction>
        </owl:allValuesFrom>
      </owl:Restriction>
    </rdfs:subClassOf>
    <rdfs:subClassOf>
      <owl:Restriction>
        <owl:onProperty rdf:resource="#hasDrink" />
        <owl:allValuesFrom>
          <owl:Restriction>
            <owl:onProperty rdf:resource="&vin;hasSugar" />
            <owl:hasValue rdf:resource="#Dry" />
          </owl:Restriction>
        </owl:allValuesFrom>
      </owl:Restriction>
    </rdfs:subClassOf>
  </owl:Class>
  
  <owl:Class rdf:ID="PastaWithSpicyRedSauce">
    <rdfs:subClassOf rdf:resource="#PastaWithRedSauce" />
  </owl:Class>
  
  <owl:Class rdf:ID="PastaWithRedSauce">
    <rdfs:subClassOf rdf:resource="#Pasta" />
  </owl:Class>
  
  <owl:Class rdf:ID="PastaWithNonSpicyRedSauceCourse">
    <owl:intersectionOf rdf:parseType="Collection">
      <owl:Class rdf:about="#MealCourse" />
      <owl:Restriction>
        <owl:onProperty rdf:resource="#hasFood" />
        <owl:allValuesFrom rdf:resource="#PastaWithNonSpicyRedSauce" />
      </owl:Restriction>
    </owl:intersectionOf>
    <rdfs:subClassOf>
      <owl:Restriction>
        <owl:onProperty rdf:resource="#hasDrink" />
        <owl:allValuesFrom>
          <owl:Restriction>
            <owl:onProperty rdf:resource="&vin;hasColor" />
            <owl:hasValue rdf:resource="#Red" />
          </owl:Restriction>
        </owl:allValuesFrom>
      </owl:Restriction>
    </rdfs:subClassOf>
    <rdfs:subClassOf>
      <owl:Restriction>
        <owl:onProperty rdf:resource="#hasDrink" />
        <owl:allValuesFrom>
          <owl:Restriction>
            <owl:onProperty rdf:resource="&vin;hasBody" />
            <owl:hasValue rdf:resource="#Medium" />
          </owl:Restriction>
        </owl:allValuesFrom>
      </owl:Restriction>
    </rdfs:subClassOf>
    <rdfs:subClassOf>
      <owl:Restriction>
        <owl:onProperty rdf:resource="#hasDrink" />
        <owl:allValuesFrom>
          <owl:Restriction>
            <owl:onProperty rdf:resource="&vin;hasFlavor" />
            <owl:hasValue rdf:resource="#Moderate" />
          </owl:Restriction>
        </owl:allValuesFrom>
      </owl:Restriction>
    </rdfs:subClassOf>
    <rdfs:subClassOf>
      <owl:Restriction>
        <owl:onProperty rdf:resource="#hasDrink" />
        <owl:allValuesFrom>
          <owl:Restriction>
            <owl:onProperty rdf:resource="&vin;hasSugar" />
            <owl:hasValue rdf:resource="#Dry" />
          </owl:Restriction>
        </owl:allValuesFrom>
      </owl:Restriction>
    </rdfs:subClassOf>
  </owl:Class>
  
  <owl:Class rdf:ID="PastaWithNonSpicyRedSauce">
    <rdfs:subClassOf rdf:resource="#PastaWithRedSauce" />
    <owl:disjointWith rdf:resource="#PastaWithSpicyRedSauce" />
  </owl:Class>
  
  <owl:Class rdf:ID="PastaWithLightCreamSauce">
    <rdfs:subClassOf rdf:resource="#PastaWithWhiteSauce" />
    <owl:disjointWith rdf:resource="#PastaWithHeavyCreamSauce" />
  </owl:Class>
  
  <owl:Class rdf:ID="PastaWithLightCreamCourse">
    <owl:intersectionOf rdf:parseType="Collection">
      <owl:Class rdf:about="#MealCourse" />
      <owl:Restriction>
        <owl:onProperty rdf:resource="#hasFood" />
        <owl:allValuesFrom rdf:resource="#PastaWithLightCreamSauce" />
      </owl:Restriction>
    </owl:intersectionOf>
    <rdfs:subClassOf>
      <owl:Restriction>
        <owl:onProperty rdf:resource="#hasDrink" />
        <owl:allValuesFrom>
          <owl:Restriction>
            <owl:onProperty rdf:resource="&vin;hasColor" />
            <owl:hasValue rdf:resource="#White" />
          </owl:Restriction>
        </owl:allValuesFrom>
      </owl:Restriction>
    </rdfs:subClassOf>
    <rdfs:subClassOf>
      <owl:Restriction>
        <owl:onProperty rdf:resource="#hasDrink" />
        <owl:allValuesFrom>
          <owl:Restriction>
            <owl:onProperty rdf:resource="&vin;hasBody" />
            <owl:hasValue rdf:resource="#Light" />
          </owl:Restriction>
        </owl:allValuesFrom>
      </owl:Restriction>
    </rdfs:subClassOf>
    <rdfs:subClassOf>
      <owl:Restriction>
        <owl:onProperty rdf:resource="#hasDrink" />
        <owl:allValuesFrom>
          <owl:Restriction>
            <owl:onProperty rdf:resource="&vin;hasFlavor" />
            <owl:hasValue rdf:resource="#Delicate" />
          </owl:Restriction>
        </owl:allValuesFrom>
      </owl:Restriction>
    </rdfs:subClassOf>
    <rdfs:subClassOf>
      <owl:Restriction>
        <owl:onProperty rdf:resource="#hasDrink" />
        <owl:allValuesFrom>
          <owl:Restriction>
            <owl:onProperty rdf:resource="&vin;hasSugar" />
            <owl:hasValue rdf:resource="#Dry" />
          </owl:Restriction>
        </owl:allValuesFrom>
      </owl:Restriction>
    </rdfs:subClassOf>
  </owl:Class>
  
  <owl:Class rdf:ID="PastaWithHeavyCreamSauce">
    <rdfs:subClassOf rdf:resource="#PastaWithWhiteSauce" />
  </owl:Class>
  
  <owl:Class rdf:ID="PastaWithHeavyCreamCourse">
    <owl:intersectionOf rdf:parseType="Collection">
      <owl:Class rdf:about="#MealCourse" />
      <owl:Restriction>
        <owl:onProperty rdf:resource="#hasFood" />
        <owl:allValuesFrom rdf:resource="#PastaWithHeavyCreamSauce" />
      </owl:Restriction>
    </owl:intersectionOf>
    <rdfs:subClassOf>
      <owl:Restriction>
        <owl:onProperty rdf:resource="#hasDrink" />
        <owl:allValuesFrom>
          <owl:Restriction>
            <owl:onProperty rdf:resource="&vin;hasColor" />
            <owl:hasValue rdf:resource="#White" />
          </owl:Restriction>
        </owl:allValuesFrom>
      </owl:Restriction>
    </rdfs:subClassOf>
    <rdfs:subClassOf>
      <owl:Restriction>
        <owl:onProperty rdf:resource="#hasDrink" />
        <owl:allValuesFrom>
          <owl:Restriction>
            <owl:onProperty rdf:resource="&vin;hasBody" />
            <owl:hasValue rdf:resource="#Medium" />
          </owl:Restriction>
        </owl:allValuesFrom>
      </owl:Restriction>
    </rdfs:subClassOf>
    <rdfs:subClassOf>
      <owl:Restriction>
        <owl:onProperty rdf:resource="#hasDrink" />
        <owl:allValuesFrom>
          <owl:Restriction>
            <owl:onProperty rdf:resource="&vin;hasFlavor" />
            <owl:hasValue rdf:resource="#Moderate" />
          </owl:Restriction>
        </owl:allValuesFrom>
      </owl:Restriction>
    </rdfs:subClassOf>
    <rdfs:subClassOf>
      <owl:Restriction>
        <owl:onProperty rdf:resource="#hasDrink" />
        <owl:allValuesFrom>
          <owl:Restriction>
            <owl:onProperty rdf:resource="&vin;hasSugar" />
            <owl:hasValue rdf:resource="#Dry" />
          </owl:Restriction>
        </owl:allValuesFrom>
      </owl:Restriction>
    </rdfs:subClassOf>
  </owl:Class>
  
  <owl:Class rdf:ID="OysterShellfishCourse">
    <owl:intersectionOf rdf:parseType="Collection">
      <owl:Class rdf:about="#MealCourse" />
      <owl:Restriction>
        <owl:onProperty rdf:resource="#hasFood" />
        <owl:allValuesFrom rdf:resource="#OysterShellfish" />
      </owl:Restriction>
    </owl:intersectionOf>
    <rdfs:subClassOf>
      <owl:Restriction>
        <owl:onProperty rdf:resource="#hasDrink" />
        <owl:allValuesFrom>
          <owl:Restriction>
            <owl:onProperty rdf:resource="&vin;hasSugar" />
            <owl:hasValue rdf:resource="#Sweet" />
          </owl:Restriction>
        </owl:allValuesFrom>
      </owl:Restriction>
    </rdfs:subClassOf>
  </owl:Class>
  
  <owl:Class rdf:ID="OysterShellfish">
    <rdfs:subClassOf rdf:resource="#Shellfish" />
  </owl:Class>
  
  <owl:Class rdf:ID="OtherTomatoBasedFoodCourse">
    <owl:intersectionOf rdf:parseType="Collection">
      <owl:Class rdf:about="#MealCourse" />
      <owl:Restriction>
        <owl:onProperty rdf:resource="#hasFood" />
        <owl:allValuesFrom rdf:resource="#OtherTomatoBasedFood" />
      </owl:Restriction>
    </owl:intersectionOf>
    <rdfs:subClassOf>
      <owl:Restriction>
        <owl:onProperty rdf:resource="#hasDrink" />
        <owl:allValuesFrom>
          <owl:Restriction>
            <owl:onProperty rdf:resource="&vin;hasColor" />
            <owl:hasValue rdf:resource="#Red" />
          </owl:Restriction>
        </owl:allValuesFrom>
      </owl:Restriction>
    </rdfs:subClassOf>
    <rdfs:subClassOf>
      <owl:Restriction>
        <owl:onProperty rdf:resource="#hasDrink" />
        <owl:allValuesFrom>
          <owl:Restriction>
            <owl:onProperty rdf:resource="&vin;hasBody" />
            <owl:hasValue rdf:resource="#Medium" />
          </owl:Restriction>
        </owl:allValuesFrom>
      </owl:Restriction>
    </rdfs:subClassOf>
    <rdfs:subClassOf>
      <owl:Restriction>
        <owl:onProperty rdf:resource="#hasDrink" />
        <owl:allValuesFrom>
          <owl:Restriction>
            <owl:onProperty rdf:resource="&vin;hasFlavor" />
            <owl:hasValue rdf:resource="#Moderate" />
          </owl:Restriction>
        </owl:allValuesFrom>
      </owl:Restriction>
    </rdfs:subClassOf>
    <rdfs:subClassOf>
      <owl:Restriction>
        <owl:onProperty rdf:resource="#hasDrink" />
        <owl:allValuesFrom>
          <owl:Restriction>
            <owl:onProperty rdf:resource="&vin;hasSugar" />
            <owl:hasValue rdf:resource="#Dry" />
          </owl:Restriction>
        </owl:allValuesFrom>
      </owl:Restriction>
    </rdfs:subClassOf>
  </owl:Class>
  
  <owl:Class rdf:ID="OtherTomatoBasedFood">
    <rdfs:subClassOf rdf:resource="#EdibleThing" />
    <owl:disjointWith rdf:resource="#Pasta" />
    <owl:disjointWith rdf:resource="#Meat" />
    <owl:disjointWith rdf:resource="#Fowl" />
    <owl:disjointWith rdf:resource="#Seafood" />
    <owl:disjointWith rdf:resource="#Dessert" />
    <owl:disjointWith rdf:resource="#Fruit" />
  </owl:Class>
  
  <owl:Class rdf:ID="NonSweetFruitCourse">
    <owl:intersectionOf rdf:parseType="Collection">
      <owl:Class rdf:about="#MealCourse" />
      <owl:Restriction>
        <owl:onProperty rdf:resource="#hasFood" />
        <owl:allValuesFrom rdf:resource="#NonSweetFruit" />
      </owl:Restriction>
    </owl:intersectionOf>
    <rdfs:subClassOf>
      <owl:Restriction>
        <owl:onProperty rdf:resource="#hasDrink" />
        <owl:allValuesFrom>
          <owl:Restriction>
            <owl:onProperty rdf:resource="&vin;hasFlavor" />
            <owl:hasValue rdf:resource="#Delicate" />
          </owl:Restriction>
        </owl:allValuesFrom>
      </owl:Restriction>
    </rdfs:subClassOf>
    <rdfs:subClassOf>
      <owl:Restriction>
        <owl:onProperty rdf:resource="#hasDrink" />
        <owl:allValuesFrom>
          <owl:Restriction>
            <owl:onProperty rdf:resource="&vin;hasSugar" />
            <owl:hasValue rdf:resource="#OffDry" />
          </owl:Restriction>
        </owl:allValuesFrom>
      </owl:Restriction>
    </rdfs:subClassOf>
  </owl:Class>
  
  <owl:Class rdf:ID="SweetFruitCourse">
    <owl:intersectionOf rdf:parseType="Collection">
      <owl:Class rdf:about="#MealCourse" />
      <owl:Restriction>
        <owl:onProperty rdf:resource="#hasFood" />
        <owl:allValuesFrom rdf:resource="#SweetFruit" />
      </owl:Restriction>
    </owl:intersectionOf>
    <rdfs:subClassOf>
      <owl:Restriction>
        <owl:onProperty rdf:resource="#hasDrink" />
        <owl:allValuesFrom>
          <owl:Restriction>
            <owl:onProperty rdf:resource="&vin;hasFlavor" />
            <owl:hasValue rdf:resource="#Moderate" />
          </owl:Restriction>
        </owl:allValuesFrom>
      </owl:Restriction>
    </rdfs:subClassOf>
    <rdfs:subClassOf>
      <owl:Restriction>
        <owl:onProperty rdf:resource="#hasDrink" />
        <owl:allValuesFrom>
          <owl:Restriction>
            <owl:onProperty rdf:resource="&vin;hasSugar" />
            <owl:hasValue rdf:resource="#Sweet" />
          </owl:Restriction>
        </owl:allValuesFrom>
      </owl:Restriction>
    </rdfs:subClassOf>
  </owl:Class>
  
  <!-- changed so that Fruit can be unionOf 
  <owl:Class rdf:ID="NonSweetFruit">
    <rdfs:subClassOf rdf:resource="#Fruit" />
    <owl:disjointWith rdf:resource="#SweetFruit" />
  </owl:Class>
  -->
  
  <owl:Class rdf:ID="NonSweetFruit">
    <rdfs:subClassOf rdf:resource="#EdibleThing" />
    <owl:disjointWith rdf:resource="#SweetFruit" />
  </owl:Class>
  
  <owl:Class rdf:ID="NonSpicyRedMeatCourse">
    <owl:intersectionOf rdf:parseType="Collection">
      <owl:Class rdf:about="#MealCourse" />
      <owl:Restriction>
        <owl:onProperty rdf:resource="#hasFood" />
        <owl:allValuesFrom rdf:resource="#NonSpicyRedMeat" />
      </owl:Restriction>
    </owl:intersectionOf>
    <rdfs:subClassOf>
      <owl:Restriction>
        <owl:onProperty rdf:resource="#hasDrink" />
        <owl:allValuesFrom>
          <owl:Restriction>
            <owl:onProperty rdf:resource="&vin;hasColor" />
            <owl:hasValue rdf:resource="#Red" />
          </owl:Restriction>
        </owl:allValuesFrom>
      </owl:Restriction>
    </rdfs:subClassOf>
    <rdfs:subClassOf>
      <owl:Restriction>
        <owl:onProperty rdf:resource="#hasDrink" />
        <owl:allValuesFrom>
          <owl:Restriction>
            <owl:onProperty rdf:resource="&vin;hasBody" />
            <owl:hasValue rdf:resource="#Medium" />
          </owl:Restriction>
        </owl:allValuesFrom>
      </owl:Restriction>
    </rdfs:subClassOf>
    <rdfs:subClassOf>
      <owl:Restriction>
        <owl:onProperty rdf:resource="#hasDrink" />
        <owl:allValuesFrom>
          <owl:Restriction>
            <owl:onProperty rdf:resource="&vin;hasSugar" />
            <owl:hasValue rdf:resource="#Dry" />
          </owl:Restriction>
        </owl:allValuesFrom>
      </owl:Restriction>
    </rdfs:subClassOf>
    <rdfs:subClassOf>
      <owl:Restriction>
        <owl:onProperty rdf:resource="#hasDrink" />
        <owl:allValuesFrom>
          <owl:Restriction>
            <owl:onProperty rdf:resource="&vin;hasFlavor" />
            <owl:allValuesFrom>
              <owl:Class>
                <owl:oneOf rdf:parseType="Collection">
                  <owl:Thing rdf:about="#Strong" />
                  <owl:Thing rdf:about="#Moderate" />
                </owl:oneOf>
              </owl:Class>
            </owl:allValuesFrom>
          </owl:Restriction>
        </owl:allValuesFrom>
      </owl:Restriction>
    </rdfs:subClassOf>
  </owl:Class>
  
  <owl:Class rdf:ID="NonSpicyRedMeat">
    <rdfs:subClassOf rdf:resource="#RedMeat" />
    <owl:disjointWith rdf:resource="#SpicyRedMeat" />
  </owl:Class>
  
  <owl:Class rdf:ID="NonRedMeatCourse">
    <owl:intersectionOf rdf:parseType="Collection">
      <owl:Class rdf:about="#MealCourse" />
      <owl:Restriction>
        <owl:onProperty rdf:resource="#hasFood" />
        <owl:allValuesFrom rdf:resource="#NonRedMeat" />
      </owl:Restriction>
    </owl:intersectionOf>
    <rdfs:subClassOf>
      <owl:Restriction>
        <owl:onProperty rdf:resource="#hasDrink" />
        <owl:allValuesFrom>
          <owl:Restriction>
            <owl:onProperty rdf:resource="&vin;hasColor" />
            <owl:hasValue rdf:resource="#White" />
          </owl:Restriction>
        </owl:allValuesFrom>
      </owl:Restriction>
    </rdfs:subClassOf>
    <rdfs:subClassOf>
      <owl:Restriction>
        <owl:onProperty rdf:resource="#hasDrink" />
        <owl:allValuesFrom>
          <owl:Restriction>
            <owl:onProperty rdf:resource="&vin;hasBody" />
            <owl:hasValue rdf:resource="#Medium" />
          </owl:Restriction>
        </owl:allValuesFrom>
      </owl:Restriction>
    </rdfs:subClassOf>
    <rdfs:subClassOf>
      <owl:Restriction>
        <owl:onProperty rdf:resource="#hasDrink" />
        <owl:allValuesFrom>
          <owl:Restriction>
            <owl:onProperty rdf:resource="&vin;hasFlavor" />
            <owl:hasValue rdf:resource="#Strong" />
          </owl:Restriction>
        </owl:allValuesFrom>
      </owl:Restriction>
    </rdfs:subClassOf>
    <rdfs:subClassOf>
      <owl:Restriction>
        <owl:onProperty rdf:resource="#hasDrink" />
        <owl:allValuesFrom>
          <owl:Restriction>
            <owl:onProperty rdf:resource="&vin;hasSugar" />
            <owl:hasValue rdf:resource="#Dry" />
          </owl:Restriction>
        </owl:allValuesFrom>
      </owl:Restriction>
    </rdfs:subClassOf>
  </owl:Class>
  
  <owl:Class rdf:ID="NonRedMeat">
    <rdfs:subClassOf rdf:resource="#Meat" />
    <owl:disjointWith rdf:resource="#RedMeat" />
  </owl:Class>
  
  <owl:Class rdf:ID="NonOysterShellfishCourse">
    <owl:intersectionOf rdf:parseType="Collection">
      <owl:Class rdf:about="#MealCourse" />
      <owl:Restriction>
        <owl:onProperty rdf:resource="#hasFood" />
        <owl:allValuesFrom rdf:resource="#NonOysterShellfish" />
      </owl:Restriction>
    </owl:intersectionOf>
    <rdfs:subClassOf>
      <owl:Restriction>
        <owl:onProperty rdf:resource="#hasDrink" />
        <owl:allValuesFrom>
          <owl:Restriction>
            <owl:onProperty rdf:resource="&vin;hasSugar" />
            <owl:hasValue rdf:resource="#Dry" />
          </owl:Restriction>
        </owl:allValuesFrom>
      </owl:Restriction>
    </rdfs:subClassOf>
  </owl:Class>
  
  <owl:Class rdf:ID="NonOysterShellfish">
    <rdfs:subClassOf rdf:resource="#Shellfish" />
    <owl:disjointWith rdf:resource="#OysterShellfish" />
  </owl:Class>
  
  <owl:Class rdf:ID="NonBlandFishCourse">
    <owl:intersectionOf rdf:parseType="Collection">
      <owl:Class rdf:about="#MealCourse" />
      <owl:Restriction>
        <owl:onProperty rdf:resource="#hasFood" />
        <owl:allValuesFrom rdf:resource="#NonBlandFish" />
      </owl:Restriction>
    </owl:intersectionOf>
    <rdfs:subClassOf>
      <owl:Restriction>
        <owl:onProperty rdf:resource="#hasDrink" />
        <owl:allValuesFrom>
          <owl:Restriction>
            <owl:onProperty rdf:resource="&vin;hasFlavor" />
            <owl:hasValue rdf:resource="#Moderate" />
          </owl:Restriction>
        </owl:allValuesFrom>
      </owl:Restriction>
    </rdfs:subClassOf>
  </owl:Class>
  
  <owl:Class rdf:ID="NonBlandFish">
    <rdfs:subClassOf rdf:resource="#Fish" />
  </owl:Class>
  
  <owl:Class rdf:ID="Meat">
    <rdfs:subClassOf rdf:resource="#EdibleThing" />
    <owl:disjointWith rdf:resource="#Fowl" />
    <owl:disjointWith rdf:resource="#Seafood" />
    <owl:disjointWith rdf:resource="#Dessert" />
    <owl:disjointWith rdf:resource="#Fruit" />
  </owl:Class>
  
  <owl:Class rdf:ID="MealCourse">
    <rdfs:subClassOf rdf:resource="#ConsumableThing" />
    <rdfs:subClassOf>
      <owl:Restriction>
        <owl:onProperty rdf:resource="#hasFood" />
        <owl:minCardinality rdf:datatype="&xsd;nonNegativeInteger">1</owl:minCardinality>
      </owl:Restriction>
    </rdfs:subClassOf>
    <rdfs:subClassOf>
      <owl:Restriction>
        <owl:onProperty rdf:resource="#hasDrink" />
        <owl:minCardinality rdf:datatype="&xsd;nonNegativeInteger">1</owl:minCardinality>
      </owl:Restriction>
    </rdfs:subClassOf>
    <rdfs:subClassOf>
      <owl:Restriction>
        <owl:onProperty rdf:resource="#hasDrink" />
        <owl:allValuesFrom rdf:resource="#Wine" />
      </owl:Restriction>
    </rdfs:subClassOf>
    <owl:disjointWith rdf:resource="#PotableLiquid" />
    <owl:disjointWith rdf:resource="#EdibleThing" />
  </owl:Class>
  
  <owl:Class rdf:ID="Meal">
    <rdfs:subClassOf rdf:resource="#ConsumableThing" />
    <rdfs:subClassOf>
      <owl:Restriction>
        <owl:onProperty rdf:resource="#course" />
        <owl:minCardinality rdf:datatype="&xsd;nonNegativeInteger">1</owl:minCardinality>
      </owl:Restriction>
    </rdfs:subClassOf>
    <rdfs:subClassOf>
      <owl:Restriction>
        <owl:onProperty rdf:resource="#course" />
        <owl:allValuesFrom rdf:resource="#MealCourse" />
      </owl:Restriction>
    </rdfs:subClassOf>
    <owl:disjointWith rdf:resource="#MealCourse" />
    <owl:disjointWith rdf:resource="#PotableLiquid" />
    <owl:disjointWith rdf:resource="#EdibleThing" />
  </owl:Class>
  
  <owl:Class rdf:ID="LightMeatFowlCourse">
    <owl:intersectionOf rdf:parseType="Collection">
      <owl:Class rdf:about="#MealCourse" />
      <owl:Restriction>
        <owl:onProperty rdf:resource="#hasFood" />
        <owl:allValuesFrom rdf:resource="#LightMeatFowl" />
      </owl:Restriction>
    </owl:intersectionOf>
    <rdfs:subClassOf>
      <owl:Restriction>
        <owl:onProperty rdf:resource="#hasDrink" />
        <owl:allValuesFrom>
          <owl:Restriction>
            <owl:onProperty rdf:resource="&vin;hasColor" />
            <owl:hasValue rdf:resource="#White" />
          </owl:Restriction>
        </owl:allValuesFrom>
      </owl:Restriction>
    </rdfs:subClassOf>
    <rdfs:subClassOf>
      <owl:Restriction>
        <owl:onProperty rdf:resource="#hasDrink" />
        <owl:allValuesFrom>
          <owl:Restriction>
            <owl:onProperty rdf:resource="&vin;hasBody" />
            <owl:hasValue rdf:resource="#Medium" />
          </owl:Restriction>
        </owl:allValuesFrom>
      </owl:Restriction>
    </rdfs:subClassOf>
    <rdfs:subClassOf>
      <owl:Restriction>
        <owl:onProperty rdf:resource="#hasDrink" />
        <owl:allValuesFrom>
          <owl:Restriction>
            <owl:onProperty rdf:resource="&vin;hasFlavor" />
            <owl:hasValue rdf:resource="#Moderate" />
          </owl:Restriction>
        </owl:allValuesFrom>
      </owl:Restriction>
    </rdfs:subClassOf>
    <rdfs:subClassOf>
      <owl:Restriction>
        <owl:onProperty rdf:resource="#hasDrink" />
        <owl:allValuesFrom>
          <owl:Restriction>
            <owl:onProperty rdf:resource="&vin;hasSugar" />
            <owl:hasValue rdf:resource="#Dry" />
          </owl:Restriction>
        </owl:allValuesFrom>
      </owl:Restriction>
    </rdfs:subClassOf>
  </owl:Class>
  
  <owl:Class rdf:ID="LightMeatFowl">
    <rdfs:subClassOf rdf:resource="#Fowl" />
  </owl:Class>
  
  <owl:Class rdf:ID="FruitCourse">
    <owl:intersectionOf rdf:parseType="Collection">
      <owl:Class rdf:about="#MealCourse" />
      <owl:Restriction>
        <owl:onProperty rdf:resource="#hasFood" />
        <owl:allValuesFrom rdf:resource="#Fruit" />
      </owl:Restriction>
    </owl:intersectionOf>
    <rdfs:subClassOf>
      <owl:Restriction>
        <owl:onProperty rdf:resource="#hasDrink" />
        <owl:allValuesFrom>
          <owl:Restriction>
            <owl:onProperty rdf:resource="&vin;hasColor" />
            <owl:hasValue rdf:resource="#White" />
          </owl:Restriction>
        </owl:allValuesFrom>
      </owl:Restriction>
    </rdfs:subClassOf>
    <rdfs:subClassOf>
      <owl:Restriction>
        <owl:onProperty rdf:resource="#hasDrink" />
        <owl:allValuesFrom>
          <owl:Restriction>
            <owl:onProperty rdf:resource="&vin;hasBody" />
            <owl:hasValue rdf:resource="#Medium" />
          </owl:Restriction>
        </owl:allValuesFrom>
      </owl:Restriction>
    </rdfs:subClassOf>
  </owl:Class>
  
  <!--- Replaced so that we have a unionOf construct
        Aug 20 02 MKS, suggestion by R. Volz.  

  <owl:Class rdf:ID="Fruit">
    <rdfs:subClassOf rdf:resource="#EdibleThing" />
  </owl:Class>

  --> 
  
  <owl:Class rdf:ID="Fruit">
    <owl:unionOf rdf:parseType="Collection">
      <owl:Class rdf:about="#SweetFruit" />
      <owl:Class rdf:about="#NonSweetFruit" />
    </owl:unionOf>
  </owl:Class>
  
  <owl:Class rdf:ID="Fowl">
    <rdfs:subClassOf rdf:resource="#EdibleThing" />
    <owl:disjointWith rdf:resource="#Seafood" />
    <owl:disjointWith rdf:resource="#Dessert" />
    <owl:disjointWith rdf:resource="#Fruit" />
  </owl:Class>
  
  <owl:Class rdf:ID="FishCourse">
    <owl:intersectionOf rdf:parseType="Collection">
      <owl:Class rdf:about="#MealCourse" />
      <owl:Restriction>
        <owl:onProperty rdf:resource="#hasFood" />
        <owl:allValuesFrom rdf:resource="#Fish" />
      </owl:Restriction>
    </owl:intersectionOf>
    <rdfs:subClassOf>
      <owl:Restriction>
        <owl:onProperty rdf:resource="#hasDrink" />
        <owl:allValuesFrom>
          <owl:Restriction>
            <owl:onProperty rdf:resource="&vin;hasBody" />
            <owl:hasValue rdf:resource="#Medium" />
          </owl:Restriction>
        </owl:allValuesFrom>
      </owl:Restriction>
    </rdfs:subClassOf>
    <rdfs:subClassOf>
      <owl:Restriction>
        <owl:onProperty rdf:resource="#hasDrink" />
        <owl:allValuesFrom>
          <owl:Restriction>
            <owl:onProperty rdf:resource="&vin;hasSugar" />
            <owl:hasValue rdf:resource="#Dry" />
          </owl:Restriction>
        </owl:allValuesFrom>
      </owl:Restriction>
    </rdfs:subClassOf>
  </owl:Class>
  
  <owl:Class rdf:ID="DessertCourse">
    <owl:intersectionOf rdf:parseType="Collection">
      <owl:Class rdf:about="#MealCourse" />
      <owl:Restriction>
        <owl:onProperty rdf:resource="#hasFood" />
        <owl:allValuesFrom rdf:resource="#Dessert" />
      </owl:Restriction>
    </owl:intersectionOf>
    <rdfs:subClassOf>
      <owl:Restriction>
        <owl:onProperty rdf:resource="#hasDrink" />
        <owl:allValuesFrom>
          <owl:Restriction>
            <owl:onProperty rdf:resource="&vin;hasBody" />
            <owl:hasValue rdf:resource="#Full" />
          </owl:Restriction>
        </owl:allValuesFrom>
      </owl:Restriction>
    </rdfs:subClassOf>
    <rdfs:subClassOf>
      <owl:Restriction>
        <owl:onProperty rdf:resource="#hasDrink" />
        <owl:allValuesFrom>
          <owl:Restriction>
            <owl:onProperty rdf:resource="&vin;hasFlavor" />
            <owl:hasValue rdf:resource="#Strong" />
          </owl:Restriction>
        </owl:allValuesFrom>
      </owl:Restriction>
    </rdfs:subClassOf>
    <rdfs:subClassOf>
      <owl:Restriction>
        <owl:onProperty rdf:resource="#hasDrink" />
        <owl:allValuesFrom>
          <owl:Restriction>
            <owl:onProperty rdf:resource="&vin;hasSugar" />
            <owl:hasValue rdf:resource="#Sweet" />
          </owl:Restriction>
        </owl:allValuesFrom>
      </owl:Restriction>
    </rdfs:subClassOf>
  </owl:Class>
  
  <owl:Class rdf:ID="Dessert">
    <rdfs:subClassOf rdf:resource="#EdibleThing" />
    <owl:disjointWith rdf:resou