Re: TEST: Functional and InverseFunctional tests for approval

From: "Jeremy Carroll" <jjc@hplb.hpl.hp.com>
Subject: Re: TEST: Functional and InverseFunctional tests for approval
Date: Tue, 27 Aug 2002 14:05:00 +0200

> 
> 
> Peter asks for these to be reformatted.
> This is done by hand for now, so is in some sense inadequate ...
> 
> FunctionalProperty 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.

This description mixes syntax and semantics, and thus need to be rewritten.

This test is actually a test of two things:
1/ Functional properties are partial functional.
2/ If two different URIrefs denote the same object, then statements that
   have the first as a subject can also be written using the other.
I think that such composite tests should be included only if there is some
doubt as to whether systems will actually implement them.

RATIONALE

  This is one of the basic tests of the entailments related to the various
  different kinds of OWL properties.  (Actually it isn't, see above, but if
  it was, this would be a good rationale.)

As such, this test should only be approved as an element of a larger
collection of tests that systematically explore the entailments related to
the various different kinds of OWL properties.

> PREMISE
> 
> <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>

I suggest that the only RDF/XML that is used in tests is the simple striped
syntax.  I would actually prefer that RDF/XML not be used at all in the
documents used to define tests, on the grounds that RDF/XML is too
difficult to read.

> CONCLUSION
> 
> <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"/>

I don't think that this object2 is the same as the one in the premise.

> </rdf:RDF>

This does not test the first part of the description.

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

Again, mixes syntax and semantics, and thus needs to be rewritten.

> PREMISE
> 
> <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>
> 
> CONCLUSION
> 
> <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>


> InverseFunctionalProperty test002
>
> DESCRIPTION
> 
>  If prop is an owl:InverseFunctionalProperty,
>  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.

See the comments on the first test, above.

> PREMISE
> 
> <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/premises
> 002#"
> 
> xml:base="http://www.w3.org/2002/03owlt/InverseFunctionalProperty/premises00
> 2" >
>     <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>
> 
> CONCLUSION
> 
> <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/conclusion
> s002" >
>     <rdf:Description rdf:about="premises002#subject2" eg:prop2="value"/>
> </rdf:RDF>

I vote against including any of these test in their current form.  I vote
against including the first and third tests, even if they are fixed up,
unless the condition on the first test is satisified.

peter

Received on Tuesday, 27 August 2002 09:29:25 UTC