Added example test result files. Added three PROV-O example test cases
authorT Dong Huynh <tdh@ecs.soton.ac.uk>
Wed, 21 Nov 2012 22:27:54 +0000
changeset 4922 0d3cacccfdca
parent 4921 4907d5c450d8
child 4923 a2906efdd205
Added example test result files. Added three PROV-O example test cases
testcases/constraints/prov-o-ex1-PASS.provn
testcases/constraints/prov-o-ex1-PASS.provx
testcases/constraints/prov-o-ex1-PASS.ttl
testcases/constraints/prov-o-ex2-PASS.provn
testcases/constraints/prov-o-ex2-PASS.provx
testcases/constraints/prov-o-ex2-PASS.ttl
testcases/constraints/prov-o-ex3-PASS.provn
testcases/constraints/prov-o-ex3-PASS.provx
testcases/constraints/prov-o-ex3-PASS.ttl
testcases/process.html
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/testcases/constraints/prov-o-ex1-PASS.provn	Wed Nov 21 22:27:54 2012 +0000
@@ -0,0 +1,38 @@
+bundle
+
+prefix xsd <http://www.w3.org/2001/XMLSchema>
+prefix prim <http://openprovenance.org/primitives#>
+prefix ex <http://example.org#>
+prefix prov <http://www.w3.org/ns/prov#>
+prefix xsi <http://www.w3.org/2001/XMLSchema-instance>
+prefix foaf <http://xmlns.com/foaf/0.1/>
+
+activity(ex:illustrationActivity,-,-)
+activity(ex:aggregationActivity,2011-07-14T02:01:01.000+01:00,2011-07-14T03:02:02.000+01:00)
+
+agent(ex:civil_action_group)
+agent(ex:national_newspaper_inc,[foaf:name = "National Newspaper, Inc." %% xsd:string])
+agent(ex:government)
+agent(ex:derek,[foaf:givenName = "Derek" %% xsd:string, foaf:mbox = "mailto:derek@example.org" %% xsd:anyURI])
+
+entity(ex:crimeData)
+entity(ex:nationalRegionsList)
+entity(ex:aggregatedByRegions)
+entity(ex:bar_chart)
+
+used(ex:illustrationActivity,ex:aggregatedByRegions,-)
+wasAssociatedWith(ex:illustrationActivity,ex:derek,-)
+wasInformedBy(ex:illustrationActivity,ex:aggregationActivity)
+wasAssociatedWith(ex:aggregationActivity,ex:derek,-)
+used(ex:aggregationActivity,ex:crimeData,-)
+used(ex:aggregationActivity,ex:nationalRegionsList,-)
+wasAttributedTo(ex:crimeData, ex:government)
+actedOnBehalfOf(ex:derek,ex:natonal_newspaper_inc,-)
+wasAttributedTo(ex:nationalRegionsList, ex:civil_action_group)
+wasGeneratedBy(ex:aggregatedByRegions,ex:aggregationActivity,-)
+wasAttributedTo(ex:aggregatedByRegions, ex:derek)
+wasGeneratedBy(ex:bar_chart,ex:illustrationActivity,-)
+wasDerivedFrom(ex:bar_chart, ex:aggregatedByRegions)
+wasAttributedTo(ex:bar_chart, ex:derek)
+
+endBundle
\ No newline at end of file
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/testcases/constraints/prov-o-ex1-PASS.provx	Wed Nov 21 22:27:54 2012 +0000
@@ -0,0 +1,77 @@
+<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
+<prov:document xmlns:prov="http://www.w3.org/ns/prov#" xmlns:ns2="http://openprovenance.org/collection#" xmlns:ns3="http://openprovenance.org/validation#" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:prim="http://openprovenance.org/primitives#" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:pc1="http://www.ipaw.info/pc1/">
+    <prov:activity xmlns:ex="http://example.org#" prov:id="ex:illustrationActivity"/>
+    <prov:activity xmlns:ex="http://example.org#" prov:id="ex:aggregationActivity">
+        <prov:startTime>2011-07-14T02:01:01.000+01:00</prov:startTime>
+        <prov:endTime>2011-07-14T03:02:02.000+01:00</prov:endTime>
+    </prov:activity>
+    <prov:agent xmlns:ex="http://example.org#" prov:id="ex:civil_action_group"/>
+    <prov:agent xmlns:ex="http://example.org#" prov:id="ex:national_newspaper_inc">
+        <foaf:name xmlns:foaf="http://xmlns.com/foaf/0.1/" xsi:type="xsd:string">National Newspaper, Inc.</foaf:name>
+    </prov:agent>
+    <prov:agent xmlns:ex="http://example.org#" prov:id="ex:government"/>
+    <prov:agent xmlns:ex="http://example.org#" prov:id="ex:derek">
+        <foaf:givenName xmlns:foaf="http://xmlns.com/foaf/0.1/" xsi:type="xsd:string">Derek</foaf:givenName>
+        <foaf:mbox xmlns:foaf="http://xmlns.com/foaf/0.1/" xsi:type="xsd:anyURI">mailto:derek@example.org</foaf:mbox>
+    </prov:agent>
+    <prov:entity xmlns:ex="http://example.org#" prov:id="ex:crimeData"/>
+    <prov:entity xmlns:ex="http://example.org#" prov:id="ex:nationalRegionsList"/>
+    <prov:entity xmlns:ex="http://example.org#" prov:id="ex:aggregatedByRegions"/>
+    <prov:entity xmlns:ex="http://example.org#" prov:id="ex:bar_chart"/>
+    <prov:used>
+        <prov:activity xmlns:ex="http://example.org#" prov:ref="ex:illustrationActivity"/>
+        <prov:entity xmlns:ex="http://example.org#" prov:ref="ex:aggregatedByRegions"/>
+    </prov:used>
+    <prov:wasAssociatedWith>
+        <prov:activity xmlns:ex="http://example.org#" prov:ref="ex:illustrationActivity"/>
+        <prov:agent xmlns:ex="http://example.org#" prov:ref="ex:derek"/>
+    </prov:wasAssociatedWith>
+    <prov:wasInformedBy>
+        <prov:effect xmlns:ex="http://example.org#" prov:ref="ex:illustrationActivity"/>
+        <prov:cause xmlns:ex="http://example.org#" prov:ref="ex:aggregationActivity"/>
+    </prov:wasInformedBy>
+    <prov:wasAssociatedWith>
+        <prov:activity xmlns:ex="http://example.org#" prov:ref="ex:aggregationActivity"/>
+        <prov:agent xmlns:ex="http://example.org#" prov:ref="ex:derek"/>
+    </prov:wasAssociatedWith>
+    <prov:used>
+        <prov:activity xmlns:ex="http://example.org#" prov:ref="ex:aggregationActivity"/>
+        <prov:entity xmlns:ex="http://example.org#" prov:ref="ex:crimeData"/>
+    </prov:used>
+    <prov:used>
+        <prov:activity xmlns:ex="http://example.org#" prov:ref="ex:aggregationActivity"/>
+        <prov:entity xmlns:ex="http://example.org#" prov:ref="ex:nationalRegionsList"/>
+    </prov:used>
+    <prov:wasAttributedTo>
+        <prov:entity xmlns:ex="http://example.org#" prov:ref="ex:crimeData"/>
+        <prov:agent xmlns:ex="http://example.org#" prov:ref="ex:government"/>
+    </prov:wasAttributedTo>
+    <prov:actedOnBehalfOf>
+        <prov:subordinate xmlns:ex="http://example.org#" prov:ref="ex:derek"/>
+        <prov:responsible xmlns:ex="http://example.org#" prov:ref="ex:natonal_newspaper_inc"/>
+    </prov:actedOnBehalfOf>
+    <prov:wasAttributedTo>
+        <prov:entity xmlns:ex="http://example.org#" prov:ref="ex:nationalRegionsList"/>
+        <prov:agent xmlns:ex="http://example.org#" prov:ref="ex:civil_action_group"/>
+    </prov:wasAttributedTo>
+    <prov:wasGeneratedBy>
+        <prov:entity xmlns:ex="http://example.org#" prov:ref="ex:aggregatedByRegions"/>
+        <prov:activity xmlns:ex="http://example.org#" prov:ref="ex:aggregationActivity"/>
+    </prov:wasGeneratedBy>
+    <prov:wasAttributedTo>
+        <prov:entity xmlns:ex="http://example.org#" prov:ref="ex:aggregatedByRegions"/>
+        <prov:agent xmlns:ex="http://example.org#" prov:ref="ex:derek"/>
+    </prov:wasAttributedTo>
+    <prov:wasGeneratedBy>
+        <prov:entity xmlns:ex="http://example.org#" prov:ref="ex:bar_chart"/>
+        <prov:activity xmlns:ex="http://example.org#" prov:ref="ex:illustrationActivity"/>
+    </prov:wasGeneratedBy>
+    <prov:wasDerivedFrom>
+        <prov:generatedEntity xmlns:ex="http://example.org#" prov:ref="ex:bar_chart"/>
+        <prov:usedEntity xmlns:ex="http://example.org#" prov:ref="ex:aggregatedByRegions"/>
+    </prov:wasDerivedFrom>
+    <prov:wasAttributedTo>
+        <prov:entity xmlns:ex="http://example.org#" prov:ref="ex:bar_chart"/>
+        <prov:agent xmlns:ex="http://example.org#" prov:ref="ex:derek"/>
+    </prov:wasAttributedTo>
+</prov:document>
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/testcases/constraints/prov-o-ex1-PASS.ttl	Wed Nov 21 22:27:54 2012 +0000
@@ -0,0 +1,60 @@
+@prefix xsd:  <http://www.w3.org/2001/XMLSchema#> .
+@prefix prov: <http://www.w3.org/ns/prov#> .
+@prefix foaf: <http://xmlns.com/foaf/0.1/> .
+@prefix ex:   <http://example.org#> .
+
+ex:bar_chart
+   a prov:Entity;
+   prov:wasGeneratedBy ex:illustrationActivity;
+   prov:wasDerivedFrom ex:aggregatedByRegions;
+.
+
+ex:illustrationActivity 
+   a prov:Activity; 
+   prov:used              ex:aggregatedByRegions;
+   prov:wasAssociatedWith ex:derek;
+   prov:wasInformedBy     ex:aggregationActivity;
+.
+
+ex:aggregatedByRegions
+   a prov:Entity;
+   prov:wasGeneratedBy ex:aggregationActivity;
+.
+
+ex:aggregationActivity
+   a prov:Activity;
+   prov:startedAtTime    "2011-07-14T01:01:01Z"^^xsd:dateTime;
+   prov:wasAssociatedWith ex:derek;
+   prov:used              ex:crimeData;
+   prov:used              ex:nationalRegionsList;
+   prov:endedAtTime      "2011-07-14T02:02:02Z"^^xsd:dateTime;
+.
+
+ex:crimeData
+   a prov:Entity;
+   prov:wasAttributedTo ex:government;
+.
+ex:nationalRegionsList 
+   a prov:Entity;
+   prov:wasAttributedTo ex:civil_action_group;
+.
+
+ex:aggregatedByRegions prov:wasAttributedTo ex:derek .
+ex:bar_chart           prov:wasAttributedTo ex:derek .
+
+ex:derek
+   a prov:Agent;
+   a foaf:Person;
+   foaf:givenName "Derek"^^xsd:string;
+   foaf:mbox      <mailto:derek@example.org>;
+   prov:actedOnBehalfOf ex:natonal_newspaper_inc;
+.
+
+ex:national_newspaper_inc 
+   a prov:Agent;
+   a prov:Organization;
+   foaf:name "National Newspaper, Inc.";
+. 
+
+ex:government         a prov:Organization, foaf:Organization .
+ex:civil_action_group a prov:Organization, foaf:Organization .
\ No newline at end of file
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/testcases/constraints/prov-o-ex2-PASS.provn	Wed Nov 21 22:27:54 2012 +0000
@@ -0,0 +1,48 @@
+bundle
+prefix xsd <http://www.w3.org/2001/XMLSchema>
+prefix prim <http://openprovenance.org/primitives#>
+prefix prov <http://www.w3.org/ns/prov#>
+prefix xsi <http://www.w3.org/2001/XMLSchema-instance>
+prefix sioc <http://rdfs.org/sioc/ns#>
+prefix my   <http://example.org/my#>
+prefix foaf <http://xmlns.com/foaf/0.1/>
+prefix ex <http://example.org#>
+
+activity(ex:publicationActivity1123,2011-07-16T01:01:01Z,2011-07-16T01:52:02Z)
+
+agent(ex:national_newspaper_inc,[foaf:name = "National Newspaper, Inc." %% xsd:string])
+agent(ex:government)
+agent(ex:derek,[foaf:givenName = "Derek" %% xsd:string, foaf:mbox = "mailto:derek@example.org" %% xsd:anyURI])
+agent(ex:postEditor,[foaf:name = "Post Editor 3000" %% xsd:string])
+
+entity(ex:prov-o-ex2-PASS,[ex:involvedUser = "http://example.org#derek" %% xsd:anyURI])
+entity(ex:more-crime-happens-in-cities,[sioc:latest_version = "http://example.org#post9821v2" %% xsd:anyURI, sioc:previous_version = "http://example.org#post9821v1" %% xsd:anyURI])
+entity(ex:crimeData)
+entity(ex:post9821v1,[prov:location="org.openprovenance.prov.xml.AnyRef@3c1d332b[
+  ref={http://example.org#}more-crime-happens-in-cities
+]" %% prov:unknownLiteral, my:snapshotContent = "http://example.org#postContent0" %% xsd:anyURI, sioc:title = "More crime happens in cities" %% xsd:string])
+entity(ex:aggregatedByRegions,[prov:location="org.openprovenance.prov.xml.AnyRef@744a6cbf[
+  ref={file://Users/}aggr.txt
+]" %% prov:unknownLiteral])
+entity(ex:post9821v2,[prov:location="org.openprovenance.prov.xml.AnyRef@4229ab3e[
+  ref={http://example.org#}more-crime-happens-in-cities
+]" %% prov:unknownLiteral, my:snapshotContent = "http://example.org#postContent1" %% xsd:anyURI])
+
+wasAttributedTo(ex:prov-o-ex2-PASS, ex:postEditor)
+wasAttributedTo(ex:crimeData, ex:government)
+actedOnBehalfOf(ex:derek,ex:national_newspaper_inc,-)
+
+wasGeneratedBy(ex:post9821v1,ex:publicationActivity1123,-)
+wasAttributedTo(ex:post9821v1, ex:derek)
+wasAssociatedWith(ex:publicationActivity1123,ex:derek,-)
+wasAssociatedWith(ex:publicationActivity1123,ex:postEditor,-)
+
+used(ex:publicationActivity1123,ex:aggregatedByRegions,-)
+wasGeneratedBy(ex:post9821v1,ex:publicationActivity1123,-)
+wasStartedBy(ex:publicationActivity1123,ex:derek,-,-)
+wasEndedBy(ex:publicationActivity1123,ex:derek,-,-)
+
+alternateOf(ex:post9821v2,ex:post9821v1)
+wasAttributedTo(ex:post9821v2, ex:derek)
+
+endBundle
\ No newline at end of file
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/testcases/constraints/prov-o-ex2-PASS.provx	Wed Nov 21 22:27:54 2012 +0000
@@ -0,0 +1,74 @@
+<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
+<prov:document xmlns:prov="http://www.w3.org/ns/prov#" xmlns:ns2="http://openprovenance.org/collection#" xmlns:ns3="http://openprovenance.org/validation#" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:prim="http://openprovenance.org/primitives#" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:pc1="http://www.ipaw.info/pc1/">
+    <prov:activity xmlns:ex="http://example.org#" prov:id="ex:publicationActivity1123">
+        <prov:startTime>2011-07-16T02:01:01.000+01:00</prov:startTime>
+        <prov:endTime>2011-07-16T02:52:02.000+01:00</prov:endTime>
+    </prov:activity>
+    <prov:agent xmlns:ex="http://example.org#" prov:id="ex:national_newspaper_inc">
+        <foaf:name xmlns:foaf="http://xmlns.com/foaf/0.1/" xsi:type="xsd:string">National Newspaper, Inc.</foaf:name>
+    </prov:agent>
+    <prov:agent xmlns:ex="http://example.org#" prov:id="ex:government"/>
+    <prov:agent xmlns:ex="http://example.org#" prov:id="ex:derek">
+        <foaf:givenName xmlns:foaf="http://xmlns.com/foaf/0.1/" xsi:type="xsd:string">Derek</foaf:givenName>
+        <foaf:mbox xmlns:foaf="http://xmlns.com/foaf/0.1/" xsi:type="xsd:anyURI">mailto:derek@example.org</foaf:mbox>
+    </prov:agent>
+    <prov:agent xmlns:ex="http://example.org#" prov:id="ex:postEditor">
+        <foaf:name xmlns:foaf="http://xmlns.com/foaf/0.1/" xsi:type="xsd:string">Post Editor 3000</foaf:name>
+    </prov:agent>
+    <prov:entity xmlns:ex="http://example.org#" prov:id="ex:prov-o-ex2-PASS">
+        <ex:involvedUser xsi:type="xsd:anyURI">http://example.org#derek</ex:involvedUser>
+    </prov:entity>
+    <prov:entity xmlns:ex="http://example.org#" prov:id="ex:more-crime-happens-in-cities">
+        <sioc:latest_version xmlns:sioc="http://rdfs.org/sioc/ns#" xsi:type="xsd:anyURI">http://example.org#post9821v2</sioc:latest_version>
+        <sioc:previous_version xmlns:sioc="http://rdfs.org/sioc/ns#" xsi:type="xsd:anyURI">http://example.org#post9821v1</sioc:previous_version>
+    </prov:entity>
+    <prov:entity xmlns:ex="http://example.org#" prov:id="ex:crimeData"/>
+    <prov:wasAttributedTo>
+        <prov:entity xmlns:ex="http://example.org#" prov:ref="ex:crimeData"/>
+        <prov:agent xmlns:ex="http://example.org#" prov:ref="ex:government"/>
+    </prov:wasAttributedTo>
+    <prov:actedOnBehalfOf>
+        <prov:subordinate xmlns:ex="http://example.org#" prov:ref="ex:derek"/>
+        <prov:responsible xmlns:ex="http://example.org#" prov:ref="ex:national_newspaper_inc"/>
+    </prov:actedOnBehalfOf>
+    <prov:wasGeneratedBy>
+        <prov:entity xmlns:ex="http://example.org#" prov:ref="ex:post9821v1"/>
+        <prov:activity xmlns:ex="http://example.org#" prov:ref="ex:publicationActivity1123"/>
+    </prov:wasGeneratedBy>
+    <prov:wasAttributedTo>
+        <prov:entity xmlns:ex="http://example.org#" prov:ref="ex:post9821v1"/>
+        <prov:agent xmlns:ex="http://example.org#" prov:ref="ex:derek"/>
+    </prov:wasAttributedTo>
+    <prov:wasAssociatedWith>
+        <prov:activity xmlns:ex="http://example.org#" prov:ref="ex:publicationActivity1123"/>
+        <prov:agent xmlns:ex="http://example.org#" prov:ref="ex:derek"/>
+    </prov:wasAssociatedWith>
+    <prov:wasAssociatedWith>
+        <prov:activity xmlns:ex="http://example.org#" prov:ref="ex:publicationActivity1123"/>
+        <prov:agent xmlns:ex="http://example.org#" prov:ref="ex:postEditor"/>
+    </prov:wasAssociatedWith>
+    <prov:used>
+        <prov:activity xmlns:ex="http://example.org#" prov:ref="ex:publicationActivity1123"/>
+        <prov:entity xmlns:ex="http://example.org#" prov:ref="ex:aggregatedByRegions"/>
+    </prov:used>
+    <prov:wasGeneratedBy>
+        <prov:entity xmlns:ex="http://example.org#" prov:ref="ex:post9821v1"/>
+        <prov:activity xmlns:ex="http://example.org#" prov:ref="ex:publicationActivity1123"/>
+    </prov:wasGeneratedBy>
+    <prov:wasStartedBy>
+        <prov:activity xmlns:ex="http://example.org#" prov:ref="ex:publicationActivity1123"/>
+        <prov:trigger xmlns:ex="http://example.org#" prov:ref="ex:derek"/>
+    </prov:wasStartedBy>
+    <prov:wasEndedBy>
+        <prov:activity xmlns:ex="http://example.org#" prov:ref="ex:publicationActivity1123"/>
+        <prov:trigger xmlns:ex="http://example.org#" prov:ref="ex:derek"/>
+    </prov:wasEndedBy>
+    <prov:alternateOf>
+        <prov:entity2 xmlns:ex="http://example.org#" prov:ref="ex:post9821v2"/>
+        <prov:entity1 xmlns:ex="http://example.org#" prov:ref="ex:post9821v1"/>
+    </prov:alternateOf>
+    <prov:wasAttributedTo>
+        <prov:entity xmlns:ex="http://example.org#" prov:ref="ex:post9821v2"/>
+        <prov:agent xmlns:ex="http://example.org#" prov:ref="ex:derek"/>
+    </prov:wasAttributedTo>
+</prov:document>
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/testcases/constraints/prov-o-ex2-PASS.ttl	Wed Nov 21 22:27:54 2012 +0000
@@ -0,0 +1,85 @@
+@prefix xsd:  <http://www.w3.org/2001/XMLSchema#> .
+@prefix foaf: <http://xmlns.com/foaf/0.1/> .
+@prefix sioc: <http://rdfs.org/sioc/ns#> .
+@prefix prov: <http://www.w3.org/ns/prov#> .
+@prefix my:   <http://example.org/my#> .
+@prefix ex:   <http://example.org#> .
+
+
+   ex:prov-o-ex2-PASS a prov:Bundle, prov:Entity ;
+     prov:wasAttributedTo ex:postEditor;
+     prov:generatedAtTime "2011-07-16T02:52:02Z"^^xsd:dateTime;
+     ex:involvedUser        ex:derek.
+
+   ex:derek
+      a prov:Person, prov:Agent, foaf:Person; ## Typically prov:Agent will be inferred from prov:Person
+      foaf:givenName      "Derek"^^xsd:string;
+      foaf:mbox           <mailto:derek@example.org>;
+      prov:actedOnBehalfOf ex:national_newspaper_inc;
+   .
+
+   ex:national_newspaper_inc 
+      a prov:Organization, prov:Agent;       ## Typically prov:Agent will be inferred from prov:Organization
+      foaf:name "National Newspaper, Inc.";
+   .
+
+   ex:postEditor 
+      a prov:SoftwareAgent, prov:Agent;      ## Typically prov:Agent will be inferred from prov:SoftwareAgent
+      foaf:name "Post Editor 3000";
+   .   
+   
+   ex:government  a prov:Organization, foaf:Organization .
+
+   ex:aggregatedByRegions
+      a prov:Entity;
+      prov:atLocation <file://Users/aggr.txt>;
+   .
+   
+   ex:crimeData
+     a prov:Entity;
+     prov:wasAttributedTo ex:government;
+   .
+   
+   ex:more-crime-happens-in-cities
+    a prov:Location, sioc:Post, prov:Entity;
+    sioc:latest_version ex:post9821v2;
+    sioc:previous_version ex:post9821v1;
+   .
+
+   ## Version 1 of the post
+   
+   ex:post9821v1
+      a prov:Entity, sioc:Post;   
+      prov:wasGeneratedBy ex:publicationActivity1123;
+      prov:atLocation     ex:more-crime-happens-in-cities;  ## PERMALINK to the (latest revision of the) post
+      my:snapshotContent  ex:postContent0;                  ## Snapshot with the content of this version
+      sioc:title "More crime happens in cities"^^xsd:string;
+      prov:hadPrimarySource ex:crimeData;               ## This version of the post used the file "crimeData" as a primary source. 
+                                                          ## The author stated that he based his post in the aggregatedByRegions file, 
+                                                          ## but the primary source is the file created by the government.
+      prov:wasAttributedTo   ex:derek;
+      prov:generatedAtTime "2011-07-16T01:52:02Z"^^xsd:dateTime;
+   .
+
+   ## Version 2 of the post
+
+   ex:post9821v2
+      a prov:Entity, sioc:Post;
+      prov:atLocation       ex:more-crime-happens-in-cities;  ## PERMALINK to the (latest revision of the) post
+      my:snapshotContent    ex:postContent1;                  ## Snapshot with the content of this version
+      prov:wasRevisionOf    ex:post9821v1;
+      prov:alternateOf      ex:post9821v1;
+      prov:wasAttributedTo  ex:derek;
+   .
+
+   ex:publicationActivity1123 
+      a prov:Activity;
+      prov:startedAtTime     "2011-07-16T01:01:01Z"^^xsd:dateTime;
+      prov:endedAtTime       "2011-07-16T01:52:02Z"^^xsd:dateTime;
+      prov:wasAssociatedWith ex:derek,
+                             ex:postEditor;
+      prov:used              ex:aggregatedByRegions;   
+      prov:generated         ex:post9821v1;
+      prov:wasStartedBy      ex:derek;
+      prov:wasEndedBy        ex:derek
+   .
\ No newline at end of file
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/testcases/constraints/prov-o-ex3-PASS.provn	Wed Nov 21 22:27:54 2012 +0000
@@ -0,0 +1,25 @@
+bundle
+
+prefix xsd <http://www.w3.org/2001/XMLSchema>
+prefix prov <http://www.w3.org/ns/prov#>
+prefix foaf <http://xmlns.com/foaf/0.1/>
+prefix sioc <http://rdfs.org/sioc/ns#>
+prefix prov <http://www.w3.org/ns/prov#>
+prefix my   <http://example.org#my>
+prefix ex <http://example.org#>
+
+agent(ex:monica,[foaf:givenName = "Monica" %% xsd:string, foaf:mbox = "mailto:monica@example.org" %% xsd:anyURI])
+
+entity(ex:prov-o-ex3,[ex:involvedUser = "http://example.org#monica" %% xsd:anyURI])
+entity(ex:post9822,[prov:location="org.openprovenance.prov.xml.AnyRef@20c1f10e[
+  ref={http://example.org#}more-crime-happens-in-cities-for-dummies
+]" %% prov:unknownLiteral, ex:mysnapshotContent = "http://example.org#postContent2" %% xsd:anyURI, sioc:title = "More crime happens in cities (for dummies)" %% xsd:string])
+
+wasAttributedTo(ex:prov-o-ex3, ex:postEditor)
+wasInfluencedBy(ex:post9822, ex:aggregatedByRegions)
+
+alternateOf(ex:post9822,ex:post9821v2)
+specializationOf(ex:post9822,ex:more-crime-happens-in-cities)
+wasAttributedTo(ex:post9822, ex:monica)
+
+endBundle
\ No newline at end of file
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/testcases/constraints/prov-o-ex3-PASS.provx	Wed Nov 21 22:27:54 2012 +0000
@@ -0,0 +1,30 @@
+<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
+<prov:document xmlns:prov="http://www.w3.org/ns/prov#" xmlns:ns2="http://openprovenance.org/collection#" xmlns:ns3="http://openprovenance.org/validation#" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:prim="http://openprovenance.org/primitives#" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:pc1="http://www.ipaw.info/pc1/">
+    <prov:agent xmlns:ex="http://example.org#" prov:id="ex:monica">
+        <foaf:givenName xmlns:foaf="http://xmlns.com/foaf/0.1/" xsi:type="xsd:string">Monica</foaf:givenName>
+        <foaf:mbox xmlns:foaf="http://xmlns.com/foaf/0.1/" xsi:type="xsd:anyURI">mailto:monica@example.org</foaf:mbox>
+    </prov:agent>
+    <prov:entity xmlns:ex="http://example.org#" prov:id="ex:prov-o-ex3">
+        <ex:involvedUser xsi:type="xsd:anyURI">http://example.org#monica</ex:involvedUser>
+    </prov:entity>
+    <prov:wasAttributedTo>
+        <prov:entity xmlns:ex="http://example.org#" prov:ref="ex:prov-o-ex3"/>
+        <prov:agent xmlns:ex="http://example.org#" prov:ref="ex:postEditor"/>
+    </prov:wasAttributedTo>
+    <prov:wasInfluencedBy>
+        <prov:influencee xmlns:ex="http://example.org#" prov:ref="ex:post9822"/>
+        <prov:influencer xmlns:ex="http://example.org#" prov:ref="ex:aggregatedByRegions"/>
+    </prov:wasInfluencedBy>
+    <prov:alternateOf>
+        <prov:entity2 xmlns:ex="http://example.org#" prov:ref="ex:post9822"/>
+        <prov:entity1 xmlns:ex="http://example.org#" prov:ref="ex:post9821v2"/>
+    </prov:alternateOf>
+    <prov:specializationOf>
+        <prov:specializedEntity xmlns:ex="http://example.org#" prov:ref="ex:post9822"/>
+        <prov:generalEntity xmlns:ex="http://example.org#" prov:ref="ex:more-crime-happens-in-cities"/>
+    </prov:specializationOf>
+    <prov:wasAttributedTo>
+        <prov:entity xmlns:ex="http://example.org#" prov:ref="ex:post9822"/>
+        <prov:agent xmlns:ex="http://example.org#" prov:ref="ex:monica"/>
+    </prov:wasAttributedTo>
+</prov:document>
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/testcases/constraints/prov-o-ex3-PASS.ttl	Wed Nov 21 22:27:54 2012 +0000
@@ -0,0 +1,33 @@
+@prefix xsd:  <http://www.w3.org/2001/XMLSchema#> .
+@prefix foaf: <http://xmlns.com/foaf/0.1/> .
+@prefix sioc: <http://rdfs.org/sioc/ns#> .
+@prefix prov: <http://www.w3.org/ns/prov#> .
+@prefix my:   <http://example.org#my> .
+@prefix ex:   <http://example.org#> .
+
+
+   ex:prov-o-ex3 a prov:Bundle, prov:Entity ;
+     prov:wasAttributedTo ex:postEditor;
+     prov:generatedAtTime "2011-07-16T20:52:02Z"^^xsd:dateTime;
+     ex:involvedUser        ex:monica .
+
+   ex:monica
+      a prov:Person, prov:Agent, foaf:Person;
+      foaf:givenName "Monica"^^xsd:string;
+      foaf:mbox      <mailto:monica@example.org>
+   .
+
+   ## Rephrasing of the post in a new resource for a different audience
+
+   ex:post9822
+      a prov:Entity, sioc:Post;
+      prov:atLocation       ex:more-crime-happens-in-cities-for-dummies; ## PERMALINK to the (latest revision of the) post
+      my:snapshotContent    ex:postContent2;                             ## Snapshot with the content of this version
+      prov:alternateOf      ex:post9821v2;                               ## This post is an alternate of the second version modified by Derek.
+      prov:specializationOf ex:more-crime-happens-in-cities;             ## This post is an specialization of the post initially created by Derek.
+      prov:wasInfluencedBy  ex:aggregatedByRegions;                      ## If the file hadn't existed, Monica would have not written the post. 
+                                                                       ## However the file is not what Monica used as primary source for writting the new post,
+                                                                       ## so we can't consider the post to have "been derived from" it.
+      sioc:title "More crime happens in cities (for dummies)"^^xsd:string;
+      prov:wasAttributedTo ex:monica;
+    .
\ No newline at end of file
--- a/testcases/process.html	Wed Nov 21 21:48:49 2012 +0000
+++ b/testcases/process.html	Wed Nov 21 22:27:54 2012 +0000
@@ -219,9 +219,26 @@
 
 <h3>Test Results</h3>
 
-<p>Implementers are asked to validate each test case with their implementation and recorded the validation results <em>two  plain text files</em>: <strong>success.txt</strong> and <strong>fail.txt</strong>.
-These files MUST contain the identifiers (one on each line) of the test cases that have been successfully validated in the former and those that fail validation in the latter.
-Test cases that are not supported by the  implementation SHOULD NOT be included in either of the files.</p>
+<p>Implementers are asked to validate each test case with their implementation and recorded
+the validation results <em>two  plain text files</em>: <strong>pass.txt</strong> and
+<strong>fail.txt</strong>. These files MUST contain the identifiers (one on each line) of
+the test cases that have been successfully validated in the former and those that fail
+validation in the latter. Test cases that are not supported by the  implementation SHOULD
+NOT be included in either of the files.</p>
+
+<p>For example, if a validator can <strong>only</strong> process the three test cases
+<b>derivation1-PASS</b>, <b>derivation2-FAIL-ordering</b>, <b>and derivation3-PASS</b>, we
+expect the result
+files's contents to be similar to the below.</p>
+<pre class="example">
+pass.txt:
+	derivation1-PASS
+	derivation3-PASS
+	
+fail.txt:
+	derivation2-FAIL-ordering
+</pre>
+
 
 <p>The test result files will need to be  &lt;emailed to|uploaded at&gt;. </p>
 
@@ -279,7 +296,7 @@
   </tr>
   <tr>
     <td><b>derivation3-PASS</b></td>
-    <td>&nbsp;</td>
+    <td>ordering</td>
     <td>Pass</td>
     <td>
       <a href="http://dvcs.w3.org/hg/prov/raw-file/default/testcases/constraints/derivation3-PASS.provn" title="derivation3-PASS.provn">PROV-N</a>
@@ -317,6 +334,36 @@
       <a href="http://dvcs.w3.org/hg/prov/raw-file/default/testcases/constraints/prov-dm-ex22-PASS.ttl" title="prov-dm-ex22-PASS.ttl">PROV-RDF</a>
     </td>
   </tr>
+  <tr>
+    <td><b>prov-o-ex1-PASS</b></td>
+    <td>&nbsp;</td>
+    <td>Pass</td>
+    <td>
+      <a href="http://dvcs.w3.org/hg/prov/raw-file/default/testcases/constraints/prov-o-ex1-PASS.provn" title="prov-o-ex1-PASS.provn">PROV-N</a>
+      <a href="http://dvcs.w3.org/hg/prov/raw-file/default/testcases/constraints/prov-o-ex1-PASS.provx" title="prov-o-ex1-PASS.provx">PROV-XML</a>
+      <a href="http://dvcs.w3.org/hg/prov/raw-file/default/testcases/constraints/prov-o-ex1-PASS.ttl" title="prov-o-ex1-PASS.ttl">PROV-RDF</a>
+    </td>
+  </tr>
+  <tr>
+    <td><b>prov-o-ex2-PASS</b></td>
+    <td>&nbsp;</td>
+    <td>Pass</td>
+    <td>
+      <a href="http://dvcs.w3.org/hg/prov/raw-file/default/testcases/constraints/prov-o-ex2-PASS.provn" title="prov-o-ex2-PASS.provn">PROV-N</a>
+      <a href="http://dvcs.w3.org/hg/prov/raw-file/default/testcases/constraints/prov-o-ex2-PASS.provx" title="prov-o-ex2-PASS.provx">PROV-XML</a>
+      <a href="http://dvcs.w3.org/hg/prov/raw-file/default/testcases/constraints/prov-o-ex2-PASS.ttl" title="prov-o-ex2-PASS.ttl">PROV-RDF</a>
+    </td>
+  </tr>
+  <tr>
+    <td><b>prov-o-ex3-PASS</b></td>
+    <td>&nbsp;</td>
+    <td>Pass</td>
+    <td>
+      <a href="http://dvcs.w3.org/hg/prov/raw-file/default/testcases/constraints/prov-o-ex3-PASS.provn" title="prov-o-ex3-PASS.provn">PROV-N</a>
+      <a href="http://dvcs.w3.org/hg/prov/raw-file/default/testcases/constraints/prov-o-ex3-PASS.provx" title="prov-o-ex3-PASS.provx">PROV-XML</a>
+      <a href="http://dvcs.w3.org/hg/prov/raw-file/default/testcases/constraints/prov-o-ex3-PASS.ttl" title="prov-o-ex3-PASS.ttl">PROV-RDF</a>
+    </td>
+  </tr>
 </table>
 
 <p>For each report, the successful and failed validations will need to be checked against