Re: PROV-ISSUE-102 (hadRecipe): Ontology is missing recipe link [Formal Model]

Hi Stephan, Stian, Tim,

I propose the following changes in the following file:
http://dvcs.w3.org/hg/prov/raw-file/default/model/working-copy/wd5-prov-dm-plan.html

1. Make agent optional in association
2. Introduce a rule in part II explaining the missing of association 
without agent.

Does this solution address your concerns?
Is the prov-o ontology fine with this change?
Can we now close ISSUE-203?

Regards,
Luc



On 12/03/2012 17:43, Stephan Zednik wrote:
>
> On Mar 12, 2012, at 11:38 AM, Luc Moreau wrote:
>
>>
>> Hi Stephan,
>>
>> On 03/12/2012 05:32 PM, Stephan Zednik wrote:
>>>
>>> On Mar 12, 2012, at 11:12 AM, Luc Moreau wrote:
>>>
>>>> Hi Stephan,
>>>>
>>>> I repeat what I said before, it's not unreasonable to allow for the 
>>>> plan to be specified and not the agent
>>>> (with the understanding that the agent exists, but has not be 
>>>> asserted).
>>>
>>> Perhaps we are closer than we thought.
>>>
>> Good!
>>> I agree with this statement, and always have.  I believe my original 
>>> argument was precisely this.  The plan is still being 
>>> adopted/followed by ~some~ agent, even if we don't specify any 
>>> information about that agent.  This is an existential qualifier, and 
>>> would be modeled using the owl:someValuesFrom value constraint in 
>>> OWL, but I am not sure how to say it in PROV-N.
>>>
>>> Is there a way to make an existential quantification using PROV-N? 
>>>  I did not connect setting agent to optional with the statement you 
>>> make above and which I believe we both agree with.
>>>
>>> Perhaps some confusion arises from my assumption that PROV-N was 
>>> treating the model as if it were closed world.  Why else would you 
>>> put 'optional' on attributes when this is the default in OWA?
>>>
>>
>> PROV-N is a concrete syntax for a data model. The term 'optional' 
>> applies to the syntax.
>>
>> For the semantics, in part II of prov-dm, we can say that:
>>
>> if wasAssociatedWith(a,-,pl) holds that there exists an agent ag, 
>> such that wasAssociatedWith(a,ag,pl) holds.
>>
>> We write the existential quantifier in the underpinning rules, not in 
>> the syntax.
>>
>> Does it help?
>
> So if we set it to 'optional' in PROV-N, and use owl:someValuesFrom in 
> PROV-O, is everything good?
>
> If so I think I am happy with this issue being resolved.
>
> --Stephan
>
>>
>> Cheers,
>> Luc
>>
>>> --Stephan
>>>
>>>> It's a *convenience short-cut*,
>>>> it does not change the intention of the ActivityAssociation.
>>>>
>>>> Why should we introduce an extra relation:
>>>> hadPlan(id,a,p,-,attr)
>>>> when
>>>> wasAssociatedWith(id,a,-,p,attr)
>>>> can do it?
>>>>
>>>> To some extent, this applies to all optional arguments of prov-dm,
>>>> it was indicated today in the prov-o call, that the prov-rdf 
>>>> translation assumes that
>>>> the corresponding line(s) have to be dropped for missing arguments.
>>>> (If I understood correctly)
>>>>
>>>> Luc
>>>>
>>>> On 03/12/2012 04:30 PM, Stephan Zednik wrote:
>>>>>
>>>>> On Mar 12, 2012, at 6:01 AM, Luc Moreau wrote:
>>>>>
>>>>>>
>>>>>> Hi Stephan
>>>>>>
>>>>>> As far as I understand, the ontology defines the class 
>>>>>> Association and the properties
>>>>>> agent: AgentInvolvement -> Agent
>>>>>> hadPlan: Association -> Plan
>>>>>>
>>>>>> I don't think see any minimum cardinality required here.
>>>>>> So it appears the ontology allows for
>>>>>>
>>>>>> :a1 prov:hadQualifiedAssociation [a prov:Association
>>>>>>                                                         hadPlan :pl1]
>>>>>>
>>>>>> Why can't we allow it in prov-dm?
>>>>>
>>>>> PROV-O cardinality may not be completely aligned with the DM at 
>>>>> present.  I suggest we review this once we have a forward 
>>>>> direction on this.
>>>>>
>>>>> In DM:
>>>>>
>>>>> Why make Agent optional in an Activity-Agent Relation?
>>>>>
>>>>> The plan is currently qualifying information about the 
>>>>> relationship between an activity and the associated agent.
>>>>>
>>>>> plan: an /optional/ identifier for the plan adopted by the agent 
>>>>> in the context of this activity;
>>>>>
>>>>> By the current definition in DM it does not make sense to have a 
>>>>> plan in the association ("... plan adopted by the agent in the 
>>>>> context of this activity") without a corresponding agent.
>>>>>
>>>>> Does an Activity-Agent relation make sense with no agent?
>>>>>
>>>>> If we are intent to associate a plan to an activity directly, then 
>>>>> we should use a specialization of Entity-Agent Relation in which 
>>>>> agents are optional and are used to qualify the relationship 
>>>>> between the activity and plan.  This may be the only way forward.
>>>>>
>>>>> hadPlan(id,a,p,ag,attr)
>>>>>
>>>>> --Stephan
>>>>>
>>>>>>
>>>>>> Luc
>>>>>>
>>>>>>
>>>>>>
>>>>>> On 03/09/2012 08:47 PM, Stephan Zednik wrote:
>>>>>>> Did you get my last email on this?
>>>>>>>
>>>>>>> The email with:
>>>>>>>
>>>>>>> "1) If we take an open world view, then I don't think there is 
>>>>>>> an issue where we know that a specific plan was adopted by an 
>>>>>>> otherwise unknown agent.  We can represent the agent, we just 
>>>>>>> won't have any characterizing information about the agent except 
>>>>>>> that it was the agent that adopted this specific plan in this 
>>>>>>> activity.
>>>>>>>
>>>>>>> 2) If that is not desirable, I suggest adding an Activity-Entity 
>>>>>>> Relation to link Plans to Activities with optional information 
>>>>>>> about which Agent(s) used the plan."
>>>>>>>
>>>>>>> It appears some of my emails weren't going out for a while, so 
>>>>>>> you may never have gotten it.  The email never showed up on the 
>>>>>>> list, and I never got a reply so I am not sure you have seen it.
>>>>>>>
>>>>>>> I my preference is 1) and I expect your preference is 2), but I 
>>>>>>> think having an Agent-Activity Association without an Agent will 
>>>>>>> be confusing and it goes against the current definition of the 
>>>>>>> relation.  If a pure Plan-Activity relation is desired we may 
>>>>>>> have to just mint a new relation.
>>>>>>>
>>>>>>> --Stephan
>>>>>>>
>>>>>>> On Mar 8, 2012, at 10:20 PM, Luc Moreau wrote:
>>>>>>>
>>>>>>>> Hi Tim,
>>>>>>>> Yes, see my non-converging discussion with Stephan on ISSUE-203.
>>>>>>>>
>>>>>>>> Professor Luc Moreau
>>>>>>>> Electronics and Computer Science
>>>>>>>> University of Southampton
>>>>>>>> Southampton SO17 1BJ
>>>>>>>> United Kingdom
>>>>>>>>
>>>>>>>> On 9 Mar 2012, at 02:22, "Timothy Lebo" <lebot@rpi.edu 
>>>>>>>> <mailto:lebot@rpi.edu>> wrote:
>>>>>>>>
>>>>>>>>>
>>>>>>>>> On Mar 8, 2012, at 6:01 AM, Stian Soiland-Reyes wrote:
>>>>>>>>>
>>>>>>>>>> I'm not sure - now we can't have a planned activity without 
>>>>>>>>>> an agent -
>>>>>>>>>> so there will be phantom agents appearing.
>>>>>>>>>
>>>>>>>>> ^^ is there a separate issue for this? It seems odd that an 
>>>>>>>>> Activity can't mention a plan without also bringing an Agent 
>>>>>>>>> to the game.
>>>>>>>>>
>>>>>>>>> -Tim
>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>> There is also no way to say that the associated agent is actually
>>>>>>>>>> *performing* the activity. And so we only know that an agent 
>>>>>>>>>> performed
>>>>>>>>>> something with relation to the activity, and that something 
>>>>>>>>>> might or
>>>>>>>>>> might not have been following the associated plan.
>>>>>>>>>>
>>>>>>>>>> These are DM issues, though.. so you can close this issue. I 
>>>>>>>>>> would
>>>>>>>>>> have to think of a good use-case of a plan/recipe which there 
>>>>>>>>>> is no
>>>>>>>>>> agent following - perhaps that's not possible?
>>>>>>>>>>
>>>>>>>>>> On Mon, Mar 5, 2012 at 15:41, Daniel Garijo
>>>>>>>>>> <dgarijo@delicias.dia.fi.upm.es 
>>>>>>>>>> <mailto:dgarijo@delicias.dia.fi.upm.es>> wrote:
>>>>>>>>>>> Hi Stian,
>>>>>>>>>>> this issue is still raised and pending review.
>>>>>>>>>>> now we have Plans to link an agent and a plan to an activity,
>>>>>>>>>>> with an Association.
>>>>>>>>>>>
>>>>>>>>>>> I think that we have addressed this issue, and it could be 
>>>>>>>>>>> closed. Thoughts?
>>>>>>>>>>> Thanks,
>>>>>>>>>>> Daniel
>>>>>>>>>>>
>>>>>>>>>>> 2011/9/28 Myers, Jim <MYERSJ4@rpi.edu <mailto:MYERSJ4@rpi.edu>>
>>>>>>>>>>>
>>>>>>>>>>>> I don’t know that it’s a big deal, but I think of hadRecipe 
>>>>>>>>>>>> as potentially
>>>>>>>>>>>> very indirect rather than a subclass of used. I’d like to 
>>>>>>>>>>>> assert that the
>>>>>>>>>>>> “software development” PE was intended to satisfy the plan 
>>>>>>>>>>>> as documented in
>>>>>>>>>>>> “Work Breakdown Structure element 2.7” but in a use case 
>>>>>>>>>>>> like that, it seems
>>>>>>>>>>>> a stretch to say the PE used the plan versus that I’m just 
>>>>>>>>>>>> asserting that
>>>>>>>>>>>> the PE was intended to fulfill the plan (perhaps just the 
>>>>>>>>>>>> selection of this
>>>>>>>>>>>> PE versus another one was affected by the plan and, after 
>>>>>>>>>>>> the selection of
>>>>>>>>>>>> the PE, the plan was not directly used to guide it, etc.).
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>> Jim
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>> From: public-prov-wg-request@w3.org 
>>>>>>>>>>>> <mailto:public-prov-wg-request@w3.org> 
>>>>>>>>>>>> [mailto:public-prov-wg-request@w3.org]
>>>>>>>>>>>> On Behalf Of Jim McCusker
>>>>>>>>>>>> Sent: Wednesday, September 28, 2011 11:21 AM
>>>>>>>>>>>> To: Stian Soiland-Reyes
>>>>>>>>>>>> Cc: Paolo Missier; public-prov-wg@w3.org 
>>>>>>>>>>>> <mailto:public-prov-wg@w3.org>
>>>>>>>>>>>> Subject: Re: PROV-ISSUE-102 (hadRecipe): Ontology is 
>>>>>>>>>>>> missing recipe link
>>>>>>>>>>>> [Formal Model]
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>> If we do adopt a hadPlan/hadRecipe property, it should be a 
>>>>>>>>>>>> subproperty of
>>>>>>>>>>>> used. In which case, if the plan/recipe had a class of 
>>>>>>>>>>>> Recipe/Plan already
>>>>>>>>>>>> (this is a role for an entity, by the way), then why do we 
>>>>>>>>>>>> need anything
>>>>>>>>>>>> other than used?
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>> Jim
>>>>>>>>>>>>
>>>>>>>>>>>> On Wed, Sep 28, 2011 at 8:45 AM, Stian Soiland-Reyes
>>>>>>>>>>>> <soiland-reyes@cs.manchester.ac.uk 
>>>>>>>>>>>> <mailto:soiland-reyes@cs.manchester.ac.uk>> wrote:
>>>>>>>>>>>>
>>>>>>>>>>>> On Wed, Sep 28, 2011 at 11:11, Paolo Missier 
>>>>>>>>>>>> <Paolo.Missier@ncl.ac.uk <mailto:Paolo.Missier@ncl.ac.uk>>
>>>>>>>>>>>> wrote:
>>>>>>>>>>>>> I recall a discussion with example as part of ISSUE-95 
>>>>>>>>>>>>> (now part of
>>>>>>>>>>>>> formal
>>>>>>>>>>>>> model): http://www.w3.org/2011/prov/track/issues/95
>>>>>>>>>>>>> isn't that thread relevant?
>>>>>>>>>>>>
>>>>>>>>>>>> It is marked as relevant, but from the discussion it seems 
>>>>>>>>>>>> to still
>>>>>>>>>>>> rely on "hadRecipe" to say that a plan existed. Using that 
>>>>>>>>>>>> plan as a
>>>>>>>>>>>> class as well merely adds information, such as what kind of 
>>>>>>>>>>>> attributes
>>>>>>>>>>>> you could expect to find, or the hint that it *did* go 
>>>>>>>>>>>> according to
>>>>>>>>>>>> the plan.
>>>>>>>>>>>>
>>>>>>>>>>>> I get the feeling that ISSUE-95 is slightly controversial 
>>>>>>>>>>>> as it relies
>>>>>>>>>>>> on some OWL2 semantics, but that we are generally positive, 
>>>>>>>>>>>> however
>>>>>>>>>>>> the formal model as it stands does have a recipe as a 
>>>>>>>>>>>> simple link, and
>>>>>>>>>>>> I don't think this ISSUE-102 should be controversial or  be 
>>>>>>>>>>>> much in
>>>>>>>>>>>> conflict with ISSUE-95.
>>>>>>>>>>>>
>>>>>>>>>>>> I have therefore put prov:hadRecipe into
>>>>>>>>>>>>
>>>>>>>>>>>> http://dvcs.w3.org/hg/prov/raw-file/default/ontology/ProvenanceFormalModel.html#hadrecipe
>>>>>>>>>>>> - we can then later fill in what that blank resource is if 
>>>>>>>>>>>> we go for
>>>>>>>>>>>> ISSUE-102 - or remove it if 102 finds a better approach.
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>> We can argue about the name in this thread - recipe/plan, etc..
>>>>>>>>>>>>
>>>>>>>>>>>> --
>>>>>>>>>>>> Stian Soiland-Reyes, myGrid team
>>>>>>>>>>>> School of Computer Science
>>>>>>>>>>>> The University of Manchester
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>> --
>>>>>>>>>>>> Jim McCusker
>>>>>>>>>>>> Programmer Analyst
>>>>>>>>>>>> Krauthammer Lab, Pathology Informatics
>>>>>>>>>>>> Yale School of Medicine
>>>>>>>>>>>> james.mccusker@yale.edu <mailto:james.mccusker@yale.edu> | 
>>>>>>>>>>>> (203) 785-6330
>>>>>>>>>>>> http://krauthammerlab.med.yale.edu 
>>>>>>>>>>>> <http://krauthammerlab.med.yale.edu/>
>>>>>>>>>>>>
>>>>>>>>>>>> PhD Student
>>>>>>>>>>>> Tetherless World Constellation
>>>>>>>>>>>> Rensselaer Polytechnic Institute
>>>>>>>>>>>> mccusj@cs.rpi.edu <mailto:mccusj@cs.rpi.edu>
>>>>>>>>>>>> http://tw.rpi.edu <http://tw.rpi.edu/>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>> -- 
>>>>>>>>>> Stian Soiland-Reyes, myGrid team
>>>>>>>>>> School of Computer Science
>>>>>>>>>> The University of Manchester
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>
>>>>>>
>>>>>> -- 
>>>>>> Professor Luc Moreau
>>>>>> Electronics and Computer Science   tel:   +44 23 8059 4487
>>>>>> University of Southampton          fax:   +44 23 8059 2865
>>>>>> Southampton SO17 1BJ               email:l.moreau@ecs.soton.ac.uk
>>>>>> United Kingdomhttp://www.ecs.soton.ac.uk/~lavm
>>>>>>      
>>>>>
>>>>
>>>> -- 
>>>> Professor Luc Moreau
>>>> Electronics and Computer Science   tel:   +44 23 8059 4487
>>>> University of Southampton          fax:   +44 23 8059 2865
>>>> Southampton SO17 1BJ               email:l.moreau@ecs.soton.ac.uk
>>>> United Kingdomhttp://www.ecs.soton.ac.uk/~lavm
>>>>      
>>>
>>
>> -- 
>> Professor Luc Moreau
>> Electronics and Computer Science   tel:   +44 23 8059 4487
>> University of Southampton          fax:   +44 23 8059 2865
>> Southampton SO17 1BJ               email:l.moreau@ecs.soton.ac.uk
>> United Kingdomhttp://www.ecs.soton.ac.uk/~lavm
>>      
>

Received on Tuesday, 13 March 2012 11:17:26 UTC