An Overview on PROV-AQ: Provenance Access and Query Editors: Authors: Graham Klyne   Luc Moreau Paul Groth   Olaf Hartig  ...
Purpose <ul><li>Describes how to </li><ul><li>locate,
retrieve, and
query </li></ul><li>provenance information
Guiding principle: </li><ul><li>Do not reinvent the wheel
Use standard Web protocols </li></ul></ul>
Main Contributions <ul><li>Simple mechanisms for discovery and retrieval
More advanced </li><ul><li>discovery service and
query mechanisms </li></ul></ul>
Outline Key Concepts Simple Mechanisms Provenance Services Querying Provenance Information Open Issues
Key Concepts <ul><li>Resource *
Entity
Provenance information
Provenance URI
Entity URI </li></ul>* Architecture of the World Wide Web, Volume One, W3C Rec.
Questions to be Addressed <ul><li>What is the provenance URI for provenance information about a particular entity?
What is the relevant entity URI used in some provenance information?
What if there is no provenance URI?
What if there is no entity URI?
Out of scope: </li><ul><li>Representation of provenance information
Management of provenance information </li></ul></ul>
Outline Key Concepts Simple Mechanisms Provenance Services Querying Provenance Information Open Issues
Entity URI and Provenance URI ... … for resources accessed by HTTP <ul><li>Link  header field *  in the HTTP response </li...
Entity URI and Provenance URI ... … for resources accessed by HTTP <ul><li>Link  header field *  in the HTTP response </li...
Entity URI and Provenance URI ... … for resources accessed by HTTP <ul><li>Link  header field *  in the HTTP response </li...
Embedding Provenance Links ... … in representations of resources. <ul><li>Proposal for particular representation formats: ...
RDF based (e.g. RDF/XML, Turtle, RDFa) </li></ul><li>Common mechanism for arbitrary representations is out of scope </li><...
Outline Key Concepts Simple Mechanisms Provenance Services Querying Provenance Information Open Issues
Functionality <ul><li>Provenance retrieval service </li><ul><li>Input: entity URI
Output: provenance information </li></ul><li>Provenance discovery service </li><ul><li>Input: entity URI
Output: provenance URI(s) </li></ul><li>Provided via a REST API </li></ul>
Service Discovery <ul><li>Simple mechanism </li><ul><li>… for resources accessed by HTTP: </li></ul><li>However, a general...
Resources in the REST API <ul><li>Service description resource </li></ul><ul><ul><li>Accessible by dereferencing the  Serv...
How to construct URIs for other two resource types </li></ul></ul><ul><li>Provenance information resource </li></ul><ul><u...
Upcoming SlideShare
Loading in...5
×

An Overview on PROV-AQ: Provenance Access and Query

870

Published on

The slides which I used at the Dagstuhl seminar on Principles of Provenance (Feb.2012) for presenting the main contributions and open issues of the PROV-AQ document created by the W3C provenance working group.

Published in: Technology, News & Politics
0 Comments
1 Like
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total Views
870
On Slideshare
0
From Embeds
0
Number of Embeds
0
Actions
Shares
0
Downloads
11
Comments
0
Likes
1
Embeds 0
No embeds

No notes for slide

