- From: Timothy Lebo <lebot@rpi.edu>
- Date: Tue, 29 May 2012 13:25:15 -0400
- To: Luc Moreau <L.Moreau@ecs.soton.ac.uk>
- Cc: Paul Groth <p.t.groth@vu.nl>, Provenance Working Group <public-prov-wg@w3.org>
- Message-Id: <94B6594B-2CB4-4831-821F-80BDF159F443@rpi.edu>
Luc, On May 29, 2012, at 12:02 PM, Luc Moreau wrote: > Hi Tim and Paul, > > We should also add it to Invalidation (because there is an activity). If Generation has it, it would seem that Invalidation would, too. > > 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? One reason not to include Derivation is that it is already a composite notion (of an Activity, Usage, and Generation). Communication is "closer to fundamental", so I see no reason to exclude it from having a role. > > This brings up a question: what is the difference between prov:role and prov:type? The difference is a matter of specialization. Entities with prov:roles exist within a shorter characterization period, while Entities with prov:types exist in longer characterization periods. (Hopefully), Tim as a Ph.D. student will exist in a shorter period than Tim as a Person. Perhaps the easiest example to distinguish a roled Entity and a typed Entity is an algebraic division [1], whose quantities should only be "typed" for a limited duration (i.e, they should have roles). "514" is always a quantity (and is thus typed), "514" as a dividend in this operation is only such for this operation (and thus is roled). @prefix math: <http://dvcs.w3.org/hg/prov/raw-file/tip/examples/eg-30-roles-in-algebraic-division/rdf/math.owl#> . @prefix : <http://dvcs.w3.org/hg/prov/raw-file/tip/examples/eg-30-roles-in-algebraic-division/rdf/eg-30-roles-in-algebraic-division.ttl#> . # There were 514 emails on public-prov-wg@w3.org in April 2012 and 54 members of prov-wg. # That's about 9.5 emails per member. :dividend a prov:Entity, :Quantity; prov:value 514; . :divisor a prov:Entity, :Quantity; prov:value 54; . :division a prov:Activity, :Division; prov:used :dividend, # :divisor; # These four involvements are unqualified. prov:generated :quotient; # i.e., we're not sure exactly how they were :scratch-paper; # involved with the :division Activity. prov:qualifiedUsage [ # The unqualified involvements can be qualified a prov:Usage; # to distinguish /how/ the used entities were used. prov:entity :dividend; prov:hadRole math:dividend; ]; prov:qualifiedUsage [ a prov:Usage; prov:entity :divisor; prov:hadRole math:divisor; ]; prov:qualifiedGeneration [ a prov:Usage; prov:entity :quotient; prov:hadRole math:quotient; ]; . :quotient a prov:Entity, :Quantity; prov:value 9.51851852; . math:dividend a prov:Role . math:divisor a prov:Role . math:quotient a prov:Role . > > > 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. I've stated above. > 2. what distinguishes prov:role from prov:type? I've stated above. > 3. what's the definition of prov:role I defer to the Definition Gods. Am happy to dance if it helps. > 4. should we drop prov:role, and just use prov:type? No. -Tim [1] http://dvcs.w3.org/hg/prov/file/6268a6b16f6f/examples/eg-30-roles-in-algebraic-division/rdf/eg-30-roles-in-algebraic-division.ttl > > 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 >>> >>> >>> >> >> > > -- > 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 Kingdom http://www.ecs.soton.ac.uk/~lavm
Received on Tuesday, 29 May 2012 17:27:57 UTC