- From: Bijan Parsia <bparsia@isr.umd.edu>
- Date: Sun, 10 Oct 2004 20:30:24 -0400
- To: David Martin <martin@AI.SRI.COM>
- Cc: public-sws-ig@w3.org, elena cusenza <elena_cusenza@hotmail.com>
I missed this earlier. On Oct 10, 2004, at 7:20 PM, David Martin wrote: > elena cusenza wrote: > >> Hi! >> I'm using your owl-s 1.1beta definitions ontologies, I think there >> is a constraint violation on the Perform's instances: ThisPerform and >> TheParentPerform. (detected using an owl validator) >> Perform definition make a cardinality restriction over "process" >> property (cardinality=1). Anyway you don't follow this constraint on >> instances specifications. > > It's a valid observation. Hmm. Well, I don't think so. It is true that in the KB there is no assertion with subject ThisPerform (or ThisProcessPerform) and property process. Of course, as you say before, it doesn't violate any constraint expressed by OWL. > We discussed this in the OWl-S Coalition. The prevailing view (at > least in that discussion) is that it's OK to omit the "process" > property from the declarations of ThisPerform and TheParentPerform. I wasn't in on those discussions but I agree wholeheartedly. In fact, I'd say you *have* to. Actually, now that I think about it, I suspect that this constraint is all too easily (actually) violated. > For one thing, it is still legal OWL. The restriction asserts that > each of those instances has a relationship to some process, but it > does not mandate that the relationship must be specified. Indeed. Open World Assumption. > This is one of the subtleties of OWL (which some may well argue is > counter-intuitive). Well, definitely if you're expecting a database integrity constraint! :) > Hopefully, the validator is reporting this as a warning rather than an > error. I think this is the BBN Owl validator, as I just got such a warning. The warning is just plain wrong. There is no constraint violatoin. > In any case, there is still room for further discussion about this. It may be best to add the requested statements even absent a constraint violation. However, I don't see what you would add, since, at best, the relevant process is unknown. However, I think ThisPerform will violate the constraint whenever you have concurrent or nested performs. (Concurrent because there will be *many* active processes with enclosing processes. Nested, well, same reason :) though you might be able to elide that by some sort of stack frame jargon). Dummy or special objects like that are...well...very tricky :) Cheers, Bijan Parsia.
Received on Monday, 11 October 2004 00:31:13 UTC