Characteristics of a
RESTful Semantic Web &
Why They Are Important

             Chimezie Ogbuji
            The latest ve...
Introduction
I work in the Cleveland Clinic
  Heart and Vascular Institute as
  an Architect and Developer
Member represen...
The Semantic Web
The Semantic Web (SW) is an
 extension of the Architecture of
 the World-wide Web (AWWW)
  • Web content ...
SW & AWWW Interoperability
 SW should retain properties of the
  AWWW
   • Web agents should be able to
     seamlessly in...
Current W3C DAWG Effort
Relevant specifications
  •   SPARQL 1.1/Query
  •   SPARQL 1.1/Update
  •   SPARQL 1.1/Protocol
 ...
SPARQL 1.1 Update
A language for updates to an RDF
 store
  •   Insert triples into an RDF graph
  •   Delete triples from...
Motivation
Update operations should not be
 bound to an API or programming
 language
Similar query languages include
 upda...
A RESTful Update Protocol
What does it mean to be RESTful?
• Adhering to best practices for
  distributed hypermedia
• Oft...
Primer on REST
Representation State Transfer
  • A coordinated set of architectural
    constraints (an architectural styl...
URLs and URIs
URI (Uniform Resource Identifier)
  • A locator, a name, or both
URL (Uniform Resource Locator)
  • Subset o...
REST Data Elements
Key data elements:
 • Resource identifier (URL, URN,etc.)
 • Resource (conceptual target of a
   refere...
Credit: I. Jacobs and N. Walsh (2004)
Component Interactions
Components act on resources via
 representations
REST interactions are stateless
REST interactions ...
W3C TAG and AWWW
Information Resource
  (documents)
 • “[...] all of their essential
   characteristics can be conveyed in...
Exceptions to this Paradigm
Some pegs don't fit this hole
  • There are URIs that are not
    resolvable (strictly names):...
SPARQL Dataset
RDF Dataset (collection of graphs)
• One graph (the default graph)
  without a name
• Zero or more named gr...
Datasets, REST, and AWWW
 httpRange-14 and RDF datasets
  • What kind of things do graph URIs
    refer to?
  • If it is a...
A Graph URI Conjecture
httpRange-14 might be a moot
 point with RDF datasets
 • All of the essential characteristics
   of...
RDF Graph Denotation
What is the relationship between
 the graph and what the URI
 identifies?
  • RDF model theory tells ...
Graph URI Conjecture (cont.)
 For a named graph in a dataset:
   • Graph URI identifies the meaning
     of the graph
   •...
Straightforward REST Model
 If we assume graph URIs are
    resolvable HTTP URIs:
  • REST components can interact
    wit...
Straightforward Model (cont.)

   • REST components can update the
     meaning of a graph by sending
     representations...
Large Grain Protocol
Compared to SPARQL Update
 • Facilitates manipulation at a
   strictly large granularity
 • RDF graph...
REST and RDF Syntax
REST provides an extensible
 framework for the syntax of
 representations
  • REST components can requ...
Exceptions to the Rule
What about graphs whose URIs
 are strictly names (and not
 locations)?
 • Their URIs are not HTTP U...
URI Components
Embedding URIs
Such URIs can be embedded
 (nested) in the query component
 of a resolvable, parent HTTP URI
  • A REST com...
Embedded URI Request
Managing the Exceptions
Provides a way to manage graphs
 whose URIs are names but not
 locations
 • REST components intera...
Outstanding Questions
What does a graph URI in an RDF
 dataset identify?
 • Proposed it identifies the meaning
   of its a...
Outstanding Questions
        (cont.)
Coordinating the protocols
  • How do web agents discover the
    various 'services'...
The Semantic Web
Answers to these questions are
 key to the future landscape of
 the Semantic Web
The Characteristics of a RESTful Semantic Web and Why They Are Important
The Characteristics of a RESTful Semantic Web and Why They Are Important
The Characteristics of a RESTful Semantic Web and Why They Are Important
The Characteristics of a RESTful Semantic Web and Why They Are Important
The Characteristics of a RESTful Semantic Web and Why They Are Important
Upcoming SlideShare
Loading in...5
×

The Characteristics of a RESTful Semantic Web and Why They Are Important

1,999

Published on

Overview of some of the motivation and background behind the current draft of the SPARQL 1.1 Uniform HTTP Protocol for Managing RDF Graphs

Published in: Technology
1 Comment
5 Likes
Statistics
Notes
No Downloads
Views
Total Views
1,999
On Slideshare
0
From Embeds
0
Number of Embeds
1
Actions
Shares
0
Downloads
24
Comments
1
Likes
5
Embeds 0
No embeds

No notes for slide

Transcript of "The Characteristics of a RESTful Semantic Web and Why They Are Important"

  1. 1. Characteristics of a RESTful Semantic Web & Why They Are Important Chimezie Ogbuji The latest version of this presentation is here: http://gonzaga.ogbuji.net/~cogbuji/RestfulSemanticWeb.(odp|ppt|pdf)
  2. 2. Introduction I work in the Cleveland Clinic Heart and Vascular Institute as an Architect and Developer Member representative and Editor in W3C Data Access Working Group (DAWG)
  3. 3. The Semantic Web The Semantic Web (SW) is an extension of the Architecture of the World-wide Web (AWWW) • Web content is given well-defined meaning • Knowledge representation provides meaning
  4. 4. SW & AWWW Interoperability SW should retain properties of the AWWW • Web agents should be able to seamlessly interact with both • The assumptions web agents make about the AWWW should hold in the SW • Should be able to have our 'layer cake' and eat it too!
  5. 5. Current W3C DAWG Effort Relevant specifications • SPARQL 1.1/Query • SPARQL 1.1/Update • SPARQL 1.1/Protocol • SPARQL 1.1/Service Descriptions • SPARQL 1.1/Uniform HTTP Protocol for Managing RDF Graphs Discussing the latter
  6. 6. SPARQL 1.1 Update A language for updates to an RDF store • Insert triples into an RDF graph • Delete triples from an RDF graph • Perform group of update actions • Create new RDF graph within store • Delete an RDF graph from the store Both large and small granularity
  7. 7. Motivation Update operations should not be bound to an API or programming language Similar query languages include update mechanisms (SQL) A language extension is needed • However, an HTTP-based (RESTful) alternative is needed as well
  8. 8. A RESTful Update Protocol What does it mean to be RESTful? • Adhering to best practices for distributed hypermedia • Often misunderstood or overstated What is Hypermedia: • Human-authored media that 'branch or perform' in response to user actions
  9. 9. Primer on REST Representation State Transfer • A coordinated set of architectural constraints (an architectural style) • Properties induced by Web architecture • Abstraction of architectural elements within a distributed hypermedia system
  10. 10. URLs and URIs URI (Uniform Resource Identifier) • A locator, a name, or both URL (Uniform Resource Locator) • Subset of URIs that provide a means of locating the resource via an access mechanism
  11. 11. REST Data Elements Key data elements: • Resource identifier (URL, URN,etc.) • Resource (conceptual target of a reference) • Representation (RDF document) • Representation metadata (Internet Media Type) • Control data (if-modified-since, POST: purpose of message)
  12. 12. Credit: I. Jacobs and N. Walsh (2004)
  13. 13. Component Interactions Components act on resources via representations REST interactions are stateless REST interactions are similar to synchronous function calls • Input: control data, identifier, and representation • Output: control data, resource metadata, and representation
  14. 14. W3C TAG and AWWW Information Resource (documents) • “[...] all of their essential characteristics can be conveyed in a message” Tag Issue httpRange-14: • What kind of things do HTTP URIs refer to? Depends on response to HTTP GET
  15. 15. Exceptions to this Paradigm Some pegs don't fit this hole • There are URIs that are not resolvable (strictly names): • tag:chimezie@ogbuji.net:2009/Ngozi • There are HTTP URIs that are not resolvable (404 Not Found): • http://weather.example.com/oaxaca Can such URIs identify information resources?
  16. 16. SPARQL Dataset RDF Dataset (collection of graphs) • One graph (the default graph) without a name • Zero or more named graphs that are identified with a (graph) URI Relationship between a named graph and its URI is indirect • This is a source of confusion
  17. 17. Datasets, REST, and AWWW httpRange-14 and RDF datasets • What kind of things do graph URIs refer to? • If it is an HTTP URI, does it also depend on the response to HTTP GET?
  18. 18. A Graph URI Conjecture httpRange-14 might be a moot point with RDF datasets • All of the essential characteristics of an RDF graph can be conveyed in a message (as an RDF document) • So, graph URIs identify (RDF) Information Resources • “RDF knowledge”
  19. 19. RDF Graph Denotation What is the relationship between the graph and what the URI identifies? • RDF model theory tells us the meaning of an RDF graph • Allows us to interpret an RDF graph in a reproducible, principled way
  20. 20. Graph URI Conjecture (cont.) For a named graph in a dataset: • Graph URI identifies the meaning of the graph • Meaning can be serialized into an RDF document (over a protocol) • RDF graph parsed from this document can be interpreted to provide the meaning (possibly with the aid of an ontology)
  21. 21. Straightforward REST Model If we assume graph URIs are resolvable HTTP URIs: • REST components can interact with (named) graphs in a dataset intuitively via their URIs • They can retrieve a representation of the meaning of a graph in the dataset
  22. 22. Straightforward Model (cont.) • REST components can update the meaning of a graph by sending representations to the graph URIs • They can create new named graphs by sending a representation to a URI
  23. 23. Large Grain Protocol Compared to SPARQL Update • Facilitates manipulation at a strictly large granularity • RDF graphs are the atomic components of the RESTful update protocol • For smaller grain, more precise manipulation, there is SPARQL Update language
  24. 24. REST and RDF Syntax REST provides an extensible framework for the syntax of representations • REST components can request representations in a format of their choice (NTriples, RDF/XML, custom XML, etc.) • They can update RDF graphs via representations of their choice
  25. 25. Exceptions to the Rule What about graphs whose URIs are strictly names (and not locations)? • Their URIs are not HTTP URIs • Their HTTP URIs are not resolvable • The naming authority (DNS) for the URI is different from the server managing the dataset
  26. 26. URI Components
  27. 27. Embedding URIs Such URIs can be embedded (nested) in the query component of a resolvable, parent HTTP URI • A REST component interacts with the parent URI • Requests to the parent URI are understood to be directed at a graph associated with the embedded URI
  28. 28. Embedded URI Request
  29. 29. Managing the Exceptions Provides a way to manage graphs whose URIs are names but not locations • REST components interact with composite URIs (locations) • A URI (a name) is embedded in the location
  30. 30. Outstanding Questions What does a graph URI in an RDF dataset identify? • Proposed it identifies the meaning of its associated graph • Does the response from interacting with a graph HTTP URI determine this authoritatively? • Does this matter?
  31. 31. Outstanding Questions (cont.) Coordinating the protocols • How do web agents discover the various 'services'? • Can they do so in an unambiguous way? • Can they intuitively determine which to use and at what level of granularity?
  32. 32. The Semantic Web Answers to these questions are key to the future landscape of the Semantic Web
  1. A particular slide catching your eye?

    Clipping is a handy way to collect important slides you want to go back to later.

×