An Overview on PROV-AQ: Provenance Access and Query

  1. 1. An Overview on PROV-AQ: Provenance Access and Query Editors: Authors: Graham Klyne Luc Moreau Paul Groth Olaf Hartig Yogesh Simmhan James Myers Timothy Lebo Khalid Belhajjame Simon Miles Presentation at the Dagstuhl Seminar on Principles of Provenance February 29, 2012
  2. 2. Purpose <ul><li>Describes how to </li><ul><li>locate,
  3. 3. retrieve, and
  4. 4. query </li></ul><li>provenance information
  5. 5. Guiding principle: </li><ul><li>Do not reinvent the wheel
  6. 6. Use standard Web protocols </li></ul></ul>
  7. 7. Main Contributions <ul><li>Simple mechanisms for discovery and retrieval
  8. 8. More advanced </li><ul><li>discovery service and
  9. 9. query mechanisms </li></ul></ul>
  10. 10. Outline Key Concepts Simple Mechanisms Provenance Services Querying Provenance Information Open Issues
  11. 11. Key Concepts <ul><li>Resource *
  12. 12. Entity
  13. 13. Provenance information
  14. 14. Provenance URI
  15. 15. Entity URI </li></ul>* Architecture of the World Wide Web, Volume One, W3C Rec.
  16. 16. Questions to be Addressed <ul><li>What is the provenance URI for provenance information about a particular entity?
  17. 17. What is the relevant entity URI used in some provenance information?
  18. 18. What if there is no provenance URI?
  19. 19. What if there is no entity URI?
  20. 20. Out of scope: </li><ul><li>Representation of provenance information
  21. 21. Management of provenance information </li></ul></ul>
  22. 22. Outline Key Concepts Simple Mechanisms Provenance Services Querying Provenance Information Open Issues
  23. 23. Entity URI and Provenance URI ... … for resources accessed by HTTP <ul><li>Link header field * in the HTTP response </li></ul>* defined in RFC 5988 HTTP/1.1 200 OK Content-Type: text/html Date: Fri, 24 Feb 2012 12:58:02 GMT Expires: Fri, 02 Mar 2012 12:57:52 GMT Link: http://example.org/prov/aboutX; rel= &quot; provenance &quot; ; anchor= &quot; http://example.org/X &quot; Content-Length: 18556 <?xml version=&quot;1.0&quot; encoding=&quot;UTF-8&quot;?> <!DOCTYPE html PUBLIC &quot;-//W3C//DTD XHTML 1.0 Strict//EN&quot; &quot;http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd&quot;> <html xmlns=&quot;http://www.w3.org/1999/xhtml&quot;> <head> <link rel=&quot;stylesheet&quot; type=&quot;text/css&quot; href=&quot;main.css&quot; /> <!-- page-specific style definitions --> <style type=&quot;text/css&quot;> GET //example.org/X HTTP/1.1 Host: example.org Accept: text/html
  24. 24. Entity URI and Provenance URI ... … for resources accessed by HTTP <ul><li>Link header field * in the HTTP response </li></ul>* defined in RFC 5988 HTTP/1.1 200 OK Content-Type: text/html Date: Fri, 24 Feb 2012 12:58:02 GMT Expires: Fri, 02 Mar 2012 12:57:52 GMT Link: http://example.org/prov/aboutX; rel= &quot; provenance &quot; ; anchor= &quot; http://example.org/X &quot; Content-Length: 18556 <?xml version=&quot;1.0&quot; encoding=&quot;UTF-8&quot;?> <!DOCTYPE html PUBLIC &quot;-//W3C//DTD XHTML 1.0 Strict//EN&quot; &quot;http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd&quot;> <html xmlns=&quot;http://www.w3.org/1999/xhtml&quot;> <head> <link rel=&quot;stylesheet&quot; type=&quot;text/css&quot; href=&quot;main.css&quot; /> <!-- page-specific style definitions --> <style type=&quot;text/css&quot;> GET //example.org/X HTTP/1.1 Host: example.org Accept: text/html Link: http://example.org/prov/aboutX; rel=&quot;provenance&quot;; anchor=&quot;http://example.org/X&quot;
  25. 25. Entity URI and Provenance URI ... … for resources accessed by HTTP <ul><li>Link header field * in the HTTP response </li></ul>* defined in RFC 5988 HTTP/1.1 200 OK Content-Type: text/html Date: Fri, 24 Feb 2012 12:58:02 GMT Expires: Fri, 02 Mar 2012 12:57:52 GMT Link: http://example.org/prov/aboutX; rel= &quot; provenance &quot; ; anchor= &quot; http://example.org/X &quot; Content-Length: 18556 <?xml version=&quot;1.0&quot; encoding=&quot;UTF-8&quot;?> <!DOCTYPE html PUBLIC &quot;-//W3C//DTD XHTML 1.0 Strict//EN&quot; &quot;http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd&quot;> <html xmlns=&quot;http://www.w3.org/1999/xhtml&quot;> <head> <link rel=&quot;stylesheet&quot; type=&quot;text/css&quot; href=&quot;main.css&quot; /> <!-- page-specific style definitions --> <style type=&quot;text/css&quot;> GET //example.org/X HTTP/1.1 Host: example.org Accept: text/html Link: http://example.org/prov/aboutX; rel=&quot;provenance&quot;; anchor=&quot;http://example.org/X&quot; Entity URI (optional) Provenance URI
  26. 26. Embedding Provenance Links ... … in representations of resources. <ul><li>Proposal for particular representation formats: </li><ul><li>HTML
  27. 27. RDF based (e.g. RDF/XML, Turtle, RDFa) </li></ul><li>Common mechanism for arbitrary representations is out of scope </li></ul>
  28. 28. Outline Key Concepts Simple Mechanisms Provenance Services Querying Provenance Information Open Issues
  29. 29. Functionality <ul><li>Provenance retrieval service </li><ul><li>Input: entity URI
  30. 30. Output: provenance information </li></ul><li>Provenance discovery service </li><ul><li>Input: entity URI
  31. 31. Output: provenance URI(s) </li></ul><li>Provided via a REST API </li></ul>
  32. 32. Service Discovery <ul><li>Simple mechanism </li><ul><li>… for resources accessed by HTTP: </li></ul><li>However, a general approach is out of scope </li></ul>Link: Service-URI ; rel=&quot;provenance-service&quot;; anchor=&quot; Entity-URI &quot;
  33. 33. Resources in the REST API <ul><li>Service description resource </li></ul><ul><ul><li>Accessible by dereferencing the Service-URI
  34. 34. How to construct URIs for other two resource types </li></ul></ul><ul><li>Provenance information resource </li></ul><ul><ul><li>Provides provenance information
  35. 35. Represented in any format (e.g. RDF based, XML) </li></ul></ul><ul><li>Provenance locations resource </li></ul>
  36. 36. Provenance Locations Resource <ul><li>Enumerates provenance URIs for a particular entity </li></ul>
  37. 37. Provenance Locations Resource { &quot;uri&quot;: &quot;http://example.org/X&quot;, &quot;provenance&quot;: [ &quot;http://prov.example.org/aboutX&quot;, &quot;http://example.com/prov?id=X&quot; ] } <ul><li>Enumerates provenance URIs for a particular entity
  38. 38. Example representation in JSON format </li></ul>
  39. 39. Provenance Locations Resource { &quot;uri&quot;: &quot;http://example.org/X&quot;, &quot;provenance&quot;: [ &quot;http://prov.example.org/aboutX&quot;, &quot;http://example.com/prov?id=X&quot; ] } @prefix prov: <@@TBD@@#> . <http://example.org/X> a prov:Entity ; prov:hasProvenance <http://prov.example.org/aboutX> ; prov:hasProvenance <http://example.com/prov?id=X> . <ul><li>Enumerates provenance URIs for a particular entity
  40. 40. Example representation in JSON format
  41. 41. Example representation in Turtle (i.e.RDF data) </li></ul>
  42. 42. Using the API ... <ul><li>Required: Entity-URI and Service-URI </li></ul><ul><li>Obtain service description (by dereferencing Service-URI )
  43. 43. Extract URI template for locations resources
  44. 44. Form Provenance-Locations-URI (by instantiating the template with Entity-URI )
  45. 45. Obtain provenance locations resource (by dereferencing Provenance-Locations-URI )
  46. 46. Extract relevant Provenance-URI s </li></ul>… to retrieve provenance URI(s)
  47. 47. Outline Key Concepts Simple Mechanisms Provenance Services Querying Provenance Information Open Issues
  48. 48. Provenance Query Services <ul><li>Alternative for cases where aforementioned mechanisms are insufficient
  49. 49. PROV-AQ recommends SPARQL </li><ul><li>Query language for RDF data
  50. 50. Protocol for SPARQL query processing services </li></ul></ul>
  51. 51. Example Queries <ul><li>Use case: unknown entity URI
  52. 52. Use case: ask for a particular piece of provenance information only </li></ul>SELECT ?provenance_uri WHERE { ?entity prism:doi &quot;1234.5678&quot; ; prov:hasProvenance ?provenance_uri . } SELECT ?start_time WHERE { <http://example.org/X> prov:wasGeneratedBy ?act . ?act prov:startedAt ?start . ?start prov:inXSDDateTime ?start_time . }
  53. 53. Outline Key Concepts Simple Mechanisms Provenance Services Querying Provenance Information Open Issues
  54. 54. Main Open Issues <ul><li>Entities disjoint from Activities in PROV-DM
  55. 55. Remove service descriptions (i.e. prescribe a particular template)? </li><ul><li>Simplifies the process of using provenance services </li></ul><li>Embedding provenance information directly </li><ul><li>Best practice recommendation for HTML: RDFa
  56. 56. General approach is out of scope </li></ul></ul>{ &quot;provenance_service_uri&quot;: &quot;http://example.org/PS/&quot;, &quot;provenance_locations_template&quot;: &quot; http://ps.example.org/loc?uri = {uri} &quot; }
  57. 57. Summary <ul><li>Main contributions: </li><ul><li>Simple mechanisms for retrieving and discovering provenance information
  58. 58. More advanced discovery service and query mechanisms </li></ul></ul>
  59. 59. These slides have been created by Olaf Hartig http://olafhartig.de This work is licensed under a Creative Commons Attribution-Share Alike 3.0 License http://creativecommons.org/licenses/by-sa/3.0/
  60. 60. Backup Slides
  61. 61. Resources Represented as HTML <ul><li><link> elements in the <head> section </li></ul><html xmlns =&quot;http://www.w3.org/1999/xhtml&quot; > <head> <link rel =&quot;provenance&quot; href =&quot;http://example.org/prov/aboutX&quot; /> <link rel =&quot;anchor&quot; href =&quot;http://example.org/X&quot; /> <link rel =&quot;stylesheet&quot; type =&quot;text/css&quot; href =&quot;main.css&quot; /> <title> Welcome </title> </head> <body> < h1 > Welcome to this Web page</ h1 > < p >
  62. 62. Provenance Service URI ... … for resources accessed by HTTP Link: Service-URI ; rel=&quot;provenance-service&quot;; anchor=&quot; Entity-URI &quot;
  63. 63. Resources Represented as HTML <ul><li><link> elements in the <head> section </li></ul>Indicating a provenance service: <link rel=&quot;provenance-service&quot; href=&quot; Service-URI &quot; /> <html xmlns =&quot;http://www.w3.org/1999/xhtml&quot; > <head> <link rel =&quot;provenance&quot; href =&quot;http://example.org/provOfX&quot; /> <link rel =&quot;anchor&quot; href =&quot;http://example.org/X&quot; /> <link rel =&quot;stylesheet&quot; type =&quot;text/css&quot; href =&quot;main.css&quot; /> <title> Welcome </title> </head> <body> < h1 > Welcome to this Web page</ h1 > < p >
  64. 64. Service Description <ul><li>Provides templates for URIs of </li><ul><li>provenance locations resources and/or
  65. 65. provenance information resources </li></ul></ul>
  66. 66. Service Description <ul><li>Provides templates for URIs of </li><ul><li>provenance locations resources and/or
  67. 67. provenance information resources </li></ul><li>Example description represented in JSON </li></ul>{ &quot;provenance_service_uri&quot;: &quot;http://example.org/PS/&quot;, &quot;provenance_locations_template&quot;: &quot;http://ps.example.org/loc?uri={uri}&quot;, &quot;provenance_content_template&quot;: &quot;http://example.org/PS/prov?uri={uri}&quot; }
  68. 68. Service Description <ul><li>Provides templates for URIs of </li><ul><li>provenance locations resources and/or
  69. 69. provenance information resources </li></ul><li>Example description represented in JSON </li><ul><li>Provenance locations resource for http://example.org has URI: </li></ul></ul>{ &quot;provenance_service_uri&quot;: &quot;http://example.org/PS/&quot;, &quot;provenance_locations_template&quot;: &quot; http://ps.example.org/loc?uri= {uri} &quot;, &quot;provenance_content_template&quot;: &quot;http://example.org/PS/prov?uri={uri}&quot; } http://ps.example.org/loc?uri= http%3A%2F%2Fexample.org
  70. 70. Using the API ... <ul><li>Required: Entity-URI and Service-URI </li></ul><ul><li>Obtain service description (by dereferencing Service-URI )
  71. 71. Extract URI template for information resources
  72. 72. Form Provenance-URI (by instantiating the template with Entity-URI )
  73. 73. Obtain provenance information resource (by dereferencing Provenance-URI )
  74. 74. Extract relevant provenance information </li></ul>… to retrieve provenance information
  1. ¿Le ha llamado la atención una diapositiva en particular?

    Recortar diapositivas es una manera útil de recopilar información importante para consultarla más tarde.

×