Hello Graham,
Thanks for your feedback.
We've created ISSUE-475 for this.
http://www.w3.org/2011/prov/track/issues/475
We will now discuss in the Working Group how to address your comment.
Best regards,
Tom
2012/8/9 Graham Klyne <GK@ninebynine.org>
> The PROV-DM and related documents have progressed to last call with
> "mention" and related features marked "at risk" if they are problematic.
> Based on my review of material in the last call drafts, I claim they are
> problematic in the sense that they are confusing and superfluous.
>
> I don't oppose the principle of being able to describe provenance across a
> number of accounts (bundles, contexts), but I think the current
> specifications don't do this adequately and that the work to describe
> contextualized provenance should be deferred so that it can be aligned with
> ongoing W3C work on RDF datasets and their semantics.
>
> I am concerned that attempting premature standardization of features for
> expressing contextualized provenance, which do not sit easily with the
> (current) RDF specifications, may lead to deployments with divergent
> semantics. Something similar happened with RDF reification based on the
> original 1999 RDF recommendation, and it remains a feature of RDF that is
> little-used, despite its intended purpose being recognized as responding to
> significant needs. I see a significant risk that "mention" will suffer the
> same fate.
>
> What follows is my analysis of the current specification relating to
> "mention", and why I think it should be dropped.
>
> ...
>
> Ref: http://www.w3.org/TR/2012/WD-**prov-dm-20120724/<http://www.w3.org/TR/2012/WD-prov-dm-20120724/>(PROV-DM)
>
> Starting with http://www.w3.org/TR/2012/WD-**
> prov-dm-20120724/#term-mention<http://www.w3.org/TR/2012/WD-prov-dm-20120724/#term-mention>
> **:
> [[
> A mention ◊ relation, written mentionOf(infra, supra, b) in PROV-N, has:
> • specificEntity: an identifier (infra) of the entity that is a
> mention of the general entity (supra);
> • generalEntity: an identifier (supra) of the entity that is being
> mentioned.
> • bundle: an identifier (b) of a bundle that contains a description
> of supra and further constitutes one additional aspect presented by infra..
>
> An entity is interpreted with respect to a bundle's description in a
> domain specific manner. The mention of this entity with respect to this
> bundle offers the opportunity to specialize it according to some
> domain-specific interpretation.
>
> A mention of an entity in a bundle results in a specialization of this
> entity with extra fixed aspects, including the bundle that it is described
> in.
> ]]
>
> The description "is interpreted with respect to a bundle's description in
> a domain specific manner" is not the stuff of interoperable specifications.
> To my mind, it invites non-interoperable use.
>
> I can't find a clear description in the document of what is meant by
> "fixed aspects". I understand the intent is that these "fixed aspects" are
> represented as entity attributes (the definition of Entity should clarify
> this if the notion is to be used in other definitions - but I note that
> mentionOf is the only place in PROV-DM that uses the notion). For the
> purpose of what follows, I shall assume an attribute "mentionedIn" to
> represent this additional "fixed aspect".
>
> As defined, I can't see what is claimed by:
> [[
> mentionOf(infra, supra, b)
> ]]
>
> that would not also be claimed by asserting:
> [[
> specializationOf(infra, supra)
> entity(infra, [mentionedIn=b])
> ]]
>
> or just:
> [[
> specializationOf(infra, supra)
> bundle b
> entity(supra)
> ...
> endbundle
> ]]
>
> Looking at Example 46, it seems to me that the "mentionOf" expressions can
> be replaced by "speclializationOf" without loss of expressed information or
> functionality, so in this use "mentionOf" is superfluous.
>
> Example 45 is more involved, but I believe that here too the intended
> meaning can be captured without "mentionOf":
> [[
> 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
>
> bundle tool:analysis01
> agent(tool:Bob-2011-11-16, [perf:rating="good"])
> mentionOf(tool:Bob-2011-11-16, ex:Bob, ex:run1)
>
> agent(tool:Bob-2011-11-17, [perf:rating="bad"])
> mentionOf(tool:Bob-2011-11-17, ex:Bob, ex:run2)
> endBundle
> ]]
>
> In this case, I think the intended meaning is captured by the following:
> [[
> 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
>
> bundle tool:analysis01
> agent(tool:Bob-2011-11-16, [perf:rating="good"])
> specializationOf(tool:Bob-**2011-11-16, ex:Bob)
> wasAssociatedWith(ex:a1, tool:Bob-2011-11-16, [prov:role="controller"])
>
> agent(tool:Bob-2011-11-17, [perf:rating="bad"])
> specializationOf(tool:Bob-**2011-11-17, ex:Bob)
> wasAssociatedWith(ex:a2, tool:Bob-2011-11-17, [prov:role="controller"])
> endBundle
> ]]
>
> If any deeper meaning is intended it is not conveyed by either the
> definition or the example, so at best I think the "mentionOf" construct is
> superfluous, and at worst it is confusing and liable to lead to divergent
> implementations and interpretation.
>
> ...
>
> Ref: http://www.w3.org/TR/2012/WD-**prov-o-20120724/<http://www.w3.org/TR/2012/WD-prov-o-20120724/>(PROV-O)
>
> I also looked at how "mention" is realized in RDF though PROV-O
> http://www.w3.org/TR/2012/WD-**prov-o-20120724/#mentionOf<http://www.w3.org/TR/2012/WD-prov-o-20120724/#mentionOf>
> :
>
> The definition text is pretty much a recapitulation of words from PROV-DM
> ("... another Entity that is a specialization of the former and that
> presents the Bundle as a further additional aspect."), and the example
> given describes a structure that cannot (currently) be expressed in RDF:
> [[
> @prefix rdfs: <http://www.w3.org/2000/01/**rdf-schema#<http://www.w3.org/2000/01/rdf-schema#>>
> .
> @prefix xsd: <http://www.w3.org/2001/**XMLSchema#<http://www.w3.org/2001/XMLSchema#>>
> .
> @prefix owl: <http://www.w3.org/2002/07/**owl#<http://www.w3.org/2002/07/owl#>>
> .
> @prefix prov: <http://www.w3.org/ns/prov#> .
> @prefix tool: <http://example.com/tool/> .
> @prefix perf: <http://example.com/**performance/<http://example.com/performance/>>
> .
> @prefix : <http://example.com/> .
>
> :run2 {
> :activity_2
> a prov:Activity;
> prov:startedAtTime "2011-11-17T10:00:00"^^xsd:**dateTime;
> prov:endedAtTime "2011-11-17T17:00:00"^^xsd:**dateTime;
> prov:wasAssociatedWith :bob;
> .
> }
>
> tool:analysis_01 {
> tool:bob-2011-11-17
> a prov:Agent;
> prov:mentionOf :bob;
> prov:asInBundle :run2;
> perf:rating perf:very-slow;
> .
> }
>
> # This is inferred from prov:mentionOf
> tool:bob-2011-11-17 prov:specializationOf :bob .
>
> # This is inferred from prov:specializationOf
> tool:bob-2011-11-17 prov:alternateOf :bob .
> ]]
>
> In this example, it seems to me that "prov:mentionOf" could be replaced by
> "prov:specializationOf", since that's the only thing that is inferred from
> "prov:mentionOf". So my best guess is that "prov:mentionOf" is superfluous
> here, since it expresses nothing that is not expressed by
> "prov:specializationOf", and the "prov:asInBundle" seems to correspond most
> closely to an attribute on the entity described (cf. "mentionedIn" that I
> posit above).
>
> ...
>
> The text in these last-call documents was the subject of much discussion
> by the working group (cf. http://www.w3.org/2011/prov/**track/issues/385<http://www.w3.org/2011/prov/track/issues/385>,
> where the term used for this feature was originally
> "prov:hasProvenanceIn"). I take the fact that the text still does not
> provide a clear indication of what the construct is intended to convey
> (distinct from "prov:specializationOf") is an indication that the concept
> itself is problematic.
>
> #g
> --
>
>
>