provn extension
authorLuc Moreau <l.moreau@ecs.soton.ac.uk>
Fri, 06 Jul 2012 08:20:22 +0100
changeset 3750 4509bc7c94f8
parent 3749 90caadf1281b (current diff)
parent 3748 cd85d4c0f40b (diff)
child 3751 b91245aa29c1
provn extension
model/prov-n.html
--- a/model/grammar/ll.html	Wed Jul 04 22:57:33 2012 +0100
+++ b/model/grammar/ll.html	Fri Jul 06 08:20:22 2012 +0100
@@ -487,7 +487,7 @@
 <td><a id="prod-prov_n_LL-extensibilityExpression" name="prod-prov_n_LL-extensibilityExpression"></a>[<span class="prodNo">54</span>]&nbsp;&nbsp;&nbsp;</td>
 <td><code class="production prod">extensibilityExpression</code></td>
 <td>&nbsp;&nbsp;&nbsp;::=&nbsp;&nbsp;&nbsp;</td>
-<td><code class="content"><span class="prod"><a class="grammarRef" href="#prod-prov_n_LL-QUALIFIED_NAME">QUALIFIED_NAME</a></span> "(" <span class="prod"><a class="grammarRef" href="#prod-prov_n_LL-extensibilityArgument">extensibilityArgument</a></span> (( ( "," | ";" ) <span class="prod"><a class="grammarRef" href="#prod-prov_n_LL-extensibilityArgument">extensibilityArgument</a></span> ))* <span class="prod"><a class="grammarRef" href="#prod-prov_n_LL-optionalAttributeValuePairs">optionalAttributeValuePairs</a></span> ")"</code></td>
+<td><code class="content"><span class="prod"><a class="grammarRef" href="#prod-prov_n_LL-QUALIFIED_NAME">QUALIFIED_NAME</a></span> "(" <span class="prod"><a class="grammarRef" href="#prod-prov_n_LL-optionalIdentifier">optionalIdentifier</a></span> <span class="prod"><a class="grammarRef" href="#prod-prov_n_LL-extensibilityArgument">extensibilityArgument</a></span> (( "," <span class="prod"><a class="grammarRef" href="#prod-prov_n_LL-extensibilityArgument">extensibilityArgument</a></span> ))* <span class="prod"><a class="grammarRef" href="#prod-prov_n_LL-optionalAttributeValuePairs">optionalAttributeValuePairs</a></span> ")"</code></td>
 </tr>
 </tbody>
 
--- a/model/grammar/ll.js	Wed Jul 04 22:57:33 2012 +0100
+++ b/model/grammar/ll.js	Fri Jul 06 08:20:22 2012 +0100
@@ -488,7 +488,7 @@
 '<td><a id="prod-extensibilityExpression" name="prod-extensibilityExpression"></a>[<span class="prodNo">54</span>]&nbsp;&nbsp;&nbsp;</td> ' + 
 '<td><code class="production prod">extensibilityExpression</code></td> ' + 
 '<td>&nbsp;&nbsp;&nbsp;::=&nbsp;&nbsp;&nbsp;</td> ' + 
-'<td><code class="content"><span class="prod"><a class="grammarRef" href="#prod-QUALIFIED_NAME">QUALIFIED_NAME</a></span> "(" <span class="prod"><a class="grammarRef" href="#prod-extensibilityArgument">extensibilityArgument</a></span> ( ( "," | ";" ) <span class="prod"><a class="grammarRef" href="#prod-extensibilityArgument">extensibilityArgument</a></span> )* <span class="prod"><a class="grammarRef" href="#prod-optionalAttributeValuePairs">optionalAttributeValuePairs</a></span> ")"</code></td> ' + 
+'<td><code class="content"><span class="prod"><a class="grammarRef" href="#prod-QUALIFIED_NAME">QUALIFIED_NAME</a></span> "(" <span class="prod"><a class="grammarRef" href="#prod-optionalIdentifier">optionalIdentifier</a></span> <span class="prod"><a class="grammarRef" href="#prod-extensibilityArgument">extensibilityArgument</a></span> ( "," <span class="prod"><a class="grammarRef" href="#prod-extensibilityArgument">extensibilityArgument</a></span> )* <span class="prod"><a class="grammarRef" href="#prod-optionalAttributeValuePairs">optionalAttributeValuePairs</a></span> ")"</code></td> ' + 
 '</tr> ' + 
 '</tbody> ' + 
 ' ' + 
--- a/model/grammar/yack/prov-n-LL.bnf	Wed Jul 04 22:57:33 2012 +0100
+++ b/model/grammar/yack/prov-n-LL.bnf	Fri Jul 06 08:20:22 2012 +0100
@@ -164,7 +164,7 @@
 [53] namespace ::= IRI_REF
 
 
