create xml subdirectory
authorLuc Moreau <l.moreau@ecs.soton.ac.uk>
Sun, 05 Feb 2012 12:53:43 +0000
changeset 1458 559233181a58
parent 1457 be53b48353d8
child 1459 b38dacc68015
child 1460 5dad8ad1e371
create xml subdirectory
xml/examples/pc1-full.xml
xml/schema/prov-20120110.xsd
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/xml/examples/pc1-full.xml	Sun Feb 05 12:53:43 2012 +0000
@@ -0,0 +1,756 @@
+<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
+<prov:container xmlns:prov="http://www.w3.org/ns/prov-xml#" xmlns:prim="http://openprovenance.org/primitives#" xmlns:pc1="http://www.ipaw.info/pc1/" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
+    <prov:records>
+        <prov:activity prov:id="pc1:00000p1">
+            <prov:label>align_warp 1</prov:label>
+            <prov:type xsi:type="xsd:QName">prim:align_warp</prov:type>
+            <prov:type xsi:type="xsd:QName">prim:align_warp</prov:type>
+            <prov:type xsi:type="xsd:int">10</prov:type>
+            <prov:type xsi:type="xsd:int">-10</prov:type>
+            <prov:type xsi:type="xsd:double">-10.55</prov:type>
+            <prov:type xsi:type="xsd:string">abc</prov:type>
+            <prov:type xsi:type="xsd:boolean">true</prov:type>
+            <prov:type xsi:type="xsd:anyURI">http://www.example.com/hi</prov:type>
+        </prov:activity>
+        <prov:activity prov:id="pc1:p2">
+            <prov:label>align_warp 2</prov:label>
+            <prov:type xsi:type="xsd:QName">prim:align_warp</prov:type>
+        </prov:activity>
+        <prov:activity prov:id="pc1:p3">
+            <prov:label>align_warp 3</prov:label>
+            <prov:type xsi:type="xsd:QName">prim:align_warp</prov:type>
+        </prov:activity>
+        <prov:activity prov:id="pc1:p4">
+            <prov:label>align_warp 4</prov:label>
+            <prov:type xsi:type="xsd:QName">prim:align_warp</prov:type>
+        </prov:activity>
+        <prov:activity prov:id="pc1:p5">
+            <prov:label>Reslice 1</prov:label>
+            <prov:type xsi:type="xsd:anyURI">http://openprovenance.org/primitives#reslice</prov:type>
+        </prov:activity>
+        <prov:activity prov:id="pc1:p6">
+            <prov:label>Reslice 2</prov:label>
+            <prov:type xsi:type="xsd:anyURI">http://openprovenance.org/primitives#reslice</prov:type>
+        </prov:activity>
+        <prov:activity prov:id="pc1:p7">
+            <prov:label>Reslice 3</prov:label>
+            <prov:type xsi:type="xsd:anyURI">http://openprovenance.org/primitives#reslice</prov:type>
+        </prov:activity>
+        <prov:activity prov:id="pc1:p8">
+            <prov:label>Reslice 4</prov:label>
+            <prov:type xsi:type="xsd:anyURI">http://openprovenance.org/primitives#reslice</prov:type>
+        </prov:activity>
+        <prov:activity prov:id="pc1:p9">
+            <prov:label>Softmean</prov:label>
+            <prov:type xsi:type="xsd:anyURI">http://openprovenance.org/primitives#softmean</prov:type>
+        </prov:activity>
+        <prov:activity prov:id="pc1:p10">
+            <prov:label>Slicer 1</prov:label>
+            <prov:type xsi:type="xsd:anyURI">http://openprovenance.org/primitives#slicer</prov:type>
+        </prov:activity>
+        <prov:activity prov:id="pc1:p11">
+            <prov:label>Slicer 2</prov:label>
+            <prov:type xsi:type="xsd:anyURI">http://openprovenance.org/primitives#slicer</prov:type>
+        </prov:activity>
+        <prov:activity prov:id="pc1:p12">
+            <prov:label>Slicer 3</prov:label>
+            <prov:type xsi:type="xsd:anyURI">http://openprovenance.org/primitives#slicer</prov:type>
+        </prov:activity>
+        <prov:activity prov:id="pc1:p13">
+            <prov:label>Convert 1</prov:label>
+            <prov:type xsi:type="xsd:anyURI">http://openprovenance.org/primitives#convert</prov:type>
+        </prov:activity>
+        <prov:activity prov:id="pc1:p14">
+            <prov:label>Convert 2</prov:label>
+            <prov:type xsi:type="xsd:anyURI">http://openprovenance.org/primitives#convert</prov:type>
+        </prov:activity>
+        <prov:activity prov:id="pc1:p15">
+            <prov:label>Convert 3</prov:label>
+            <prov:type xsi:type="xsd:anyURI">http://openprovenance.org/primitives#convert</prov:type>
+        </prov:activity>
+        <prov:entity prov:id="pc1:a1">
+            <prov:label>Reference Image</prov:label>
+            <prov:type xsi:type="xsd:anyURI">http://openprovenance.org/primitives#File</prov:type>
+            <pc1:url>http://www.ipaw.info/challenge/reference.img</pc1:url>
+        </prov:entity>
+        <prov:entity prov:id="pc1:a2">
+            <prov:label>Reference Header</prov:label>
+            <prov:type xsi:type="xsd:anyURI">http://openprovenance.org/primitives#File</prov:type>
+            <pc1:url>http://www.ipaw.info/challenge/reference.hdr</pc1:url>
+        </prov:entity>
+        <prov:entity prov:id="pc1:a5">
+            <prov:label>Anatomy I2</prov:label>
+            <prov:type xsi:type="xsd:anyURI">http://openprovenance.org/primitives#File</prov:type>
+            <pc1:url>http://www.ipaw.info/challenge/anatomy2.img</pc1:url>
+        </prov:entity>
+        <prov:entity prov:id="pc1:a6">
+            <prov:label>Anatomy H2</prov:label>
+            <prov:type xsi:type="xsd:anyURI">http://openprovenance.org/primitives#File</prov:type>
+            <pc1:url>http://www.ipaw.info/challenge/anatomy2.hdr</pc1:url>
+        </prov:entity>
+        <prov:entity prov:id="pc1:a3">
+            <prov:label>Anatomy I1</prov:label>
+            <prov:type xsi:type="xsd:anyURI">http://openprovenance.org/primitives#File</prov:type>
+            <pc1:url>http://www.ipaw.info/challenge/anatomy1.img</pc1:url>
+        </prov:entity>
+        <prov:entity prov:id="pc1:a4">
+            <prov:label>Anatomy H1</prov:label>
+            <prov:type xsi:type="xsd:anyURI">http://openprovenance.org/primitives#File</prov:type>
+            <pc1:url>http://www.ipaw.info/challenge/anatomy1.hdr</pc1:url>
+        </prov:entity>
+        <prov:entity prov:id="pc1:a7">
+            <prov:label>Anatomy I3</prov:label>
+            <prov:type xsi:type="xsd:anyURI">http://openprovenance.org/primitives#File</prov:type>
+            <pc1:url>http://www.ipaw.info/challenge/anatomy3.img</pc1:url>
+        </prov:entity>
+        <prov:entity prov:id="pc1:a8">
+            <prov:label>Anatomy H3</prov:label>
+            <prov:type xsi:type="xsd:anyURI">http://openprovenance.org/primitives#File</prov:type>
+            <pc1:url>http://www.ipaw.info/challenge/anatomy3.hdr</pc1:url>
+        </prov:entity>
+        <prov:entity prov:id="pc1:a9">
+            <prov:label>Anatomy I4</prov:label>
+            <prov:type xsi:type="xsd:anyURI">http://openprovenance.org/primitives#File</prov:type>
+            <pc1:url>http://www.ipaw.info/challenge/anatomy4.img</pc1:url>
+        </prov:entity>
+        <prov:entity prov:id="pc1:a10">
+            <prov:label>Anatomy H4</prov:label>
+            <prov:type xsi:type="xsd:anyURI">http://openprovenance.org/primitives#File</prov:type>
+            <pc1:url>http://www.ipaw.info/challenge/anatomy4.hdr</pc1:url>
+        </prov:entity>
+        <prov:entity prov:id="pc1:a11">
+            <prov:label>Warp Params1</prov:label>
+            <prov:type xsi:type="xsd:anyURI">http://openprovenance.org/primitives#File</prov:type>
+            <pc1:url>http://www.ipaw.info/challenge/warp1.warp</pc1:url>
+        </prov:entity>
+        <prov:entity prov:id="pc1:a12">
+            <prov:label>Warp Params2</prov:label>
+            <prov:type xsi:type="xsd:anyURI">http://openprovenance.org/primitives#File</prov:type>
+            <pc1:url>http://www.ipaw.info/challenge/warp2.warp</pc1:url>
+        </prov:entity>
+        <prov:entity prov:id="pc1:a13">
+            <prov:label>Warp Params3</prov:label>
+            <prov:type xsi:type="xsd:anyURI">http://openprovenance.org/primitives#File</prov:type>
+            <pc1:url>http://www.ipaw.info/challenge/warp3.warp</pc1:url>
+        </prov:entity>
+        <prov:entity prov:id="pc1:a14">
+            <prov:label>Warp Params4</prov:label>
+            <prov:type xsi:type="xsd:anyURI">http://openprovenance.org/primitives#File</prov:type>
+            <pc1:url>http://www.ipaw.info/challenge/warp4.warp</pc1:url>
+        </prov:entity>
+        <prov:entity prov:id="pc1:a15">
+            <prov:label>Resliced I1</prov:label>
+            <prov:type xsi:type="xsd:anyURI">http://openprovenance.org/primitives#File</prov:type>
+            <pc1:url>http://www.ipaw.info/challenge/resliced1.img</pc1:url>
+        </prov:entity>
+        <prov:entity prov:id="pc1:a16">
+            <prov:label>Resliced H1</prov:label>
+            <prov:type xsi:type="xsd:anyURI">http://openprovenance.org/primitives#File</prov:type>
+            <pc1:url>http://www.ipaw.info/challenge/resliced1.hdr</pc1:url>
+        </prov:entity>
+        <prov:entity prov:id="pc1:a17">
+            <prov:label>Resliced I2</prov:label>
+            <prov:type xsi:type="xsd:anyURI">http://openprovenance.org/primitives#File</prov:type>
+            <pc1:url>http://www.ipaw.info/challenge/resliced2.img</pc1:url>
+        </prov:entity>
+        <prov:entity prov:id="pc1:a18">
+            <prov:label>Resliced H2</prov:label>
+            <prov:type xsi:type="xsd:anyURI">http://openprovenance.org/primitives#File</prov:type>
+            <pc1:url>http://www.ipaw.info/challenge/resliced2.hdr</pc1:url>
+        </prov:entity>
+        <prov:entity prov:id="pc1:a19">
+            <prov:label>Resliced I3</prov:label>
+            <prov:type xsi:type="xsd:anyURI">http://openprovenance.org/primitives#File</prov:type>
+            <pc1:url>http://www.ipaw.info/challenge/resliced3.img</pc1:url>
+        </prov:entity>
+        <prov:entity prov:id="pc1:a20">
+            <prov:label>Resliced H3</prov:label>
+            <prov:type xsi:type="xsd:anyURI">http://openprovenance.org/primitives#File</prov:type>
+            <pc1:url>http://www.ipaw.info/challenge/resliced3.hdr</pc1:url>
+        </prov:entity>
+        <prov:entity prov:id="pc1:a21">
+            <prov:label>Resliced I4</prov:label>
+            <prov:type xsi:type="xsd:anyURI">http://openprovenance.org/primitives#File</prov:type>
+            <pc1:url>http://www.ipaw.info/challenge/resliced4.img</pc1:url>
+        </prov:entity>
+        <prov:entity prov:id="pc1:a22">
+            <prov:label>Resliced H4</prov:label>
+            <prov:type xsi:type="xsd:anyURI">http://openprovenance.org/primitives#File</prov:type>
+            <pc1:url>http://www.ipaw.info/challenge/resliced4.hdr</pc1:url>
+        </prov:entity>
+        <prov:entity prov:id="pc1:a23">
+            <prov:label>Atlas Image</prov:label>
+            <prov:type xsi:type="xsd:anyURI">http://openprovenance.org/primitives#File</prov:type>
+            <pc1:url>http://www.ipaw.info/challenge/atlas.img</pc1:url>
+        </prov:entity>
+        <prov:entity prov:id="pc1:a24">
+            <prov:label>Atlas Header</prov:label>
+            <prov:type xsi:type="xsd:anyURI">http://openprovenance.org/primitives#File</prov:type>
+            <pc1:url>http://www.ipaw.info/challenge/atlas.hdr</pc1:url>
+        </prov:entity>
+        <prov:entity prov:id="pc1:a25">
+            <prov:label>Atlas X Slice</prov:label>
+            <prov:type xsi:type="xsd:anyURI">http://openprovenance.org/primitives#File</prov:type>
+            <pc1:url>http://www.ipaw.info/challenge/atlas-x.pgm</pc1:url>
+        </prov:entity>
+        <prov:entity prov:id="pc1:a25p">
+            <prov:label>slicer param 1</prov:label>
+            <prov:type xsi:type="xsd:string">http://openprovenance.org/primitives#String</prov:type>
+            <pc1:value>-x .5</pc1:value>
+        </prov:entity>
+        <prov:entity prov:id="pc1:a26">
+            <prov:label>Atlas Y Slice</prov:label>
+            <prov:type xsi:type="xsd:anyURI">http://openprovenance.org/primitives#File</prov:type>
+            <pc1:url>http://www.ipaw.info/challenge/atlas-y.pgm</pc1:url>
+        </prov:entity>
+        <prov:entity prov:id="pc1:a26p">
+            <prov:label>slicer param 2</prov:label>
+            <prov:type xsi:type="xsd:string">http://openprovenance.org/primitives#String</prov:type>
+            <pc1:value>-y .5</pc1:value>
+        </prov:entity>
+        <prov:entity prov:id="pc1:a27">
+            <prov:label>Atlas Z Slice</prov:label>
+            <prov:type xsi:type="xsd:anyURI">http://openprovenance.org/primitives#File</prov:type>
+            <pc1:url>http://www.ipaw.info/challenge/atlas-z.pgm</pc1:url>
+        </prov:entity>
+        <prov:entity prov:id="pc1:a27p">
+            <prov:label>slicer param 3</prov:label>
+            <prov:type xsi:type="xsd:string">http://openprovenance.org/primitives#String</prov:type>
+            <pc1:value>-z .5</pc1:value>
+        </prov:entity>
+        <prov:entity prov:id="pc1:a28">
+            <prov:label>Atlas X Graphic</prov:label>
+            <prov:type xsi:type="xsd:anyURI">http://openprovenance.org/primitives#File</prov:type>
+            <pc1:url>http://www.ipaw.info/challenge/atlas-x.gif</pc1:url>
+        </prov:entity>
+        <prov:entity prov:id="pc1:a29">
+            <prov:label>Atlas Y Graphic</prov:label>
+            <prov:type xsi:type="xsd:anyURI">http://openprovenance.org/primitives#File</prov:type>
+            <pc1:url>http://www.ipaw.info/challenge/atlas-y.gif</pc1:url>
+        </prov:entity>
+        <prov:entity prov:id="pc1:a30">
+            <prov:label>Atlas Z Graphic</prov:label>
+            <prov:type xsi:type="xsd:anyURI">http://openprovenance.org/primitives#File</prov:type>
+            <pc1:url>http://www.ipaw.info/challenge/atlas-z.gif</pc1:url>
+        </prov:entity>
+        <prov:agent prov:id="pc1:ag1">
+            <prov:label>John Doe</prov:label>
+        </prov:agent>
+        <prov:note prov:id="pc1:n1">
+            <pc1:color>red</pc1:color>
+        </prov:note>
+        <prov:dependencies>
+            <prov:used>
+                <prov:activity prov:ref="pc1:00000p1"/>
+                <prov:entity prov:ref="pc1:a3"/>
+                <prov:role xsi:type="xsd:string">img</prov:role>
+            </prov:used>
+            <prov:used>
+                <prov:activity prov:ref="pc1:00000p1"/>
+                <prov:entity prov:ref="pc1:a4"/>
+                <prov:role xsi:type="xsd:string">hdr</prov:role>
+            </prov:used>
+            <prov:used prov:id="pc1:u3">
+                <prov:activity prov:ref="pc1:00000p1"/>
+                <prov:entity prov:ref="pc1:a1"/>
+                <prov:role xsi:type="xsd:string">imgRef</prov:role>
+            </prov:used>
+            <prov:used>
+                <prov:activity prov:ref="pc1:00000p1"/>
+                <prov:entity prov:ref="pc1:a2"/>
+                <prov:role xsi:type="xsd:string">hdrRef</prov:role>
+            </prov:used>
+            <prov:used>
+                <prov:activity prov:ref="pc1:p2"/>
+                <prov:entity prov:ref="pc1:a5"/>
+                <prov:role xsi:type="xsd:string">img</prov:role>
+            </prov:used>
+            <prov:used>
+                <prov:activity prov:ref="pc1:p2"/>
+                <prov:entity prov:ref="pc1:a6"/>
+                <prov:role xsi:type="xsd:string">hdr</prov:role>
+            </prov:used>
+            <prov:used>
+                <prov:activity prov:ref="pc1:p2"/>
+                <prov:entity prov:ref="pc1:a1"/>
+                <prov:role xsi:type="xsd:string">imgRef</prov:role>
+            </prov:used>
+            <prov:used>
+                <prov:activity prov:ref="pc1:p2"/>
+                <prov:entity prov:ref="pc1:a2"/>
+                <prov:role xsi:type="xsd:string">hdrRef</prov:role>
+            </prov:used>
+            <prov:used>
+                <prov:activity prov:ref="pc1:p3"/>
+                <prov:entity prov:ref="pc1:a7"/>
+                <prov:role xsi:type="xsd:string">img</prov:role>
+            </prov:used>
+            <prov:used>
+                <prov:activity prov:ref="pc1:p3"/>
+                <prov:entity prov:ref="pc1:a8"/>
+                <prov:role xsi:type="xsd:string">hdr</prov:role>
+            </prov:used>
+            <prov:used>
+                <prov:activity prov:ref="pc1:p3"/>
+                <prov:entity prov:ref="pc1:a1"/>
+                <prov:role xsi:type="xsd:string">imgRef</prov:role>
+            </prov:used>
+            <prov:used>
+                <prov:activity prov:ref="pc1:p3"/>
+                <prov:entity prov:ref="pc1:a2"/>
+                <prov:role xsi:type="xsd:string">hdrRef</prov:role>
+            </prov:used>
+            <prov:used>
+                <prov:activity prov:ref="pc1:p4"/>
+                <prov:entity prov:ref="pc1:a9"/>
+                <prov:role xsi:type="xsd:string">img</prov:role>
+            </prov:used>
+            <prov:used>
+                <prov:activity prov:ref="pc1:p4"/>
+                <prov:entity prov:ref="pc1:a10"/>
+                <prov:role xsi:type="xsd:string">hdr</prov:role>
+            </prov:used>
+            <prov:used>
+                <prov:activity prov:ref="pc1:p4"/>
+                <prov:entity prov:ref="pc1:a1"/>
+                <prov:role xsi:type="xsd:string">imgRef</prov:role>
+            </prov:used>
+            <prov:used>
+                <prov:activity prov:ref="pc1:p4"/>
+                <prov:entity prov:ref="pc1:a2"/>
+                <prov:role xsi:type="xsd:string">hdrRef</prov:role>
+            </prov:used>
+            <prov:used>
+                <prov:activity prov:ref="pc1:p5"/>
+                <prov:entity prov:ref="pc1:a11"/>
+                <prov:role xsi:type="xsd:string">in</prov:role>
+            </prov:used>
+            <prov:used>
+                <prov:activity prov:ref="pc1:p6"/>
+                <prov:entity prov:ref="pc1:a12"/>
+                <prov:role xsi:type="xsd:string">in</prov:role>
+            </prov:used>
+            <prov:used>
+                <prov:activity prov:ref="pc1:p7"/>
+                <prov:entity prov:ref="pc1:a13"/>
+                <prov:role xsi:type="xsd:string">in</prov:role>
+            </prov:used>
+            <prov:used>
+                <prov:activity prov:ref="pc1:p8"/>
+                <prov:entity prov:ref="pc1:a14"/>
+                <prov:role xsi:type="xsd:string">in</prov:role>
+            </prov:used>
+            <prov:used>
+                <prov:activity prov:ref="pc1:p9"/>
+                <prov:entity prov:ref="pc1:a15"/>
+                <prov:role xsi:type="xsd:string">i1</prov:role>
+            </prov:used>
+            <prov:used>
+                <prov:activity prov:ref="pc1:p9"/>
+                <prov:entity prov:ref="pc1:a16"/>
+                <prov:role xsi:type="xsd:string">h1</prov:role>
+            </prov:used>
+            <prov:used>
+                <prov:activity prov:ref="pc1:p9"/>
+                <prov:entity prov:ref="pc1:a17"/>
+                <prov:role xsi:type="xsd:string">i2</prov:role>
+            </prov:used>
+            <prov:used>
+                <prov:activity prov:ref="pc1:p9"/>
+                <prov:entity prov:ref="pc1:a18"/>
+                <prov:role xsi:type="xsd:string">h2</prov:role>
+            </prov:used>
+            <prov:used>
+                <prov:activity prov:ref="pc1:p9"/>
+                <prov:entity prov:ref="pc1:a19"/>
+                <prov:role xsi:type="xsd:string">i3</prov:role>
+            </prov:used>
+            <prov:used>
+                <prov:activity prov:ref="pc1:p9"/>
+                <prov:entity prov:ref="pc1:a20"/>
+                <prov:role xsi:type="xsd:string">h3</prov:role>
+            </prov:used>
+            <prov:used>
+                <prov:activity prov:ref="pc1:p9"/>
+                <prov:entity prov:ref="pc1:a21"/>
+                <prov:role xsi:type="xsd:string">i4</prov:role>
+            </prov:used>
+            <prov:used>
+                <prov:activity prov:ref="pc1:p9"/>
+                <prov:entity prov:ref="pc1:a22"/>
+                <prov:role xsi:type="xsd:string">h4</prov:role>
+            </prov:used>
+            <prov:used>
+                <prov:activity prov:ref="pc1:p10"/>
+                <prov:entity prov:ref="pc1:a23"/>
+                <prov:role xsi:type="xsd:string">img</prov:role>
+            </prov:used>
+            <prov:used>
+                <prov:activity prov:ref="pc1:p10"/>
+                <prov:entity prov:ref="pc1:a24"/>
+                <prov:role xsi:type="xsd:string">hdr</prov:role>
+            </prov:used>
+            <prov:used>
+                <prov:activity prov:ref="pc1:p11"/>
+                <prov:entity prov:ref="pc1:a23"/>
+                <prov:role xsi:type="xsd:string">img</prov:role>
+            </prov:used>
+            <prov:used>
+                <prov:activity prov:ref="pc1:p11"/>
+                <prov:entity prov:ref="pc1:a24"/>
+                <prov:role xsi:type="xsd:string">hdr</prov:role>
+            </prov:used>
+            <prov:used>
+                <prov:activity prov:ref="pc1:p12"/>
+                <prov:entity prov:ref="pc1:a23"/>
+                <prov:role xsi:type="xsd:string">img</prov:role>
+            </prov:used>
+            <prov:used>
+                <prov:activity prov:ref="pc1:p12"/>
+                <prov:entity prov:ref="pc1:a24"/>
+                <prov:role xsi:type="xsd:string">hdr</prov:role>
+            </prov:used>
+            <prov:used>
+                <prov:activity prov:ref="pc1:p10"/>
+                <prov:entity prov:ref="pc1:a25p"/>
+                <prov:role xsi:type="xsd:string">param</prov:role>
+            </prov:used>
+            <prov:used>
+                <prov:activity prov:ref="pc1:p11"/>
+                <prov:entity prov:ref="pc1:a26p"/>
+                <prov:role xsi:type="xsd:string">param</prov:role>
+            </prov:used>
+            <prov:used>
+                <prov:activity prov:ref="pc1:p12"/>
+                <prov:entity prov:ref="pc1:a27p"/>
+                <prov:role xsi:type="xsd:string">param</prov:role>
+            </prov:used>
+            <prov:used>
+                <prov:activity prov:ref="pc1:p13"/>
+                <prov:entity prov:ref="pc1:a25"/>
+                <prov:role xsi:type="xsd:string">in</prov:role>
+            </prov:used>
+            <prov:used>
+                <prov:activity prov:ref="pc1:p14"/>
+                <prov:entity prov:ref="pc1:a26"/>
+                <prov:role xsi:type="xsd:string">in</prov:role>
+            </prov:used>
+            <prov:used>
+                <prov:activity prov:ref="pc1:p15"/>
+                <prov:entity prov:ref="pc1:a27"/>
+                <prov:role xsi:type="xsd:string">in</prov:role>
+            </prov:used>
+            <prov:wasGeneratedBy prov:id="pc1:wgb1">
+                <prov:entity prov:ref="pc1:a11"/>
+                <prov:activity prov:ref="pc1:00000p1"/>
+                <prov:role xsi:type="xsd:string">out</prov:role>
+            </prov:wasGeneratedBy>
+            <prov:wasGeneratedBy>
+                <prov:entity prov:ref="pc1:a12"/>
+                <prov:activity prov:ref="pc1:p2"/>
+                <prov:role xsi:type="xsd:string">out</prov:role>
+            </prov:wasGeneratedBy>
+            <prov:wasGeneratedBy>
+                <prov:entity prov:ref="pc1:a13"/>
+                <prov:activity prov:ref="pc1:p3"/>
+                <prov:role xsi:type="xsd:string">out</prov:role>
+            </prov:wasGeneratedBy>
+            <prov:wasGeneratedBy>
+                <prov:entity prov:ref="pc1:a14"/>
+                <prov:activity prov:ref="pc1:p4"/>
+                <prov:role xsi:type="xsd:string">out</prov:role>
+            </prov:wasGeneratedBy>
+            <prov:wasGeneratedBy>
+                <prov:entity prov:ref="pc1:a15"/>
+                <prov:activity prov:ref="pc1:p5"/>
+                <prov:role xsi:type="xsd:string">img</prov:role>
+            </prov:wasGeneratedBy>
+            <prov:wasGeneratedBy>
+                <prov:entity prov:ref="pc1:a16"/>
+                <prov:activity prov:ref="pc1:p5"/>
+                <prov:role xsi:type="xsd:string">hdr</prov:role>
+            </prov:wasGeneratedBy>
+            <prov:wasGeneratedBy>
+                <prov:entity prov:ref="pc1:a17"/>
+                <prov:activity prov:ref="pc1:p6"/>
+                <prov:role xsi:type="xsd:string">img</prov:role>
+            </prov:wasGeneratedBy>
+            <prov:wasGeneratedBy>
+                <prov:entity prov:ref="pc1:a18"/>
+                <prov:activity prov:ref="pc1:p6"/>
+                <prov:role xsi:type="xsd:string">hdr</prov:role>
+            </prov:wasGeneratedBy>
+            <prov:wasGeneratedBy>
+                <prov:entity prov:ref="pc1:a19"/>
+                <prov:activity prov:ref="pc1:p7"/>
+                <prov:role xsi:type="xsd:string">img</prov:role>
+            </prov:wasGeneratedBy>
+            <prov:wasGeneratedBy>
+                <prov:entity prov:ref="pc1:a20"/>
+                <prov:activity prov:ref="pc1:p7"/>
+                <prov:role xsi:type="xsd:string">hdr</prov:role>
+            </prov:wasGeneratedBy>
+            <prov:wasGeneratedBy>
+                <prov:entity prov:ref="pc1:a21"/>
+                <prov:activity prov:ref="pc1:p8"/>
+                <prov:role xsi:type="xsd:string">img</prov:role>
+            </prov:wasGeneratedBy>
+            <prov:wasGeneratedBy>
+                <prov:entity prov:ref="pc1:a22"/>
+                <prov:activity prov:ref="pc1:p8"/>
+                <prov:role xsi:type="xsd:string">hdr</prov:role>
+            </prov:wasGeneratedBy>
+            <prov:wasGeneratedBy>
+                <prov:entity prov:ref="pc1:a23"/>
+                <prov:activity prov:ref="pc1:p9"/>
+                <prov:role xsi:type="xsd:string">img</prov:role>
+            </prov:wasGeneratedBy>
+            <prov:wasGeneratedBy>
+                <prov:entity prov:ref="pc1:a24"/>
+                <prov:activity prov:ref="pc1:p9"/>
+                <prov:role xsi:type="xsd:string">hdr</prov:role>
+            </prov:wasGeneratedBy>
+            <prov:wasGeneratedBy>
+                <prov:entity prov:ref="pc1:a25"/>
+                <prov:activity prov:ref="pc1:p10"/>
+                <prov:role xsi:type="xsd:string">out</prov:role>
+            </prov:wasGeneratedBy>
+            <prov:wasGeneratedBy>
+                <prov:entity prov:ref="pc1:a26"/>
+                <prov:activity prov:ref="pc1:p11"/>
+                <prov:role xsi:type="xsd:string">out</prov:role>
+            </prov:wasGeneratedBy>
+            <prov:wasGeneratedBy>
+                <prov:entity prov:ref="pc1:a27"/>
+                <prov:activity prov:ref="pc1:p12"/>
+                <prov:role xsi:type="xsd:string">out</prov:role>
+            </prov:wasGeneratedBy>
+            <prov:wasGeneratedBy>
+                <prov:time>2012-01-31T22:15:54.067Z</prov:time>
+                <prov:entity prov:ref="pc1:a28"/>
+                <prov:activity prov:ref="pc1:p13"/>
+                <prov:role xsi:type="xsd:string">out</prov:role>
+            </prov:wasGeneratedBy>
+            <prov:wasGeneratedBy>
+                <prov:time>2012-01-31T22:15:54.097Z</prov:time>
+                <prov:entity prov:ref="pc1:a29"/>
+                <prov:activity prov:ref="pc1:p14"/>
+                <prov:role xsi:type="xsd:string">out</prov:role>
+            </prov:wasGeneratedBy>
+            <prov:wasGeneratedBy>
+                <prov:time>2012-01-31T22:15:54.097Z</prov:time>
+                <prov:entity prov:ref="pc1:a30"/>
+                <prov:activity prov:ref="pc1:p15"/>
+                <prov:role xsi:type="xsd:string">out</prov:role>
+            </prov:wasGeneratedBy>
+            <prov:wasDerivedFrom>
+                <prov:generation prov:ref="pc1:wgb1"/>
+                <prov:usage prov:ref="pc1:u3"/>
+                <prov:activity prov:ref="pc1:00000p1"/>
+                <prov:effect prov:ref="pc1:a11"/>
+                <prov:cause prov:ref="pc1:a1"/>
+            </prov:wasDerivedFrom>
+            <prov:wasDerivedFrom>
+                <prov:effect prov:ref="pc1:a11"/>
+                <prov:cause prov:ref="pc1:a2"/>
+            </prov:wasDerivedFrom>
+            <prov:wasDerivedFrom>
+                <prov:effect prov:ref="pc1:a11"/>
+                <prov:cause prov:ref="pc1:a3"/>
+            </prov:wasDerivedFrom>
+            <prov:wasDerivedFrom>
+                <prov:effect prov:ref="pc1:a11"/>
+                <prov:cause prov:ref="pc1:a4"/>
+            </prov:wasDerivedFrom>
+            <prov:wasDerivedFrom>
+                <prov:effect prov:ref="pc1:a12"/>
+                <prov:cause prov:ref="pc1:a1"/>
+            </prov:wasDerivedFrom>
+            <prov:wasDerivedFrom>
+                <prov:effect prov:ref="pc1:a12"/>
+                <prov:cause prov:ref="pc1:a2"/>
+            </prov:wasDerivedFrom>
+            <prov:wasDerivedFrom>
+                <prov:effect prov:ref="pc1:a12"/>
+                <prov:cause prov:ref="pc1:a5"/>
+            </prov:wasDerivedFrom>
+            <prov:wasDerivedFrom>
+                <prov:effect prov:ref="pc1:a12"/>
+                <prov:cause prov:ref="pc1:a6"/>
+            </prov:wasDerivedFrom>
+            <prov:wasDerivedFrom>
+                <prov:effect prov:ref="pc1:a13"/>
+                <prov:cause prov:ref="pc1:a1"/>
+            </prov:wasDerivedFrom>
+            <prov:wasDerivedFrom>
+                <prov:effect prov:ref="pc1:a13"/>
+                <prov:cause prov:ref="pc1:a2"/>
+            </prov:wasDerivedFrom>
+            <prov:wasDerivedFrom>
+                <prov:effect prov:ref="pc1:a13"/>
+                <prov:cause prov:ref="pc1:a7"/>
+            </prov:wasDerivedFrom>
+            <prov:wasDerivedFrom>
+                <prov:effect prov:ref="pc1:a13"/>
+                <prov:cause prov:ref="pc1:a8"/>
+            </prov:wasDerivedFrom>
+            <prov:wasDerivedFrom>
+                <prov:effect prov:ref="pc1:a14"/>
+                <prov:cause prov:ref="pc1:a1"/>
+            </prov:wasDerivedFrom>
+            <prov:wasDerivedFrom>
+                <prov:effect prov:ref="pc1:a14"/>
+                <prov:cause prov:ref="pc1:a2"/>
+            </prov:wasDerivedFrom>
+            <prov:wasDerivedFrom>
+                <prov:effect prov:ref="pc1:a14"/>
+                <prov:cause prov:ref="pc1:a9"/>
+            </prov:wasDerivedFrom>
+            <prov:wasDerivedFrom>
+                <prov:effect prov:ref="pc1:a14"/>
+                <prov:cause prov:ref="pc1:a10"/>
+            </prov:wasDerivedFrom>
+            <prov:wasDerivedFrom>
+                <prov:effect prov:ref="pc1:a15"/>
+                <prov:cause prov:ref="pc1:a11"/>
+            </prov:wasDerivedFrom>
+            <prov:wasDerivedFrom>
+                <prov:effect prov:ref="pc1:a16"/>
+                <prov:cause prov:ref="pc1:a11"/>
+            </prov:wasDerivedFrom>
+            <prov:wasDerivedFrom>
+                <prov:effect prov:ref="pc1:a17"/>
+                <prov:cause prov:ref="pc1:a12"/>
+            </prov:wasDerivedFrom>
+            <prov:wasDerivedFrom>
+                <prov:effect prov:ref="pc1:a18"/>
+                <prov:cause prov:ref="pc1:a12"/>
+            </prov:wasDerivedFrom>
+            <prov:wasDerivedFrom>
+                <prov:effect prov:ref="pc1:a19"/>
+                <prov:cause prov:ref="pc1:a13"/>
+            </prov:wasDerivedFrom>
+            <prov:wasDerivedFrom>
+                <prov:effect prov:ref="pc1:a20"/>
+                <prov:cause prov:ref="pc1:a13"/>
+            </prov:wasDerivedFrom>
+            <prov:wasDerivedFrom>
+                <prov:effect prov:ref="pc1:a21"/>
+                <prov:cause prov:ref="pc1:a14"/>
+            </prov:wasDerivedFrom>
+            <prov:wasDerivedFrom>
+                <prov:effect prov:ref="pc1:a22"/>
+                <prov:cause prov:ref="pc1:a14"/>
+            </prov:wasDerivedFrom>
+            <prov:wasDerivedFrom>
+                <prov:effect prov:ref="pc1:a23"/>
+                <prov:cause prov:ref="pc1:a15"/>
+            </prov:wasDerivedFrom>
+            <prov:wasDerivedFrom>
+                <prov:effect prov:ref="pc1:a23"/>
+                <prov:cause prov:ref="pc1:a16"/>
+            </prov:wasDerivedFrom>
+            <prov:wasDerivedFrom>
+                <prov:effect prov:ref="pc1:a23"/>
+                <prov:cause prov:ref="pc1:a17"/>
+            </prov:wasDerivedFrom>
+            <prov:wasDerivedFrom>
+                <prov:effect prov:ref="pc1:a23"/>
+                <prov:cause prov:ref="pc1:a18"/>
+            </prov:wasDerivedFrom>
+            <prov:wasDerivedFrom>
+                <prov:effect prov:ref="pc1:a23"/>
+                <prov:cause prov:ref="pc1:a19"/>
+            </prov:wasDerivedFrom>
+            <prov:wasDerivedFrom>
+                <prov:effect prov:ref="pc1:a23"/>
+                <prov:cause prov:ref="pc1:a20"/>
+            </prov:wasDerivedFrom>
+            <prov:wasDerivedFrom>
+                <prov:effect prov:ref="pc1:a23"/>
+                <prov:cause prov:ref="pc1:a21"/>
+            </prov:wasDerivedFrom>
+            <prov:wasDerivedFrom>
+                <prov:effect prov:ref="pc1:a23"/>
+                <prov:cause prov:ref="pc1:a22"/>
+            </prov:wasDerivedFrom>
+            <prov:wasDerivedFrom>
+                <prov:effect prov:ref="pc1:a24"/>
+                <prov:cause prov:ref="pc1:a15"/>
+            </prov:wasDerivedFrom>
+            <prov:wasDerivedFrom>
+                <prov:effect prov:ref="pc1:a24"/>
+                <prov:cause prov:ref="pc1:a16"/>
+            </prov:wasDerivedFrom>
+            <prov:wasDerivedFrom>
+                <prov:effect prov:ref="pc1:a24"/>
+                <prov:cause prov:ref="pc1:a17"/>
+            </prov:wasDerivedFrom>
+            <prov:wasDerivedFrom>
+                <prov:effect prov:ref="pc1:a24"/>
+                <prov:cause prov:ref="pc1:a18"/>
+            </prov:wasDerivedFrom>
+            <prov:wasDerivedFrom>
+                <prov:effect prov:ref="pc1:a24"/>
+                <prov:cause prov:ref="pc1:a19"/>
+            </prov:wasDerivedFrom>
+            <prov:wasDerivedFrom>
+                <prov:effect prov:ref="pc1:a24"/>
+                <prov:cause prov:ref="pc1:a20"/>
+            </prov:wasDerivedFrom>
+            <prov:wasDerivedFrom>
+                <prov:effect prov:ref="pc1:a24"/>
+                <prov:cause prov:ref="pc1:a21"/>
+            </prov:wasDerivedFrom>
+            <prov:wasDerivedFrom>
+                <prov:effect prov:ref="pc1:a24"/>
+                <prov:cause prov:ref="pc1:a22"/>
+            </prov:wasDerivedFrom>
+            <prov:wasDerivedFrom>
+                <prov:effect prov:ref="pc1:a25"/>
+                <prov:cause prov:ref="pc1:a23"/>
+            </prov:wasDerivedFrom>
+            <prov:wasDerivedFrom>
+                <prov:effect prov:ref="pc1:a25"/>
+                <prov:cause prov:ref="pc1:a24"/>
+            </prov:wasDerivedFrom>
+            <prov:wasDerivedFrom>
+                <prov:effect prov:ref="pc1:a26"/>
+                <prov:cause prov:ref="pc1:a23"/>
+            </prov:wasDerivedFrom>
+            <prov:wasDerivedFrom>
+                <prov:effect prov:ref="pc1:a26"/>
+                <prov:cause prov:ref="pc1:a24"/>
+            </prov:wasDerivedFrom>
+            <prov:wasDerivedFrom>
+                <prov:effect prov:ref="pc1:a27"/>
+                <prov:cause prov:ref="pc1:a23"/>
+            </prov:wasDerivedFrom>
+            <prov:wasDerivedFrom>
+                <prov:effect prov:ref="pc1:a27"/>
+                <prov:cause prov:ref="pc1:a24"/>
+            </prov:wasDerivedFrom>
+            <prov:wasDerivedFrom>
+                <prov:effect prov:ref="pc1:a28"/>
+                <prov:cause prov:ref="pc1:a25"/>
+            </prov:wasDerivedFrom>
+            <prov:wasDerivedFrom>
+                <prov:effect prov:ref="pc1:a29"/>
+                <prov:cause prov:ref="pc1:a26"/>
+            </prov:wasDerivedFrom>
+            <prov:wasDerivedFrom>
+                <prov:effect prov:ref="pc1:a30"/>
+                <prov:cause prov:ref="pc1:a27"/>
+            </prov:wasDerivedFrom>
+            <prov:wasControlledBy>
+                <prov:effect prov:ref="pc1:00000p1"/>
+                <prov:cause prov:ref="pc1:ag1"/>
+                <prov:role xsi:type="xsd:string">user</prov:role>
+            </prov:wasControlledBy>
+            <prov:hasAnnotation>
+                <prov:thing prov:ref="pc1:a1"/>
+                <prov:note prov:ref="pc1:n1"/>
+            </prov:hasAnnotation>
+        </prov:dependencies>
+    </prov:records>
+</prov:container>
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/xml/schema/prov-20120110.xsd	Sun Feb 05 12:53:43 2012 +0000
@@ -0,0 +1,291 @@
+<?xml version="1.0" encoding="utf-8"?>
+
+<!-- 
+
+
+     In this schema, all ids are encoded as QNames. 
+
+     The lexical restrictions over QNames are too strict, and we may want to use CURIEs instead.
+     Downside is that tools won't recognize them.
+
+     Note that if AccountRecord are to disappear from PROV-DM, they
+     should probably also disappear from here.
+
+  -->
+
+
+<xs:schema targetNamespace="http://www.w3.org/ns/prov-xml#"
+           xmlns:xs="http://www.w3.org/2001/XMLSchema"
+           xmlns:prov="http://www.w3.org/ns/prov-xml#"
+           elementFormDefault="qualified"
+           attributeFormDefault="unqualified">
+
+
+
+
+  <xs:element name="activity" type="prov:Activity"/>
+
+  <xs:complexType name="Activity">
+    <xs:sequence>
+      <xs:element name="startTime"    type="xs:dateTime" minOccurs="0"/> 
+      <xs:element name="endTime"      type="xs:dateTime" minOccurs="0"/> 
+      <xs:element ref="prov:label" minOccurs="0"/> 
+      <xs:element ref="prov:type"  minOccurs="0" maxOccurs="unbounded"/> 
+      
+      <xs:any namespace="##other" minOccurs="0" maxOccurs="unbounded"/>
+    </xs:sequence>
+    <xs:attribute ref="prov:id"/>
+  </xs:complexType>
+  
+  
+  <xs:element name="entity" type="prov:Entity"/>
+  <xs:complexType name="Entity">
+    <xs:sequence>
+      <xs:element ref="prov:label" minOccurs="0"/> 
+      <xs:element ref="prov:type"  minOccurs="0" maxOccurs="unbounded"/>
+ 
+      <xs:any namespace="##other" minOccurs="0" maxOccurs="unbounded"/>
+    </xs:sequence>
+    <xs:attribute ref="prov:id"/>
+  </xs:complexType>
+
+
+  
+  <xs:element name="agent" type="prov:Agent"/>
+  <xs:complexType name="Agent">
+    <xs:sequence>
+      <xs:element ref="prov:label" minOccurs="0"/> 
+      <xs:element ref="prov:type"  minOccurs="0" maxOccurs="unbounded"/>
+      <xs:any namespace="##other" minOccurs="0" maxOccurs="unbounded"/>
+    </xs:sequence>
+    <xs:attribute ref="prov:id"/>
+  </xs:complexType>
+  
+  <xs:element name="note" type="prov:Note"/>
+  <xs:complexType name="Note">
+    <xs:sequence>
+      <xs:any namespace="##other" minOccurs="0" maxOccurs="unbounded"/>
+    </xs:sequence>
+    <xs:attribute ref="prov:id"/>
+  </xs:complexType>
+  
+  
+  <xs:complexType name="Used">
+    <xs:sequence>
+      <xs:element name="time"     type="xs:dateTime" minOccurs="0"/>
+      <xs:element name="activity" type="prov:ActivityRef"/>
+      <xs:element name="entity"   type="prov:EntityRef"/>
+      <xs:element ref="prov:type"  minOccurs="0" maxOccurs="unbounded"/>
+
+      <xs:element ref="prov:role"  minOccurs="0" maxOccurs="unbounded"/> 
+      <xs:any namespace="##other" minOccurs="0" maxOccurs="unbounded"/>
+    </xs:sequence>
+    <xs:attribute ref="prov:id"/>
+  </xs:complexType>
+  
+  <xs:complexType name="WasGeneratedBy">
+    <xs:sequence>
+      <xs:element name="time"     type="xs:dateTime" minOccurs="0"/>
+      <xs:element name="entity"   type="prov:EntityRef"/>
+      <xs:element name="activity" type="prov:ActivityRef" minOccurs="0"/>
+      <xs:element ref="prov:type" minOccurs="0" maxOccurs="unbounded"/>
+      <xs:element ref="prov:role"  minOccurs="0" maxOccurs="unbounded"/> 
+      <xs:any namespace="##other" minOccurs="0" maxOccurs="unbounded"/>
+    </xs:sequence>
+    <xs:attribute ref="prov:id"/>
+  </xs:complexType>
+
+
+  <xs:complexType name="WasAssociatedWith">
+    <xs:sequence>
+      <xs:element name="activity" type="prov:ActivityRef"/>
+      <xs:element name="agent"    type="prov:AgentRef"/>
+      <xs:element name="plan"     type="prov:EntityRef" minOccurs="0"/>
+      <xs:element ref="prov:type" minOccurs="0" maxOccurs="unbounded"/>
+      <xs:element ref="prov:role"  minOccurs="0" maxOccurs="unbounded"/> 
+      <xs:any namespace="##other" minOccurs="0" maxOccurs="unbounded"/>
+    </xs:sequence>
+    <xs:attribute ref="prov:id"/>
+  </xs:complexType>
+
+  <xs:complexType name="ActedOnBehalfOf">
+    <xs:sequence>
+      <xs:element name="subordinate" type="prov:AgentRef"/>
+      <xs:element name="responsible" type="prov:AgentRef"/>
+      <xs:element name="activity"    type="prov:ActivityRef"/>
+      <xs:element ref="prov:type"   minOccurs="0" maxOccurs="unbounded"/>
+      <xs:element ref="prov:role"   minOccurs="0" maxOccurs="unbounded"/> 
+      <xs:any namespace="##other"   minOccurs="0" maxOccurs="unbounded"/>
+    </xs:sequence>
+    <xs:attribute ref="prov:id"/>
+  </xs:complexType>
+
+
+  <xs:complexType name="WasControlledBy">
+    <xs:sequence>
+      <xs:element name="startTime"   type="xs:dateTime" minOccurs="0"/>
+      <xs:element name="endTime"     type="xs:dateTime" minOccurs="0"/>
+      <xs:element name="effect"      type="prov:ActivityRef"/>
+      <xs:element name="cause"       type="prov:AgentRef"/>
+      <xs:element ref="prov:type" minOccurs="0" maxOccurs="unbounded"/>
+      <xs:element ref="prov:role"  minOccurs="0" maxOccurs="unbounded"/> 
+      <xs:any namespace="##other" minOccurs="0" maxOccurs="unbounded"/>
+    </xs:sequence>
+    <xs:attribute ref="prov:id"/>
+  </xs:complexType>
+  
+  <xs:complexType name="WasDerivedFrom">
+    <xs:sequence>
+      <xs:element name="generation" type="prov:DependencyRef" minOccurs="0"/>
+      <xs:element name="usage"      type="prov:DependencyRef" minOccurs="0"/>
+      <xs:element name="activity"   type="prov:ActivityRef" minOccurs="0"/>
+      <xs:element name="time"       type="xs:dateTime" minOccurs="0"/> <!-- for imprecise only -->
+      <xs:element name="effect"  type="prov:EntityRef"/>
+      <xs:element name="cause"   type="prov:EntityRef"/>
+      <xs:element ref="prov:type" minOccurs="0" maxOccurs="unbounded"/>
+      <xs:element ref="prov:role" minOccurs="0" maxOccurs="unbounded"/> 
+      <xs:any namespace="##other" minOccurs="0" maxOccurs="unbounded"/>
+    </xs:sequence>
+    <xs:attribute ref="prov:id"/>
+  </xs:complexType>
+  
+  <xs:complexType name="WasInformedBy">
+    <xs:sequence>
+      <xs:element name="time"    type="xs:dateTime" minOccurs="0"/>
+      <xs:element name="effect"  type="prov:ActivityRef"/>
+      <xs:element name="cause"   type="prov:ActivityRef"/>
+      <xs:element ref="prov:type" minOccurs="0" maxOccurs="unbounded"/>
+      <xs:element ref="prov:role" minOccurs="0" maxOccurs="unbounded"/> 
+      <xs:any namespace="##other" minOccurs="0" maxOccurs="unbounded"/>
+    </xs:sequence>
+    <xs:attribute ref="prov:id"/>
+  </xs:complexType>
+
+  <xs:complexType name="AlternateOf">
+    <xs:sequence>
+      <xs:element name="entity2"   type="prov:EntityRef"/>
+      <xs:element name="entity1"   type="prov:EntityRef"/>
+      <xs:element ref="prov:type" minOccurs="0" maxOccurs="unbounded"/>
+      <xs:element ref="prov:role"  minOccurs="0" maxOccurs="unbounded"/> 
+      <xs:any namespace="##other" minOccurs="0" maxOccurs="unbounded"/>
+    </xs:sequence>
+    <xs:attribute ref="prov:id"/>
+  </xs:complexType>
+
+  <xs:complexType name="SpecializationOf">
+    <xs:sequence>
+      <xs:element name="entity2"   type="prov:EntityRef"/>
+      <xs:element name="entity1"   type="prov:EntityRef"/>
+      <xs:element ref="prov:type" minOccurs="0" maxOccurs="unbounded"/>
+      <xs:element ref="prov:role"  minOccurs="0" maxOccurs="unbounded"/> 
+      <xs:any namespace="##other" minOccurs="0" maxOccurs="unbounded"/>
+    </xs:sequence>
+    <xs:attribute ref="prov:id"/>
+  </xs:complexType>
+  
+  <xs:complexType name="HasAnnotation">
+    <xs:sequence>
+      <xs:element name="thing"   type="prov:NoteRef" minOccurs="1"/> <!-- note, just a ref to anything, really -->
+      <xs:element name="note"    type="prov:NoteRef" minOccurs="1"/>
+      <xs:any namespace="##other" minOccurs="0" maxOccurs="unbounded"/>
+    </xs:sequence>
+    <xs:attribute ref="prov:id"/>
+  </xs:complexType>
+
+   <!--
+       Typed literals are encoded by means
+       of xsi:type that represent the prov:datatype.
+
+       -->
+  
+  <xs:element name="label" type="xs:string"/>
+  <xs:element name="role"  type="xs:anySimpleType"/>
+  <xs:element name="type"  type="xs:anySimpleType"/>
+
+  <xs:attribute name="id"  type="xs:QName"/>
+  <xs:attribute name="ref" type="xs:QName"/>
+
+  <xs:complexType name="ActivityRef">
+    <xs:attribute ref="prov:ref"/>
+  </xs:complexType>
+  <xs:complexType name="EntityRef">
+    <xs:attribute ref="prov:ref"/>
+  </xs:complexType>
+  <xs:complexType name="AgentRef">
+    <xs:attribute ref="prov:ref"/>
+  </xs:complexType>
+  
+  <xs:complexType name="DependencyRef">
+    <xs:attribute ref="prov:ref"/>
+  </xs:complexType>
+  
+  <xs:complexType name="NoteRef">
+    <xs:attribute ref="prov:ref"/>
+  </xs:complexType>
+  
+  <xs:complexType name="Dependencies">
+    <xs:sequence>
+      <xs:choice minOccurs="0" maxOccurs="unbounded">
+	<xs:element name="used"               type="prov:Used"/>
+	<xs:element name="wasGeneratedBy"     type="prov:WasGeneratedBy"/>
+	<xs:element name="wasInformedBy"      type="prov:WasInformedBy"/>
+	<xs:element name="wasDerivedFrom"     type="prov:WasDerivedFrom"/>
+	<xs:element name="wasControlledBy"    type="prov:WasControlledBy"/>
+	<xs:element name="wasAssociatedWith"  type="prov:WasAssociatedWith"/>
+	<xs:element name="actedOnBehalfOf"    type="prov:ActedOnBehalfOf"/>
+	<xs:element name="alternateOf"        type="prov:AlternateOf"/>
+	<xs:element name="specializationOf"   type="prov:SpecializationOf"/>
+	<xs:element name="hasAnnotation"      type="prov:HasAnnotation"/>
+      </xs:choice>
+    </xs:sequence>
+  </xs:complexType>
+  
+  
+  <!-- BUNDLES -->
+  
+  <xs:element name="account" type="prov:Account"/>
+  <xs:complexType name="Account">
+    <xs:sequence>
+      <xs:element name="asserter" type="prov:AgentRef"  minOccurs="0" maxOccurs="unbounded"/>
+      <xs:element ref="prov:records"  minOccurs="1" maxOccurs="1"/>
+    </xs:sequence>
+    <xs:attribute ref="prov:id"/>
+  </xs:complexType>
+  
+  <xs:element name="container" type="prov:Container">
+    <xs:annotation>
+      <xs:documentation>A set of assertions about the provenance of things</xs:documentation>
+    </xs:annotation>
+  </xs:element>
+  
+  <!-- a wrapper element for all records, used in Container or Account -->
+  <xs:element name="records" type="prov:Records"/>
+  <xs:complexType name="Records">
+    <xs:sequence>
+      <xs:element ref="prov:account"  minOccurs="0" maxOccurs="unbounded"/>
+      <xs:element ref="prov:activity" minOccurs="0" maxOccurs="unbounded"/>
+      <xs:element ref="prov:entity"   minOccurs="0" maxOccurs="unbounded"/>
+      <xs:element ref="prov:agent"    minOccurs="0" maxOccurs="unbounded"/>
+      <xs:element ref="prov:note"     minOccurs="0" maxOccurs="unbounded"/>
+      <xs:element name="dependencies" type="prov:Dependencies" minOccurs="0"/>
+    </xs:sequence>
+    <xs:attribute ref="prov:id"/>
+  </xs:complexType>
+  
+  <xs:complexType name="Container">
+    <xs:sequence>
+      <xs:element ref="prov:records"  minOccurs="1" maxOccurs="1"/>
+    </xs:sequence>
+    <xs:attribute ref="prov:id"/>
+    <!-- tentative, this could allow us to annotate containers ... -->
+  </xs:complexType>
+  
+  
+  
+  
+  
+  
+  
+  
+  
+</xs:schema>