This document is the work of the author intended for discussion within the Web Ontology working group.
[[Many links and references need to be added.]]
[[get request params and use them to modify the status and content of doc.]]
One of the deliverables in the charter of the Web Ontology Working Group is a set of test cases. This document contains those test cases, and also specifies alternative formats. This document also describes the various types of test used; and the process for creation, approval and errata in these tests.
As an appendix, this document includes further proposed tests that are awaiting consideration by the working group.
The test cases do not constitute a conformance test suite for OWL.
The test illustrate issue resolutions, and illustrate the use and meaning of the terms in the OWL namespace.
There are [[could be]] other miscellaneous tests motivated individually.
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.
[[Do we want index files for the web site that clarify which parts are part of the deliverable and which are not?]]
Of the deliverables the only normative tests are those included in the recommendation track document. All other deliverables, are informative. Moreover, the recommendation document is informative except for the test data (specified in RDF/XML [RDF/XML]).
When the normative tests and the other normative OWL recommendations diverge the following process should be followed.
If the OWL working drafts are at or before last call then:
If the OWL recommendation has passed last call then:
Each test consists of either one or two RDF/XML documents. Tests of one document indicate some property of that document when viewed as an OWL knowledge base. Tests of two documents indicate a relationship between the two documents when viewed as OWL knowledge bases.
These tests use one document.
It is named badNNN.rdf
. (The NNN
is replaced by the test number).
This document includes a use of the OWL namespace with a local name
that is not defined by the OWL recommendation.
Note: These tests are intended to help migration from DAML [DAML], since the local names chosen typically are defined in the DAML namespace.
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 Formal Semantics [OWL-SEMANTICS].
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 Formal Semantics [OWL-SEMANTICS].
These tests use one document.
It is named consistentNNN.rdf
.
The document is consistent as defined
by the OWL Formal Semantics [OWL-SEMANTICS].
These tests use one document.
It is named inconsistentNNN.rdf
.
The document is inconsistent as defined
by the OWL Formal Semantics [OWL-SEMANTICS].
During development, tests that are not of one of the above types, are classified as miscellaneous while awaiting a new test type to be defined.
[[To be done.]]
Tests are created by members of the working group and placed in the appropriate directory in the test web site. This is done using CVS access to the W3C CVS server. @@@links
When created, tests are given a status of "PROPOSED"
.
The author of the test modifies the Manifest file in the directory
of the new test, identifying:
"PROPOSED"
.
At the chair's discretion, individual tests or groups of tests are put to the working group in the weekly telecon or at a face-to-face meeting.
The chair action three members of the working group to review the tests a week before putting the test to the group.
If the Working Group approves a test, then it is included in the test case document.
The Working Group may reject a test, in which case its status is
changed to "REJECTED"
. This does not indicate that the
converse of the test has been accepted. There may be stylistic
or other grounds for rejecting technically correct tests.
The Working Group has complete discretion to approve or refect tests independent of their conformance with this process or their conformance with the OWL working drafts.
In the light of new information, and at the chairs' discretion, the working group
may review any previous decision regarding any test cases. The status of
"OBSOLETED"
may be used where a test has ceased to be appropriate.
Until the test case document reaches last call, the editor(s) of that document may sanction editorial changes to approved tests. This includes:
There is a preference for the following stylistic rules. None of these rules is obligatory, but test authors should be minded that it will be easier to gain working gain group consensus if they follow these rules.
Tests should normally be expressed in RDF/XML.
There are differences of opinion as to whether only a restricted subset of RDF/XML should be used.
Test and manifest files should use the ".rdf"
suffix. URIs should not.
example
Domains
All URLs in the test and manifest files should be retrievable web resources
except for those that use domain names with "example"
as the penultimate
component (e.g. http://www.example.org/ontology#prop"
).
The following copyright statement should be included as the first XML comment in every test file:
<!-- Copyright World Wide Web Consortium, (Massachusetts Institute of Technology, Institut National de Recherche en Informatique et en Automatique, Keio University). All Rights Reserved. Please see the full Copyright clause at <http://www.w3.org/Consortium/Legal/copyright-software.html> $Id: This string is updated by cvs. $ -->
The description should:
The description should be included as the second XML comment in each test file, and be included in the Manifest file.
Tests that relate principally to some owl property or class, should be put in a directory named using the local name of that property of class.
Otherwise, tests that relate to an issue should be put in a directory
named like I3.4
where the issue number is taken from the OWL issue list
[ISSUES].
Each directory should contain tests numbered consecutively from 001
.
No two tests in a single directory should have the same number.
Each file in a test should have the number of the test at the end of its name, before the suffix.
The rest of the file name should follow the conventions for the test type.
Note: the approved tests in a directory will not necessarily be contiguously numbered.
Note: this differs from the RDF Core test case numbering conventions.
[[[The current layout of the tables is not satisfactory.]]
owl:FunctionalProperty
Positive Entailment Test: | test001 |
---|---|
Description: (informative) | |
If prop is an owl:FunctionalProperty, and a resource has prop arcs pointing to two different URIrefs, then those two URIrefs denote the same resource. | |
Premises: | |
<rdf:RDF xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:owl ="http://www.w3.org/2002/07/owl#" xmlns:this="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"> <this:prop rdf:resource="#object1" /> <this:prop rdf:resource="#object2" /> </rdf:Description> </rdf:RDF> | |
Conclusions: | |
<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:sameIndividualAs rdf:resource="premises001#object2" /> </rdf:Description> </rdf:RDF> |
Positive Entailment Test: | test002 |
---|---|
Description: (informative) | |
If prop is an owl:FunctionalProperty, and a resource has prop arcs pointing to two different URIrefs, then those two URIrefs denote the same resource, and hence each have the same properties. | |
Premises: | |
<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:this="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"> <this:prop rdf:resource="#object1" eg:prop2="value" /> <this:prop rdf:resource="#object2" /> </rdf:Description> </rdf:RDF> | |
Conclusions: | |
<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/test002" > <rdf:Description rdf:about="premises002#object2" eg:prop2="value"/> </rdf:RDF> |
owl:InverseFunctionalProperty
Positive Entailment Test: | test001 |
---|---|
Description: (informative) | |
If prop is an owl:InverseFunctionalProperty, and a resource has prop arcs pointing from two different URIrefs, then those two URIrefs denote the same resource. | |
Premises: | |
<rdf:RDF xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:owl ="http://www.w3.org/2002/07/owl#" xmlns:this="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"> <this:prop rdf:resource="#object" /> </rdf:Description> <rdf:Description rdf:ID="subject2"> <this:prop rdf:resource="#object" /> </rdf:Description> </rdf:RDF> | |
Conclusions: | |
<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:sameIndividualAs rdf:resource="premises001#subject2" /> </rdf:Description> </rdf:RDF> |
Positive Entailment Test: | test002 |
---|---|
Description: (informative) | |
If prop is an owl:InverseFunctionalProperty, and a resource has prop arcs pointing from two different URIrefs, then those two URIrefs denote the same resource, and hence each have the same properties. | |
Premises: | |
<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:this="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" eg:prop2="value" > <this:prop rdf:resource="#object" /> </rdf:Description> <rdf:Description rdf:ID="subject2" > <this:prop rdf:resource="#object" /> </rdf:Description> </rdf:RDF> | |
Conclusions: | |
<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"/> </rdf:RDF> |
Illegal use of OWL namespace. | test001 |
---|---|
Description: (informative) | |
A DAML+OIL qualified cardinality constraint is not legal OWL. | |
Incorrect: | |
<?xml version="1.0"?> <!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;" > <owl:Restriction owl:cardinalityQ="1"> <owl:onProperty rdf:resource="#exampleProp"/> <owl:hasClassQ rdf:resource="#exampleClass"/> </owl:Restriction> </rdf:RDF> |
Illegal use of OWL namespace. | test002 |
---|---|
Description: (informative) | |
A DAML+OIL qualified max cardinality constraint is not legal OWL. | |
Incorrect: | |
<?xml version="1.0"?> <!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;" > <owl:Restriction owl:maxCardinalityQ="1"> <owl:onProperty rdf:resource="#exampleProp"/> <owl:hasClassQ rdf:resource="#exampleClass"/> </owl:Restriction> </rdf:RDF> |
Illegal use of OWL namespace. | test003 |
---|---|
Description: (informative) | |
A DAML+OIL qualified min cardinality constraint is not legal OWL. | |
Incorrect: | |
<?xml version="1.0"?> <!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;" > <owl:Restriction owl:minCardinalityQ="1"> <owl:onProperty rdf:resource="#exampleProp"/> <owl:hasClassQ rdf:resource="#exampleClass"/> </owl:Restriction> </rdf:RDF> |
This section repeats the tests of the previous section.
This time the test data is shown in simple triples, using N-triple syntax [RDF-TESTS] with qnames. qnames are used in place of URIs in the syntax with no delimiters.
[[[The current layout of the tables is not satisfactory.]]
The following namespace prefixes are used throughout:
rdf
http://www.w3.org/1999/02/22-rdf-syntax-ns#
owl
http://www.w3.org/2002/07/owl#
first
#
second
#
Other namespaces are explicitly listed with the test data.
owl:FunctionalProperty
Positive Entailment Test: | test001 |
---|---|
Description: | |
If prop is an owl:FunctionalProperty, and a resource has prop arcs pointing to two different URIrefs, then those two URIrefs denote the same resource. | |
Namespaces: | |
@prefix this: <http://www.w3.org/2002/03owlt/FunctionalProperty/premises001#> . | |
Premises: | |
this:prop rdf:type owl:FunctionalProperty . this:subject this:prop this:object1 . this:subject this:prop this:object2 . | |
Conclusions: | |
this:object1 owl:sameIndividualAs this:object2 . | |
Errors: | |
Uri <http://www.w3.org/2002/03owlt/FunctionalProperty/premises001#> is shown using both first: and this:.
|
Positive Entailment Test: | test002 |
---|---|
Description: | |
If prop is an owl:FunctionalProperty, and a resource has prop arcs pointing to two different URIrefs, then those two URIrefs denote the same resource, and hence each have the same properties. | |
Namespaces: | |
@prefix this: <http://www.w3.org/2002/03owlt/FunctionalProperty/premises002#> . @prefix eg: <http://www.example.org/> . | |
Premises: | |
this:prop rdf:type owl:FunctionalProperty . this:object1 eg:prop2 "value" . this:subject this:prop this:object1 . this:subject this:prop this:object2 . | |
Conclusions: | |
this:object2 eg:prop2 "value" . | |
Errors: | |
Uri <http://www.w3.org/2002/03owlt/FunctionalProperty/premises002#> is shown using both first: and this:.
|
owl:InverseFunctionalProperty
Positive Entailment Test: | test001 |
---|---|
Description: | |
If prop is an owl:InverseFunctionalProperty, and a resource has prop arcs pointing from two different URIrefs, then those two URIrefs denote the same resource. | |
Namespaces: | |
@prefix this: <http://www.w3.org/2002/03owlt/InverseFunctionalProperty/premises001#> . | |
Premises: | |
this:prop rdf:type owl:InverseFunctionalProperty . this:subject1 this:prop this:object . this:subject2 this:prop this:object . | |
Conclusions: | |
this:subject1 owl:sameIndividualAs this:subject2 . | |
Errors: | |
Uri <http://www.w3.org/2002/03owlt/InverseFunctionalProperty/premises001#> is shown using both first: and this:.
|
Positive Entailment Test: | test002 |
---|---|
Description: | |
If prop is an owl:InverseFunctionalProperty, and a resource has prop arcs pointing from two different URIrefs, then those two URIrefs denote the same resource, and hence each have the same properties. | |
Namespaces: | |
@prefix this: <http://www.w3.org/2002/03owlt/InverseFunctionalProperty/premises002#> . @prefix eg: <http://www.example.org/> . | |
Premises: | |
this:prop rdf:type owl:InverseFunctionalProperty . this:subject1 eg:prop2 "value" . this:subject1 this:prop this:object . this:subject2 this:prop this:object . | |
Conclusions: | |
this:subject2 eg:prop2 "value" . | |
Errors: | |
Uri <http://www.w3.org/2002/03owlt/InverseFunctionalProperty/premises002#> is shown using both first: and this:.
Incorrect description in conclusions002. |
Illegal use of OWL namespace. | test001 |
---|---|
Description: | |
A DAML+OIL qualified cardinality constraint is not legal OWL. | |
Namespaces: | |
@prefix eg: <http://example.org/> . | |
Incorrect: | |
_:jARP706 rdf:type owl:Restriction . _:jARP706 owl:cardinalityQ "1" . _:jARP706 owl:onProperty first:exampleProp . _:jARP706 owl:hasClassQ first:exampleClass . | |
Errors: | |
Uri <http://www.w3.org/2002/03owlt/qualified-cardinality-constraints/error001.owl> has a suffix; can it be removed?
No description found. Incorrect copyright statement in error001.owl. |
Illegal use of OWL namespace. | test002 |
---|---|
Description: | |
A DAML+OIL qualified max cardinality constraint is not legal OWL. | |
Incorrect: | |
_:jARP709 rdf:type owl:Restriction . _:jARP709 owl:maxCardinalityQ "1" . _:jARP709 owl:onProperty first:exampleProp . _:jARP709 owl:hasClassQ first:exampleClass . | |
Errors: | |
Uri <http://www.w3.org/2002/03owlt/qualified-cardinality-constraints/error002.owl> has a suffix; can it be removed?
Incorrect copyright statement in error002.owl. No description found. |
Illegal use of OWL namespace. | test003 |
---|---|
Description: | |
A DAML+OIL qualified min cardinality constraint is not legal OWL. | |
Namespaces: | |
@prefix eg: <http://example.org/> . | |
Incorrect: | |
_:jARP712 rdf:type owl:Restriction . _:jARP712 owl:minCardinalityQ "1" . _:jARP712 owl:onProperty first:exampleProp . _:jARP712 owl:hasClassQ first:exampleClass . | |
Errors: | |
Uri <http://www.w3.org/2002/03owlt/qualified-cardinality-constraints/error003.owl> has a suffix; can it be removed?
No description found. Incorrect copyright statement in error003.owl. |
[[[The current layout of the tables is not satisfactory.]]
owl:FunctionalProperty
Negative Entailment Test: | test003 |
---|---|
Description: | |
If prop is an owl:FunctionalProperty, then its inverse, while being constrained to be consistent with being an owl:InverseFunctionalProperty should not be deduced as being one. | |
Premises: | |
<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> | |
Conclusions: | |
<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> |
Negative Entailment Test: | test004 |
---|---|
Description: | |
If the range of prop is a singleton set then while it is necessarily functional, (i.e. every member of its domain has a single value) it is not necessarily an owl:FunctionalProperty. | |
Premises: | |
<rdf:RDF xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:owl ="http://www.w3.org/2002/07/owl#" xmlns:this="http://www.w3.org/2002/03owlt/FunctionalProperty/premises004#" 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> | |
Conclusions: | |
<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/nonconclusions004" > <owl:FunctionalProperty rdf:about="premises004#prop"/> </rdf:RDF> |
Positive Entailment Test: | test005 |
---|---|
Description: | |
If prop belongs to owl:FunctionalProperty then an OWL object has at most one value for prop. | |
Premises: | |
<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/"> <owl:FunctionalProperty rdf:about="http://www.example.org/foo#prop" /> <owl:Thing rdf:about="http://www.example.org/foo#object" /> </rdf:RDF> | |
Conclusions: | |
<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/"> <owl:Thing rdf:about="http://www.example.org/foo#object"> <rdf:type> <owl:Restriction> <owl:onProperty> <owl:FunctionalProperty rdf:about="http://www.example.org/foo#prop" /> </owl:onProperty> <owl:maxCardinality>1</owl:maxCardinality> </owl:Restriction> </rdf:type> </owl:Thing> </rdf:RDF> |
owl:InverseFunctionalProperty
Negative Entailment Test: | test003 |
---|---|
Description: | |
If prop is an owl:InverseFunctionalProperty, then its inverse, while being constrained to be consistent with being an owl:FunctionalProperty should not be deduced as being one. | |
Premises: | |
<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> | |
Conclusions: | |
<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> |
Negative Entailment Test: | test004 |
---|---|
Description: | |
If the domain of prop is a singleton set then while it is necessarily inverse functional, (i.e. every member of its range is the value of a single item) it is not necessarily an owl:InverseFunctionalProperty. | |
Premises: | |
<rdf:RDF xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:owl ="http://www.w3.org/2002/07/owl#" xmlns:this="http://www.w3.org/2002/03owlt/InverseFunctionalProperty/premises004#" 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> | |
Conclusions: | |
<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/nonconclusions004" > <owl:InverseFunctionalProperty rdf:about="premises004#prop"/> </rdf:RDF> |
Illegal use of OWL namespace. | bad001 |
---|---|
Description: | |
This is not legal OWL. The name UnambiguousProperty is not in the OWL namespace. daml:UnambiguousProperty corresponds to owl:InverseFunctionalProperty. | |
Incorrect: | |
<rdf:RDF xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:owl ="http://www.w3.org/2002/07/owl#" > <owl:UnambiguousProperty rdf:ID="Name"/> </rdf:RDF> |
Illegal use of OWL namespace. | bad001 |
---|---|
Description: | |
This is not legal OWL. The name UniqueProperty is not in the OWL namespace. daml:UniqueProperty corresponds to owl:FunctionalProperty. | |
Incorrect: | |
<rdf:RDF xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:owl ="http://www.w3.org/2002/07/owl#" > <owl:UniqueProperty rdf:ID="Name"/> </rdf:RDF> |
This section repeats the tests of the previous section.
[[[The current layout of the tables is not satisfactory.]]
The following namespace prefixes are used throughout:
rdf
http://www.w3.org/1999/02/22-rdf-syntax-ns#
owl
http://www.w3.org/2002/07/owl#
first
#
second
#
Other namespaces are explicitly listed with the test data.
owl:FunctionalProperty
Negative Entailment Test: | test003 |
---|---|
Description: | |
If prop is an owl:FunctionalProperty, then its inverse, while being constrained to be consistent with being an owl:InverseFunctionalProperty should not be deduced as being one. | |
Premises: | |
first:prop rdf:type owl:FunctionalProperty . first:prop owl:inverseOf first:inv . | |
Conclusions: | |
first:inv rdf:type owl:InverseFunctionalProperty . | |
Errors: | |
Incorrect description in premises003.
Incorrect description in conclusions003. |
Negative Entailment Test: | test004 |
---|---|
Description: | |
If the range of prop is a singleton set then while it is necessarily functional, (i.e. every member of its domain has a single value) it is not necessarily an owl:FunctionalProperty. | |
Namespaces: | |
@prefix this: <http://www.w3.org/2002/03owlt/FunctionalProperty/premises004#> . | |
Premises: | |
this:prop rdf:type owl:ObjectProperty . this:prop <range> this:Singleton . this:Singleton rdf:type <Class> . _:jARP769 rdf:first _:jARP770 . _:jARP769 rdf:rest rdf:nil . _:jARP769 rdf:type rdf:List . this:Singleton owl:oneOf _:jARP769 . | |
Conclusions: | |
this:prop rdf:type owl:FunctionalProperty . | |
Errors: | |
http://www.w3.org/2002/03owlt/FunctionalProperty/premises004[23:46]: {W104} Element node must be qualified.
http://www.w3.org/2002/03owlt/FunctionalProperty/premises004[25:36]: {W104} Element node must be qualified. http://www.w3.org/2002/03owlt/FunctionalProperty/premises004[23:46]: The namespace prefix "rdfs" was not declared. http://www.w3.org/2002/03owlt/FunctionalProperty/premises004[25:36]: The namespace prefix "rdfs" was not declared. Uri <http://www.w3.org/2002/03owlt/FunctionalProperty/premises004#> is shown using both first: and this:. |
Positive Entailment Test: | test005 |
---|---|
Description: | |
If prop belongs to owl:FunctionalProperty then an OWL object has at most one value for prop. | |
Namespaces: | |
@prefix eg: <http://www.example.org/> . | |
Premises: | |
eg:foo#prop rdf:type owl:FunctionalProperty . eg:foo#object rdf:type owl:Thing . | |
Conclusions: | |
eg:foo#object rdf:type owl:Thing . _:jARP775 rdf:type owl:Restriction . eg:foo#prop rdf:type owl:FunctionalProperty . _:jARP775 owl:onProperty eg:foo#prop . _:jARP775 owl:maxCardinality "1" . eg:foo#object rdf:type _:jARP775 . | |
Errors: | |
Third and subsequent comments ignored in conclusions005.
Third and subsequent comments ignored in premises005. |
owl:InverseFunctionalProperty
Negative Entailment Test: | test003 |
---|---|
Description: | |
If prop is an owl:InverseFunctionalProperty, then its inverse, while being constrained to be consistent with being an owl:FunctionalProperty should not be deduced as being one. | |
Premises: | |
first:prop rdf:type owl:InverseFunctionalProperty . first:prop owl:inverseOf first:inv . | |
Conclusions: | |
first:inv rdf:type owl:FunctionalProperty . | |
Errors: | |
Incorrect description in conclusions003.
Incorrect description in premises003. |
Negative Entailment Test: | test004 |
---|---|
Description: | |
If the domain of prop is a singleton set then while it is necessarily inverse functional, (i.e. every member of its range is the value of a single item) it is not necessarily an owl:InverseFunctionalProperty. | |
Namespaces: | |
@prefix this: <http://www.w3.org/2002/03owlt/InverseFunctionalProperty/premises004#> . | |
Premises: | |
this:prop rdf:type owl:ObjectProperty . this:prop <domain> this:Singleton . this:Singleton rdf:type <Class> . _:jARP783 rdf:first _:jARP784 . _:jARP783 rdf:rest rdf:nil . _:jARP783 rdf:type rdf:List . this:Singleton owl:oneOf _:jARP783 . | |
Conclusions: | |
this:prop rdf:type owl:InverseFunctionalProperty . | |
Errors: | |
http://www.w3.org/2002/03owlt/InverseFunctionalProperty/premises004[24:47]: {W104} Element node must be qualified.
http://www.w3.org/2002/03owlt/InverseFunctionalProperty/premises004[26:36]: {W104} Element node must be qualified. http://www.w3.org/2002/03owlt/InverseFunctionalProperty/premises004[26:36]: The namespace prefix "rdfs" was not declared. http://www.w3.org/2002/03owlt/InverseFunctionalProperty/premises004[24:47]: The namespace prefix "rdfs" was not declared. Uri <http://www.w3.org/2002/03owlt/InverseFunctionalProperty/premises004#> is shown using both first: and this:. |
Illegal use of OWL namespace. | bad001 |
---|---|
Description: | |
This is not legal OWL. The name UnambiguousProperty is not in the OWL namespace. daml:UnambiguousProperty corresponds to owl:InverseFunctionalProperty. | |
Incorrect: | |
first:Name rdf:type owl:UnambiguousProperty . |
Illegal use of OWL namespace. | bad001 |
---|---|
Description: | |
This is not legal OWL. The name UniqueProperty is not in the OWL namespace. daml:UniqueProperty corresponds to owl:FunctionalProperty. | |
Incorrect: | |
first:Name rdf:type owl:UniqueProperty . |
Some of these issues will be ignored.
Server returned HTTP response code: 403 for URL: http://www.w3.org/2002/03owlt/inverseOf/
Can suffix be removed from URI: 2002-04-25.txt
Server returned HTTP response code: 403 for URL: http://www.w3.org/2002/03owlt/editors-draft/
Jtidy reported 1 warnings in I4.1/.
Can suffix be removed from URI: 0047.html
Can suffix be removed from URI: 0339.html
Can suffix be removed from URI: 0014.html
Server returned HTTP response code: 403 for URL: http://www.w3.org/2002/03owlt/I3.2/
Server returned HTTP response code: 403 for URL: http://www.w3.org/2002/03owlt/I3.4/
Can suffix be removed from URI: webont-issues.html#I4.1-UniqueProp-BadName
Jtidy reported 1 warnings in umlp/.
Jtidy reported 1 warnings in qualified-cardinality-constraints/.
Can suffix be removed from URI: error003.owl
Jtidy reported 7 errors in webont-issues.
Jtidy reported 231 warnings in webont-issues.
Can suffix be removed from URI: error002.owl
Jtidy reported 1 warnings in 03owlt.
Can suffix be removed from URI: webont-issues.html#I3.4-UnambiguousProperty
Can suffix be removed from URI: 0021.html
Server returned HTTP response code: 403 for URL: http://www.w3.org/2002/03owlt/inverseOf/Manifest.rdf
Jtidy reported 1 warnings in FunctionalProperty/.
Can suffix be removed from URI: error001.owl
Server returned HTTP response code: 403 for URL: http://www.w3.org/2002/03owlt/InverseFunctionalProperty/
Check descriptions of approved tests with respect to clarity of distinction between syntax and semantics.
Check descriptions for appropriate links to other OWL specs.
Add automatic checking of filenames. (4)
Add automatic checking of URIs: (5)
Smart update, based on what's changed at w3.org. (3)
Page to choose which bits you want. (2)
Submission page to create/edit test cases. (1)
Validate HTML.
Header boilerplate.
References.
Change some bits to Appendixes.