- From: Luc Moreau <L.Moreau@ecs.soton.ac.uk>
- Date: Tue, 29 May 2012 22:37:11 +0100
- To: public-prov-wg@w3.org
- Message-ID: <EMEW3|68c85f714d8c83f5b772057faf7f3efeo4SMbS08L.Moreau|ecs.soton.ac.uk|4FC54187>
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 UTC