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

Uploaded 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

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

More in: Technology
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
No Downloads


Total Views
On Slideshare
From Embeds
Number of Embeds



Embeds 0

No embeds

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

    No notes for slide


  • 1. Characteristics of a RESTful Semantic Web & Why They Are Important Chimezie Ogbuji The latest version of this presentation is here:|ppt|pdf)
  • 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. 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. 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. 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. 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. 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. 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. 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. 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. 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. Credit: I. Jacobs and N. Walsh (2004)
  • 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. 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. Exceptions to this Paradigm Some pegs don't fit this hole • There are URIs that are not resolvable (strictly names): • • There are HTTP URIs that are not resolvable (404 Not Found): • Can such URIs identify information resources?
  • 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. 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. 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. 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. 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. 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. 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. 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. 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. 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. URI Components
  • 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. Embedded URI Request
  • 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. 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. 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. The Semantic Web Answers to these questions are key to the future landscape of the Semantic Web