The Characteristics of a RESTful Semantic Web and Why They Are Important
-
Upload
chimezie-ogbuji -
Category
Technology
-
view
1.967 -
download
1
description
Transcript of The Characteristics of a RESTful Semantic Web and Why They Are Important
![Page 1: The Characteristics of a RESTful Semantic Web and Why They Are Important](https://reader034.fdocuments.us/reader034/viewer/2022042814/555b8655d8b42acd238b4835/html5/thumbnails/1.jpg)
Characteristics of a Characteristics of a RESTful Semantic Web & RESTful Semantic Web & Why They Are ImportantWhy They Are Important
Chimezie Ogbuji
The latest version of this presentation is here:http://gonzaga.ogbuji.net/~cogbuji/RestfulSemanticWeb.(odp|ppt|pdf)
![Page 2: The Characteristics of a RESTful Semantic Web and Why They Are Important](https://reader034.fdocuments.us/reader034/viewer/2022042814/555b8655d8b42acd238b4835/html5/thumbnails/2.jpg)
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)
![Page 3: The Characteristics of a RESTful Semantic Web and Why They Are Important](https://reader034.fdocuments.us/reader034/viewer/2022042814/555b8655d8b42acd238b4835/html5/thumbnails/3.jpg)
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
![Page 4: The Characteristics of a RESTful Semantic Web and Why They Are Important](https://reader034.fdocuments.us/reader034/viewer/2022042814/555b8655d8b42acd238b4835/html5/thumbnails/4.jpg)
![Page 5: The Characteristics of a RESTful Semantic Web and Why They Are Important](https://reader034.fdocuments.us/reader034/viewer/2022042814/555b8655d8b42acd238b4835/html5/thumbnails/5.jpg)
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!
![Page 6: The Characteristics of a RESTful Semantic Web and Why They Are Important](https://reader034.fdocuments.us/reader034/viewer/2022042814/555b8655d8b42acd238b4835/html5/thumbnails/6.jpg)
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
![Page 7: The Characteristics of a RESTful Semantic Web and Why They Are Important](https://reader034.fdocuments.us/reader034/viewer/2022042814/555b8655d8b42acd238b4835/html5/thumbnails/7.jpg)
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
![Page 8: The Characteristics of a RESTful Semantic Web and Why They Are Important](https://reader034.fdocuments.us/reader034/viewer/2022042814/555b8655d8b42acd238b4835/html5/thumbnails/8.jpg)
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
![Page 9: The Characteristics of a RESTful Semantic Web and Why They Are Important](https://reader034.fdocuments.us/reader034/viewer/2022042814/555b8655d8b42acd238b4835/html5/thumbnails/9.jpg)
A RESTful Update ProtocolA 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
![Page 10: The Characteristics of a RESTful Semantic Web and Why They Are Important](https://reader034.fdocuments.us/reader034/viewer/2022042814/555b8655d8b42acd238b4835/html5/thumbnails/10.jpg)
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
![Page 11: The Characteristics of a RESTful Semantic Web and Why They Are Important](https://reader034.fdocuments.us/reader034/viewer/2022042814/555b8655d8b42acd238b4835/html5/thumbnails/11.jpg)
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
![Page 12: The Characteristics of a RESTful Semantic Web and Why They Are Important](https://reader034.fdocuments.us/reader034/viewer/2022042814/555b8655d8b42acd238b4835/html5/thumbnails/12.jpg)
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)
![Page 13: The Characteristics of a RESTful Semantic Web and Why They Are Important](https://reader034.fdocuments.us/reader034/viewer/2022042814/555b8655d8b42acd238b4835/html5/thumbnails/13.jpg)
Credit: I. Jacobs and N. Walsh (2004)
![Page 14: The Characteristics of a RESTful Semantic Web and Why They Are Important](https://reader034.fdocuments.us/reader034/viewer/2022042814/555b8655d8b42acd238b4835/html5/thumbnails/14.jpg)
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
![Page 15: The Characteristics of a RESTful Semantic Web and Why They Are Important](https://reader034.fdocuments.us/reader034/viewer/2022042814/555b8655d8b42acd238b4835/html5/thumbnails/15.jpg)
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
![Page 16: The Characteristics of a RESTful Semantic Web and Why They Are Important](https://reader034.fdocuments.us/reader034/viewer/2022042814/555b8655d8b42acd238b4835/html5/thumbnails/16.jpg)
![Page 17: The Characteristics of a RESTful Semantic Web and Why They Are Important](https://reader034.fdocuments.us/reader034/viewer/2022042814/555b8655d8b42acd238b4835/html5/thumbnails/17.jpg)
Exceptions to this Paradigm
Some pegs don't fit this hole • There are URIs that are not
resolvable (strictly names):• tag:[email protected]:2009/Ngozi
• There are HTTP URIs that are not resolvable (404 Not Found):• http://weather.example.com/oaxaca
Can such URIs identify information resources?
![Page 18: The Characteristics of a RESTful Semantic Web and Why They Are Important](https://reader034.fdocuments.us/reader034/viewer/2022042814/555b8655d8b42acd238b4835/html5/thumbnails/18.jpg)
SPARQL Dataset 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
![Page 19: The Characteristics of a RESTful Semantic Web and Why They Are Important](https://reader034.fdocuments.us/reader034/viewer/2022042814/555b8655d8b42acd238b4835/html5/thumbnails/19.jpg)
![Page 20: The Characteristics of a RESTful Semantic Web and Why They Are Important](https://reader034.fdocuments.us/reader034/viewer/2022042814/555b8655d8b42acd238b4835/html5/thumbnails/20.jpg)
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?
![Page 21: The Characteristics of a RESTful Semantic Web and Why They Are Important](https://reader034.fdocuments.us/reader034/viewer/2022042814/555b8655d8b42acd238b4835/html5/thumbnails/21.jpg)
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”
![Page 22: The Characteristics of a RESTful Semantic Web and Why They Are Important](https://reader034.fdocuments.us/reader034/viewer/2022042814/555b8655d8b42acd238b4835/html5/thumbnails/22.jpg)
![Page 23: The Characteristics of a RESTful Semantic Web and Why They Are Important](https://reader034.fdocuments.us/reader034/viewer/2022042814/555b8655d8b42acd238b4835/html5/thumbnails/23.jpg)
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
![Page 24: The Characteristics of a RESTful Semantic Web and Why They Are Important](https://reader034.fdocuments.us/reader034/viewer/2022042814/555b8655d8b42acd238b4835/html5/thumbnails/24.jpg)
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)
![Page 25: The Characteristics of a RESTful Semantic Web and Why They Are Important](https://reader034.fdocuments.us/reader034/viewer/2022042814/555b8655d8b42acd238b4835/html5/thumbnails/25.jpg)
![Page 26: The Characteristics of a RESTful Semantic Web and Why They Are Important](https://reader034.fdocuments.us/reader034/viewer/2022042814/555b8655d8b42acd238b4835/html5/thumbnails/26.jpg)
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
![Page 27: The Characteristics of a RESTful Semantic Web and Why They Are Important](https://reader034.fdocuments.us/reader034/viewer/2022042814/555b8655d8b42acd238b4835/html5/thumbnails/27.jpg)
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
![Page 28: The Characteristics of a RESTful Semantic Web and Why They Are Important](https://reader034.fdocuments.us/reader034/viewer/2022042814/555b8655d8b42acd238b4835/html5/thumbnails/28.jpg)
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
![Page 29: The Characteristics of a RESTful Semantic Web and Why They Are Important](https://reader034.fdocuments.us/reader034/viewer/2022042814/555b8655d8b42acd238b4835/html5/thumbnails/29.jpg)
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
![Page 30: The Characteristics of a RESTful Semantic Web and Why They Are Important](https://reader034.fdocuments.us/reader034/viewer/2022042814/555b8655d8b42acd238b4835/html5/thumbnails/30.jpg)
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
![Page 31: The Characteristics of a RESTful Semantic Web and Why They Are Important](https://reader034.fdocuments.us/reader034/viewer/2022042814/555b8655d8b42acd238b4835/html5/thumbnails/31.jpg)
URI Components
![Page 32: The Characteristics of a RESTful Semantic Web and Why They Are Important](https://reader034.fdocuments.us/reader034/viewer/2022042814/555b8655d8b42acd238b4835/html5/thumbnails/32.jpg)
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
![Page 33: The Characteristics of a RESTful Semantic Web and Why They Are Important](https://reader034.fdocuments.us/reader034/viewer/2022042814/555b8655d8b42acd238b4835/html5/thumbnails/33.jpg)
Embedded URI Request
![Page 34: The Characteristics of a RESTful Semantic Web and Why They Are Important](https://reader034.fdocuments.us/reader034/viewer/2022042814/555b8655d8b42acd238b4835/html5/thumbnails/34.jpg)
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
![Page 35: The Characteristics of a RESTful Semantic Web and Why They Are Important](https://reader034.fdocuments.us/reader034/viewer/2022042814/555b8655d8b42acd238b4835/html5/thumbnails/35.jpg)
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?
![Page 36: The Characteristics of a RESTful Semantic Web and Why They Are Important](https://reader034.fdocuments.us/reader034/viewer/2022042814/555b8655d8b42acd238b4835/html5/thumbnails/36.jpg)
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?
![Page 37: The Characteristics of a RESTful Semantic Web and Why They Are Important](https://reader034.fdocuments.us/reader034/viewer/2022042814/555b8655d8b42acd238b4835/html5/thumbnails/37.jpg)
The Semantic Web
Answers to these questions are key to the future landscape of the Semantic Web