- From: Graham Klyne <graham.klyne@zoo.ox.ac.uk>
- Date: Tue, 14 Aug 2012 11:26:59 +0100
- To: public-prov-wg@w3.org
James, Just for the record, I'm happy with the direction of travel here. #g -- On 14/08/2012 10:44, James Cheney wrote: > Hi Graham, > > > On Aug 13, 2012, at 9:20 AM, Graham Klyne wrote: > >> James, >> >> Mainly, I wanted to say that it will be very helpful if a PROV Dataset is structurally and semantically aligned with a SPARQL/RDF 1.1 Dataset. (SPARQL defines no dataset semantics, but I understand the RDF 1.1 group have adopted the structure for "named graphs" in RDF, so will hopefully also define appropriate RDF semantics.) >> > > Yes, that was what I had in mind. Ivan raised the point that using "Dataset" could be problematic if it turns out that what RDF means by Dataset isn't quite aligned. For now, I have changed to "PROV Document" instead; hopefully we can rename back later, if appropriate. I hope you are also happy with "document" as a compromise. In any case, I expect a RDF dataset that contains PROV-O style RDF will be an example of a "PROV document". > >> From this email, I find the distinction between "instance" and "bundle" to be unclear. Also, when you say a "bundle" is not a "statement", what do you mean here by "statement" - I'm offline, can't check the source right now, so my apologies if this is covered in the document. [later] I see that was a typo, but I'm still left wondering what you mean by "not a statement" > > What we call a "statement" in prov-constraints is an (abstract) syntactic object that matches the "expression" production in prov-n. So an "instance" is a set of (or an RDF graph in prov-o). "bundle" constructs do not match the production so are not part of an instance, just as, by analogy, a RDF named graph is not an RDF triple. > > At some point we were using a mix of "statement" and "expression" for these things, and it got normalized to "statement" for reasons I do not recall. Maybe we should change back to "expression" to match PROV-N. I am happy with either. > > --James > >> >> #g >> -- >> >> On 09/08/2012 18:03, James Cheney wrote: >>> OK. I have done a quick pass to use the term "PROV dataset" and changed all occurrences of "toplevel bundle" to "toplevel instance". I think it's a lot better this way! >>> >>> instance = named set of statements. (Excluding "bundle" constructs, which are not statements.) >>> bundle = named set of statements ~= named graph of PROV-O (hopefully!) >>> dataset = an instance and zero or more bundles (with distinct names). >>> toplevel instance = the set of statements at the toplevel of a dataset >>> >>> Module typos/snags, does this look OK? If so I will close. >>> >>> Perhaps this terminology would be useful in other documents (Luc pointed out PROV-N uses "toplevel bundle" too...). >>> >>> --James >>> >>> On Aug 9, 2012, at 5:41 PM, Miles, Simon wrote: >>> >>>> Hello James, >>>> >>>> I strongly agree with the suggested general solution. I have no objection to "dataset" as a term. If you do still need to talk about bundles at all in PROV-Constraints, I think it should be made clear that the "toplevel" does not need to be named (does not need to be a bundle) to avoid confusion of concepts for different purposes. >>>> >>>> As said on the IRC, I don't think this is a blocking issue, just a matter of text clarification. >>>> >>>> thanks, >>>> Simon >>>> >>>> Dr Simon Miles >>>> Senior Lecturer, Department of Informatics >>>> Kings College London, WC2R 2LS, UK >>>> +44 (0)20 7848 1166 >>>> >>>> Evolutionary Testing of Autonomous Software Agents: >>>> http://eprints.dcs.kcl.ac.uk/1370/ >>>> ________________________________________ >>>> From: James Cheney [jcheney@inf.ed.ac.uk] >>>> Sent: 09 August 2012 17:21 >>>> To: Provenance Working Group >>>> Subject: Re: PROV-ISSUE-474 (instances-and-bundles): Bundles and valid instances [prov-dm-constraints] >>>> >>>> We discussed this in the teleconference and it sounded like it would be appropriate to find better terminology for the following three things, which are currently not clearly distinguished: >>>> >>>> - "the whole PROV instance, including set of toplevel statements and bundles" >>>> - "a particular set of statements, either the toplevel one or one within a bundle" >>>> - bundle = "a named set of provenance statements" >>>> >>>> My initial proposal is "PROV dataset", "PROV instance", and "bundle". I believe "PROV dataset" is roughly analogous to what people call "dataset" in the context of SPARQL; if anyone knows different (or has objections or better suggestions), let me know. >>>> >>>> I'll send another message on this when this is ready for review. >>>> >>>> --James >>>> >>>> On Aug 9, 2012, at 3:45 PM, Provenance Working Group Issue Tracker wrote: >>>> >>>>> PROV-ISSUE-474 (instances-and-bundles): Bundles and valid instances [prov-dm-constraints] >>>>> >>>>> http://www.w3.org/2011/prov/track/issues/474 >>>>> >>>>> Raised by: Simon Miles >>>>> On product: prov-dm-constraints >>>>> >>>>> As requested, I'm submitting an issue where I feel a PROV-Constraints review comment of mine is not completely answered. >>>>> >>>>> My original comment: >>>>>> Bundles >>>>>> ------- >>>>>> F. Section 6.1 seems a bit out of the blue. "The definitions >>>>>> [etc.]... assume a PROV instance with exactly one bundle", and then >>>>>> multiple bundles are handled as exactly the same number of >>>>>> instances. Why? Why is there a connection between number of instances >>>>>> and number of bundles? Why would a bundle be considered to be only one >>>>>> instance? I thought a bundle was an identified set of statements, >>>>>> allowing for provenance of provenance, which seems a distinct matter >>>>>> from whether a set of statements are valid. It seems fine for a user >>>>>> to treat one bundle as one instance if they want to, but there's no >>>>>> reason given why this is the general case. >>>>> >>>>> Response from editors: >>>>>> I am not sure I understand this comment. However, I have rewritten >>>>>> slightly the intro of section 6.1. >>>>>> >>>>>> "The definitions, inferences, and constraints, and the resulting notions of normalization, validity and equivalence, assume a PROV instance that consists of exactly one bundle, the toplevel bundle, containing all PROV statements in the top level of the bundle (that is, not enclosed in a named bundle). In this section, we describe how to deal with PROV instances consisting of multiple named bundles. Briefly, each bundle is handled independently; there is no interaction between bundles from the perspective of applying definitions, inferences, or constraints, computing normal forms, or checking validity or equivalence." >>>>> >>>>> I agree this is clearer, but I don't feel it answers the key questions in my comment. To put my comment another way: you have explained checking validity where an instance consists of one bundle and of multiple bundles. The two other possibilities I see are: >>>>> (a) A bundle containing multiple instances; >>>>> (b) An instance that is a collection of PROV descriptions with no identifier and so is not a bundle, e.g. a provenance service query result. >>>>> >>>>> How do we deal with each of these cases? Or, if they cannot occur, why not? >>>>> >>>>> Thanks, >>>>> Simon >>>>> >>>>> >>>>> >>>>> >>>>> >>>> >>>> >>>> -- >>>> The University of Edinburgh is a charitable body, registered in >>>> Scotland, with registration number SC005336. >>>> >>> >>> >> > >
Received on Tuesday, 14 August 2012 10:27:23 UTC