- From: Stian Soiland-Reyes <soiland-reyes@cs.manchester.ac.uk>
- Date: Mon, 9 Jul 2012 11:12:31 +0100
- To: Luc Moreau <L.Moreau@ecs.soton.ac.uk>
- Cc: Tom De Nies <tom.denies@ugent.be>, public-prov-wg@w3.org
- Message-ID: <CAPRnXtmGO50Z-vc+0TK17LsuJgJ1wFCemGSPyhQ0c1R4APfJjA@mail.gmail.com>
On Thu, Jul 5, 2012 at 5:08 PM, Luc Moreau <L.Moreau@ecs.soton.ac.uk> wrote:
> **
> Hi Stian and Tom,
>
> Thanks for volunteering for reading prov-n.
>
> Find the details below.
>
> In addition, could you look at the two sections recently added.
>
> http://dvcs.w3.org/hg/prov/raw-file/default/model/prov-n.html#extensibility
> http://dvcs.w3.org/hg/prov/raw-file/default/model/prov-n.html#media-type
>
>
I am generally fine with these sections.
extensibilityExpression ::=
QUALIFIED_NAME<http://dvcs.w3.org/hg/prov/raw-file/default/model/prov-n.html#prod-QUALIFIED_NAME>
"(" optionalIdentifier<http://dvcs.w3.org/hg/prov/raw-file/default/model/prov-n.html#prod-optionalIdentifier>
extensibilityArgument<http://dvcs.w3.org/hg/prov/raw-file/default/model/prov-n.html#prod-extensibilityArgument>
(
"," extensibilityArgument<http://dvcs.w3.org/hg/prov/raw-file/default/model/prov-n.html#prod-extensibilityArgument>
)* optionalAttributeValuePairs<http://dvcs.w3.org/hg/prov/raw-file/default/model/prov-n.html#prod-optionalAttributeValuePairs>
")"
extensibilityArgument ::= (
identifierOrMarker<http://dvcs.w3.org/hg/prov/raw-file/default/model/prov-n.html#prod-identifierOrMarker>
| literal<http://dvcs.w3.org/hg/prov/raw-file/default/model/prov-n.html#prod-literal>
| time<http://dvcs.w3.org/hg/prov/raw-file/default/model/prov-n.html#prod-time>
| extensibilityExpression<http://dvcs.w3.org/hg/prov/raw-file/default/model/prov-n.html#prod-extensibilityExpression>
| extensibilityTuple<http://dvcs.w3.org/hg/prov/raw-file/default/model/prov-n.html#prod-extensibilityTuple>
) extensibilityTuple ::= "{"
extensibilityArgument<http://dvcs.w3.org/hg/prov/raw-file/default/model/prov-n.html#prod-extensibilityArgument>
(
"," extensibilityArgument<http://dvcs.w3.org/hg/prov/raw-file/default/model/prov-n.html#prod-extensibilityArgument>
)*
"}"
| "(" extensibilityArgument<http://dvcs.w3.org/hg/prov/raw-file/default/model/prov-n.html#prod-extensibilityArgument>
(
"," extensibilityArgument<http://dvcs.w3.org/hg/prov/raw-file/default/model/prov-n.html#prod-extensibilityArgument>
)*
")"
Inclusion of extensibilityExpression here means this allows arbitrary
nesting (which you can't do with any of the other PROV-N expressions) is
made possible. Why do we want to include this? It could make it much more
difficult to support simply ignoring these expressions - I think that
allows just a bit too much freedom and against the style of PROV-N.
If QUALIFIED_NAME has to be non-empty (which I think it should - to avoid
PROV expressions being included inside the custom structure) , then I would
enforce that in the grammar, and use something like:
<QUALIFIED_NAME_WITH_PREFIX> ::=
PN_PREFIX<http://www.w3.org/TR/rdf-sparql-query/#rPN_PREFIX>
":" PN_LOCAL<http://dvcs.w3.org/hg/prov/raw-file/default/model/prov-n.html#prod-PN_LOCAL>
| PN_PREFIX <http://www.w3.org/TR/rdf-sparql-query/#rPN_PREFIX> ":"
--
Stian Soiland-Reyes, myGrid team
School of Computer Science
The University of Manchester
Received on Monday, 9 July 2012 10:13:23 UTC