Re: OWL class restriction

This (if not earlier) would be the point at which I'd assess whether
the modeling approach could be adjusted to avoid the need for this
particular construct.  The questions I'd start with:

1. How will the application benefit by requiring the data to
explicitly assert the same goal for the object as for the action?  If
the goal of the action is to boil water, does the water really need to
have a goal of being boiled?

2. If the goal needs to be asserted for both the action and the
object, in what way *must* the application be made aware of the
situation?  Would running a query at certain points to detect such
cases be acceptable?  Any query language supporting
negation-as-failure (e.g., SPARQL, via the OPTIONAL/BOUND trick) can
provide a workaround for cases where OWL's lack of closed world
reasoning causes problems.

I think this may be what Uli what getting at, by way of suggesting
what the real requirements might be.

-Brandon :)

On Thu, Jan 14, 2010 at 8:52 AM, Uli Sattler <sattler@cs.man.ac.uk> wrote:
>
> On 14 Jan 2010, at 13:14, Rinke Hoekstra wrote:
>
>> On 14 jan 2010, at 13:30, Uli Sattler wrote:
>>>
>>> ...but do you really need (2)? I think having all the rest should do the
>>> trick? Cheers, Uli
>>
>> For inferring the has_object relation, (1) alone is enough. But you need
>> some form of cardinality constraint (or functional property) if you want to
>> be able to raise a red flag whenever anyone asserts for some action that it
>> has two has_object relations to two distinct objects.
>>
>
> do you really need to raise this flag? What if an action has 2 goals, say,
> to 'heat water' and 'to boil water'...then this shouldn't matter? I guess
> what you need to check is that an action of a certain kind has a certain
> goal (and that might be implied by virtue of the goals of its sub-actions)
> and that it has no subactions with some other kind of goal (like 'throwing
> the water out')?
>
> Cheers, Uli
>
>> Bottom line: it can't really be done in OWL 2.
>>
>> -Rinke
>>
>>>
>>> On 14 Jan 2010, at 12:00, Thomas Schneider wrote:
>>>
>>>>
>>>> On 14 Jan 2010, at 08:50, Rinke Hoekstra wrote:
>>>>
>>>>> Hi Thomas, Alessandro,
>>>>>
>>>>> Doesn't your (2) violate the global constraints on complex properties?
>>>>> You cannot have cardinality constraints on complex properties (such as
>>>>> chains and transitive properties).
>>>>
>>>> Oops ... *blush*
>>>>
>>>> Sorry
>>>>
>>>> Thomas
>>>>
>>>>> I myself have struggled with these kinds of modelling problems while
>>>>> working on my PhD. Chapter 7 of my dissertation describes ways of 'coping'
>>>>> with the limitations of OWL 2. See [1,2] if you're interested.
>>>>>
>>>>> Best,
>>>>>
>>>>> Rinke
>>>>>
>>>>> [1] http://www.leibnizcenter.org/~hoekstra/wordpress/
>>>>> [2] http://dare.uva.nl/document/144868
>>>>>
>>>>> On 13 jan 2010, at 20:04, Thomas Schneider wrote:
>>>>>
>>>>>> Oh, just now I've read Uli's email properly ... and her suggestion
>>>>>> shows that this three-variable statement might be possible. Would it be
>>>>>> enough for your purposes if you say the following?
>>>>>>
>>>>>> (1) The composition of has_action_goal and inverse(has_object_goal)
>>>>>> implies has_object
>>>>>> (2) Every action can have at most one object (Action subClassOf
>>>>>> has_object max 1 Thing)
>>>>>> (3) All individuals of type object are distinct
>>>>>>
>>>>>> If (2) clashes with your scenario, it seems to me that you will need
>>>>>> closed world reasoning.
>>>>>>
>>>>>> Cheers
>>>>>>
>>>>>> Thomas
>>>>>>
>>>>>>
>>>>>> On 13 Jan 2010, at 17:52, Thomas Schneider wrote:
>>>>>>
>>>>>>> Hi Alessandro,
>>>>>>>
>>>>>>> On 13 Jan 2010, at 11:09, Alessandro Maccagnan wrote:
>>>>>>>
>>>>>>>> Hi Uli,
>>>>>>>>
>>>>>>>> thanks for your reply.
>>>>>>>> We are trying to define a propertyChain but we realize that what we
>>>>>>>> need to say is as follows.
>>>>>>>>
>>>>>>>> defining these properties:
>>>>>>>> Action has_object Some Object
>>>>>>>> Action has_action_goal Some Goal
>>>>>>>> Object has_object_goal Some Goal
>>>>>>>>
>>>>>>>> at the individuals level we would like to say:
>>>>>>>>
>>>>>>>> a1 has_action_goal g1
>>>>>>>> o1 has_object_goal g1
>>>>>>>> o2 has_object_goal g2
>>>>>>>> =>
>>>>>>>> a1 CAN HAVE has_object o1
>>>>>>>>
>>>>>>>> BUT
>>>>>>>> a1 CANNOT HAVE has_object o2
>>>>>>>>
>>>>>>>> So this means that only the objects (o) that have the same goal (g)
>>>>>>>> of the
>>>>>>>> action (a) can be used in that action.
>>>>>>>
>>>>>>> I don't think that this can be said in OWL because you will have to
>>>>>>> say that every individual x that is related to an individual y via
>>>>>>> has_object must also have another link to y via the chain has_action_goal o
>>>>>>> inverse(has_object_goal). This statement requires three variables in
>>>>>>> first-order logic, hence it's unlikely that it can be expressed in OWL. (Or
>>>>>>> does anyone here see a clever trick?) You might be more lucky with a rule
>>>>>>> language, but that is not my domain.
>>>>>>>
>>>>>>> Second, together with the rule you stated in your last sentence, the
>>>>>>> ontology you gave is not sufficient to conclude that a1 cannot have o2 as an
>>>>>>> object: the individuals g1 and g2 can be the same, and actions and objects
>>>>>>> are not prevented from having other goals than the ones stated. You will at
>>>>>>> least have to make all individuals different and close the "some"
>>>>>>> restrictions with corresponding "only" restrictions. Even then, the open
>>>>>>> world assumption might play a trick on you in the cases where you haven't
>>>>>>> said anything about certain individuals, so you might require closed world
>>>>>>> reasoning here.
>>>>>>>
>>>>>>> Cheers
>>>>>>>
>>>>>>> Thomas
>>>>>>>
>>>>>>>> Any suggestions?
>>>>>>>>
>>>>>>>> Cheers
>>>>>>>> Alessandro
>>>>>>>>
>>>>>>>> On Tue, Jan 12, 2010 at 5:51 PM, Uli Sattler <sattler@cs.man.ac.uk>
>>>>>>>> wrote:
>>>>>>>> Hi Alessandro,
>>>>>>>>
>>>>>>>> this is a tricky think to be done. What you can do is use a
>>>>>>>> propertychain to ensure that
>>>>>>>>
>>>>>>>> the composition of  has_object with has_Goal implies has_Goal.
>>>>>>>>
>>>>>>>> This would require the usage of a dedicated 'has_Goal' (rather than
>>>>>>>> a less specific has_information) property, but this shouldn't be a problem
>>>>>>>> (make has_information a superproperty of has_Goal if you like).
>>>>>>>>
>>>>>>>> Does this suffice? Cheers, Uli
>>>>>>>>
>>>>>>>>
>>>>>>>> On 12 Jan 2010, at 14:54, Alessandro Maccagnan wrote:
>>>>>>>>
>>>>>>>> Hello,
>>>>>>>>
>>>>>>>> we are developing an ontology for the description of a general
>>>>>>>> Action structure. The Action Structure is composed of:
>>>>>>>>
>>>>>>>> Subject (that performs the action)
>>>>>>>> Object_complement (that undergoes the action)
>>>>>>>> Complement (that helps in the execution of the action)
>>>>>>>> Goal of Action (the effect of the action)
>>>>>>>>
>>>>>>>> We have already defined that:
>>>>>>>>
>>>>>>>> Action has_information one Goal_of_action
>>>>>>>> Action has_object some Object
>>>>>>>> Object is_object_in some Action
>>>>>>>> Object has_information some Goal_of_action (because an object can be
>>>>>>>> used in several distinct actions)
>>>>>>>>
>>>>>>>> Now we would like to say that an Action can have as its objects only
>>>>>>>> those that have the same goal of the related action.
>>>>>>>>
>>>>>>>> Action has_object some Object where Object.Goal=Action.Goal
>>>>>>>>
>>>>>>>> Unfortunately we are stuck because we do not know how to formalize
>>>>>>>> it in OWL. Does anybody have any suggestions to help us?
>>>>>>>>
>>>>>>>>
>>>>>>>> Kind regards,
>>>>>>>>
>>>>>>>> Alessandro Maccagnan
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>> --
>>>>>>>> Alessandro
>>>>>>>> Maccagnan
>>>>>>>
>>>>>>>
>>>>>>> +----------------------------------------------------------------------+
>>>>>>> |  Dr Thomas Schneider                    schneider (at) cs.man.ac.uk
>>>>>>>  |
>>>>>>> |  School of Computer Science       http://www.cs.man.ac.uk/~schneidt
>>>>>>>  |
>>>>>>> |  Kilburn Building, Room 2.114                 phone +44 161 2756136
>>>>>>>  |
>>>>>>> |  University of Manchester
>>>>>>>  |
>>>>>>> |  Oxford Road                                             _///_
>>>>>>>   |
>>>>>>> |  Manchester M13 9PL                                      (o~o)
>>>>>>>   |
>>>>>>>
>>>>>>> +-----------------------------------------------------oOOO--(_)--OOOo--+
>>>>>>>
>>>>>>> Jubones (pl.n.)
>>>>>>> Awful things bought in Nairobi which never look good at home.
>>>>>>>
>>>>>>>            Douglas Adams, John Lloyd: The Deeper Meaning of Liff
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>
>>>>>>
>>>>>> +----------------------------------------------------------------------+
>>>>>> |  Dr Thomas Schneider                    schneider (at) cs.man.ac.uk
>>>>>>  |
>>>>>> |  School of Computer Science       http://www.cs.man.ac.uk/~schneidt
>>>>>>  |
>>>>>> |  Kilburn Building, Room 2.114                 phone +44 161 2756136
>>>>>>  |
>>>>>> |  University of Manchester
>>>>>>  |
>>>>>> |  Oxford Road                                             _///_
>>>>>> |
>>>>>> |  Manchester M13 9PL                                      (o~o)
>>>>>> |
>>>>>>
>>>>>> +-----------------------------------------------------oOOO--(_)--OOOo--+
>>>>>>
>>>>>> Jubones (pl.n.)
>>>>>> Awful things bought in Nairobi which never look good at home.
>>>>>>
>>>>>>             Douglas Adams, John Lloyd: The Deeper Meaning of Liff
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>
>>>>
>>>> +----------------------------------------------------------------------+
>>>> |  Dr Thomas Schneider                    schneider (at) cs.man.ac.uk  |
>>>> |  School of Computer Science       http://www.cs.man.ac.uk/~schneidt  |
>>>> |  Kilburn Building, Room 2.114                 phone +44 161 2756136  |
>>>> |  University of Manchester                                            |
>>>> |  Oxford Road                                             _///_       |
>>>> |  Manchester M13 9PL                                      (o~o)       |
>>>> +-----------------------------------------------------oOOO--(_)--OOOo--+
>>>>
>>>> Jubones (pl.n.)
>>>> Awful things bought in Nairobi which never look good at home.
>>>>
>>>>               Douglas Adams, John Lloyd: The Deeper Meaning of Liff
>>>>
>>>>
>>>>
>>>>
>>>
>>
>>
>
>
>

Received on Thursday, 14 January 2010 15:31:27 UTC