--- a/primer/Primer.html	Sun Nov 04 13:13:39 2012 +0000
+++ b/primer/Primer.html	Sun Nov 04 13:13:53 2012 +0000
@@ -449,6 +449,51 @@
   <section>
    <h3>Alternate Entities and Specialization</h3>
    <p>
+    There is often more than one way to describe something in a record of
+    provenance. Each perspective will be referred to by a separately identified
+    entity, and PROV provides a mechanism for linking the different descriptions of
+    the same thing together through the mechanism of <i>specialization</i>. One
+    entity is a specialization of another entity if it shares the same fixed attributes,
+    with the possible addition of further fixed attributes. This concept is best
+    illustrated through a few use cases, as below.
+   </p>
+   <p>
+    Entities can be mutable things. For example, a webpage is a single
+    entity, W, despite being edited over time. Each version of the webpage is
+    also an entity, W1, W2... To connect an individual version to the webpage
+    in general, we say that the former is a specialization of the latter: W1 is a
+    specialization of W, W2 is a specialization of W, and so on.
+   </p>
+   <p>
+    Two individuals may create provenance referring to the same thing from different
+    perspectives. For example, the author of an article may attribute that article
+    to themselves using PROV while, independently, a reader might quote a fact from that
+    article elsewhere and document this in PROV. If the author later changes the fact,
+    then from the reader's perspective there are now two versions of the article, and
+    they had quoted from the version before the change. From the author's perspective,
+    there is a single article, attributed to themselves. If either of them, or a
+    third party, were to connect the two PROV records, they would say that the
+    article as referred to by the reader is a specialization of the same article
+    as referred to by the author.
+   </p>
+   <p>
+    If a file, F, is copied from one directory to another, we may want to say that
+    these are both the same file, just in a different location. We may say that
+    the file in the first directory, F1, is a specialization of F, and that the
+    file in the second directory, F2, is a specialization of F. Note that it is
+    the context (location) rather than content of the file that changes in this case.
+   </p>
+   <p>
+    The above are just some examples of where we may want to connect entities by
+    saying that they refer to the same thing, but at different levels of specialization.
+    PROV also allows us to more generally draw a connection between two descriptions
+    of the same thing, even if not at different levels of specialization. For example,
+    two versions of the webpage above, W1 and W2, are alternates of each other because
+    they describe the same webpage.
+   </p>
+   <!--
+   <h3>Alternate Entities and Specialization</h3>
+   <p>
     Entities are defined in a flexible way in PROV, allowing for different
     perspectives to be taken as appropriate for the application. The following
     are examples illustrating this idea.
@@ -481,6 +526,7 @@
     with a unique identifier even though it is specified as different alternates 
     throughout the provenance records.
    </p>
+   -->
   </section>   
 
  </section>
@@ -535,6 +581,19 @@
             set_display_by_class('div','provn example','');
             set_display_by_id('hide-provn-examples','');
             set_display_by_id('show-provn-examples','none');" />
+    <input id="hide-provxml-examples" type="button" value="Hide XML Examples"
+           onclick="
+            set_display_by_class('pre','provxml example','none');
+            set_display_by_class('div','provxml example','none');
+            set_display_by_id('hide-provxml-examples','none');
+            set_display_by_id('show-provxml-examples','');" />
+    <input id="show-provxml-examples" type="button" value="Show XML Examples" 
+           style="display:none"
+           onclick="
+            set_display_by_class('pre','provxml example','');
+            set_display_by_class('div','provxml example','');
+            set_display_by_id('hide-provxml-examples','');
+            set_display_by_id('show-provxml-examples','none');" />
    </p> 
   </form>
 
@@ -556,10 +615,10 @@
     <div class="exampleheader">
      <span class="exampleheader"><b>Turtle Example</b>
       <a onclick="
-          set_display_by_class('pre','turtle example','none');
-          set_display_by_class('div','turtle example','none');
-          set_display_by_id('hide-turtle-examples','none');
-          set_display_by_id('show-turtle-examples','');"><u><i>(hide all)</i></u></a>
+       set_display_by_class('pre','turtle example','none');
+       set_display_by_class('div','turtle example','none');
+       set_display_by_id('hide-turtle-examples','none');
+       set_display_by_id('show-turtle-examples','');"><u><i>(hide all)</i></u></a>
      </span></div>
     <pre>
   ex:article     a prov:Entity ;
@@ -574,10 +633,10 @@
     <div class="exampleheader">
      <span class="exampleheader"><b>PROV-N Example</b>
       <a onclick="
-            set_display_by_class('pre','provn example','none');
-            set_display_by_class('div','provn example','none');
-            set_display_by_id('hide-provn-examples','none');
-            set_display_by_id('show-provn-examples','');"><u><i>(hide all)</i></u></a>
+       set_display_by_class('pre','provn example','none');
+       set_display_by_class('div','provn example','none');
+       set_display_by_id('hide-provn-examples','none');
+       set_display_by_id('show-provn-examples','');"><u><i>(hide all)</i></u></a>
      </span></div>
     <pre>
   entity(ex:article, [dcterms:title="Crime rises in cities"])
@@ -587,6 +646,25 @@
   entity(ex:chart1)
     </pre>
    </div>
+   <div class="provxml example">
+    <div class="exampleheader">
+     <span class="exampleheader"><b>XML Example</b>
+      <a onclick="
+       set_display_by_class('pre','provxml example','none');
+       set_display_by_class('div','provxml example','none');
+       set_display_by_id('hide-provxml-examples','none');
+       set_display_by_id('show-provxml-examples','');"><u><i>(hide all)</i></u></a>
+     </span></div>
+    <pre>
+  <prov:entity prov:id="ex:article">
+	<dct:title>Crime rises in cities</dct:title>
+  </prov:entity>
+  <prov:entity prov:id="ex:dataSet1"/>
+  <prov:entity prov:id="ex:regionList"/>
+  <prov:entity prov:id="ex:composition"/>
+  <prov:entity prov:id="ex:chart1"/>
+    </pre>
+   </div>
    <p>
     These statements, in order, refer to the article (<code>ex:article</code>),
     an original data set (<code>ex:dataSet1</code>),
@@ -616,10 +694,10 @@
     <div class="exampleheader">
      <span class="exampleheader"><b>Turtle Example</b>
       <a onclick="
-          set_display_by_class('pre','turtle example','none');
-          set_display_by_class('div','turtle example','none');
-          set_display_by_id('hide-turtle-examples','none');
-          set_display_by_id('show-turtle-examples','');"><u><i>(hide all)</i></u></a>
+       set_display_by_class('pre','turtle example','none');
+       set_display_by_class('div','turtle example','none');
+       set_display_by_id('hide-turtle-examples','none');
+       set_display_by_id('show-turtle-examples','');"><u><i>(hide all)</i></u></a>
      </span></div>
     <pre>
   ex:compile a prov:Activity .
@@ -629,33 +707,43 @@
     <div class="exampleheader">
      <span class="exampleheader"><b>PROV-N Example</b>
       <a onclick="
-            set_display_by_class('pre','provn example','none');
-            set_display_by_class('div','provn example','none');
-            set_display_by_id('hide-provn-examples','none');
-            set_display_by_id('show-provn-examples','');"><u><i>(hide all)</i></u></a>
+       set_display_by_class('pre','provn example','none');
+       set_display_by_class('div','provn example','none');
+       set_display_by_id('hide-provn-examples','none');
+       set_display_by_id('show-provn-examples','');"><u><i>(hide all)</i></u></a>
      </span></div>
     <pre>
   activity(ex:compile)
     </pre>
    </div>
+   <div class="provxml example">
+    <div class="exampleheader">
+     <span class="exampleheader"><b>XML Example</b>
+      <a onclick="
+       set_display_by_class('pre','provxml example','none');
+       set_display_by_class('div','provxml example','none');
+       set_display_by_id('hide-provxml-examples','none');
+       set_display_by_id('show-provxml-examples','');"><u><i>(hide all)</i></u></a>
+     </span></div>
+    <pre>
+  <prov:activity prov:id="ex:compile"/>
+  <prov:activity prov:id="ex:compose"/>
+  <prov:activity prov:id="ex:illustrate"/>
+    </pre>
+   </div>
    <p>
     The provenance also includes reference to the more specific steps involved in this compilation,
     which are first composing the data by region (<code>ex:compose</code>) and then generating the
     chart graphic (<code>ex:illustrate</code>).
    </p>
-   <!--p>
-    Further, the provenance describes the activities involved in generating chart from the data,
-    first composing the data by region (<code>ex:compose</code>) and then generating the
-    chart graphic (<code>ex:illustrate</code>).
-   </p -->
    <div class="turtle example">
     <div class="exampleheader">
      <span class="exampleheader"><b>Turtle Example</b>
       <a onclick="
-          set_display_by_class('pre','turtle example','none');
-          set_display_by_class('div','turtle example','none');
-          set_display_by_id('hide-turtle-examples','none');
-          set_display_by_id('show-turtle-examples','');"><u><i>(hide all)</i></u></a>
+       set_display_by_class('pre','turtle example','none');
+       set_display_by_class('div','turtle example','none');
+       set_display_by_id('hide-turtle-examples','none');
+       set_display_by_id('show-turtle-examples','');"><u><i>(hide all)</i></u></a>
      </span></div>
     <pre>
   ex:compose    a prov:Activity .
@@ -666,16 +754,48 @@
     <div class="exampleheader">
      <span class="exampleheader"><b>PROV-N Example</b>
       <a onclick="
-            set_display_by_class('pre','provn example','none');
-            set_display_by_class('div','provn example','none');
-            set_display_by_id('hide-provn-examples','none');
-            set_display_by_id('show-provn-examples','');"><u><i>(hide all)</i></u></a>
+       set_display_by_class('pre','provn example','none');
+       set_display_by_class('div','provn example','none');
+       set_display_by_id('hide-provn-examples','none');
+       set_display_by_id('show-provn-examples','');"><u><i>(hide all)</i></u></a>
      </span></div>
     <pre>
   activity(ex:compose)
   activity(ex:illustrate)
     </pre>
    </div>
+   <div class="provxml example">
+    <div class="exampleheader">
+     <span class="exampleheader"><b>XML Example</b>
+      <a onclick="
+       set_display_by_class('pre','provxml example','none');
+       set_display_by_class('div','provxml example','none');
+       set_display_by_id('hide-provxml-examples','none');
+       set_display_by_id('show-provxml-examples','');"><u><i>(hide all)</i></u></a>
+     </span></div>
+    <pre>
+  <prov:used>
+    <prov:activity prov:ref="ex:compose"/>
+    <prov:entity prov:ref="ex:dataset1"/>
+  </prov:used>
+  <prov:used>
+    <prov:activity prov:ref="ex:compose"/>
+    <prov:entity prov:ref="ex:regionList"/>
+  </prov:used>
+  <prov:wasGeneratedBy>
+    <prov:entity prov:ref="ex:composition"/>
+    <prov:activity prov:ref="ex:compose"/>
+  </prov:wasGeneratedBy>
+  <prov:used>
+    <prov:activity prov:ref="ex:illustrate"/>
+    <prov:entity prov:ref="ex:composition"/>
+  </prov:used>
+  <prov:wasGeneratedBy>
+    <prov:entity prov:ref="ex:chart1"/>
+    <prov:activity prov:ref="ex:illustrate"/>
+  </prov:wasGeneratedBy>
+    </pre>
+   </div>
    <p>
     In visualizations of the PROV data, activities are depicted as rectangles, as below.
    </p>
@@ -700,10 +820,10 @@
     <div class="exampleheader">
      <span class="exampleheader"><b>Turtle Example</b>
       <a onclick="
-          set_display_by_class('pre','turtle example','none');
-          set_display_by_class('div','turtle example','none');
-          set_display_by_id('hide-turtle-examples','none');
-          set_display_by_id('show-turtle-examples','');"><u><i>(hide all)</i></u></a>
+       set_display_by_class('pre','turtle example','none');
+       set_display_by_class('div','turtle example','none');
+       set_display_by_id('hide-turtle-examples','none');
+       set_display_by_id('show-turtle-examples','');"><u><i>(hide all)</i></u></a>
      </span></div>
     <pre>
   ex:compose      prov:used           ex:dataSet1 ;
@@ -715,10 +835,10 @@
     <div class="exampleheader">
      <span class="exampleheader"><b>PROV-N Example</b>
       <a onclick="
-            set_display_by_class('pre','provn example','none');
-            set_display_by_class('div','provn example','none');
-            set_display_by_id('hide-provn-examples','none');
-            set_display_by_id('show-provn-examples','');"><u><i>(hide all)</i></u></a>
+       set_display_by_class('pre','provn example','none');
+       set_display_by_class('div','provn example','none');
+       set_display_by_id('hide-provn-examples','none');
+       set_display_by_id('show-provn-examples','');"><u><i>(hide all)</i></u></a>
      </span></div>
     <pre>
   used(ex:compose, ex:dataSet1, -)
@@ -730,6 +850,30 @@
      may be expressed in each PROV-N statement.
     </p>
    </div>
+   <div class="provxml example">
+    <div class="exampleheader">
+     <span class="exampleheader"><b>XML Example</b>
+      <a onclick="
+       set_display_by_class('pre','provxml example','none');
+       set_display_by_class('div','provxml example','none');
+       set_display_by_id('hide-provxml-examples','none');
+       set_display_by_id('show-provxml-examples','');"><u><i>(hide all)</i></u></a>
+     </span></div>
+    <pre>
+  <prov:used>
+    <prov:activity prov:ref="ex:compose"/>
+    <prov:entity prov:ref="ex:dataset1"/>
+  </prov:used>
+  <prov:used>
+    <prov:activity prov:ref="ex:compose"/>
+    <prov:entity prov:ref="ex:regionList"/>
+  </prov:used>
+  <prov:wasGeneratedBy>
+    <prov:entity prov:ref="ex:composition"/>
+    <prov:activity prov:ref="ex:compose"/>
+  </prov:wasGeneratedBy>
+    </pre>
+   </div>
    <p>
     Similarly, the chart graphic creation activity (<code>ex:illustrate</code>)
     used the composed data, and the chart was generated by this activity.
@@ -738,10 +882,10 @@
     <div class="exampleheader">
      <span class="exampleheader"><b>Turtle Example</b>
       <a onclick="
-          set_display_by_class('pre','turtle example','none');
-          set_display_by_class('div','turtle example','none');
-          set_display_by_id('hide-turtle-examples','none');
-          set_display_by_id('show-turtle-examples','');"><u><i>(hide all)</i></u></a>
+       set_display_by_class('pre','turtle example','none');
+       set_display_by_class('div','turtle example','none');
+       set_display_by_id('hide-turtle-examples','none');
+       set_display_by_id('show-turtle-examples','');"><u><i>(hide all)</i></u></a>
      </span></div>
     <pre>
   ex:illustrate prov:used           ex:composition .
@@ -752,16 +896,36 @@
     <div class="exampleheader">
      <span class="exampleheader"><b>PROV-N Example</b>
       <a onclick="
-            set_display_by_class('pre','provn example','none');
-            set_display_by_class('div','provn example','none');
-            set_display_by_id('hide-provn-examples','none');
-            set_display_by_id('show-provn-examples','');"><u><i>(hide all)</i></u></a>
+       set_display_by_class('pre','provn example','none');
+       set_display_by_class('div','provn example','none');
+       set_display_by_id('hide-provn-examples','none');
+       set_display_by_id('show-provn-examples','');"><u><i>(hide all)</i></u></a>
      </span></div>
     <pre>
   used(ex:illustrate, ex:composition, -)
   wasGeneratedBy(ex:chart1, ex:illustrate, -)
     </pre>
    </div>
+   <div class="provxml example">
+    <div class="exampleheader">
+     <span class="exampleheader"><b>XML Example</b>
+      <a onclick="
+       set_display_by_class('pre','provxml example','none');
+       set_display_by_class('div','provxml example','none');
+       set_display_by_id('hide-provxml-examples','none');
+       set_display_by_id('show-provxml-examples','');"><u><i>(hide all)</i></u></a>
+     </span></div>
+    <pre>
+  <prov:used>
+    <prov:activity prov:ref="ex:illustrate"/>
+    <prov:entity prov:ref="ex:composition"/>
+  </prov:used>
+  <prov:wasGeneratedBy>
+    <prov:entity prov:ref="ex:chart1"/>
+    <prov:activity prov:ref="ex:illustrate"/>
+  </prov:wasGeneratedBy>
+    </pre>
+   </div>
    <p>
     In visualizing the PROV data, usage and generation are connections between
     entities and activities. The arrows point from the future to the past.
@@ -781,10 +945,10 @@
     <div class="exampleheader">
      <span class="exampleheader"><b>Turtle Example</b>
       <a onclick="
-          set_display_by_class('pre','turtle example','none');
-          set_display_by_class('div','turtle example','none');
-          set_display_by_id('hide-turtle-examples','none');
-          set_display_by_id('show-turtle-examples','');"><u><i>(hide all)</i></u></a>
+       set_display_by_class('pre','turtle example','none');
+       set_display_by_class('div','turtle example','none');
+       set_display_by_id('hide-turtle-examples','none');
+       set_display_by_id('show-turtle-examples','');"><u><i>(hide all)</i></u></a>
      </span></div>
     <pre>
   ex:compose    prov:wasAssociatedWith ex:derek .
@@ -795,16 +959,36 @@
     <div class="exampleheader">
      <span class="exampleheader"><b>PROV-N Example</b>
       <a onclick="
-            set_display_by_class('pre','provn example','none');
-            set_display_by_class('div','provn example','none');
-            set_display_by_id('hide-provn-examples','none');
-            set_display_by_id('show-provn-examples','');"><u><i>(hide all)</i></u></a>
+       set_display_by_class('pre','provn example','none');
+       set_display_by_class('div','provn example','none');
+       set_display_by_id('hide-provn-examples','none');
+       set_display_by_id('show-provn-examples','');"><u><i>(hide all)</i></u></a>
      </span></div>
     <pre>
   wasAssociatedWith(ex:compose, ex:derek, -)
   wasAssociatedWith(ex:illustrate, ex:derek, -)
     </pre>
    </div>
+   <div class="provxml example">
+    <div class="exampleheader">
+     <span class="exampleheader"><b>XML Example</b>
+      <a onclick="
+       set_display_by_class('pre','provxml example','none');
+       set_display_by_class('div','provxml example','none');
+       set_display_by_id('hide-provxml-examples','none');
+       set_display_by_id('show-provxml-examples','');"><u><i>(hide all)</i></u></a>
+     </span></div>
+    <pre>
+  <prov:wasAssociatedWith>
+    <prov:activity prov:ref="ex:compose"/>
+    <prov:agent prov:ref="ex:derek"/>
+  </prov:wasAssociatedWith>
+  <prov:wasAssociatedWith>
+    <prov:activity prov:ref="ex:illustrate"/>
+    <prov:agent prov:ref="ex:derek"/>
+  </prov:wasAssociatedWith>
+    </pre>
+   </div>
    <p>
     The record for Derek provides the
     following description that
@@ -815,10 +999,10 @@
     <div class="exampleheader">
      <span class="exampleheader"><b>Turtle Example</b>
       <a onclick="
-          set_display_by_class('pre','turtle example','none');
-          set_display_by_class('div','turtle example','none');
-          set_display_by_id('hide-turtle-examples','none');
-          set_display_by_id('show-turtle-examples','');"><u><i>(hide all)</i></u></a>
+       set_display_by_class('pre','turtle example','none');
+       set_display_by_class('div','turtle example','none');
+       set_display_by_id('hide-turtle-examples','none');
+       set_display_by_id('show-turtle-examples','');"><u><i>(hide all)</i></u></a>
      </span></div>
     <pre>
   ex:derek a prov:Agent ;
@@ -831,10 +1015,10 @@
     <div class="exampleheader">
      <span class="exampleheader"><b>PROV-N Example</b>
       <a onclick="
-            set_display_by_class('pre','provn example','none');
-            set_display_by_class('div','provn example','none');
-            set_display_by_id('hide-provn-examples','none');
-            set_display_by_id('show-provn-examples','');"><u><i>(hide all)</i></u></a>
+       set_display_by_class('pre','provn example','none');
+       set_display_by_class('div','provn example','none');
+       set_display_by_id('hide-provn-examples','none');
+       set_display_by_id('show-provn-examples','');"><u><i>(hide all)</i></u></a>
      </span></div>
     <pre>
   agent(ex:derek,
@@ -842,6 +1026,23 @@
          foaf:mbox="<mailto:derek@example.org>"])
     </pre>
    </div>
+   <div class="provxml example">
+    <div class="exampleheader">
+     <span class="exampleheader"><b>XML Example</b>
+      <a onclick="
+       set_display_by_class('pre','provxml example','none');
+       set_display_by_class('div','provxml example','none');
+       set_display_by_id('hide-provxml-examples','none');
+       set_display_by_id('show-provxml-examples','');"><u><i>(hide all)</i></u></a>
+     </span></div>
+    <pre>
+  <prov:agent prov:id="ex:derek">
+    <prov:type>prov:Person</prov:type>
+    <foaf:givenName>Derek</foaf:givenName>
+    <foaf:mbox>mailto:derek@example.org</foaf:mbox>
+  </prov:agent>
+    </pre>
+   </div>
    <p>
     Derek works as part of an organization, Chart Generators Inc, and so the provenance
     declares that he acts on their behalf. Note that the organization is itself
@@ -851,10 +1052,10 @@
     <div class="exampleheader">
      <span class="exampleheader"><b>Turtle Example</b>
       <a onclick="
-          set_display_by_class('pre','turtle example','none');
-          set_display_by_class('div','turtle example','none');
-          set_display_by_id('hide-turtle-examples','none');
-          set_display_by_id('show-turtle-examples','');"><u><i>(hide all)</i></u></a>
+       set_display_by_class('pre','turtle example','none');
+       set_display_by_class('div','turtle example','none');
+       set_display_by_id('hide-turtle-examples','none');
+       set_display_by_id('show-turtle-examples','');"><u><i>(hide all)</i></u></a>
      </span></div>
     <pre>
   ex:derek prov:actedOnBehalfOf ex:chartgen .
@@ -867,10 +1068,10 @@
     <div class="exampleheader">
      <span class="exampleheader"><b>PROV-N Example</b>
       <a onclick="
