Re: ISSUE-385: hasProvenanceIn: finding a solution

Luc

just one comment below re: my last question

On 6/7/12 10:12 AM, Luc Moreau wrote:
> 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.
fine, but I think we are walking a fine line where, as we know, we stand back from any issue having to do with "merging" bundles, 
contexts, etc., but at the same time we provide enough expressivity to easily produce sets of provenance statements that /require/ 
some further semantics even to decide whether they are acceptable as a whole or not (anti-symmetry is but one specific example 
here).  I fear that a PL person may stare at this with some puzzlement :-)

-Paolo

>
> Luc
>
>>
>> Thanks... -Paolo
>
> Luc

Received on Thursday, 7 June 2012 09:23:02 UTC