-extensibilityExpression ::= QUALIFIED_NAME "(" extensibilityArgument ( ("," | ";") extensibilityArgument)* optionalAttributeValuePairs ")"
+extensibilityExpression ::= QUALIFIED_NAME "(" optionalIdentifier extensibilityArgument ( ","  extensibilityArgument)* optionalAttributeValuePairs ")"
 
 extensibilityArgument ::=
   ( identifierOrMarker | literal | timeZZ  | extensibilityExpression | extensibilityTuple ) 
--- a/model/grammar/yack/prov-n-LL.bnf.html	Wed Jul 04 22:57:33 2012 +0100
+++ b/model/grammar/yack/prov-n-LL.bnf.html	Fri Jul 06 08:20:22 2012 +0100
@@ -486,7 +486,7 @@
 <td><a id="prod-prov_n_LL-extensibilityExpression" name="prod-prov_n_LL-extensibilityExpression"></a>[<span class="prodNo">54</span>]&nbsp;&nbsp;&nbsp;</td>
 <td><code class="production prod">extensibilityExpression</code></td>
 <td>&nbsp;&nbsp;&nbsp;::=&nbsp;&nbsp;&nbsp;</td>
-<td><code class="content"><span class="prod"><a class="grammarRef" href="#prod-prov_n_LL-QUALIFIED_NAME">QUALIFIED_NAME</a></span> "(" <span class="prod"><a class="grammarRef" href="#prod-prov_n_LL-extensibilityArgument">extensibilityArgument</a></span> (( ( "," | ";" ) <span class="prod"><a class="grammarRef" href="#prod-prov_n_LL-extensibilityArgument">extensibilityArgument</a></span> ))* <span class="prod"><a class="grammarRef" href="#prod-prov_n_LL-optionalAttributeValuePairs">optionalAttributeValuePairs</a></span> ")"</code></td>
+<td><code class="content"><span class="prod"><a class="grammarRef" href="#prod-prov_n_LL-QUALIFIED_NAME">QUALIFIED_NAME</a></span> "(" <span class="prod"><a class="grammarRef" href="#prod-prov_n_LL-optionalIdentifier">optionalIdentifier</a></span> <span class="prod"><a class="grammarRef" href="#prod-prov_n_LL-extensibilityArgument">extensibilityArgument</a></span> (( "," <span class="prod"><a class="grammarRef" href="#prod-prov_n_LL-extensibilityArgument">extensibilityArgument</a></span> ))* <span class="prod"><a class="grammarRef" href="#prod-prov_n_LL-optionalAttributeValuePairs">optionalAttributeValuePairs</a></span> ")"</code></td>
 </tr>
 </tbody>
 
--- a/model/prov-dm.html	Wed Jul 04 22:57:33 2012 +0100
+++ b/model/prov-dm.html	Fri Jul 06 08:20:22 2012 +0100
@@ -3258,6 +3258,11 @@
 <pre class="codeexample">
  entity(ex:e1, [ prov:label="This is a human-readable label" ])
 </pre>
+
+<p>The following entity has two label attributes, in French and English.</p>
+<pre class="codeexample">
+ entity(ex:car01, [ prov:label="Voiture 01"@fr, prov:label="Car 01"@en ])
+</pre>
 </div>
 </section>
 
--- a/model/prov-n.html	Wed Jul 04 22:57:33 2012 +0100
+++ b/model/prov-n.html	Fri Jul 06 08:20:22 2012 +0100
@@ -2495,7 +2495,21 @@
 
 <div class="anexample">
 <p>
-TODO: an example of extended syntax.</p>
+<a href="#component6">Collections</a> are sets of entities, whose membership can be expressed using the <span class="name">memberOf</span> relation.  The following example shows how one can express membership for an extension of Collections, namely sets of key-value pairs. The notation is a variation of that used for Collections membership, in which the elements of the set are pairs. The name of the relation is qualified with the extension-specific namespace <span class="name">http://example.org/dictionaries</span>.
+</p>
+<pre class="codeexample">
+  prefix dictExt &lt;http://example.org/dictionaries&gt;
+  dictExt:memberOf(mId; d, {(k1,e1), (k2,e2), (k3,e3)}, []) 
+</pre>
+
+Note that the generic <code class="content"><a class="grammarRef"
+ href="#prod-extensibilityExpression">extensibilityExpression</a></code> production  above allows for alternative notations to be used for expressing membership, if the designers of the extensions so desire. Here is an alternate syntax that is consistent with the productions:
+<pre class="codeexample">
+  prefix dictExt &lt;http://example.org/dictionaries&gt;
+  dictExt:memberOf(mid; d, dictExt:set(dictExt:pair(k1,e1), dictExt:pair(k2,e2), dictExt:pair(k3,e3), [dictExt:uniqueKeys="true"]) 
+</pre>
+
+  
 </div>
 
 
@@ -2598,7 +2612,7 @@
 <h3>Media Type</h3>
 
 <p>
-The media type of PROV-N is <span class="name">text/prov-n</span>. The content encoding of PROV-N content is UTF-8.
+The media type of PROV-N is <span class="name">text/provenance-notation</span>. The content encoding of PROV-N content is UTF-8.
 </p>
 
 <div class="note">
@@ -2615,15 +2629,15 @@
       <dd><a href="http://www.w3.org/2002/06/registering-mediatype">How to Register a Media Type for a W3C Specification</a></dd> 
       <dd><a href="http://www.w3.org/2001/tag/2002/0129-mime">Internet Media Type registration, consistency of use</a><br />TAG Finding 3 June 2002 (Revised 4 September 2002)</dd> 
     </dl> 
-    <p>The Internet Media Type / MIME Type for PROV-N is &quot;text/prov-n&quot;.</p> 
-    <p>It is recommended that PROV-N files have the extension &quot;.pn&quot; (all lowercase) on all platforms.</p> 
+    <p>The Internet Media Type / MIME Type for PROV-N is &quot;text/provenance-notation&quot;.</p> 
+    <p>It is recommended that PROV-N files have the extension &quot;.provn&quot; (all lowercase) on all platforms.</p> 
     <p>It is recommended that PROV-N files stored on Macintosh HFS file systems be given a file type of &quot;TEXT&quot;.</p> 
     <p>This information that follows has been <a href="TBD">submitted to the IESG</a> for review, approval, and registration with IANA.</p> 
     <dl> 
       <dt>Type name:</dt> 
       <dd>text</dd> 
       <dt>Subtype name:</dt> 
-      <dd>prov-n</dd> 
+      <dd>provenance-notation</dd> 
       <dt>Required parameters:</dt> 
       <dd>None</dd> 
       <dt>Optional parameters:</dt> 
@@ -2664,7 +2678,7 @@
       <dt>Magic number(s):</dt> 
       <dd>PROV-N documents may have the strings 'bundle' near the beginning of the document.</dd> 
       <dt>File extension(s):</dt> 
-      <dd>".pn"</dd> 
+      <dd>".provn"</dd> 
       <dt>Base URI:</dt> 
       <dd>There are no constructs in the PROV-N Syntax to change the Base IRI.</dd> 
       <dt>Macintosh file type code(s):</dt> 
--- a/ontology/prov-o-html-sections/description-qualified-terms.inc.html	Wed Jul 04 22:57:33 2012 +0100
+++ b/ontology/prov-o-html-sections/description-qualified-terms.inc.html	Fri Jul 06 08:20:22 2012 +0100
@@ -121,8 +121,13 @@
             <img src="http://dvcs.w3.org/hg/prov/raw-file/tip/ontology/diagram-history/2012-05-03/qualified-patterns.svg"
                  style="width: 70%; min-width: 25em; max-width: 70em" 
                  alt="Express association between an activity and an agent using a binary relationship and an alternatie qualified relationship"/>
-            <div class="figcaption"><a href="#qualified-terms-figure">Figure 3</a>: Illustration of the properties and classes to use (<span style="color: blue">in blue</span>) to qualify unqualified influence relations (dotted black).<br/>
-            <a href="#Quotation">Quotation</a>, <a href="#Revision">Revision</a>, and <a href="#Source">Source</a> are omitted because they are special forms of <a href="#Derivation">Derivation</a> and follow the same pattern as subfigure <strong>g</strong>.</div>
+            <div class="figcaption"><a href="#qualified-terms-figure">Figure 3</a>: 
+            Illustration of patterns for qualifying starting-point relations, using classes prov:Usage, prov:Generation, prov:Invalidation, prov:Communication, 
+            prov:Start, prov:End, prov:Derivation, prov:Delegation, prov:Attribution and prov:Association.
+         Illustration of the properties and classes to use (<span style="color: blue">in blue</span>)
+             to qualify unqualified influence relations (dotted black).<br/>
+            <a href="#Quotation">Quotation</a>, <a href="#Revision">Revision</a>, and <a href="#Source">Source</a> 
+             are omitted because they are special forms of <a href="#Derivation">Derivation</a> and follow the same pattern as subfigure <strong>g</strong>.</div>
        </div>