Difference between revisions of "ProvenanceAccessScenarioUsingPAQ"

From Provenance WG Wiki
Jump to: navigation, search
Line 142: Line 142:
  
 
== Online Image Document D4 ''(Using provenance service)'' ==
 
== Online Image Document D4 ''(Using provenance service)'' ==
* ''NOTE: This section is pending while the provenance service relation is added to the HTTP Link section in the PAQ. The general approach will be similar to [[#HTML_Documents_D7_in_the_File_System_.28Using_provenance_service.29]] ''
+
* ''NOTE: This section is pending while the provenance service relation is added to the HTTP Link section in the PAQ. The general approach will be similar to [[#HTML Document D7 in the File System (Using_provenance_service)]] ''
  
 
== Image Documents D6 and D8 as Email attachments or in File System  ==
 
== Image Documents D6 and D8 as Email attachments or in File System  ==
 
* ''NOTE: ''
 
* ''NOTE: ''

Revision as of 13:46, 18 August 2011

Walk through of how the Provenance Access Scenario is satisfied using the Provenance Access and Query (W3C Editor's Draft 17 August 2011) proposal.

Online HTML Documents D1 and D2 (Resource provider aware of provenance)

  • Obtaining the document D
    • HTML documents D1 and D2 are accessed using HTTP GET, and the web servers return provenance and anchor Link: headers. We show examples using both the alternate proposals for anchor as a parameter and as a relation.

Using anchor parameter

GET https://github.com/timrdf/vsr/raw/master/data/source/tim-lebo/london-crime/version/2011-Jul-07/manual/crime.html HTTP/1.1
...

HTTP/1.1 200 OK
...
Link: http://example.com/provenance/d1.prov; rel="provenance"; anchor="https://github.com/timrdf/vsr/raw/master/data/source/tim-lebo/london-crime/version/2011-Jul-07/manual/crime.html"

GET http://lists.w3.org/Archives/Public/public-prov-wg/2011Jul/att-0031/crime.html HTTP/1.1
...

HTTP/1.1 200 OK
...
Link: http://example.com/provenance/d2.prov; rel="provenance"; anchor="http://lists.w3.org/Archives/Public/public-prov-wg/2011Jul/att-0031/crime.html"

Using anchor relation

GET https://github.com/timrdf/vsr/raw/master/data/source/tim-lebo/london-crime/version/2011-Jul-07/manual/crime.html HTTP/1.1
...

HTTP/1.1 200 OK
...
Link: http://example.com/provenance/d1.prov; rel="provenance"; 
Link: https://github.com/timrdf/vsr/raw/master/data/source/tim-lebo/london-crime/version/2011-Jul-07/manual/crime.html; rel="anchor" 

GET http://lists.w3.org/Archives/Public/public-prov-wg/2011Jul/att-0031/crime.html HTTP/1.1
...

HTTP/1.1 200 OK
...
Link: http://example.com/provenance/d2.prov; rel="provenance"; 
Link: http://lists.w3.org/Archives/Public/public-prov-wg/2011Jul/att-0031/crime.html; rel="anchor" 
  • Accessing the provenance
  • What information (I) does the clients (W) need in order to access and retrieve the provenance for the documents D1-2?
    • The browser uses the default mechanism for dereferencing the provenance-uris I_P for the two documents, which in our example is using a HTTP GET to retrieve the provenance document P.
    • The browser examines the retrieved provenance document P to locate the "section" that corresponds to the context-uri I_C that is relevant for the documents D1 and D2.

Online Image Document D3 (Resource provider aware of provenance)

This case is similar to the previous in all respects. The fact that the document D3 is an image and not a HTML document makes no difference. The HTTP GET request and response are shown as example. The means for enacting the "Oh yeah?" button and accessing the provenance are the same as before.

Using anchor parameter

GET https://github.com/timrdf/vsr/raw/11e4a2ab0315ba7808a393e2a0b5f69f952b7235/data/source/tim-lebo/london-crime/version/2011-Jul-07/manual/crime.png HTTP/1.1
...

HTTP/1.1 200 OK
...
Link: http://example.com/provenance/d1.prov; rel="provenance"; anchor="https://github.com/timrdf/vsr/raw/11e4a2ab0315ba7808a393e2a0b5f69f952b7235/data/source/tim-lebo/london-crime/version/2011-Jul-07/manual/crime.png"


Using anchor relation

GET https://github.com/timrdf/vsr/raw/11e4a2ab0315ba7808a393e2a0b5f69f952b7235/data/source/tim-lebo/london-crime/version/2011-Jul-07/manual/crime.png HTTP/1.1
...

HTTP/1.1 200 OK
...
Link: http://example.com/provenance/d1.prov; rel="provenance"; 
Link: https://github.com/timrdf/vsr/raw/11e4a2ab0315ba7808a393e2a0b5f69f952b7235/data/source/tim-lebo/london-crime/version/2011-Jul-07/manual/crime.png; rel="anchor" 
 

HTML Documents D5 as Email attachment

  • Obtaining the document D
 <html>
   <head>
     <link rel="provenance" href="http://example.com/provenance/d5.prov">
     <link rel="anchor" href="urn:uuid:2d26db96-7174-4c26-9353-cbbf9b5991d2">
   </head>
   <body>
     <p>There was a lot of crime in London last month.</p>
   </body> 
 </html>
 
  • Enacting the "Oh yeah?" feature
  • A user requests the email client (E) used to obtain the HTML document attachment (D5) to enact the "Oh yeah?" feature on the whole document
    1. The email client examine the HTML document D5 to identify the link elements present under in the HTML HEAD section.
    2. The client extracts the provenance-uri information, I_P, from the href attribute of the provenance relation link element. In the above example, the value of I_P is http://example.com/provenance/d5.prov for D5.
    3. The client also extract the context-uri information, I_C, from the href attribute of the anchor relation link element. In the above example, the value of I_C is urn:uuid:2d26db96-7174-4c26-9353-cbbf9b5991d2 for D5.
  • Accessing the provenance
  • What information (I) does the client (E) need in order to access and retrieve the provenance for the documents D5?
    • The email clients uses the default mechanism for dereferencing the provenance-uri I_P (http://example.com/provenance/d5.prov) for the document D5, which in our example is by using a HTTP GET to retrieve the provenance document P.
    • The client examines the retrieved provenance document P to locate the "section" that corresponds to the context-uri I_C (urn:uuid:2d26db96-7174-4c26-9353-cbbf9b5991d2) that is the relevant provenance information for the document D5.

HTML Documents D7 in the File System (Using provenance service)

  • Obtaining the document D
    • HTML document D7 is present in the file system at //acme/downloads/crime.html. The contents of this document is accessible to the local shell client.
    • The HTML document has link elements embedded under in their HTML HEAD section that contain the provenance-service-uri and the context-uri
 <html>
   <head>
     <link rel="provenance-service" href="http://tempuri.org/provenance_service">
     <link rel="anchor" href="urn:uuid:1ed726e0-c99d-11e0-9572-0800200c9a66">
   </head>
   <body>
     <p>There was a lot of crime in London last month.</p>
   </body> 
 </html>
 
  • Enacting the "Oh yeah?" feature
  • A user requests a command shell (S) used to obtain the HTML document (D7) to enact the "Oh yeah?" feature on the whole document
    1. The shell client examines the HTML document D7 to identify the link elements present under in the HTML HEAD section.
    2. The client extracts the provenance-service-uri information, I_S, from the href attribute of the provenance-service relation link element. In the above example, the value of I_S is http://tempuri.org/provenance_service for D7.
    3. The client also extracts the context-uri information, I_C, from the href attribute of the anchor relation link element. In the above example, the value of I_C is urn:uuid:1ed726e0-c99d-11e0-9572-0800200c9a66 for D7.
  • Accessing the provenance
  • What information (I) do the clients (E, S) need in order to access and retrieve the provenance for the documents D5, D7?
    • The shell client uses the provenance-service-uri I_S and the context-uri I_C to retrieve the provenance information.
    • It uses the default mechanism for dereferencing the provenance-service-uri (http://tempuri.org/provenance_service), which in our example is by using a HTTP GET to retrieve the provenance service description document S. An example of this document in JSON format is shown below:
GET https://github.com/timrdf/vsr/raw/master/data/source/tim-lebo/london-crime/version/2011-Jul-07/manual/crime.html HTTP/1.1
...

HTTP/1.1 200 OK
Content-Type: application/json
...

{
  "provenance_service_uri": "http://tempuri.org/provenance_service",
  "location_template":      "http://tempuri.org/provenance_service/location/?uri={uri}",
  "provenance_template":    "http://tempuri.org/provenance_service/provenance/?uri={uri}",
}
    • The shell client then uses the provenance_template along with the context-uri I_C to construct the provenance-uri I_P for the document D7:
http://tempuri.org/provenance_service/provenance/?uri={urn%3Auuid%3A1ed726e0-c99d-11e0-9572-0800200c9a66}
    • The client uses the default mechanism for dereferencing the provenance-uri I_P, which in our example is by using a HTTP GET to retrieve the provenance document P.
    • The client examines the retrieved provenance document P to locate the "section" that corresponds to the context-uri I_C (urn:uuid:1ed726e0-c99d-11e0-9572-0800200c9a66) that is the relevant provenance information for the document D7.

Online Image Document D4 (Using provenance service)

Image Documents D6 and D8 as Email attachments or in File System

  • NOTE: