Logo

Semantic Web - an Evolution for the Future

Ivan Herman, W3C Head of Offices
Hong Kong, September 3rd, 2002

  1. Few Words on W3C
  2. W3C Technologies
  3. Towards a Semantic Web
  4. What Is Needed?
  5. Problem Example
  6. Statements
  7. Resource Description Framework
  8. Simple RDF statements
  9. URI-s play a fundamental role
  10. Adding a new predicate
  11. RDF Containers
  12. RDF Containers (cont)
  13. Building more complex statements
  14. More on RDF
  15. Binding RDF to an XML Resource
  16. Use of RDF in our example
  17. RDF is not Enough...
  18. RDF Schemas
  19. Defining our main resources
  20. Defining Properties
  21. Towards a Web Ontology
  22. Ontologies
  23. W3C's Web Ontologies Language (OWL)
  24. Examples in OWL
  25. Examples in OWL (cont)
  26. Available Specifications
  27. Available Specifications (cont)
  28. Public Fora at W3C
  29. Some Tools
  30. SW Application Examples
  31. SW Application Examples (cont)
  32. SW Application Examples (cont)
  33. And What about Web Services?
  34. A Simple Matching Problem
  35. WS Oriented Search Engines
  36. Convergence at W3C
  37. Further Information
Logo

Few Words on W3C

  • W3C was formed in 1994 by Tim Berners-Lee
    • first "host" at MIT, Cambridge, USA
    • two more "hosts" joined later
      • INRIA, France
      • Keio University, Japan
    • there are 13 "offices" as local representations
  • W3C is a member organization (around 500 members)
  • W3C develops Web recommendations ("Web Standards")
    • work is done by working groups
    • working groups are staffed by members

Ivan Herman, W3C Head of OfficesHong Kong, September 3rd, 20021 (37)
Logo

W3C Technologies

Table view of the W3C Technologies

Ivan Herman, W3C Head of OfficesHong Kong, September 3rd, 20022 (37)
Logo

Towards a Semantic Web

  • The current Web represents information using
    • natural language (English, Hungarian, Chinese,...)
    • graphics, multimedia, page layout
  • This is okay for humans; difficult for machines!
  • For distributed applications:
    • automatic procedures are involved and not (only) humans
    • agents try to make "sense" of resources on the Web
    • a well defined terminology on the domain is necessary

Ivan Herman, W3C Head of OfficesHong Kong, September 3rd, 20023 (37)
Logo

What Is Needed?

  • A resource should provide information about itself
    • also called "metadata"
    • metadata stored in XML (or other, machine readable form)
    • metadata vocabularies should be defined
    • agents should be able to "reason" about (meta)data

    The "Semantic Web" is an infrastructure for reasoning on the Web

  • It extends the current Web ("a globally linked database")

Ivan Herman, W3C Head of OfficesHong Kong, September 3rd, 20024 (37)
Logo

Problem Example

  • Convey the meaning of a figure through text

    (important for accessibility)

    • add metadata to the image describing the content
    • let a tool produce some simple output using the metadata
    • use a standard metadata formalism
W3C Membership evolution

Ivan Herman, W3C Head of OfficesHong Kong, September 3rd, 20025 (37)
Logo

Statements

  • The metadata is a set of statements
  • In our example:
    • "the type of the full slide is a chart, and the chart type is Ğlineğ"
    • "the chart is labeled with an (SVG) text element"
    • "the legend is also a hyperlink"
    • "the target of the hyperlink is ĞURIğ"
    • "the full slide consists of the legend, axes, and datalines"
    • "the datalines describe full and affiliate members, all members"
  • The statements are about resources:
    • SVG elements, general URI-s,...

Ivan Herman, W3C Head of OfficesHong Kong, September 3rd, 20026 (37)
Logo

Resource Description Framework

Statements can be modelled with

  • Resources: an element, a URI, a literal, ...
  • Properties: directed relations between two resources
  • Statements: bind resources through properties
  • RDF is a general model for such statements
    • can be expressed in XML or other syntaxes (eg, n3)

Ivan Herman, W3C Head of OfficesHong Kong, September 3rd, 20027 (37)
Logo

Simple RDF statements

Simple RDF statements with a code example

Ivan Herman, W3C Head of OfficesHong Kong, September 3rd, 20028 (37)
Logo

