an owl use/test case: sameGuy thru UnambigousProperty

Here's an example of how I'd like
to see TEST/SEM/LANG/GUIDE
stuff come together.

One thing I know for certain, based on
experience with DAML+OIL, that I want from
our ontology language, is UnambiguousProperty...
the ability to say that, for example, if two people
have the same personal mailbox, they're
the same person.

It's agreed as a requirement:

"Cardinality constraints

The language must the support the specification of cardinality
restrictions on properties."

The motivation we give for that rationale is
shared ontologies and design documentation,
which isn't really how I use it... I use
it to notice that two different files are
talking about the same thing... in particular,
two people with the same personal email
address are the same person. I dunno how
to capture that... maybe the guidelines folks
can help.

Also, I don't actually have any requirement
for arbitrary cardinalities. maxCardinality=1
is all I need, thanks.

And lo, the draft spec we're starting with
has just this feature:
http://www.w3.org/TR/daml+oil-reference#UnambigousProperty-def

So, I being a TEST guy, have made a test
case:

I've got a file of premises:

  http://www.w3.org/2002/03owlt/sameGuyP.rdf

that says, in short, there's a guy
whose mailbox is mailto:connolly@w3.org
who has red hair, and there's a guy
whose mailbox is mailto:connolly@w3.org
whose birthPlace is KC.

And I've got a file of conclusions:

  http://www.w3.org/2002/03owlt/sameGuyC.rdf

that says, basically, that there's
a guy with red hair whose birthplace
is KC.

And, being a TEST guy who happens to
have an implementation handy, I have
a little test harness around it to
check my implementation

  http://www.w3.org/2002/03owlt/Makefile

In there, you'll find a bunch of python
and N3 gobbledygook. If that's your cup
of tea, great: grab the Makefile
and everything it refers to, invoke make,
and look for
 <#thisTest>     a <#Success> .
in sameGuyR.n3.

If not, don't bother. Just grab whatever
tool you use and make sure it agrees
that sameGuyC follows from sameGuyP.

If that's not the sort of question your
tool can answer, let me know how I can
ask it a question that tests this feature.
Maybe phrased as class membership somehow...
we can restructure the test experiment/framework.

Or maybe you're a SEM or GUIDE or LANG sort.
Please check that the semantics does
indeed license this conclusion; check
that the language reference specifies
it well enough that tool builders will
grok.

Or if you don't like the existing DAML+OIL
syntax, show me how to re-cast this example
using your preferred syntax.

And in any case, make sure the guidelines
give users enough clues to use it.
Maybe you could take this test
case and make it into a richer,
more interesting example. Or
maybe you have a different real-world
example that demonstrates the same
requirement. Tell me about it and
I'll try to capture it in another test case.


-- 
Dan Connolly, W3C http://www.w3.org/People/Connolly/

Received on Wednesday, 6 March 2002 23:38:53 UTC