- From: Luc Moreau <L.Moreau@ecs.soton.ac.uk>
- Date: Thu, 07 Jun 2012 10:12:27 +0100
- To: public-prov-wg@w3.org
- Message-ID: <EMEW3|9c955381f3459fb76df33560f5be7262o56ACU08L.Moreau|ecs.soton.ac.uk|4FD0707B>
Hi Paolo, On 06/07/2012 09:51 AM, Paolo Missier wrote: > Hi, > > Having finally caught up with this Jubilee-inspired thread (long live > the Queen etc.): > I was happy when I first found the contextualization idea: > http://lists.w3.org/Archives/Public/public-prov-wg/2012Jun/0064.html > > I am still happy but I have questions re: the example below as well as > the first one here: > http://dvcs.w3.org/hg/prov/raw-file/default/model/working-copy/wd6-contextualization.html > My problem is that I "still" think in terms of languages with name > declarations which occur within a scope. I suspect a new reader who is > a programmer will try to interpret these examples similarly and will > look for declaration/use pairs. So apologies if this is completely off > the mark. > In the first example here: > http://lists.w3.org/Archives/Public/public-prov-wg/2012Jun/0064.html > bundle ex:run1 > activity(ex:a1, 2011-11-16T16:00:00,2011-11-16T17:00:00) //duration: 1hour > wasAssociatedWith(ex:a1,ex:Bob,[prov:role="controller"]) > endBundle > > bundle ex:run2 > activity(ex:a2, 2011-11-17T10:00:00,2011-11-17T17:00:00) //duration: 7hours > wasAssociatedWith(ex:a2,ex:Bob,[prov:role="controller"]) > endBundle > > the statement > agent(ex:Bob) > is missing. Where does it live? (i.e, where is it "declared"?) is it > just in the default bundle /and/ implicit? It's a good question. It's not specific to contextualizationOf, it's more about bundles. I am not sure we are dealing with "declarations". But I can see this could be interpreted as such, with a language background. The rdf view of the world is ex:Bob denotes a resource, and rdf inference allows us to infer agent(ex:Bob). Where does it live? Do we need to specify it? My view is that we should leave this choice to implementations. > or is it in /both/ ex:run1 and ex:run2 and just left implicit Yes, it's definitely an option, which would allow you to process bundles independently. With a db/language hat, this would give you a kind of referential integrity within each bundle. > . This is what appears from the rest of the example: > bundle tool:analysis01 > agent(tool:Bob1) > contextualizationOf(tool:Bob1, ex:Bob, ex:run1) > agent(tool:ratedBob1, [perf:rating="good"]) > specialization(tool:ratedBob1, tool:Bob1) > > agent(tool:Bob2) > contextualizationOf(tool:Bob2, ex:Bob, ex:run2) > agent(tool:ratedBob2, [perf:rating="bad"]) > specialization(tool:ratedBob2, tool:Bob2) > endBundle > > so I am a bit confused. > > Also in the example below: > specializationOf(specific1,general1) > how do I know where to look for a "declaration" of general1? > > > I also have a more general comment regarding mutual consistency across > bundles. What prevents two bundles from having references to each > others' elements? i.e. > > bundle b1 > entity(foo) > activity(a1) > used(a1,foo) > specializationOf(foo, bar) > endBundle > > bundle b2 > entity(bar) > activity(a2) > used(a2, bar > specializationOf(bar, foo) > endBundle What is the answer when these assertions occur in the same bundle? I think we conclude that specialization is anti symmetric: http://dvcs.w3.org/hg/prov/raw-file/default/model/prov-constraints.html#specialization-antisymmetric In the specification we do not say whether we should merge bundles or not, and how to do it, and whether that gives something that is meaningful. It is up to applications to handle these according to their context. Luc > > Thanks... -Paolo Luc > > > On 6/6/12 10:22 PM, Luc Moreau wrote: >> Hi Tim, >> >> I didn't exactly understand it that way: >> >> bundle b1 >> entity(general1) >> activity(a1) >> used(a1,general1) >> endBundle >> >> bundle b2 >> entity(specific1) >> activity(a2) >> used(a2,specific1) >> specializationOf(specific1,general1) >> endBundle >> >> bundle b3 >> entity(e) >> contextualizationOf(e, general1, bundle1) // e presents the facet >> of general1 in bundle1 >> contextualizationOf(e, specific1, bundle2) // e also presents the >> facet of specific1 in bundle2 >> endBundle >> >> In your rdf encoding, >> "tool:Bob1 in tool:analysis01 is a specialization of the thing with >> identifier ex:Bob over in bundle ex:run1". >> becomes >> "e in b3 is a specialization of the thing with identifier specific1 >> in bundle2" (1) >> and >> "e in b3 is a specialization of the thing with identifier general1 in >> bundle1" (2) >> >> I don't think that (1) holds since "e presents the facet of general1 >> in bundle1" >> >> Thoughts? >> >> Luc >> >> >> >> >> On 06/06/12 20:34, Timothy Lebo wrote: >>> (since identifiers are getting confusing, I'm rewriting my email and >>> reorganizing the order of examples from top to bottom). >>> >>> >>> On Jun 6, 2012, at 3:14 PM, Timothy Lebo wrote: >>> >>>> On Jun 6, 2012, at 2:23 PM, Luc Moreau wrote: >>> >>> >>> Luc/DM's prov-n: >>> >>> >>>>>> bundle tool:analysis01 # found at >>>>>> http://dvcs.w3.org/hg/prov/raw-file/default/model/working-copy/wd6-contextualization.html >>>>>> >>>>>> contextualizationOf(tool:Bob1, ex:Bob, >>>>>> ex:run1) >>>>>> endBundle >>> >>> would get encoded in prov-o as: >>> >>> >>>>>> tool:analysis01 { >>>>>> tool:Bob1 >>>>>> prov:specializationOf [ >>>>>> a prov:Entity; prov:ContextualizedEntity; >>>>>> prov:identifier ex:Bob; >>>>>> prov:inContext ex:run1; >>>>>> ]; >>>>>> . >>>>>> } >>> >>> read "tool:Bob1 in tool:analysis01 is a specialization of the thing >>> with identifier ex:Bob over in bundle ex:run1". >>> >>> would get re-encoded to prov-n as: >>> >>>>> contextualizationOf(anonymous, ex:Bob, ex:run1) >>>>> alternateOf(tool:Bob1, anonymous ) >>> >>> >>> Tim's response: >>> >>> >>>> Given your mapping back, I think I'm still okay. >>>> >>>> In my mapping, I'd just _name_ my ContextualizedEntity and use >>>> alternateOf instead of specializationOf. >>>> >>>> But why wouldn't it be specializationOf? Then, we get to "inherit" >>>> the characterization, which seemed to be your intent from the >>>> beginning. >>>> >>>> Any way it falls from here, I think this is close enough for me to >>>> be content. >>> >>> >>> >>> -Tim >>> >>> >>> > > > -- > ----------- ~oo~ -------------- > Paolo Missier -Paolo.Missier@newcastle.ac.uk,pmissier@acm.org > School of Computing Science, Newcastle University, UK > http://www.cs.ncl.ac.uk/people/Paolo.Missier > -- 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 Thursday, 7 June 2012 09:13:00 UTC