W3C home > Mailing lists > Public > public-prov-wg@w3.org > May 2012

Re: PROV-ISSUE-384 (prov-role-in-attribution): prov:role in attribution or not? [prov-dm]

From: Luc Moreau <L.Moreau@ecs.soton.ac.uk>
Date: Tue, 29 May 2012 22:37:11 +0100
Message-ID: <EMEW3|68c85f714d8c83f5b772057faf7f3efeo4SMbS08L.Moreau|ecs.soton.ac.uk|4FC54187.3030201@ecs.soton.ac.uk>
To: public-prov-wg@w3.org
Hi Tim, Stephan, Graham,

So, you are all defending role, as an alternative way of specializing 
relations.  OK.

So, we now need to agree:
1.  on the domain of prov:hadRole
2. on a definition of role that works with this domain

Currently: we have:
/A role is the function of an entity with respect to an activity, in the 
context of a usage, generation, association, start, and end./


We seem to be in agreement that we want roles also for
- invalidation

The current definition works for: usage, generation, start, end, 
invalidation.

This definition:

/A role is the function of an entity or an *agent* with respect to an 
activity

/would also work for association.

It's not clear this definition would work for:
- delegation
    actedOnBehalfOf(ag2,ag1,a)
       a role for which agent ? responsible? delegate?


- attribution
       no activity here.

- communication?
      wasInformedBy(a2,a1) here no entity

- derivation?
     wasDerivedFrom(e2,e1,a,g,u)
       a role for which entity?

So, I would propose:
/A role is the function of an entity or an *agent* with respect to an 
activity,/ /in the context of a usage, generation, association, start,  
end, and invalidation.
/For all these relations, an activity is subject or object.

Luc