URI-s play a fundamental role

  • You can uniquely identify all resources on the web
  • Uniqueness is vital to make consistent statements
  • URI-s include:
    • protocol and location dependent identifiers

      URL-s (eg, http://..., mailto:...)

    • location independent identifications

      URN-s, PURL

Ivan Herman, W3C Head of OfficesHong Kong, September 3rd, 20029 (37)
Logo

Adding a new predicate

A sligthly more complex RDF example with code example

Ivan Herman, W3C Head of OfficesHong Kong, September 3rd, 200210 (37)
Logo

RDF Containers

RDF Containers in a graph plus code example

Ivan Herman, W3C Head of OfficesHong Kong, September 3rd, 200211 (37)
Logo

RDF Containers (cont)

  • Containers use special statements predefined by RDF:
    • rdf:type
    • rdf:_1, rdf:_2, rdf:_3, etc
  • rdf:Bag and rdf:li are shorthands for the XML encoding
  • Other types of containers are: Seq, Alt

Ivan Herman, W3C Head of OfficesHong Kong, September 3rd, 200212 (37)
Logo

Building more complex statements

Combination of an RDF Bag plus additional code in a graph plus a code example

Ivan Herman, W3C Head of OfficesHong Kong, September 3rd, 200213 (37)
Logo

More on RDF

Ivan Herman, W3C Head of OfficesHong Kong, September 3rd, 200214 (37)
Logo

Binding RDF to an XML Resource

  • You can use the rdf:about as a URI for external resources
  • You can add RDF to XML directly (in its own namespace).

E.g, in SVG:

  <svg ...>
  ...
    <metadata>
      <rdf:RDF
        xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#">
      ...
      </rdf:RDF>
    </metadata>
    ...
  </svg>

Ivan Herman, W3C Head of OfficesHong Kong, September 3rd, 200215 (37)
Logo

Use of RDF in our example

The tool:

  1. Uses a public domain RDF parser to extract metadata
  2. Resolves the URI-s in RDF to access the SVG elements
  3. Extracts information for the output
    • eg, text element content, hyperlink data, descriptions
  4. Combines this with a general text
  5. Produces a (formatted) text for each RDF statement

Ivan Herman, W3C Head of OfficesHong Kong, September 3rd, 200216 (37)
Logo

RDF is not Enough...

What vocabulary should we use ("Contains", "ChartType", etc)?

  • Add traditional datatypes to RDF
    • the value of the property Labelled should be a boolean

      in the mathematical sense

    • will be in the next release of RDF
  • Use RDF Schemas for the basic vocabulary
    • what properties can be used?
    • what resources the properties can be applied to?

Ivan Herman, W3C Head of OfficesHong Kong, September 3rd, 200217 (37)
Logo

RDF Schemas

  • Use an object based terminology to define resources
    • can define classes of resources
    • everything is a subclass of Resource
  • Properties on resources are defined by
    • constraints on their range and domain
    • specialization (subPropertyOf)
Overview of the main RDF Schema classes

Ivan Herman, W3C Head of OfficesHong Kong, September 3rd, 200218 (37)
Logo

Defining our main resources

From our example (note: it is also in RDF...):

<rdfs:Class rdf:ID="SvgEntity">
 <rdfs:comment>The class of SVG elements</rdfs:comment>
 <rdfs:subClassOf 
  rdf:resource="#http://www.w3.org/2000/01/rdf-schema#Resource"/>
</rdfs:Class>
<rdfs:Class rdf:ID="graphicsShape">
 <rdf:comment>This should be: Rectangle, Circle, ... </rdf:comment>
 <rdfs:subClassOf 
  rdf:resource="#http://www.w3.org/2000/01/rdf-schema#Literal"/>
</rdfs:Class>
<rdfs:Class rdf:ID="boolean">
 <rdfs:comment>This should be true or false</rdfs:comment>
 <rdfs:subClassOf 
  rdf:resource="#http://www.w3.org/2000/01/rdf-schema#Literal"/>
</rdfs:Class>

Ivan Herman, W3C Head of OfficesHong Kong, September 3rd, 200219 (37)
Logo

Defining Properties

<rdf:Property rdf:ID="IsAnchor">
  <rdfs:domain rdf:resource="#SvgEntity"/>
  <rdfs:range rdf:resource="#boolean"/>
</rdf:Property>
<rdf:Property rdf:ID="Labelled">
  <rdfs:domain rdf:resource="#SvgEntity"/>
  <rdfs:range rdf:resource="#boolean"/>
</rdf:Property>
<rdf:Property rdf:ID="LabelledBy">
  <rdfs:subPropertyOf rdf:resource="#Labelled"/>
  <rdfs:range rdf:resource="#SvgEntity"/>
</rdf:Property>

And here is the full (RDF) schema...

Ivan Herman, W3C Head of OfficesHong Kong, September 3rd, 200220 (37)
Logo

Towards a Web Ontology

RDF Schemas only offer the basic mechanism:

  • no reasoning on the vocabulary elements
    • "if this property is true, then that property is also true"
    • "if this property is true, then that property is not true"
  • no equivalence of terms for different vocabularies
  • multiple superclasses, complex restrictions, etc, are not available

Ivan Herman, W3C Head of OfficesHong Kong, September 3rd, 200221 (37)
Logo

Ontologies

The Semantic Web needs a support to build ontologies

"defines the terms and relationships used to describe and represent an area of knowledge"

Goal is to develop a Web Ontologies Language:

  • built on top of RDF and RDF Schemas
  • based on previous works:
    • DAML (DARPA project), OIL (EU project)
    • DAML+OIL (merge of DAMN and OIL)
  • practical results in logic, knowledge representation, etc

Ivan Herman, W3C Head of OfficesHong Kong, September 3rd, 200222 (37)
Logo

W3C's Web Ontologies Language (OWL)

  • Currently the main activity at W3C on Semantic Web
  • Working Group formed in 2001
  • Published the first public drafts end of July 2002

Ivan Herman, W3C Head of OfficesHong Kong, September 3rd, 200223 (37)
Logo

Examples in OWL

<owl:import rdf:resource="http://...."/>
<rdf:Class rdf:ID="graphicsShape">
  <owl:oneOf>
    <rdfs:Literal>Rectangle</rdfs:Literal>
    <rdfs:Literal>Circle</rdfs:Literal>
    <rdfs:Literal>Ellipse</rdfs:Literal>
    <rdfs:Literal>Polyline</rdfs:Literal>
    <rdfs:Literal>General Path</rdfs:Literal>
    <!-- etc. -->
  </owl:oneOf>
</rdf:Class>
<rdf:Class rdf:ID="animationTimeControl">
  <owl:unionOf>
    <rdf:Class rdf:resource="#AnimatePar"/>
    <rdf:Class rdf:resource="#AnimateSeq"/>
  </owl:unionOf>
</rdf:Class>

Ivan Herman, W3C Head of OfficesHong Kong, September 3rd, 200224 (37)
Logo

Examples in OWL (cont)

<rdf:Property rdf:ID="Link">
  <owl:unionOf>
    <rdfs:Property rdf:resource="#IsAnchor"/>
    <rdfs:Property rdf:resource="#ContainsAnchor"/>
  </owl:unionOf>
</rdf:Property>
<rdf:Property rdf:ID="NotLink">
  <owl:complementOf rdf:resource="#Link"/>
</rdf:Property>
<rdf:Property rdf:ID="isConnected">
  <owl:TransitiveProperty/>
</rdf:Property>
<rdf:Property rdf:ID="InstanceOf"/>
  <owl:FunctionalProperty/>
</rdf:Property>
<rdf:Property rdf:ID="GraphicsType">
  <owl:equivalentTo rdf:resource="http:../#TypeGraphique"/>
</rdf:Property>

Ivan Herman, W3C Head of OfficesHong Kong, September 3rd, 200225 (37)
Logo

Available Specifications

RDF Primer
URI: http://www.w3.org/TR/rdf-primer

start here if you are new to RDF

RDF Syntax and Grammar
URI: http://www.w3.org/TR/rdf-syntax-grammar/

the mapping syntax to XML

Model Theory
URI: http://www.w3.org/TR/rdf-mt/

precise definition of the semantics (based on the graphs)

RDF Test Cases
URI: http://www.w3.org/TR/rdf-testcases/

Ivan Herman, W3C Head of OfficesHong Kong, September 3rd, 200226 (37)
Logo

Available Specifications (cont)

RDF Schema spec.
URI: http://www.w3.org/TR/rdf-schema/
OWL Features Synopsis
URI: http://www.w3c.org/TR/owl-features/
OWL Reference
URI: http://www.w3c.org/TR/owl-ref/
OWL Abstract Syntax
URI: http://www.w3c.org/TR/owl-absyn/

Ivan Herman, W3C Head of OfficesHong Kong, September 3rd, 200227 (37)
Logo

Public Fora at W3C

Semantic Web/RDF Interest Group
a forum for discussions on applications

URI: http://www.w3.org/RDF/Interest

RDF Logic
public mailing list for detailed technical discussions

URI: http://lists.w3.org/Archives/Public/www-rdf-logic/

Annotation and Collaboration
public mailing list of RDF-based annotation systems

URI: http://lists.w3.org/Archives/Public/www-annotation/

W3C Semantic Web Home page
URI: http://www.w3.org/2001/sw/

Ivan Herman, W3C Head of OfficesHong Kong, September 3rd, 200228 (37)
Logo

Some Tools

Graphical Editors
eg, IsaViz (Xerox Research) or RDF Author (Univ. of Bristol)
RDF Environments (interpreter, etc)
HP Lab's Jena
Redland (RDF appl. framework in Python)
Validators
eg, http://www.w3.org/RDF/Validator/

Ivan Herman, W3C Head of OfficesHong Kong, September 3rd, 200229 (37)
Logo

SW Application Examples

Dublin Core
vocabularies for distributed Digital Libraries

one of the first metadata vocabularies in RDF

URI: http://www.dublicore.org

PRISM
(Publishing Requirements for Industry Standard Metadata)

collect, post-process, etc, content from news, catalogues, books,...

extends the Dublin Core

includes statement on digital right tracking

URI: http://www.prismstandard.org

Ivan Herman, W3C Head of OfficesHong Kong, September 3rd, 200230 (37)
Logo

SW Application Examples (cont)

Web Content Syndication (RSS)
can be used, eg, to analyse HTML Pages and produce news item

there is a Yahoo discussion group and (non-w3c) working group

URI: http://purl.org/rss/

example: W3C's home page reflected by Meerkat and NewsIsFree.

XMP
Adobe's tool to add RDF-based metadata to all their file formats

the tool is available for all!

URI: http://www.adobe.com/products/xmp/main.html

Ivan Herman, W3C Head of OfficesHong Kong, September 3rd, 200231 (37)
Logo

SW Application Examples (cont)

TAP (formerly 'The Alpiri Project')
an RDF database of 1000s of 'real world' things,

(organised into categories)

tools to turn (a domain of) the Web into a big database

URI: http://tap.standford.edu

Artiste project
An integrated art analysis and navigating environment

RDF is used to bridge the terms among several art databases

URI: http://www.artisteweb.org/index2.html

Ivan Herman, W3C Head of OfficesHong Kong, September 3rd, 200232 (37)
Logo

And What about Web Services?

A widely deployed Web Services infrastructure may be the most compelling business case for the Semantic Web

and

Semantic Web technologies will be necessary for a wide deployment of Web Services

Ivan Herman, W3C Head of OfficesHong Kong, September 3rd, 200233 (37)
Logo

A Simple Matching Problem

Two WS blocks with output of one going into intput of the other, but a question mark in the middle
  • How do you ensure that output #1 matches input #2?
  • What does "match" means?
    • identical type (eg, using XML Schemas)?
    • subclasses of one another?
    • "equivalent" notions (eg, document <=> text file)?

Common vocabularies are necessary!

Ivan Herman, W3C Head of OfficesHong Kong, September 3rd, 200234 (37)
Logo

WS Oriented Search Engines

  • A Web Service infrastructure needs specialized search engines
  • Similar problems to the current Web... eg:
    • "see if these services can cooperate properly"
    • "find me the most efficient equation solver for my problem"
    • "how do I characterize my company's web services?"
    • etc.
  • These are all "Semantic Web"-like issues:
    • managing metadata on services (ie, resources...)
    • building the right terminologies (and not only one!)
    • equivalence of various terminologies
    • logical reasoning on service descriptions

Ivan Herman, W3C Head of OfficesHong Kong, September 3rd, 200235 (37)
Logo

Convergence at W3C

  • Both developments are hosted at W3C
  • The Web Services Groups also work on convergence
    • e.g., mapping of WSDL1.2 to RDF
    • cooperation with the RDF Interest Group
  • The Semantic Web activity regards WS as one of its test case
  • W3C participates in a European Union funded project which

    also works on this connection (SWAD)

Ivan Herman, W3C Head of OfficesHong Kong, September 3rd, 200236 (37)
Logo

Further Information

These slides are at:
http://www.w3.org/2002/Talks/WS-HongKong-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

Ivan Herman, W3C Head of OfficesHong Kong, September 3rd, 200237 (37)