- From: Ian Horrocks <horrocks@cs.man.ac.uk>
- Date: Sun, 17 Jun 2001 22:59:33 +0100 (BST)
- To: David Martin <martin@AI.SRI.COM>, Dan Connolly <connolly@w3.org>
- Cc: www-rdf-logic@w3.org
On June 14, David Martin writes: > DAML-S expressiveness challenge #1 - > > Is it possible (or is it likely to be possible in some future release of > DAML+OIL or DAML-L) to express the following constraint/restriction: > > "The value of an instance of property P1, in some particular > context/scope/situation, must be the same as the value of an instance > of property P2 in that same context/scope/situation." > > What do I mean by context/scope/situation? Well, that's up for > discussion, but to get us started, let's just say I mean "namespace". > > I know about sameIndividualAs, but a straightforward use of > sameIndividualAs does not meet my requirements. The instances of P1 and > P2 don't necessarily exist yet (that is, haven't been declared > anywhere); so I can't refer to them. What I want to say is (re-phrasing > the above): > > "when an instance of property P1 is declared, in the same namespace as > an instance of property P2, they must have the same value" > > Can anyone suggest a way to express this, or a start toward doing so? You can do this now, or something close. Simply introduce a new property called say "P1_or_P2" such that both P1 and P2 are asserted to be subProperties of P1_or_P2. Now you can use a cardinality restriction to assert that a class C has at most one P1_or_P2. Thus if some instance of the class is related to individual x by P1 and individual y by P2, then x=y. I believe that Dan Connolly is making a list of useful DAML+OIL "recipes". Perhaps he could add this one. Regards, Ian
Received on Sunday, 17 June 2001 18:11:40 UTC