On 29/05/12 18:29, Graham Klyne wrote:
> On 29/05/2012 17:02, Luc Moreau wrote:
>> Hi Tim and Paul,
>>
>> We should also add it to Invalidation (because there is an activity).
>>
>> So, it looks like, if we follow Tim's suggestion, roles would be
>> allowed on all qualified relations, except Derivation and Communication.
>> Why not these now?
>>
>> This brings up a question: /what is the difference between prov:role and
>> prov:type?/
>
> I think it's similar to the difference (in RDF) between subClass and 
> subProperty, or class and property).
>
> (In the RDF formal semantics, they actually look very similar - 
> properties have 2-part relational extensions, and types have 
> single-value extensions.  Several years ago, Peter Patel-Schneider 
> proposed an alternative semantic model over the underlying RDF/XML 
> structure that unified these.)
>
> But I think to try and unify them in PROV-DM would cause more 
> head-scratching than it would save - I think the notions of type and 
> role carry some useful intuition which may be good to keep.  (Noting 
> that roles in PROV-DM may be 2-way and sometimes multi-way relations.)
>
> #g
> -- 
>
>
>> These are examples of prov:role in prov-dm.
>>
>> wasAssociatedWith(ex:edit1, ex:Paolo, -, [ prov:role="editor" ])
>> wasAssociatedWith(ex:edit1, ex:Simon, -, [ prov:role="contributor" ])
>> wasAttributedTo(tr:WD-prov-dm-20111215, ex:Paolo, [ 
>> prov:role="editor" ])
>> wasAttributedTo(tr:WD-prov-dm-20111215, ex:Simon, [ 
>> prov:role="contributor" ])
>> wasAssociatedWith(ex:a, ex:ag1, -, [ prov:role="loggedInUser", 
>> ex:how="webapp" ])
>> wasAssociatedWith(ex:a, ex:ag2, ex:wf, [ prov:role="designer",
>> ex:context="project1" ])
>> wasAssociatedWith(a, ag1, [ prov:role="loggedInUser" ])
>> wasAssociatedWith(a, ag, [ prov:role="operator" ])
>> used(ex:div01, ex:cell, [ prov:role="divisor" ])
>>
>> They could have been written as (Sorry for the sometime poor choice 
>> of name, but
>> you should get
>> the idea)
>>
>> wasAssociatedWith(ex:edit1, ex:Paolo, -, [ 
>> prov:type="WasAssociatedWithAsEditor" ])
>> wasAssociatedWith(ex:edit1, ex:Simon, -, [
>> prov:type="WasAssociatedWithAsContributor" ])
>> wasAttributedTo(tr:WD-prov-dm-20111215, ex:Paolo, [
>> prov:type="WasAttributedToEditorEditor" ])
>> wasAttributedTo(tr:WD-prov-dm-20111215, ex:Simon, [
>> prov:type="WasAttributedToEditorContributor" ])
>> wasAssociatedWith(ex:a, ex:ag1, -, [
>> prov:type="WasAssociatedWithAsLoggedInUser", ex:how="webapp" ])
>> wasAssociatedWith(ex:a, ex:ag2, ex:wf, [
>> prov:type="WasAssociatedWithAsDesigner", ex:context="project1" ])
>> wasAssociatedWith(a, ag1, [ 
>> prov:type="WasAssociatedWithAsLoggedInUser" ])
>> wasAssociatedWith(a, ag, [ prov:type="WasAssociatedWithAsOperator" ])
>> used(ex:div01, ex:cell, [ prov:type="UsedAsDivisor" ])
>>
>> It feels that all role information can be expressed as type.
>>
>> So,
>> 1. when should we encode this kind of information with prov:type and 
>> when should
>> do with prov:role.
>> 2. what distinguishes prov:role from prov:type?
>> 3. what's the definition of prov:role
>> 4. should we drop prov:role, and just use prov:type?
>>
>> Luc
>>
>>
>> On 05/29/2012 02:54 PM, Timothy Lebo wrote:
>>> Currently, only Association (or Start, End, Usage, Generation) may 
>>> use hadRole.
>>>
>>> Looking back, I see that one of the prov-o examples violates this:
>>> https://dvcs.w3.org/hg/prov/raw-file/default/ontology/Overview.html#qualifiedResponsibility 
>>>
>>>
>>> by putting a role on a Delegation.
>>>
>>>
>>> Association, Attribution, and Delegation are the three ways to ascribe
>>> responsibility.
>>>
>>> May we relax hadRole and permit its use on Attribution and Delegation?
>>>
>>> (so, for this issue, +1; and a new issue to add it to Delegation, 
>>> too :)
>>>
>>> -Tim
>>>
>>>
>>> On May 26, 2012, at 5:48 AM, Paul Groth wrote:
>>>
>>>> Hi Luc,
>>>>
>>>> It's unclear to me if attribution has an underlying activity. If we
>>>> agree on that then the definition falls out and we should could use
>>>> prov:role with respect to activity.
>>>>
>>>> I guess the argument could be that there is always an activity that
>>>> links the agent to an entity in the end. Is that what we say in the
>>>> end?
>>>>
>>>> Thanks
>>>> Paul
>>>>
>>>> On Thu, May 24, 2012 at 11:14 PM, Provenance Working Group Issue
>>>> Tracker<sysbot+tracker@w3.org> wrote:
>>>>> PROV-ISSUE-384 (prov-role-in-attribution): prov:role in 
>>>>> attribution or not?
>>>>> [prov-dm]
>>>>>
>>>>> http://www.w3.org/2011/prov/track/issues/384
>>>>>
>>>>> Raised by: Luc Moreau
>>>>> On product: prov-dm
>>>>>
>>>>>
>>>>> In the example,
>>>>> http://www.w3.org/TR/prov-dm/#anexample-attribution,
>>>>> we write:
>>>>> wasAttributedTo(tr:WD-prov-dm-20111215, ex:Paolo, 
>>>>> [prov:role="editor"])
>>>>>
>>>>>
>>>>> But in
>>>>> http://www.w3.org/TR/prov-dm/#term-attribute-role
>>>>> we say:
>>>>> The attribute prov:role denotes the function of an entity with 
>>>>> respect to an
>>>>> activity, in the context of a usage, generation, association, 
>>>>> start, and end.
>>>>>
>>>>>
>>>>> So,
>>>>> 1. Do we want to accept prov:role in Attribution?
>>>>> (or, it's not a prov:role but prov:type we should use?)
>>>>>
>>>>> 2. If yes, does it mean the definition of prov:role needs to be 
>>>>> changed?
>>>>> where is the activity?
>>>>>
>>>>> 3. Should we have an optional activity in Attribution?
>>>>>
>>>>> Luc
>>>>>
>>>>>
>>>>>
>>>>
>>>>
>>>> -- 
>>>> -- 
>>>> Dr. Paul Groth (p.t.groth@vu.nl)
>>>> http://www.few.vu.nl/~pgroth/
>>>> Assistant Professor
>>>> Knowledge Representation& Reasoning Group
>>>> Artificial Intelligence Section
>>>> Department of Computer Science
>>>> VU University Amsterdam
>>>>
>>>>
>>>
>>
>
Received on Tuesday, 29 May 2012 21:37:55 GMT

This archive was generated by hypermail 2.2.0+W3C-0.50 : Tuesday, 29 May 2012 21:37:59 GMT