- From: Timothy Lebo <lebot@rpi.edu>
- Date: Wed, 6 Jun 2012 12:52:02 -0400
- To: Luc Moreau <L.Moreau@ecs.soton.ac.uk>
- Cc: W3C provenance WG <public-prov-wg@w3.org>
- Message-Id: <A024C178-D8B3-4821-B17E-7CA56EB1AE4E@rpi.edu>
Luc, Some more thoughts on the proposal. I think an important aspect of our email drafts (shown below) was that no new RDF property was created between the entity and the bundle: ===== bundle tool:analysis01 alternate(tool:Bob2, ex:Bob,ex:run2) endBundle in PROV-O: tool:analysis01 { tool:Bob2 prov:alternateOf [ ## The use here of bnode is, for once, actually appropriate :-) a prov:Entity; prov:ContextualizedEntity; prov:identifier ex:Bob; ## The identifier that is used "over there" Can't use dcterms:identifier b/c that is a rdfs:Literal. prov:inContext ex:run2; ## "over there" Could prov:atLocation be reused? ]; } ===== By http://dvcs.w3.org/hg/prov/raw-file/default/model/working-copy/wd6-contextualization.html 's : bundle tool:analysis01 contextualizationOf(tool:Bob1, ex:Bob, ex:run1) endBundle do you mean (or, may I [still] interpret as): tool:analysis01 { tool:Bob1 prov:specializationOf [ a prov:Entity; prov:ContextualizedEntity; prov:identifier ex:Bob; prov:inContext ex:run1; ]; . } is it also true that there will never be a PROV-O statement that reflects DM that looks like: ?a prov:contextualizationOf ?b . (i.e., that prov:contextualizationOf does not exist). Thanks, Tim On Jun 6, 2012, at 6:10 AM, Luc Moreau wrote: > Hi Tim, > > See below. > > On 06/05/2012 11:26 PM, Timothy Lebo wrote: >> >> Overall, looks pretty good. >> >> > > Great, it looks like we are converging. >> >> >> "sharing the facets" >> -> >> perhaps use "presenting aspects" as with the accepted phrasing from the last round of alt/spec definitions? >> > > Yes, >> >> BTW, you still have a missing 0 in: >> 2011-11-16T16:00:00,2011-11-16T17:0:00 >> >> > fixed >> >> "A new agent tool:Bob1 is declared as a restriction of ex:Bob" >> -> ? >> "A new agent tool:Bob1 is declared as a specialization of ex:Bob" >> > > I used contextualization to avoid confusion with the specializationOf relation. >> >> >> "defines two specializations of these contextualized agents with associated rating" >> -> (nit) >> "defines two specializations of these contextualized agents with an associated rating" >> >> >> "bade" -> "bad" > > Fixed. > >> >> >> >> I'm finally comfortable with your modeling of the visualization scenario. >> >> > > Great. > Question: in the second example, is it appropriate to write > > entity(tool:report1, [viz:color="orange"]) // is it appropriate to add viz attributes to tool:report1 or should we specialize it? > > > or should we have two separate entities > > > entity(tool:report1) > entity(tool:specializedReport1, [viz:color="orange"]) > specializationOf(tool:specializedReport1, tool:report1) > > Luc > >> -Tim >> >> >> >> On Jun 5, 2012, at 4:03 PM, Luc Moreau wrote: >> >>> Hi Tim, >>> >>> I tried to write this up as a separate relation contextualizationOf, see section 1.3 in [1]. >>> I believe this relation is compatible with your rdf encoding. The only difference, here, >>> is that we make this an identifiable thing. >>> >>> [ >>> a prov:Entity; prov:ContextualizedEntity; >>> prov:identifier ex:Bob; >>> prov:inContext ex:run2; >>> ]; >>> >>> What do you think? >>> Luc >>> >>> [1] http://dvcs.w3.org/hg/prov/raw-file/default/model/working-copy/wd6-contextualization.html >>> >>> On 04/06/2012 23:25, Timothy Lebo wrote: >>>> >>>> Luc, >>>> >>>> (bottom) >>>> >>>> On Jun 4, 2012, at 5:31 PM, Luc Moreau wrote: >>>> >>>>> Hi Tim, >>>>> >>>>> Some comments/questions below. >>>>> >>>>> On 04/06/2012 13:46, Timothy Lebo wrote: >>>>>> >>>>>> Luc, >>>>>> >>>>>> On Jun 4, 2012, at 5:16 AM, Luc Moreau wrote: >>>>>> >>>>>>> Hi all, >>>>>>> >>>>>>> During this diamond jubilee WE, I had the opportunity to think about Tim and Simon's long emails. >>>>>>> >>>>>>> I agree with them that we have concepts of alternate and specialisation, and we want to reuse them. >>>>>>> >>>>>>> I also came to the conclusion that behind the hasProvenanceIn relation, what I really wanted was a form of alternate. But not what Tim or Simon are suggesting. >>>>>>> >>>>>>> The PROV data model has a shortcoming: the inability to identify something in some context. That's what I am trying to address here. >>>>>>> >>>>>> >>>>>> >>>>>>> … >>>>>> >>>>>> >>>>>>> The interpretation of >>>>>>> alternate(tool:Bob2, ex:Bob,ex:run2) >>>>>>> is that tool:Bob2 is the entity that share aspects of ex:bob as described by ex:run2. Conceptually, this could be done by substituting ex:Bob for tool:Bob2 in ex:run2. >>>>>>> >>>>>>> I appreciate that what I am describing here is not too distant from http://www.w3.org/TR/2011/WD-prov-dm-20111215/#record-complement-of, which had optional account, and was not received with enthusiasm, to say the least. >>>>>>> >>>>>>> Coincidentally, Paul shared this paper >>>>>>> http://ceur-ws.org/Vol-614/owled2010_submission_29.pdf which introduces rules of the kind >>>>>>> X counts as Y in context C >>>>>>> which bears some resemblance with what I am trying to argue for. >>>>>>> >>>>>>> So, my proposal is; >>>>>>> - drop hasProvenanceIn >>>>>>> - drop isTopicIn >>>>>>> - allow for the ternary form of alternate >>>>>>> >>>>>>> Tim and Simon approach by using two binary relations do not offer the same level of expressivity. >>>>>>> The also have a technological bias, as well: they require querying/reasoning facility. Therefore, >>>>>>> their suggestion is not suitable for a data model supposed to be technology neutral. >>>>>> >>>>>> >>>>>> A stab at: >>>>>> >>>>>> bundle tool:analysis01 >>>>>> alternate(tool:Bob2, ex:Bob,ex:run2) >>>>>> endBundle >>>>>> >>>>>> in PROV-O: >>>>>> >>>>>> tool:analysis01 { >>>>>> tool:Bob2 >>>>>> prov:alternateOf [ ## The use here of bnode is, for once, actually appropriate :-) >>>>>> a prov:Entity; prov:ContextualizedEntity; >>>>>> prov:identifier ex:Bob; ## The identifier that is used "over there" Can't use dcterms:identifier b/c that is a rdfs:Literal. >>>>>> prov:inContext ex:run2; ## "over there" Could prov:atLocation be reused? >>>>>> ]; >>>>>> } >>>>>> >>>>> >>>>> Thanks for this, Tim. >>>>> >>>>> First some questions: >>>>> - why a bnode here? >>>> >>>> bnodes are read "the thing that" and _can_ serve as an existential. >>>> >>>>> - Can you explain the dcterms:identifier comment? >>>> >>>> 1) The value is the identifier used in the other bundle. >>>> 2) The rdfs:range of dcterms:identifier is a literal "http://foo.com", but it is more useful if it is a rdfs:Resource <http://foo.com>. With the former, we know that we can "try to go there" to dereference the URI. >>>> >>>>> >>>>> Now, assuming that this rdf encoding expresses what was originally suggested, some further questions: >>>>> - have we got indeed a ternary alternateOf relation in prov-dm as I suggested? >>>> >>>> Perhaps. The original binary that we now know and love, and a second ternary that "wraps" a URI and a Bundle (that mentions the URI). >>>> The only new things would be: >>>> >>>> 1) The two new predicates prov:identifier and prov:inContext (perhaps that should just be called prov:inBundle -- I was swayed too far towards DCTerms when I chose that this morning). >>>> 2) The new rule to unwrap your ternary DM into this RDF structure. >>>> >>>> >>>>> - or have we got some form of ternary relation isContextualizationOf(e2,e1,bundle)? >>>> >>>> Or, just a binary isContextualized(e1,bundle)? >>>> >>>> And we just stack on an existing alternateOf(e2,e1)... >>>> >>>> >>>> BTW, not really sure where we're going with this. >>>> It feels like we're close to wrapping this up, but worried that we're in some odd local minima. >>>> >>>> Regards, >>>> Tim >>>> >>>> >>>>> >>>>> Thanks, >>>>> Luc >>>>> >>>> >> > > -- > 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 Wednesday, 6 June 2012 16:52:58 UTC