Cover page images (keys)

Semantic Web

Delhi, India, 11 November 2005

Ivan Herman, W3C

 

a series of pictures on delhi

Slides of the tutorial given in Delhi, India, at the International Conference & Workshop on Web Technologies, on the 11th of November, 2005.

These slides are online at: http://www.w3.org/2005/Talks/1111-Delhi-IH/ with active links. A printable version (in PDF) is also available.

Towards a Semantic Web

Example: Searching

Example: Data(base) Integration

Example: Digital Libraries

Example: Semantics of Web Services

What Is Needed (Technically)?

 

Basic Metadata Architecture: RDF

A Problem Example for the Tutorial

image of membership curve evolution

Statements

Resource Description Framework

RDF is a Graph

A Simple RDF Example

A Simple RDF Graph with full URI-s and example code in XML

URI-s Play a Fundamental Role

URI-s: Merging

What Merge Can Do...

Basic
Link to me Scott's nodes linked from me link to RDF from basic Link to graphs from RDF Link to Graph vis from graphs link to overview paper nodes from graph vis connect the paper to me, scott, and guy

RDF/XML Principles

A Simple RDF Graph with without full URIs and namespaces
«Element for #FullSlide»
  «Element for labelledBy»
      «Element for #BottomLegend»
  «/Element for labelledBy»
«/Element for #FullSlide»
«Element for #FullSlide»
  «Element for graphicsType»
      Chart
  «/Element for graphicsType»
«/Element for #FullSlide»

RDF/XML Principles (cont)

A Simple RDF Graph with one single predicate
<rdf:RDF
  xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#">
    <rdf:Description rdf:about="#FullSlide">
       «Element for labelledBy»
           <rdf:Description rdf:about="#BottomLegend"/>
       «/Element for labelledBy»
    </rdf:Description>
<rdf:RDF>

RDF/XML Principles (cont)

A Simple RDF Graph without full URI-s
<rdf:RDF
  xmlns:axsvg="http://svg.example.org#"
  xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#">
    <rdf:Description rdf:about="#FullSlide">
       <axsvg:labelledBy>
           <rdf:Description rdf:about="#BottomLegend"/>
       </axsvg:labelledBy>
    </rdf:Description>
<rdf:RDF>

RDF/XML Syntax Simplifications

       <rdf:Description rdf:about="#FullSlide">
          <axsvg:LabelledBy>
              <rdf:Description rdf:about="#BottomLegend">
                 <axsvg:IsAnchor>True</axsvg:IsAnchor>
              </rdf:Description>
          </axsvg:LabelledBy>
          <axsvg:GraphicsType>
              Chart
          </axsvg:GraphicsType>
       </rdf:Description>

 

RDF Vocabulary Description Language (RDFS)
(a.k.a. RDFS)

Need for RDF Schemas

Classes, Resources, …

Classes, Resources, … (cont.)

Classes, Resources in RDF(S)

A slide showing the Fullslide (in appl. space) with its own Schema and the RDFS entitites, all merged

Schema Example in RDF/XML

<rdf:Description rdf:ID="SVGEntity">
  <rdf:type
    rdf:resource="http://www.w3.org/2000/01/rdf-schema#Class"/>
</rdf:Description>
<rdf:Description rdf:about="#Datalines">
   <rdf:type rdf:resource="axsvg-schema.rdf#SVGEntity"/>
</rdf:Description>

Inferred Properties

A slide showing an inferred property

Inference: Let Us Be Formal…

If:
  uuu rdfs:subClassOf xxx .
  vvv rdf:type uuu .
Then add:
  vvv rdf:type xxx .

Properties (Predicates)

Property Specification Example

A slide showing the Fullslide (in appl. space) with its own Schema and the RDFS entitites, all merged

Literals in RDF (and RDF/XML)

  <rdf:Description rdf:about="#Datalines">
     <axsvg:IsAnchor
      rdf:datatype="http://www.w3.org/2001/XMLSchema#boolean">
           false
     </axsvg:IsAnchor>
  </rdf:Description>
  <rdf:Description rdf:about="#Datalines">
     <axsvg:SVGContent rdf:parseType="Literal"
        xmlns:svg="http:....">
            <svg:svg ...>
                <svg:line x1="..."/>
                <svg:path d="..."/>
                 ...
            </svg:svg>
     </axsvg:SVGContent>
  </rdf:Description>

 