-            set_display_by_class('pre','provn example','none');
-            set_display_by_class('div','provn example','none');
-            set_display_by_id('hide-provn-examples','none');
-            set_display_by_id('show-provn-examples','');"><u><i>(hide all)</i></u></a>
+       set_display_by_class('pre','provn example','none');
+       set_display_by_class('div','provn example','none');
+       set_display_by_id('hide-provn-examples','none');
+       set_display_by_id('show-provn-examples','');"><u><i>(hide all)</i></u></a>
      </span></div>
     <pre>
   agent(ex:chartgen,
@@ -879,6 +1080,27 @@
   actedOnBehalfOf(ex:derek, ex:chartgen, ex:compose)
     </pre>
    </div>
+   <div class="provxml example">
+    <div class="exampleheader">
+     <span class="exampleheader"><b>XML Example</b>
+      <a onclick="
+       set_display_by_class('pre','provxml example','none');
+       set_display_by_class('div','provxml example','none');
+       set_display_by_id('hide-provxml-examples','none');
+       set_display_by_id('show-provxml-examples','');"><u><i>(hide all)</i></u></a>
+     </span></div>
+    <pre>
+  <prov:agent prov:id="ex:chartgen">
+    <prov:type>prov:Organization</prov:type>
+    <foaf:name>Chart Generators Inc</foaf:name>
+  </prov:agent>
+  <prov:actedOnBehalfOf>
+    <prov:delegate prov:ref="ex:derek"/>
+    <prov:responsible prov:ref="ex:chartgen"/>
+    <prov:activity prov:ref="ex:compose"/>
+  </prov:actedOnBehalfOf>
+    </pre>
+   </div>
    <p>
     Finally, there is an explicit statement in the provenance that the chart was
     attributed to Derek.
@@ -887,10 +1109,10 @@
     <div class="exampleheader">
      <span class="exampleheader"><b>Turtle Example</b>
       <a onclick="
-          set_display_by_class('pre','turtle example','none');
-          set_display_by_class('div','turtle example','none');
-          set_display_by_id('hide-turtle-examples','none');
-          set_display_by_id('show-turtle-examples','');"><u><i>(hide all)</i></u></a>
+       set_display_by_class('pre','turtle example','none');
+       set_display_by_class('div','turtle example','none');
+       set_display_by_id('hide-turtle-examples','none');
+       set_display_by_id('show-turtle-examples','');"><u><i>(hide all)</i></u></a>
      </span></div>
     <pre>
   ex:chart1 prov:wasAttributedTo ex:derek .
@@ -900,15 +1122,31 @@
     <div class="exampleheader">
      <span class="exampleheader"><b>PROV-N Example</b>
       <a onclick="
-            set_display_by_class('pre','provn example','none');
-            set_display_by_class('div','provn example','none');
-            set_display_by_id('hide-provn-examples','none');
-            set_display_by_id('show-provn-examples','');"><u><i>(hide all)</i></u></a>
+       set_display_by_class('pre','provn example','none');
+       set_display_by_class('div','provn example','none');
+       set_display_by_id('hide-provn-examples','none');
+       set_display_by_id('show-provn-examples','');"><u><i>(hide all)</i></u></a>
      </span></div>
     <pre>
   wasAttributedTo(ex:chart1, ex:derek)
     </pre>
    </div>
+   <div class="provxml example">
+    <div class="exampleheader">
+     <span class="exampleheader"><b>XML Example</b>
+      <a onclick="
+       set_display_by_class('pre','provxml example','none');
+       set_display_by_class('div','provxml example','none');
+       set_display_by_id('hide-provxml-examples','none');
+       set_display_by_id('show-provxml-examples','');"><u><i>(hide all)</i></u></a>
+     </span></div>
+    <pre>
+  <prov:wasAttributedTo>
+    <prov:entity prov:ref="ex:chart1"/>
+    <prov:agent prov:ref="ex:derek"/>
+  </prov:wasAttributedTo>
+    </pre>
+   </div>
 
    <p>
     We can extend our graphical depiction to show the agents, association and attribution links.
@@ -940,10 +1178,10 @@
     <div class="exampleheader">
      <span class="exampleheader"><b>Turtle Example</b>
       <a onclick="
-          set_display_by_class('pre','turtle example','none');
-          set_display_by_class('div','turtle example','none');
-          set_display_by_id('hide-turtle-examples','none');
-          set_display_by_id('show-turtle-examples','');"><u><i>(hide all)</i></u></a>
+       set_display_by_class('pre','turtle example','none');
+       set_display_by_class('div','turtle example','none');
+       set_display_by_id('hide-turtle-examples','none');
+       set_display_by_id('show-turtle-examples','');"><u><i>(hide all)</i></u></a>
      </span></div>
     <pre>
   ex:dataToCompose        a prov:Role .
@@ -960,10 +1198,10 @@
     <div class="exampleheader">
      <span class="exampleheader"><b>Turtle Example</b>
       <a onclick="
-          set_display_by_class('pre','turtle example','none');
-          set_display_by_class('div','turtle example','none');
-          set_display_by_id('hide-turtle-examples','none');
-          set_display_by_id('show-turtle-examples','');"><u><i>(hide all)</i></u></a>
+       set_display_by_class('pre','turtle example','none');
+       set_display_by_class('div','turtle example','none');
+       set_display_by_id('hide-turtle-examples','none');
+       set_display_by_id('show-turtle-examples','');"><u><i>(hide all)</i></u></a>
      </span></div>
     <pre>
   ex:compose prov:used ex:dataSet1 .
@@ -985,10 +1223,10 @@
     <div class="exampleheader">
      <span class="exampleheader"><b>Turtle Example</b>
       <a onclick="
-          set_display_by_class('pre','turtle example','none');
-          set_display_by_class('div','turtle example','none');
-          set_display_by_id('hide-turtle-examples','none');
-          set_display_by_id('show-turtle-examples','');"><u><i>(hide all)</i></u></a>
+       set_display_by_class('pre','turtle example','none');
+       set_display_by_class('div','turtle example','none');
+       set_display_by_id('hide-turtle-examples','none');
+       set_display_by_id('show-turtle-examples','');"><u><i>(hide all)</i></u></a>
      </span></div>
     <pre>
   ex:compose prov:qualifiedUsage [
@@ -1006,15 +1244,32 @@
     <div class="exampleheader">
      <span class="exampleheader"><b>PROV-N Example</b>
       <a onclick="
-            set_display_by_class('pre','provn example','none');
-            set_display_by_class('div','provn example','none');
-            set_display_by_id('hide-provn-examples','none');
-            set_display_by_id('show-provn-examples','');"><u><i>(hide all)</i></u></a>
+       set_display_by_class('pre','provn example','none');
+       set_display_by_class('div','provn example','none');
+       set_display_by_id('hide-provn-examples','none');
+       set_display_by_id('show-provn-examples','');"><u><i>(hide all)</i></u></a>
      </span></div>
     <pre>
   used(ex:compose, ex:dataSet1, -, [prov:role='ex:dataToCompose'])
     </pre>
    </div>
+   <div class="provxml example">
+    <div class="exampleheader">
+     <span class="exampleheader"><b>XML Example</b>
+      <a onclick="
+       set_display_by_class('pre','provxml example','none');
+       set_display_by_class('div','provxml example','none');
+       set_display_by_id('hide-provxml-examples','none');
+       set_display_by_id('show-provxml-examples','');"><u><i>(hide all)</i></u></a>
+     </span></div>
+    <pre>
+  <prov:used>
+    <prov:activity prov:ref="ex:compose"/>
+    <prov:entity prov:ref="ex:dataSet1"/>
+    <prov:role>ex:dataToCompose</prov:role>
+  </prov:used>
+    </pre>
+   </div>
    <p>
     This can then be distinguished from the same activity's usage of the list of
     regions because the roles played are different.
@@ -1023,10 +1278,10 @@
     <div class="exampleheader">
      <span class="exampleheader"><b>Turtle Example</b>
       <a onclick="
-          set_display_by_class('pre','turtle example','none');
-          set_display_by_class('div','turtle example','none');
-          set_display_by_id('hide-turtle-examples','none');
-          set_display_by_id('show-turtle-examples','');"><u><i>(hide all)</i></u></a>
+       set_display_by_class('pre','turtle example','none');
+       set_display_by_class('div','turtle example','none');
+       set_display_by_id('hide-turtle-examples','none');
+       set_display_by_id('show-turtle-examples','');"><u><i>(hide all)</i></u></a>
      </span></div>
     <pre>
   ex:compose prov:qualifiedUsage [
@@ -1040,15 +1295,32 @@
     <div class="exampleheader">
      <span class="exampleheader"><b>PROV-N Example</b>
       <a onclick="
-            set_display_by_class('pre','provn example','none');
-            set_display_by_class('div','provn example','none');
-            set_display_by_id('hide-provn-examples','none');
-            set_display_by_id('show-provn-examples','');"><u><i>(hide all)</i></u></a>
+       set_display_by_class('pre','provn example','none');
+       set_display_by_class('div','provn example','none');
+       set_display_by_id('hide-provn-examples','none');
+       set_display_by_id('show-provn-examples','');"><u><i>(hide all)</i></u></a>
      </span></div>
     <pre>
   used(ex:compose, ex:regionList, -, [prov:role='ex:regionsToAggregateBy'])
     </pre>
    </div>
+   <div class="provxml example">
+    <div class="exampleheader">
+     <span class="exampleheader"><b>XML Example</b>
+      <a onclick="
+       set_display_by_class('pre','provxml example','none');
+       set_display_by_class('div','provxml example','none');
+       set_display_by_id('hide-provxml-examples','none');
+       set_display_by_id('show-provxml-examples','');"><u><i>(hide all)</i></u></a>
+     </span></div>
+    <pre>
+  <prov:used>
+    <prov:activity prov:ref="ex:compose"/>
+    <prov:entity prov:ref="ex:regionList"/>
+    <prov:role>ex:regionsToAggregateBy</prov:role>
+  </prov:used>
+    </pre>
+   </div>
    <p>
     Similarly, the provenance includes descriptions that the same activity was
     enacted in a particular way by Derek, so it indicates that he had the role of 
@@ -1059,10 +1331,10 @@
     <div class="exampleheader">
      <span class="exampleheader"><b>Turtle Example</b>
       <a onclick="
-          set_display_by_class('pre','turtle example','none');
-          set_display_by_class('div','turtle example','none');
-          set_display_by_id('hide-turtle-examples','none');
-          set_display_by_id('show-turtle-examples','');"><u><i>(hide all)</i></u></a>
+       set_display_by_class('pre','turtle example','none');
+       set_display_by_class('div','turtle example','none');
+       set_display_by_id('hide-turtle-examples','none');
+       set_display_by_id('show-turtle-examples','');"><u><i>(hide all)</i></u></a>
      </span></div>
     <pre>
   ex:compose prov:qualifiedAssociation [
@@ -1081,16 +1353,38 @@
     <div class="exampleheader">
      <span class="exampleheader"><b>PROV-N Example</b>
       <a onclick="
-            set_display_by_class('pre','provn example','none');
-            set_display_by_class('div','provn example','none');
-            set_display_by_id('hide-provn-examples','none');
-            set_display_by_id('show-provn-examples','');"><u><i>(hide all)</i></u></a>
+       set_display_by_class('pre','provn example','none');
+       set_display_by_class('div','provn example','none');
+       set_display_by_id('hide-provn-examples','none');
+       set_display_by_id('show-provn-examples','');"><u><i>(hide all)</i></u></a>
      </span></div>
     <pre>
   wasAssociatedWith(ex:compose, ex:derek, -, [prov:role='ex:analyst'])
   wasGeneratedBy(ex:composition, ex:compose, -, [prov:role='ex:composedData'])
     </pre>
    </div>
+   <div class="provxml example">
+    <div class="exampleheader">
+     <span class="exampleheader"><b>XML Example</b>
+      <a onclick="
+       set_display_by_class('pre','provxml example','none');
+       set_display_by_class('div','provxml example','none');
+       set_display_by_id('hide-provxml-examples','none');
+       set_display_by_id('show-provxml-examples','');"><u><i>(hide all)</i></u></a>
+     </span></div>
+    <pre>
+  <prov:wasAssociatedWith>
+    <prov:activity prov:ref="ex:compose"/>
+    <prov:agent prov:ref="ex:derek"/>
+    <prov:role>ex:analyst</prov:role>
+  </prov:wasAssociatedWith>
+  <prov:wasGeneratedBy>
+    <prov:entity prov:ref="ex:composition"/>
+    <prov:activity prov:ref="ex:compose"/>
+    <prov:role>ex:composedData</prov:role>
+  </prov:wasGeneratedBy>
+    </pre>
+   </div>
    <p>
     Depicting the above visually, we have the following.
    </p>
@@ -1114,10 +1408,10 @@
     <div class="exampleheader">
      <span class="exampleheader"><b>Turtle Example</b>
       <a onclick="
-          set_display_by_class('pre','turtle example','none');
-          set_display_by_class('div','turtle example','none');
-          set_display_by_id('hide-turtle-examples','none');
-          set_display_by_id('show-turtle-examples','');"><u><i>(hide all)</i></u></a>
+       set_display_by_class('pre','turtle example','none');
+       set_display_by_class('div','turtle example','none');
+       set_display_by_id('hide-turtle-examples','none');
+       set_display_by_id('show-turtle-examples','');"><u><i>(hide all)</i></u></a>
      </span></div>
     <pre>
   ex:dataSet2 a prov:Entity ;
@@ -1128,16 +1422,34 @@
     <div class="exampleheader">
      <span class="exampleheader"><b>PROV-N Example</b>
       <a onclick="
-            set_display_by_class('pre','provn example','none');
-            set_display_by_class('div','provn example','none');
-            set_display_by_id('hide-provn-examples','none');
-            set_display_by_id('show-provn-examples','');"><u><i>(hide all)</i></u></a>
+       set_display_by_class('pre','provn example','none');
+       set_display_by_class('div','provn example','none');
+       set_display_by_id('hide-provn-examples','none');
+       set_display_by_id('show-provn-examples','');"><u><i>(hide all)</i></u></a>
      </span></div>
     <pre>
   entity(ex:dataSet2)
   wasDerivedFrom(ex:dataSet2, ex:dataSet1, [prov:type='prov:Revision'])
     </pre>
    </div>
+   <div class="provxml example">
+    <div class="exampleheader">
+     <span class="exampleheader"><b>XML Example</b>
+      <a onclick="
+       set_display_by_class('pre','provxml example','none');
+       set_display_by_class('div','provxml example','none');
+       set_display_by_id('hide-provxml-examples','none');
+       set_display_by_id('show-provxml-examples','');"><u><i>(hide all)</i></u></a>
+     </span></div>
+    <pre>
+  <entity prov:id="dataSet2"/>
+  <prov:wasDerivedFrom>
+    <prov:generatedEntity prov:ref="ex:dataSet2"/>
+    <prov:usedEntity prov:ref="ex:dataSet1"/>
+    <prov:type>prov:Revision</prov:type>
+  </prov:wasDerivedFrom>
+    </pre>
+   </div>
    <p>
     Derek notices that there is a new dataset available and creates a new chart based on the revised data, 
     using another compilation activity. Betty checks the article again at a
@@ -1149,10 +1461,10 @@
     <div class="exampleheader">
      <span class="exampleheader"><b>Turtle Example</b>
       <a onclick="
-          set_display_by_class('pre','turtle example','none');
-          set_display_by_class('div','turtle example','none');
-          set_display_by_id('hide-turtle-examples','none');
-          set_display_by_id('show-turtle-examples','');"><u><i>(hide all)</i></u></a>
+       set_display_by_class('pre','turtle example','none');
+       set_display_by_class('div','turtle example','none');
+       set_display_by_id('hide-turtle-examples','none');
+       set_display_by_id('show-turtle-examples','');"><u><i>(hide all)</i></u></a>
      </span></div>
     <pre>
   ex:chart2 a prov:Entity ;
@@ -1163,25 +1475,41 @@
     <div class="exampleheader">
      <span class="exampleheader"><b>PROV-N Example</b>
       <a onclick="
-            set_display_by_class('pre','provn example','none');
-            set_display_by_class('div','provn example','none');
-            set_display_by_id('hide-provn-examples','none');
-            set_display_by_id('show-provn-examples','');"><u><i>(hide all)</i></u></a>
+       set_display_by_class('pre','provn example','none');
+       set_display_by_class('div','provn example','none');
+       set_display_by_id('hide-provn-examples','none');
+       set_display_by_id('show-provn-examples','');"><u><i>(hide all)</i></u></a>
      </span></div>
     <pre>
   wasDerivedFrom(ex:chart2, ex:dataSet2)
     </pre>
    </div>
+   <div class="provxml example">
+    <div class="exampleheader">
+     <span class="exampleheader"><b>XML Example</b>
+      <a onclick="
+       set_display_by_class('pre','provxml example','none');
+       set_display_by_class('div','provxml example','none');
+       set_display_by_id('hide-provxml-examples','none');
+       set_display_by_id('show-provxml-examples','');"><u><i>(hide all)</i></u></a>
+     </span></div>
+    <pre>
+  <prov:wasDerivedFrom>
+    <prov:generatedEntity prov:ref="ex:chart2"/>
+    <prov:usedEntity prov:ref="ex:dataSet2"/>
+  </prov:wasDerivedFrom>
+    </pre>
+   </div>
    <p>and that the new chart is a revision of the original one:
    </p>
    <div class="turtle example">
     <div class="exampleheader">
      <span class="exampleheader"><b>Turtle Example</b>
       <a onclick="
-          set_display_by_class('pre','turtle example','none');
-          set_display_by_class('div','turtle example','none');
-          set_display_by_id('hide-turtle-examples','none');
-          set_display_by_id('show-turtle-examples','');"><u><i>(hide all)</i></u></a>
+       set_display_by_class('pre','turtle example','none');
+       set_display_by_class('div','turtle example','none');
+       set_display_by_id('hide-turtle-examples','none');
+       set_display_by_id('show-turtle-examples','');"><u><i>(hide all)</i></u></a>
      </span></div>
     <pre>
   ex:chart2 a prov:Entity ;
@@ -1192,16 +1520,34 @@
     <div class="exampleheader">
      <span class="exampleheader"><b>PROV-N Example</b>
       <a onclick="
-            set_display_by_class('pre','provn example','none');
-            set_display_by_class('div','provn example','none');
-            set_display_by_id('hide-provn-examples','none');
-            set_display_by_id('show-provn-examples','');"><u><i>(hide all)</i></u></a>
+       set_display_by_class('pre','provn example','none');
+       set_display_by_class('div','provn example','none');
+       set_display_by_id('hide-provn-examples','none');
+       set_display_by_id('show-provn-examples','');"><u><i>(hide all)</i></u></a>
      </span></div>
     <pre>
   entity(ex:chart2)
   wasDerivedFrom(ex:chart2, ex:chart1, [prov:type='prov:Revision'])
     </pre>
    </div>
+   <div class="provxml example">
+    <div class="exampleheader">
+     <span class="exampleheader"><b>XML Example</b>
+      <a onclick="
+       set_display_by_class('pre','provxml example','none');
+       set_display_by_class('div','provxml example','none');
+       set_display_by_id('hide-provxml-examples','none');
+       set_display_by_id('show-provxml-examples','');"><u><i>(hide all)</i></u></a>
+     </span></div>
+    <pre>
+  <entity prov:id="chart2"/>
+  <prov:wasDerivedFrom>
+    <prov:generatedEntity prov:ref="ex:chart2"/>
+    <prov:usedEntity prov:ref="ex:chart1"/>
+    <prov:type>prov:Revision</prov:type>
+  </prov:wasDerivedFrom>
+    </pre>
+   </div>
    <p>
     Derivation and revision are connections between entities, and so depicted
     with arrows in our visualization.
@@ -1224,10 +1570,10 @@
     <div class="exampleheader">
      <span class="exampleheader"><b>Turtle Example</b>
       <a onclick="
-          set_display_by_class('pre','turtle example','none');
-          set_display_by_class('div','turtle example','none');
-          set_display_by_id('hide-turtle-examples','none');
-          set_display_by_id('show-turtle-examples','');"><u><i>(hide all)</i></u></a>
+       set_display_by_class('pre','turtle example','none');
+       set_display_by_class('div','turtle example','none');
+       set_display_by_id('hide-turtle-examples','none');
+       set_display_by_id('show-turtle-examples','');"><u><i>(hide all)</i></u></a>
      </span></div>
     <pre>
   ex:correct      a prov:Activity .
@@ -1239,10 +1585,10 @@
     <div class="exampleheader">
      <span class="exampleheader"><b>PROV-N Example</b>
       <a onclick="
-            set_display_by_class('pre','provn example','none');
-            set_display_by_class('div','provn example','none');
-            set_display_by_id('hide-provn-examples','none');
-            set_display_by_id('show-provn-examples','');"><u><i>(hide all)</i></u></a>
+       set_display_by_class('pre','provn example','none');
+       set_display_by_class('div','provn example','none');
+       set_display_by_id('hide-provn-examples','none');
+       set_display_by_id('show-provn-examples','');"><u><i>(hide all)</i></u></a>
      </span></div>
     <pre>
   activity(ex:correct)
@@ -1250,6 +1596,22 @@
   entity(ex:instructions)
     </pre>
    </div>
+   <div class="provxml example">
+    <div class="exampleheader">
+     <span class="exampleheader"><b>XML Example</b>
+      <a onclick="
+       set_display_by_class('pre','provxml example','none');
+       set_display_by_class('div','provxml example','none');
+       set_display_by_id('hide-provxml-examples','none');
+       set_display_by_id('show-provxml-examples','');"><u><i>(hide all)</i></u></a>
+     </span></div>
+    <pre>
+  <prov:activity prov:id="ex:correct"/>
+  <prov:agent prov:id="ex:edith">
+    <prov:type>prov:Person</prov:type>
+  </prov:agent>
+    </pre>
+   </div>
    <div class="turtle example">
     <p>
      The connection between them is expressed in PROV-O using a qualified association giving details of
@@ -1259,10 +1621,10 @@
     <div class="exampleheader">
      <span class="exampleheader"><b>Turtle Example</b>
       <a onclick="
-          set_display_by_class('pre','turtle example','none');
-          set_display_by_class('div','turtle example','none');
-          set_display_by_id('hide-turtle-examples','none');
-          set_display_by_id('show-turtle-examples','');"><u><i>(hide all)</i></u></a>
+       set_display_by_class('pre','turtle example','none');
+       set_display_by_class('div','turtle example','none');
+       set_display_by_id('hide-turtle-examples','none');
+       set_display_by_id('show-turtle-examples','');"><u><i>(hide all)</i></u></a>
      </span></div>
     <pre>
   ex:correct prov:qualifiedAssociation [
@@ -1280,16 +1642,37 @@
     <div class="exampleheader">
      <span class="exampleheader"><b>PROV-N Example</b>
       <a onclick="
-            set_display_by_class('pre','provn example','none');
-            set_display_by_class('div','provn example','none');
-            set_display_by_id('hide-provn-examples','none');
-            set_display_by_id('show-provn-examples','');"><u><i>(hide all)</i></u></a>
+       set_display_by_class('pre','provn example','none');
+       set_display_by_class('div','provn example','none');
+       set_display_by_id('hide-provn-examples','none');
+       set_display_by_id('show-provn-examples','');"><u><i>(hide all)</i></u></a>
      </span></div>
     <pre>
   wasAssociatedWith(ex:correct, ex:edith, ex:instructions)
   wasGeneratedBy(ex:dataSet2, ex:correct, -)
     </pre>
    </div>
+   <div class="provxml example">
+    <div class="exampleheader">
+     <span class="exampleheader"><b>XML Example</b>
+      <a onclick="
+       set_display_by_class('pre','provxml example','none');
+       set_display_by_class('div','provxml example','none');
+       set_display_by_id('hide-provxml-examples','none');
+       set_display_by_id('show-provxml-examples','');"><u><i>(hide all)</i></u></a>
+     </span></div>
+    <pre>
+  <prov:wasAssociatedWith>
+    <prov:activity prov:ref="ex:correct"/>
+    <prov:agent prov:ref="ex:edith"/>
+    <prov:plan>ex:instructions</prov:plan>
+  </prov:wasAssociatedWith>
+  <prov:wasGeneratedBy>
+    <prov:entity prov:ref="ex:dataSet2"/>
+    <prov:activity prov:ref="ex:correct"/>
+  </prov:wasGeneratedBy>
+    </pre>
+   </div>
    <p>
     Plans are additional information about the connection from an activity to
     an agent, and so, in our visualization, connect to the link between them.
@@ -1311,10 +1694,10 @@
     <div class="exampleheader">
      <span class="exampleheader"><b>Turtle Example</b>
       <a onclick="
-          set_display_by_class('pre','turtle example','none');
-          set_display_by_class('div','turtle example','none');
-          set_display_by_id('hide-turtle-examples','none');
-          set_display_by_id('show-turtle-examples','');"><u><i>(hide all)</i></u></a>
+       set_display_by_class('pre','turtle example','none');
+       set_display_by_class('div','turtle example','none');
+       set_display_by_id('hide-turtle-examples','none');
+       set_display_by_id('show-turtle-examples','');"><u><i>(hide all)</i></u></a>
      </span></div>
     <pre>
   ex:chart1 prov:generatedAtTime "2012-03-02T10:30:00"^^xsd:dateTime .
@@ -1325,16 +1708,36 @@
     <div class="exampleheader">
      <span class="exampleheader"><b>PROV-N Example</b>
       <a onclick="
-            set_display_by_class('pre','provn example','none');
-            set_display_by_class('div','provn example','none');
-            set_display_by_id('hide-provn-examples','none');
-            set_display_by_id('show-provn-examples','');"><u><i>(hide all)</i></u></a>
+       set_display_by_class('pre','provn example','none');
+       set_display_by_class('div','provn example','none');
+       set_display_by_id('hide-provn-examples','none');
+       set_display_by_id('show-provn-examples','');"><u><i>(hide all)</i></u></a>
      </span></div>
     <pre>
   wasGeneratedBy(ex:chart1, ex:compile,  2012-03-02T10:30:00)
   wasGeneratedBy(ex:chart2, ex:compile2, 2012-04-01T15:21:00)
     </pre>
    </div>
+   <div class="provxml example">
+    <div class="exampleheader">
+     <span class="exampleheader"><b>XML Example</b>
+      <a onclick="
+       set_display_by_class('pre','provxml example','none');
+       set_display_by_class('div','provxml example','none');
+       set_display_by_id('hide-provxml-examples','none');
+       set_display_by_id('show-provxml-examples','');"><u><i>(hide all)</i></u></a>
+     </span></div>
+    <pre>
+  <prov:wasGeneratedBy>
+    <prov:entity prov:ref="ex:chart1"/>
+    <prov:time>2012-03-02T10:30:00</prov:time>
+  </prov:wasGeneratedBy>
+  <prov:wasGeneratedBy>
+    <prov:entity prov:ref="ex:chart2"/>
+    <prov:time>2012-04-01T15:21:00</prov:time>
+  </prov:wasGeneratedBy>
+    </pre>
+   </div>
 
    <p>
     To ensure their procedures are efficient, the agency also wish to know how long the
@@ -1347,10 +1750,10 @@
     <div class="exampleheader">
      <span class="exampleheader"><b>Turtle Example</b>
       <a onclick="
-          set_display_by_class('pre','turtle example','none');
-          set_display_by_class('div','turtle example','none');
-          set_display_by_id('hide-turtle-examples','none');
-          set_display_by_id('show-turtle-examples','');"><u><i>(hide all)</i></u></a>
+       set_display_by_class('pre','turtle example','none');
+       set_display_by_class('div','turtle example','none');
+       set_display_by_id('hide-turtle-examples','none');
+       set_display_by_id('show-turtle-examples','');"><u><i>(hide all)</i></u></a>
      </span></div>
     <pre>
   ex:correct prov:startedAtTime "2012-03-31T09:21:00"^^xsd:dateTime ;
@@ -1361,15 +1764,31 @@
     <div class="exampleheader">
      <span class="exampleheader"><b>PROV-N Example</b>
       <a onclick="
-            set_display_by_class('pre','provn example','none');
-            set_display_by_class('div','provn example','none');
-            set_display_by_id('hide-provn-examples','none');
-            set_display_by_id('show-provn-examples','');"><u><i>(hide all)</i></u></a>
+       set_display_by_class('pre','provn example','none');
+       set_display_by_class('div','provn example','none');
+       set_display_by_id('hide-provn-examples','none');
+       set_display_by_id('show-provn-examples','');"><u><i>(hide all)</i></u></a>
      </span></div>
     <pre>
   activity(ex:correct, 2012-03-31T09:21:00, 2012-04-01T15:21:00)
     </pre>
    </div>
+   <div class="provxml example">
+    <div class="exampleheader">
+     <span class="exampleheader"><b>XML Example</b>
+      <a onclick="
+       set_display_by_class('pre','provxml example','none');
+       set_display_by_class('div','provxml example','none');
+       set_display_by_id('hide-provxml-examples','none');
+       set_display_by_id('show-provxml-examples','');"><u><i>(hide all)</i></u></a>
+     </span></div>
+    <pre>
+  <prov:activity prov:id="ex:correct">
+    <prov:startTime>2012-03-31T09:21:00</prov:startTime>
+    <prov:endTime>2012-04-01T15:21:00</prov:endTime>
+  </prov:activity>
+    </pre>
+   </div>
    <p>
     Time is visualized as additional information regarding activities or the
     links between activities and entities or agents.
@@ -1389,10 +1808,10 @@
     <div class="exampleheader">
      <span class="exampleheader"><b>Turtle Example</b>
       <a onclick="
-          set_display_by_class('pre','turtle example','none');
-          set_display_by_class('div','turtle example','none');
-          set_display_by_id('hide-turtle-examples','none');
-          set_display_by_id('show-turtle-examples','');"><u><i>(hide all)</i></u></a>
+       set_display_by_class('pre','turtle example','none');
+       set_display_by_class('div','turtle example','none');
+       set_display_by_id('hide-turtle-examples','none');
+       set_display_by_id('show-turtle-examples','');"><u><i>(hide all)</i></u></a>
      </span></div>
     <pre>
   ex:blogEntry a prov:Entity ;
@@ -1403,16 +1822,34 @@
     <div class="exampleheader">
      <span class="exampleheader"><b>PROV-N Example</b>
       <a onclick="
-            set_display_by_class('pre','provn example','none');
-            set_display_by_class('div','provn example','none');
-            set_display_by_id('hide-provn-examples','none');
-            set_display_by_id('show-provn-examples','');"><u><i>(hide all)</i></u></a>
+       set_display_by_class('pre','provn example','none');
+       set_display_by_class('div','provn example','none');
+       set_display_by_id('hide-provn-examples','none');
+       set_display_by_id('show-provn-examples','');"><u><i>(hide all)</i></u></a>
      </span></div>
     <pre>
   entity(ex:blogEntry)
   wasDerivedFrom(ex:blogEntry, ex:article, [prov:type='prov:Quotation'])
     </pre>
    </div>
+   <div class="provxml example">
+    <div class="exampleheader">
+     <span class="exampleheader"><b>XML Example</b>
+      <a onclick="
+       set_display_by_class('pre','provxml example','none');
+       set_display_by_class('div','provxml example','none');
+       set_display_by_id('hide-provxml-examples','none');
+       set_display_by_id('show-provxml-examples','');"><u><i>(hide all)</i></u></a>
+     </span></div>
+    <pre>
+  <prov:entity prov:id="ex:blogEntry"/>
+  <prov:wasDerivedFrom>
+    <prov:generatedEntity prov:ref="ex:blogEntry"/>
+    <prov:usedEntity prov:ref="ex:article"/>
+    <prov:type>prov:Quotation</prov:type>
+  </prov:wasDerivedFrom>
+    </pre>
+   </div>
    <p>
     The newspaper, from past experience, anticipated that there could be revisions
     to the article, and so created identifiers for both the article in general
@@ -1425,10 +1862,10 @@
     <div class="exampleheader">
      <span class="exampleheader"><b>Turtle Example</b>
       <a onclick="
-          set_display_by_class('pre','turtle example','none');
-          set_display_by_class('div','turtle example','none');
-          set_display_by_id('hide-turtle-examples','none');
-          set_display_by_id('show-turtle-examples','');"><u><i>(hide all)</i></u></a>
+       set_display_by_class('pre','turtle example','none');
+       set_display_by_class('div','turtle example','none');
+       set_display_by_id('hide-turtle-examples','none');
+       set_display_by_id('show-turtle-examples','');"><u><i>(hide all)</i></u></a>
      </span></div>
     <pre>
   ex:articleV1 a prov:Entity ;
@@ -1439,16 +1876,33 @@
     <div class="exampleheader">
      <span class="exampleheader"><b>PROV-N Example</b>
       <a onclick="
-            set_display_by_class('pre','provn example','none');
-            set_display_by_class('div','provn example','none');
-            set_display_by_id('hide-provn-examples','none');
-            set_display_by_id('show-provn-examples','');"><u><i>(hide all)</i></u></a>
+       set_display_by_class('pre','provn example','none');
+       set_display_by_class('div','provn example','none');
+       set_display_by_id('hide-provn-examples','none');
+       set_display_by_id('show-provn-examples','');"><u><i>(hide all)</i></u></a>
      </span></div>
     <pre>
   entity(ex:articleV1)
   specializationOf(ex:articleV1, ex:article)
     </pre>
    </div>
+   <div class="provxml example">
+    <div class="exampleheader">
+     <span class="exampleheader"><b>XML Example</b>
+      <a onclick="
+       set_display_by_class('pre','provxml example','none');
+       set_display_by_class('div','provxml example','none');
+       set_display_by_id('hide-provxml-examples','none');
+       set_display_by_id('show-provxml-examples','');"><u><i>(hide all)</i></u></a>
+     </span></div>
+    <pre>
+  <prov:entity prov:id="ex:articleV1"/>
+  <prov:specializationOf>
+    <prov:specificEntity prov:ref="ex:articleV1"/>
+    <prov:generalEntity prov:ref="ex:article"/>
+  </prov:specializationOf>
+    </pre>
+   </div>
    <p>
     Later, after the data set is corrected and the new chart generated, a new version
     of the article is created, <code>ex:articleV2</code>, with its own URI where the article
@@ -1461,30 +1915,50 @@
     <div class="exampleheader">
      <span class="exampleheader"><b>Turtle Example</b>
       <a onclick="
-          set_display_by_class('pre','turtle example','none');
-          set_display_by_class('div','turtle example','none');
-          set_display_by_id('hide-turtle-examples','none');
-          set_display_by_id('show-turtle-examples','');"><u><i>(hide all)</i></u></a>
+       set_display_by_class('pre','turtle example','none');
+       set_display_by_class('div','turtle example','none');
+       set_display_by_id('hide-turtle-examples','none');
+       set_display_by_id('show-turtle-examples','');"><u><i>(hide all)</i></u></a>
      </span></div>
     <pre>
   ex:articleV2 prov:specializationOf ex:article .
-  ex:articleV2 prov:alternateOf      ex:articleV1 .
+  ex:articleV2 prov:alternateOf      ex:articleV1 
     </pre>
    </div>
    <div class="provn example">
     <div class="exampleheader">
      <span class="exampleheader"><b>PROV-N Example</b>
       <a onclick="
-            set_display_by_class('pre','provn example','none');
-            set_display_by_class('div','provn example','none');
-            set_display_by_id('hide-provn-examples','none');
-            set_display_by_id('show-provn-examples','');"><u><i>(hide all)</i></u></a>
+       set_display_by_class('pre','provn example','none');
+       set_display_by_class('div','provn example','none');
+       set_display_by_id('hide-provn-examples','none');
+       set_display_by_id('show-provn-examples','');"><u><i>(hide all)</i></u></a>
      </span></div>
     <pre>
   specializationOf(ex:articleV2, ex:article)
   alternateOf(ex:articleV2, ex:articleV1)
     </pre>
    </div>
+   <div class="provxml example">
+    <div class="exampleheader">
+     <span class="exampleheader"><b>XML Example</b>
+      <a onclick="
+       set_display_by_class('pre','provxml example','none');
+       set_display_by_class('div','provxml example','none');
+       set_display_by_id('hide-provxml-examples','none');
+       set_display_by_id('show-provxml-examples','');"><u><i>(hide all)</i></u></a>
+     </span></div>
+    <pre>
+  <prov:specializationOf>
+    <prov:specificEntity prov:ref="ex:articleV2"/>
+    <prov:generalEntity prov:ref="ex:article"/>
+  </prov:specializationOf>
+  <prov:alternateOf>
+    <prov:alternate1 prov:ref="ex:articleV1"/>
+    <prov:alternate2 prov:ref="ex:articleV2"/>
+  </prov:alternateOf>
+    </pre>
+   </div>
    <p>
     Note that above we could have also
     stated that <code>ex:articleV2</code> was a revision of <code>ex:articleV1</code>,
@@ -1500,7 +1974,7 @@
    <h3>Complete PROV data</h3>
    <p>
     The full set of examples shown above are available in <a href="primer-turtle-examples.txt">PROV-O Turtle format</a>
-    or <a href="primer-provn-examples.txt">PROV-N format</a>.
+    or <a href="primer-provn-examples.txt">PROV-N format</a> or <a href="primer-prov-xml-examples.xml">PROV-XML format</a>.
     We visualize the whole example below.
    </p>
    <img src="images/everything.png" alt="Provenance graph for whole example" width="95%"/>
@@ -1524,6 +1998,8 @@
    <li>Added supporting files containing full PROV-O and PROV-N examples.</li>
    <li>Figures edited so that each CURIEs is on one line rather being split across two.</li>
    <li>Added buttons to hide all Turtle or PROV-N examples throughout document.</li>
+   <li>Added XML examples throughout, including buttons to hide/show and a link to a supporting complete XML file.</li>
+   <li>Rewritten intuition section on specialization and alternate to be clearer and more case-based.</li>
    <li>Fixed minor typos.</li>
   </ul>
  </section>