> From: Pat Hayes [mailto:phayes@ihmc.us]
> [ . . . ]
> BUt take this (actual) example: I recently found
> an entry on a site which listed interesting facts
> about various numbers:
>
> 30.48 .... By convention, the number of inches in a foot.
>
> Hmm. Seemed to me like a typo (which it was, of
> course.) But following the logic used by David,
> what I should have done was assume that the site
> didn't mean what it seemed to mean by the numeral
> "30.48", and in fact it meant that to denote 12.
> Or maybe, it meant "foot" to denote a yard, or a
> meter; or, maybe, that it meant "inch" to denote
> centimeter. None of which seem like sensible
> strategies to me.
No, that's not the logic I'm suggesting. Let me make your example more concrete to better illustrate what I'm suggesting.
SCENARIO 4: Gary publishes a lumber ontology at http://gary.example/lumber. The ontology includes the concept of a standard 8-foot "2x4", which is denoted by the URI http://gary.example/lumber#2x4x8. Pat is writing a set of assertions to describe the house he plans to build, and he is interested in Gary's #2x4x8 URI, but during testing he notices that Gary's ontology (erroneously) asserts that "30.49 inches = 1 foot". For perhaps obvious reasons, Pat does NOT wish to accept that assertion.
Question: Should Pat use http://gary.example/lumber#2x4x8 to denote a standard 8-foot "2x4" anyway?
My answer: No. Pat should either find a different ontology to use, or mint a new URI and indicate its relationship to Gary's URI. For example, Pat could make a copy of Gary's ontology (with Gary's permission, of course), delete the offending assertion, change every occurrence of "http://gary.example/lumber" to "http://pat.example/lumber" and publish the new ontology at http://pat.example/lumber. The assertions for his house should then use http://pat.example/lumber#2x4x8 instead of http://gary.example/lumber#2x4x8.
SCENARIO 5: Helen is writing some assertions about the color of concrete, and is also interested in using a URI from Gary's ontology to denote concrete: http://gary.example/lumber#concrete. Helen's application makes no use whatsoever of linear dimensions, so although she is aware of the erroneous assertion that Pat discovered, it does not interfere with her application.
Question: Should Helen use http://gary.example/lumber#concrete to make assertions about concrete?
My answer: She may, but she probably shouldn't, because it would severely restrict the reuse of her assertions. Helen's assertions presume that the "core assertions" in Gary's URI declaration at http://gary.example/lumber have been accepted -- including the erroneous assertion that "30.49 inches = 1 foot". So if an application using Helen's assertions makes use of linear dimensions, and it recursively pulls in Gary's ontology, then Gary's erroneous assertion about the number of inches to a foot is likely to cause havoc. If the application is lucky enough to have other information indicating that "12 inches = 1 foot" then it may detect a logical inconsistency. If it is unlucky, it may silently produce absurd conclusions, such as "David Booth is over 180 inches tall".
SCENARIO 6: Helen is lazy and publishes her color assertions at http://helen.example/colors anyway, using http://gary.example/lumber#concrete to denote concrete. Ian finds Helen's assertions and wishes to use them, but he notices that Gary's ontology at http://gary.example/lumber erroneously asserts that "30.49 inches = 1 foot", and Ian's application cannot withstand that erroneous assertion. Ian is aware that Pat has published an ontology at http://pat.example/lumber that is equivalent to Gary's ontology except that it does not contain this erroneous assertion.
Question: What should Ian do?
My answer: Ian should effectively rewrite Helen's assertions to use http://pat.example/lumber#concrete instead of http://gary.example/lumber#concrete throughout. He can either do this by modifying a copy of Helen's assertions, or by reference, using special expressions to indicate proper URI substitution in Helen's graph. (I intend to describe this further at
http://dbooth.org/2007/splitting/#urisub .)
David Booth, Ph.D.
HP Software
+1 617 629 8881 office | dbooth@hp.comhttp://www.hp.com/go/software
Opinions expressed herein are those of the author and do not represent the official views of HP unless explicitly stated otherwise.