Querying RDF Data: SPARQL

How to retrieve triples?

triples = graph.triples((Resource,Property,None))

Querying RDF Graphs

Simple SPARQL Example

SELECT ?cat ?val
WHERE { ?x rdf:value ?val. ?x category ?cat }
A simple RDF Graph, with some matching patterns highlighted

Other SPARQL Features

SPARQL Usage in Practice

 

Ontologies (OWL)

Ontologies

W3C’s Ontology Language (OWL)

Classes in OWL

OWL Resource and Thing

Example: (OWL) Enumeration

A figure showing the 'oneOf' feature of OWL

Union of Classes

Showing unionOf with animation

Property Restrictions

Property Restrictions in OWL

Property Restriction Example

Restriction example by defining the egyptian cobra

Property Characterization

The top level OWL property definitions

Characterization Example

Restriction example, using cardinality

OWL: Additional Features

Example: Connecting to Hungarian

Example of equivalence between English and Hungarian terms

However: Ontologies are Hard!

Simple RDF statements

Ontologies are Hard! (cont)

Simple RDF statements

 

RDF/OWL in Practice

RDF in Programming Practice

Example: Jena

  // create a model (a.k.a. Triple Store)
  Model model = new ModelMem();
  Resource subject = model.createResource("URI_of_Subject")
  // 'in' refers to the input file
  model.read(new InputStreamReader(in));
  StmtIterator iter = model.listStatements(subject,null,null);
  while(iter.hasNext()) { 
     st = iter.next();
     p = st.getProperty();
     o = st.getObject();
     do_something(p,o);
  }

Jena (cont)

Lots of Other tools

 

Current/future Developments

Simple Knowledge Organisation System (SKOS)

Example: Entries in a Glossary (1)

“Assertion”
“(i) Any expression which is claimed to be true. (ii) The act of claiming something to be true.”
“Class”
“A general concept, category or classification. Something used primarily to classify or categorize other things.”
“Resource”
“(i) An entity; anything in the universe. (ii) As a class name: the class of everything; the most inclusive category possible.”

(from the RDF Semantics Glossary)

Example: Entries in a Glossary (2)

A slide a simple SKOS glossary

Example: Entries in a Glossary (3)

A slide a simple SKOS glossary

Example: Taxonomy (1)

Illustrates “broader” and “narrower”

General
  • Travelling
  • Politics
SemWeb
  • RDF
    • OWL

(From MortenF’s weblog categories. Note that the categorization is arbitrary!)

Example: Taxonomy (2)

A slide a simple SKOS glossary

Example: Thesaurus (1)

Term
Economic cooperation
Used For
Economic co-operation
Broader terms
Economic policy
Narrower terms
Economic integration, European economic cooperation, European industrial cooperation, Industrial cooperation
Related terms
Interdependence
Scope Note
Includes cooperative measures in banking, trade, industry etc., between and among countries

(from UK Archival Thesaurus)

Example: Thesaurus (2)

A slide a simple SKOS glossary

SKOS Core Overview

Complementarity of SKOS and OWL (Why Having SKOS?)

“Core” Vocabularies

Rules

W3C’s Rules Workshop

Rules Interchange Format Working Group

RIF Phase 1 Goals

RIF Phase 2 Goals

Lots of Theoretical Questions to Solve

The traditional layercake model of SW The two tower lternative for the SW architecture (with Rules and Ontologies side by side)

Beyond Rules: Trust

A Number of Other Issues…

 

Available Documents

Some Books

Further Information

SWBP Working Group Documents

Further Information (cont)

Public Fora at W3C

Semantic Web Interest Group
a forum for discussions on applications
RDF Logic
public (archived) mailing list for technical discussions

 

Some Application Examples

SW Applications

Data integration

MuseoSuomi Application dump

Portals

Vodaphone screen dump

Improved Search via Ontology: GoPubMed

GoPubMed Application dump

Adobe's XMP

XMP Application dump

Further Information

These slides are at:
http://www.w3.org/2005/Talks/1111-Delhi-IH/
Semantic Web homepage
http://www.w3.org//2001/sw/
More information about W3C:
http://www.w3.org/Consortium/
Contact information:
http://www.w3.org/Consortium/Contact
Mail me:
ivan@w3.org