- From: Alan Rector <rector@cs.man.ac.uk>
- Date: Tue, 21 Dec 2004 09:40:03 +0000
- To: Pat Hayes <phayes@ihmc.us>, best-practice <public-swbp-wg@w3.org>
- Message-ID: <41C7EF73.262EB324@cs.man.ac.uk>
Pat Pat Hayes wrote: >> Pat > >> Thanks. Clear and short and makes the point that the key difference is that >> representation involves sequence. Minor issue. Both the properties >> "rest_of_list" and "first_item" need to be functional to avoid including the >> possibility of trees in the pattern. > > Not sure I agree. This would make sense if one were to think of it as a kind > of syntactic check, but it would not have that effect in OWL; and if someone > were to somehow insert a truly branching list by some error, having the > properties being functional might well produce very peculiar inferences. For > example, if a reasoner were to conclude that _:x and _:y were the same, where > these were the bnodes of two lists, then the first items in those lists would > also be inferred to be equal. If the lists were of unequal length then it > would follow , for example, that first_item of empty_sequence would be > required to be equal to some resource. I think it would be safer, and better > engineering, to not assert any properties of those functions, but to rely on > external checkers to ensure that argument sequences are linear, if that were > ever an issue that needed checking. > SHORT ANSWER: > This just seems to be complaining that OWL means what it means. Its semantics > are open world. It doesn't have a unique name assumption. If you want to > represent a closed world notion such as a linear list, you have to close it > explicitly. Otherwise, the interpretation is "at least one successor" instead > of "exactly one successor". IE, other you are representing a multiway tree. > Mislabelling a multiway tree as a linear list is going to be unhelpful and > lead to confusion in the long run. Does not depending on checks outside the > standard for semantics that are in the standard defeats the purpose of having > a standard? > > LONGER ADDENDUM: > > I am strongly in favour of external checkers to help users avoid misakes with > open world reasoners. We have the same problem with domain and range > constraints, and the Protege-OWL tools are providing checkers to make sure > that users know of potential violations, assent to them, and are able to find > them as the cause of unexpected classification behaviour, either > unsatisfiability or reclassification. > > More importantly, we provide things to help ensure that the allDifferent and > disjointFrom axioms are provided where intended. Your examples above only make > their anomalous conclusions in the face of incomplete axiomization. Given the > appropriate allDifferent axioms, they would just report unstatisfiability of > various concepts. It was not my decision not to use a unique name assumption > in OWL, but given that OWL explicitly does not have a unique name assumption, > this is one of the consequences. > > If we want to support routine use of such list structures, we will need to > provide syntactic sugar. I don't see most users writing things in their full > form any more than we normally write lists in terms of raw cons cells. Checks > will be part of that sugar - just as the sugar for value partitions includes, > by default, making the property functional and the values disjoint and > covering. (When users understand enough to over ride the defaults, we have > achieved something. In the meantime, these are generally safe.) > > Since OWL can clearly express and distinguish notions such as list, binary > tree, multiway tree etc it seems perverse to use a representation for a > multiway tree - i.e. "rest_olf_list" without cardinality - to represent the > much more specific notion of a linear list. That RDF cannot distinguish them > because of weaker semantics is hardly a reason not to distinguish them in a > language with stronger semantics. > > In short, I see no reason not to express things in OWL as fully as the > semantics allows. Where there are things that cannot be expressed with that > semantics, then we have need for workarounds and use of syntactic checkers, > but those will always be outside the standard and subject to error. Likewise, > I am all in favour of tools to help people say what they intended and avoid > errors, but the outcome should conform to the standard semantics where > possible. > > >> I think the issue of lists of this type in OWL and the inferences that can >> be made about them probably requires a separate note. > > Since OWL uses the RDF vocabulary and the RDF documentation discusses this > fairly thoroughly, I wonder if a note is really needed (?) > > OWL supports considerable reasoning about lists that RDF does not - as your > example shows. It is possible to do some very useful things, but that's not > the point here. > > > >> However, I suggest we stick to this much here and do that separately later. > > > Agreed. Pat > > Regards > > Alan > > -- Alan L Rector Professor of Medical Informatics Department of Computer Science University of Manchester Manchester M13 9PL, UK TEL: +44-161-275-6188/6149/7183 FAX: +44-161-275-6236/6204 Room: 2.88a, Kilburn Building email: rector@cs.man.ac.uk web: www.cs.man.ac.uk/mig www.opengalen.org www.clinical-escience.org www.co-ode.org
Received on Tuesday, 21 December 2004 09:39:06 UTC