RDF Application Overview

...
<foaf:Person>
   <foaf:name>Takashi OTA</foaf:name>
   <foaf:name xml:lang="ja">太田尚志</foaf:name>
   <foaf:title>Mr</foaf:title>
   <foaf:firstName xml:lang="ja">尚志</foaf:firstName>
   <foaf:firstName>Takashi</foaf:firstName>
   <foaf:surname xml:lang="ja">太田</foaf:surname>
   <foaf:surname>OTA</foaf:surname>
   <foaf:nick>takot, Takashi</foaf:nick>
   <foaf:nick xml:lang="ja">たこちー</foaf:nick>
   <foaf:knows>
      <foaf:Person>
         <foaf:name>SHIMIZU Noritada</foaf:name>
         <foaf:firstname>Noritada</foaf:firstname>
         <foaf:firstname xml:lang="ja">智公</foaf:firstname>
         <foaf:surname>SHIMIZU</foaf:surname>
         <foaf:surname xml:lang="ja">清水</foaf:surname>
      </foaf:Person>
   </foaf:knows>
</foaf:Person>
...

W3C specifications define the RDF language as well as ontologies defining terms for class and property hierarchy and for description logic. This provides a basis for applications including syndication, social network description, document annotation and others.

Eric Prud'hommeaux
14 Nov, 2003
Keio University, Japan

$Revision: 1.33 $ $Date: 2003/11/18 07:25:27 $

Available at http://www.w3.org/2003/Talks/14-Nov-RDFApp/.

These slide contain many pointers -- intended to be used as a resource after the talk is complete.

 

RDF Applications

Some example RDF applications:

Annotation Reply
validation
W3C RDF Validator
ontology
rdfs, OWL, log:, Semantic Web Web Services
query
RDQL, algae, squish, ... (see survey)
logic (rules)
cwm, RACER, FaCT (when use with a translator)
data servers
Jena/Joseki, TAP (semantic search), 3store
filtering/aggregation
NewsMonster, PICS
privacy and digital rights
P3P, Creative Commons
and more...
FOAF (and FOAFCORP), Annotea, RSS 1.0, wordnet, MusicBrainz, Sherpa, RDFical (ICalendar)...
 

Graphical Interfaces

IsaVis screenshot

The graph nature of RDF encourages visualization

 

Graphical Interfaces 2

protoge screenshot

RDF Classes are useful for classification interfaces.

 

Semantic Web Web Services

Service-Oriented Architecture

The Web Services Activity specifies a set of protocols for describing web services invocation.

 

Relationship to XML Activity

...
<foaf:Person>
   <foaf:name>Takashi OTA</foaf:name>
   <foaf:name xml:lang="ja">太田尚志</foaf:name>
   <foaf:nick>takot, Takashi</foaf:nick>
   <foaf:nick xml:lang="ja">たこちー</foaf:nick>
</foaf:Person>
...

RDF rests on XML technologies for one serialization. XML provides:

 

Namespaces

The RDF data model is fundamentally different from XML.

More on data models

The difference in the data models is very important.

Looking at some colloquial (intuitive) XML...

Convenient XML

We pretend XML is simple:

<Person href="Eric"
        first="Eric"
        last="Prud'hommeaux">
  <mbox href="mailto:eric+talk@w3.org"/>
</Person>

Self-describing XML

Globally scoped XML data requires more precision:

<?xml version="1.0"?>
<foaf:Person soapenc:href="http://www.w3.org/People/all#eric"
             foaf:first="Eric"
             foaf:surname="Prud'hommeaux"
             xmlns:soapenc="http://schemas.xmlsoap.org/soap/encoding/"
             xmlns:foaf="http://xmlns.com/foaf/0.1/">
  <foaf:mbox soapenc:href="mailto:eric+talk@w3.org"/>
</foaf:Person>

XML with Arbitrary Term Re-use

Re-using defined terms from other schemas requires even more precision:

<?xml version="1.0"?>
<rdf:RDF xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#">
<foaf:Person rdf:about="http://www.w3.org/People/all#eric"
             foaf:first="Eric"
             foaf:surname="Prud'hommeaux"
             xmlns:foaf="http://xmlns.com/foaf/0.1/"
             xmlns:pim="http://www.w3.org/2000/10/swap/pim/email#">
  <pim:mbox rdf:resource="mailto:eric+talk@w3.org"/>
</foaf:Person>
</rdf:RDF>

XML Data Model

The XML Infoset view of the Person record:

XML infoset view of Person record

RDF Data Model

The RDF view of the Person record:

RDF graph of Person record
<?xml version="1.0"?>
<rdf:RDF xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#">
<foaf:Person rdf:about="http://www.w3.org/People/all#eric"
             foaf:first="Eric"
             foaf:surname="Prud'hommeaux"
             xmlns:foaf="http://xmlns.com/foaf/0.1/"
             xmlns:pim="http://www.w3.org/2000/10/swap/pim/email#">
  <pim:mbox rdf:resource="mailto:eric+talk@w3.org"/>
</foaf:Person>
</rdf:RDF>
 

Remaining Work

Upcoming Standardization

RDF Query

RDF graph of Person record

standardization will provide applications with uniform access to RDF data.

will enable standard query as a (web) service.

 

RDF Rules

RDF graph of Person record

RDFS and OWL have semantics that must be interpreted by a programmer.

A standard expression of rules allows the machine to assume that step.

 

Research Issues

Such a large arena, hard to select.

Here are a few recurring issues:

Context, Attribution, Provenance...

Most information management systems imply some "paper trail", information about where the information comes from.

Databases, RDF included, tend to push this information in the application layer.

There is no current standard way to describe the relationship between an assertion and the document where that assertion was found. cwm uses logInclude. Most DBs keep the information "out of the model".

Interaction with Conventional Databases

efficiency -- flexibility of RDF with the efficiency of relational DBs:

Database manufacturers can provide this view of data:

Conclusions: