Re: A Problem With The Semantics of DAML+OIL Restrictions

I had a discussion with the DAML language design committee last week,
and it seems the issues we have been discussing regarding the semantics
of restrictions have been resolved as follows.  Any given restriction
can indeed express multiple constraints by containing multiple values
for toClass, hasValue, etc. or by containing a value for more than one
of those properties, or by containing multiple values for onProperty. 
The key observations are that each of those constraints (i.e., each
value of each of those properties) is considered to be a condition that
necessarily holds for any instance of the restriction class, and any
object that satisfies any one (rather than all) of those constraints is
an instance of the restriction class.

For example, if restriction R has a value of "parent" for onProperty, a
value of "Person" for toClass, and a value of "Joe" for hasValue, then
all instances of R BOTH have "Joe" as a value of "parent" and only have
parents of type "Person".  Conversely, R is the class of all objects
that EITHER have "Joe" as a value of "parent" or all of whose parents
are type "Person".  Put another way, a restriction R containing multiple
constraints C1 and C2 is logically equivalent to the intersectionOf a
restriction R1 containing constraint C1 and a restriction R2 containing
constraint C2, PLUS AN ADDITIONAL ASSERTION stating that R1 is the
sameClassAs R2. (In fact, as R1 and R2 are the same, we don't really
need the intersection - R is equivalent to either R1 or R2.)

Both the model theoretic semantics and axiomatic semantics are correct
in their descriptions of the intended meaning of restrictions.  The
Property Restriction section of the DAML Reference Description is,
however, incorrect when it says: "When there are multiple restrictions
listed as part of a single Restriction element, the property P has to
satisfy all of the restrictions (i.e., multiple restrictions are read as
a conjunction)."  That prose will be corrected and expanded to clarify
the semantics.  It will also include a warning that restrictions
containing multiple constraints are NOT RECOMMENDED, because they
include one or more equivalence assertions as a "side effect".

Richard

Received on Tuesday, 10 July 2001 01:24:25 UTC