disseminating web (3.0) knowlege xml standards : rdf, owl

71
 ATHENS 2007 - ENSAM Paris Henry Boccon-Gibod 1 Disseminating  Web (2.0) information XML standards : RDF, OWL Henry Boccon-Gibod (EDF R&D) Tuesday, November 20, morning : 8:00 – 12:00 

Upload: others

Post on 09-Apr-2022

8 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Disseminating Web (3.0) knowlege XML standards : RDF, OWL

 ATHENS 2007 ­ ENSAM Paris Henry Boccon­Gibod

1

Disseminating  Web (2.0) informationXML standards : RDF, OWL

Henry Boccon­Gibod (EDF R&D)Tuesday, November 20, morning : 8:00 – 12:00 

Page 2: Disseminating Web (3.0) knowlege XML standards : RDF, OWL

 ATHENS 2007 ­ ENSAM Paris Henry Boccon­Gibod

2

Disseminating (Web 3.0 ? ) knowledgeXML standards : RDF, RDFS, OWL

Henry Boccon­Gibod (EDF R&D)Tuesday, November 20, morning : 8:00 – 12:00 

Page 3: Disseminating Web (3.0) knowlege XML standards : RDF, OWL

 ATHENS 2007 ­ ENSAM Paris Henry Boccon­Gibod

3

Something anybody may observe

Page 4: Disseminating Web (3.0) knowlege XML standards : RDF, OWL

 ATHENS 2007 ­ ENSAM Paris Henry Boccon­Gibod

4

Something anybody may observe

• Human people speak together using two main kinds of expressions :– Messages, Orders, Documents,

• Structured, sequentially organized, in a way already known by both – speaker and auditor– writer and reader   

– Descriptions• set of assertions with relationships• not significantly ordered, but organized

– A grammar is a description– Schematics are descriptions

• Are the way knowledge is exchanged

• Obviously that is not obvious :– Messages, orders, documents may encapsulate descriptions– Descriptions may refer message, orders and documents

• Messages, Orders, Documents need initial Descriptions……Of the way they are structured, sequentially organized  

Page 5: Disseminating Web (3.0) knowlege XML standards : RDF, OWL

 ATHENS 2007 ­ ENSAM Paris Henry Boccon­Gibod

5

Trees and Graphs

• Typically– Messages, orders, documents are organized as trees

• Standards for documents such as GML, SGML and then XML provide basic structures to express tree organizations

– Descriptions are organized as graphs• Linguists, terminologists, knowledge engineers 

– are claiming for graph expressions – cannot be fully satisfied by XML structures designed 

for documents .• Obviously 

– Document Type Definitions, XML schemas may express descriptions

• Unbounded Choices, ID, IDrefs mechanisms allows graphs expressions

• XML Schema, XSL specifications are kind of graph descriptions…

• But are not suitable to actually support efficient knowledge expression

• Hopefully – Any graph may be supported by a tree…

Page 6: Disseminating Web (3.0) knowlege XML standards : RDF, OWL

 ATHENS 2007 ­ ENSAM Paris Henry Boccon­Gibod

6

From Syntaxic Web    To Semantic Web

Page 7: Disseminating Web (3.0) knowlege XML standards : RDF, OWL

 ATHENS 2007 ­ ENSAM Paris Henry Boccon­Gibod

7

Djoser Pyramid, designed by Imhotep 

Page 8: Disseminating Web (3.0) knowlege XML standards : RDF, OWL

 ATHENS 2007 ­ ENSAM Paris Henry Boccon­Gibod

8

XML Schémas

HTML

DTDs

Web Pyramid, designed by Sir Tim Berners Lee  

Page 9: Disseminating Web (3.0) knowlege XML standards : RDF, OWL

 ATHENS 2007 ­ ENSAM Paris Henry Boccon­Gibod

9

URI UnicodeHTML

• … the earth of computers was an hostile wasteland, and darkness covered the abyss of operating systems, while a mighty wind swept over the proprietary networks”

•  “ then Tim Berners Lee said, "Let there be the Web," and Robert Cailleau did it, and there was the Web… ”

•  “… and the Web (1.0) was just a way to share HTML published identified documents stored on heterogeneously designed computers linked together by network of networks using the Internet protocol, and to display them through navigator software “

“In the beginning…

Page 10: Disseminating Web (3.0) knowlege XML standards : RDF, OWL

 ATHENS 2007 ­ ENSAM Paris Henry Boccon­Gibod

10

URI Unicode

NamespacesXMLDTDs XML Schémas

HTML

Then came new recommendations…

• Of structuring principles adapted for all kinds of documents– Defined using  structures of embedded segments, delimited by tags,– XML, adaptation of SGML, 

• which HTML is one model (DTD)

Page 11: Disseminating Web (3.0) knowlege XML standards : RDF, OWL

 ATHENS 2007 ­ ENSAM Paris Henry Boccon­Gibod

11

LANGUEART

TI SEC1

TSEC1

TSEC2

SEC2

AL

SEC2

STI M NOTEIDNT

ANOTE RIDNT

SEC1

TSEC1 SEC2

TSEC2 AL TSEC2 AL

NOTE D'ETUDE 2EME STADE

E M E LM 99 0102

Pièce N° 1 Note de synthèse

1.1.1 Historique

1.1 origine de la modification

1.1.2 Énoncé du problème - But recherché

La note d'étude E­XX/FC 2.17 ind. A attire l'attention sur le fait que le  temps de blahblah  important dû à  la complexité du système de verrouillage  est  paradoxal  pour  un  système  de  secours.  Faisant suite  à  cette  conclusion  le  SEPTEN  (note  d'étude  E­XX/FC  2.18) ind. A que blahblah…

1.2 Description de la modification

1.2.1 Solution retenue

Le XXX des YYY se traduit par la mise en place de ZZZ dans les armoires  d'aiguillage  permettant  de  ligner  le  ABC  vers  la  totalité des tableaux RRR du site

1 CCE 3.14159 du 31/12/03

La logique de verrouillage associée au système ABC a pour but de  garantir  la  sécurité  du  personnel,  lors  des  manœuvres d’exploitation.blahblah

Depuis  sa  création,  les  objectifs  en  matière  de  sûreté  et  de disponibilité  du  système  ABC  ont  évolué.  A  ce  titre  la  CCE 3.141591  a  confié  au  SEPTEN  une  étude  précisant  pour  les différents états des tranches les conditions d'utilisation des BZZ. A la  suite  de  l'étude  SEPTEN  le  CTE  du  30/02/1995  donne  son accord pour la réalisation du xxx de yyy sur zzz

A document is a  « Tree of typed objects »   

Page 12: Disseminating Web (3.0) knowlege XML standards : RDF, OWL

 ATHENS 2007 ­ ENSAM Paris Henry Boccon­Gibod

12

XTM

URI Unicode

Namespaces

RDF

XMLDTDs XML Schémas

HTML

“Be fertile and multiply; fill the earth and subdue it”. So did websites, they multiply and invade the globe…

• Searching and finding published information, build indexes of access to documents became a challenge

– To which web search engines provided solutions• But with plenty of noise and silence

• A structured meaningful index, building a concept network cannot be expressed as a simple tree

– Topic Maps (ISO Standard) et RDF(W3Cstandard) provide two ways of representation of networks of concepts using the XML language 

Page 13: Disseminating Web (3.0) knowlege XML standards : RDF, OWL

 ATHENS 2007 ­ ENSAM Paris Henry Boccon­Gibod

13

The fence problem ?

• pickets or intervals, that is the question !fences in a country may be seen as 

• networks of pickets linked together, or as • barriers intervals connected through pickets 

• RDF and Topic Maps differs by their approach– linguists used to prefer a “picket” approach– Artificial Intelligence used to prefer the “interval” approach 

XTMTopic Maps

RDFResource Description 

Framework

Page 14: Disseminating Web (3.0) knowlege XML standards : RDF, OWL

 ATHENS 2007 ­ ENSAM Paris Henry Boccon­Gibod

14

About Topic Maps

• From Wikipedia :– Topic Maps is an ISO standard for the representation and interchange of 

knowledge, with an emphasis on the ability to find information. The standard is formally known as ISO/IEC 13250:2003.

– A topic map can represent information using topics (representing any concept, from people, countries, and organizations to software modules, individual files, and events), associations (which represent the relationships between them), and occurrences (which represent relationships between topics and information resources relevant to them). 

– Topic Maps are thus similar to semantic networks and both concept and mind maps in many respects. In loose usage all those concepts are often used synonymously, though only topic maps are standardized. 

Page 15: Disseminating Web (3.0) knowlege XML standards : RDF, OWL

 ATHENS 2007 ­ ENSAM Paris Henry Boccon­Gibod

15

Example of Index using Topic Maps :  a document content navigation system

Page 16: Disseminating Web (3.0) knowlege XML standards : RDF, OWL

 ATHENS 2007 ­ ENSAM Paris Henry Boccon­Gibod

16

XTM

Two kinds of complementary model descriptions

URI Unicode

Namespaces

RDF

RDF Schema

Ontology

XMLDTDs XML Schémas

HTML

• XML Schema and DTDs for the description of document structure• RDFSchema et OWL for semantic description of knowledge networks

Page 17: Disseminating Web (3.0) knowlege XML standards : RDF, OWL

 ATHENS 2007 ­ ENSAM Paris Henry Boccon­Gibod

17

Ontologies… …formally expressed

• Ontology is a study of conceptions of reality and the nature of being. • In philosophy, ontology (from the Greek  , genitive  : ὤν ὄντος of being (part. of  : εἶναι

to be) and ­λογία: science, study, theory) is the study of being or existence and forms the basic subject matter of metaphysics. 

– It seeks to describe or posit the basic categories and relationships of being or existence to define entities and types of entities within its framework. 

• In both computer science and information science, an ontology is a data model that represents a set of concepts within a domain and the relationships between those concepts. It is used to reason about the objects within that domain.  (…that is an other way to express the same thing) 

– an ontology  is a structure set of concepts. – Concepts are organized as a graph in which relations can be : 

• semantic relations  ;  • composition relations and  inheritance relations (au sens objet)

– Knowledge that refer one or several ontologies use their vocabularies without ambiguity

Ontology

… From Parmenides to Tim Berners Lee 

Page 18: Disseminating Web (3.0) knowlege XML standards : RDF, OWL

 ATHENS 2007 ­ ENSAM Paris Henry Boccon­Gibod

18

UML

XMI

Where may be situated UML …

URI Unicode

Namespaces

RDF

RDF Schema

Ontology

XMLDTDs XML Schémas

HTML

• Any UML diagram can be expressed as a populated ontology• But XMI has been defined as a low level XML idiom… 

Page 19: Disseminating Web (3.0) knowlege XML standards : RDF, OWL

 ATHENS 2007 ­ ENSAM Paris Henry Boccon­Gibod

19

Expressing Rules

Rules

LogicFramework

• SWRL (Semantic Web Rule Language) is a proposal for a Semantic Web rules­language, combining sublanguages of the OWL Web Ontology Language (OWL DL and Lite) with those of the Rule Markup Language (Unary/Binary Datalog).The specification was submitted in May 2004 to the W3C.

• The Rule Interchange Format (RIF) is a W3C recommendation­track effort to develop a format for interchange of rules in rule­based systems on the semantic web. The goal is to create an interchange format for different rule languages and inference engines. The RIF initiative is closely related to Ontologies. Whereas ontologies describe distributed information objects in a computer executable manner, rules in this sense combine such information and derive new information on top of ontologies.

(source Wikipedia)

Page 20: Disseminating Web (3.0) knowlege XML standards : RDF, OWL

 ATHENS 2007 ­ ENSAM Paris Henry Boccon­Gibod

20

Populated ontology gets benefits from the logic of their description

URI Unicode

Namespaces

RDF

RDF Schema

Ontology

Rules

LogicFramework

Enc

rypt

ion

Sig

natu

re

XMLDTDs XML Schémas

HTML

• Linked to inference engines, ontologies gets benefits from artificial intelligence reasoning on knowledge

Page 21: Disseminating Web (3.0) knowlege XML standards : RDF, OWL

 ATHENS 2007 ­ ENSAM Paris Henry Boccon­Gibod

21

XTM

UML

XMI

Sir Tim Berners Lee’s full vision,

URI Unicode

Namespaces

RDF

RDF Schema

Ontology

Rules

LogicFramework

Proof

Trust

Enc

rypt

ion

Sig

natu

re

XMLDTDs XML Schémas

HTML

Page 22: Disseminating Web (3.0) knowlege XML standards : RDF, OWL

 ATHENS 2007 ­ ENSAM Paris Henry Boccon­Gibod

22

RDF

Resource Description Framework

Page 23: Disseminating Web (3.0) knowlege XML standards : RDF, OWL

 ATHENS 2007 ­ ENSAM Paris Henry Boccon­Gibod

23

Issues of the access to Web resources

• «World Wide Web was initially designed for human understanding, and while all that is published on the web is readable by a computer, these data are not understood by computers. »  

• « It is hard to build automatic processing of data on the web, but due to the amount of published data, it is impossible to manage it manually ».  

• « The proposed solution is to use   metadata in order to describe data published on the Web ».  

• « Metadata are data about data ( for instance a library catalogue is a compilation of metadata as it is a description of the books its contain) ; in the web case metadata are data about web resources.  »  

• « Difference between data and metadata is not obvious. It depends on specific needs  and on applications that fulfill these needs. A same resource may be tackled simultaneously in different ways »  

Page 24: Disseminating Web (3.0) knowlege XML standards : RDF, OWL

 ATHENS 2007 ­ ENSAM Paris Henry Boccon­Gibod

24

• Le Dublin Core est un ensemble de 15 éléments de métadonnées ayant trait:– au Contenu: Title, Description, Subject, Source, Coverage, Type, Relation – à la Propriété intellectuelle: Creator, Contributor, Publisher, Rights – à la Version: Date, Format, Identifier, Language 

• Les balises du Dublin core forment  un vocabulaire non ambigu par leur association à l’espace de nom du Dublin Core– http://purl.org/dc/elements/1.1/

Information about rights held in and over the resource Rightsdroits

The extent or scope of the content of the resource  including spatial location temporal period or jurisdictionCoveragecouverture

A reference to a related resource. Recommended best practice is to reference the resource by means of a string or number conforming to a formal identification system. Relationrelation

A language of the intellectual content of the resource Languagelangue

A Reference to a resource from which the present resource is derived Sourcesource

An unambiguous reference to the resource within a given context Identifieridentifiant

The physical or digital manifestation of the resource. Formatformat

The nature or genre of the content of the resource (Collection Dataset Event Image InteractiveResource MovingImage PhysicalObject Service Software Sound StillImage Tex)t 

Typetype

A date linked to an event in the lifecycle of the resourceDatedate

Any entity, person or organization that contributes to the content  of the resourceContributorcontributeur

Organization responsible of the publication of the resource , may be fo instance an university department, or a company.Publisheréditeur

description of the resource contentDescriptiondescription

Subject of the resource contentSubjectsujet et mots­clefs

Organization or person responsible of  the resource creationCreatorcréateur

Resource nameTitletitre

DefinitionIdentifierFrench name

The « Dublin Core » initiative   

Page 25: Disseminating Web (3.0) knowlege XML standards : RDF, OWL

 ATHENS 2007 ­ ENSAM Paris Henry Boccon­Gibod

25

RDF : an introduction

• RDF (Resource Description Framework) is a mean of register, exchange and reuse structured metadata in order ti describe data. It is an XML idiom developed by W3C and of which the first recommendation was  published in 1999. 

• RDF do not give a set of fixed semantic of the resources described by different users communities. Euach of them may introduce its own vocabulary using a specific namespace and a schema giving a descrption of each term used.  

• Based on XML, RDF is also an extensible language i.e. a meta language il is a framework of resource description tat may be applicable to any application domain. 

Page 26: Disseminating Web (3.0) knowlege XML standards : RDF, OWL

 ATHENS 2007 ­ ENSAM Paris Henry Boccon­Gibod

26

RDF triples

• RDF expressions are triples – Subject   predicate   object 

ou– Resource    property    value 

• Exemple :– The document  XML Schéma      was written by       Eric Van der Vlist

  subjet  predicate     object 

• These triples are formalized as oriented graphs

XML SchemaAuthor

predicatesubject (resource) 

object (value) 

Eric Van der Vlist

Page 27: Disseminating Web (3.0) knowlege XML standards : RDF, OWL

 ATHENS 2007 ­ ENSAM Paris Henry Boccon­Gibod

27

Resource Identification

• Resources are identified through URI (Unified Resource Identifier). URI are set of names used to address any thing or concept (URL Unified Resource Locator are kind of URI). 

• In our example the document XML Schema may be identified by its URI:http://www.oreilly.fr/XML_Schema.pdf

• predicates (properties) are also identified using URI – The URI of the  predicate “author" may so be the Creator element of the Dublin Core schema:

http://purl.org/dc/elements/1.1/creator 

Page 28: Disseminating Web (3.0) knowlege XML standards : RDF, OWL

 ATHENS 2007 ­ ENSAM Paris Henry Boccon­Gibod

28

« Bootstrap » of the RDF Syntax   

• RDF is designed to be a description language of facts and of relationships between these facts. Even if that is the expression of a graph, it is a fact that any graph may be supported by a tree structure. That allows the expression of RDF using the XML syntax principles, using the root element :<rdf:RDF xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns" />

• As the aim of RDF is facts description, the first element of RDF expressions is « Description »    <rdf:Description/>

• A description is like a sequenced story attached to facts introduced using an identifier, and then referred <rdf:Description rdf:ID="unURI"/><rdf:Description rdf:about="#unURI"/>

• A description links fact with properties, of which  the meaning may by known only by their association to a defined vocabulary. Such as the Dublin Core vocabulary :

xmlns:dc="http://purl.org/dc/elements/1.1/"a fact is expressed through the association of a value to a property of anything we want to describe:<rdf:Description rdf:ID="unURIdeLivre">

<dc:Title>un titre<dc:Title></rdf:Description>

A  property may have a literal content or refer an other fact, which need also… … to be described <rdf:Description rdf:ID="unURIdeLivre">

<dc:author> <rdf:Description rdf:ID="unURIdAuteur"> <dc:author></rdf:Description>

So is the XML Syntax principle for an RDF triple Subject / Predicate /Object

Page 29: Disseminating Web (3.0) knowlege XML standards : RDF, OWL

 ATHENS 2007 ­ ENSAM Paris Henry Boccon­Gibod

29

Groups, categories, classes, and all that sort of things

So is a common characteristic of human languages,perhaps due to the architecture of their brain,in order to remember facts and speak of them the need to categorize them !

<rdf:Description rdf:ID="unURIdeLivre">

<rdf:type rdf:resource="#livre"/></rdf:Description>

So are people  uses,in order to  simplify their expressionsthey designates facts using category names And give name of characteristics as name of these categories!

<blind rdf:ID="Ray_Charles">

<rdf:type rdf:resource="#singer"/></blind>

Page 30: Disseminating Web (3.0) knowlege XML standards : RDF, OWL

 ATHENS 2007 ­ ENSAM Paris Henry Boccon­Gibod

30

EBNF Formalization (Extended Backus­Naur form)  of  RDF grammar

[1] RDF ::= ['<rdf:RDF>'] description* ['</rdf:RDF>'] [2] description ::= '<rdf:Description' idAboutAttr? '>' propertyElt* '</rdf:Description>' [3] idAboutAttr ::= idAttr | aboutAttr [4] aboutAttr ::= 'about="' URI­reference '"' [5] idAttr ::= 'ID="' IDsymbol '"' [6] propertyElt ::= '<' propName '>' value '</' propName '>' | '<' propName resourceAttr '/>' [7] propName ::= Qname [8] value ::= description | string [9] resourceAttr ::= 'resource="' URI­reference '"‘[10] Qname ::= [ NSprefix ':' ] name [11] URI­reference ::= string, interpreted per [URI] [12] IDsymbol ::= (any legal XML name symbol) [13] name ::= (any legal XML name symbol) [14] NSprefix ::= (any legal XML namespace prefix)[15] string ::= (any XML text, with "<", ">", and "&" escaped) [2a] description ::= '<rdf:Description' idAboutAttr? propAttr* '/>' | '<rdf:Description' idAboutAttr? propAttr* '>' propertyElt* 

'</rdf:Description>' | typedNode [6a] propertyElt ::= '<' propName '>' value '</' propName '>' | '<' propName resourceAttr? propAttr* '/>' [16] propAttr ::= propName '="' string '"' (with embedded quotes escaped) [17] typedNode ::= '<' typeName idAboutAttr? 

propAttr* '/>' | '<' typeName idAboutAttr? propAttr* '>' property* '</' typeName '>' 

Page 31: Disseminating Web (3.0) knowlege XML standards : RDF, OWL

 ATHENS 2007 ­ ENSAM Paris Henry Boccon­Gibod

31

   XML Syntax of RDF (cont’d)

• a subject (resource) may own several predicates (properties)  That is expressed in the RDF syntax : 

<?xml version="1.0" encoding="UTF-8"?><rdf:RDF

xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"xmlns:dc="http://purl.org/dc/elements/1.1/"><rdf:Description

rdf:about="http://www.oreilly.fr/XML_Schema.pdf"><dc:creator>Eric Van der Vlist</dc:creator>

</rdf:Description></rdf:RDF>

URL of Dublin Core predicates 

Subject

Predicate object

Page 32: Disseminating Web (3.0) knowlege XML standards : RDF, OWL

 ATHENS 2007 ­ ENSAM Paris Henry Boccon­Gibod

32

 RDF : graphs expression

• Les resources may be linked and embedded:<?xml version="1.0" encoding="UTF-8"?><rdf:RDF xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"

xmlns:dc="http://purl.org/dc/elements/1.1/">xmlns:s="http://description.org/schema/">

<rdf:Description about="http://www.oreilly.fr/XML_Schema.pdf"> <dc:Creator> <rdf:Description about="http:XMLfr.org">

<rdf:type resource="http://description.org/schema/Person"/> <v:Nom>Eric Van der Vlist</v:Nom> <v:Email>[email protected]</v:Email>

</rdf:Description></dc:Creator>

</rdf:Description>

</rdf:RDF>

XML Schema XMLfr.orgcreator

name

mail [email protected]

Eric Van der Vlist

Page 33: Disseminating Web (3.0) knowlege XML standards : RDF, OWL

 ATHENS 2007 ­ ENSAM Paris Henry Boccon­Gibod

33

Basic terms of the RDF Vocabulary

• RDF vocabulary namespace http://www.w3.org/1999/02/22­rdf­syntax­ns

– Resource : • Any “thing” refered by an RDF expression, identified by an URI

– Property : • Any aspect, characteristic of a Resource, its relation  with another  Resource ; • Is itself a kind of Resource

– Statement : • expression of the value  of a named property attached to a given Resource.• Is a triple “subject / predicate / value” reification 

Page 34: Disseminating Web (3.0) knowlege XML standards : RDF, OWL

 ATHENS 2007 ­ ENSAM Paris Henry Boccon­Gibod

34

Schemas and Namespaces

• What is required for the human understanding of statements is also required for computer applications using RDF in order to get proper results.

• It is required that writer and reader of a statement get the same understanding of the used terms meaning, such as Creator, ApprovedBy, Copyright. Any confusion, or mismatch of concepts understanding should be avoided

• In RDF the meaning is expressed through reference to a schema• A schema is a kind of dictionary. It defines terms to be used in RDF statements and 

give them unique meanings• Different forms of schema may be used in RDF, including a specific one defined in a 

separate document [RDFSchema] which has a set of specific characteristics defined in order to help task automation using RDF

Page 35: Disseminating Web (3.0) knowlege XML standards : RDF, OWL

 ATHENS 2007 ­ ENSAM Paris Henry Boccon­Gibod

35

Culminate : two different concepts for two different aims

• One should make difference between: 

– Schema XML that express structure constraints and syntax for XML “documents”

– Schema RDF that express semantic constraints building model of RDF “descriptions”

• Concept of RDF schema– RDF schema describe a vocabulary and a semantic for the property types utilized by 

a community of users.– RDF schema define the valid properties foe a specific  RDF description, as well as 

the characteristics and constraints of  the description vocabulary.

– As an example on may look at the Dublin Core RDF Schema version 1.1

Page 36: Disseminating Web (3.0) knowlege XML standards : RDF, OWL

 ATHENS 2007 ­ ENSAM Paris Henry Boccon­Gibod

36

RDF Schema

• A schema is the place where properties definitions and usage restrictions are documented. 

• In order to avoid confusion between independents definitions – with possible conflicts – of a same term, RDF implements the XML namespaces features. 

• Namespaces are just a way to link any specific use of a term in a specific context to the dictionary (schema) where its definition is supposed to be defined. 

• Each RDF predicate used in a statement must be identified with exactly one namespace or a schema.

• A Description element may contain statements with predicates from several different de schemas.

Page 37: Disseminating Web (3.0) knowlege XML standards : RDF, OWL

 ATHENS 2007 ­ ENSAM Paris Henry Boccon­Gibod

37

Abbreviated syntax

• Full Description :<rdf:Description rdf:ID=’Henry’ >

<rdf:type resource=’#Researcher’ /><vehicle> <rdf:Description>

<rdf:type resource=’#Car’ /><brand>Renault</brand>

</rdf:Description></vehicle>

</rdf:Description>

• abbreviated syntax, about  types :<Researcher rdf:ID=’Henry’>

<vehicle> <car brand=’Renault’/></vehicle>

</Researcher>

• Other kind of abbreviated syntax about attributes :<rdf:Description rdf:ID=’Henry’ rdf:type=’#Researcher’ />

Page 38: Disseminating Web (3.0) knowlege XML standards : RDF, OWL

 ATHENS 2007 ­ ENSAM Paris Henry Boccon­Gibod

38

Containers

• It is often necessary to refer a collection of resources . For instance a group of people, a list of actions to do, or to choose. RDF containers are designed to express such lists of resources or literals.

• RDF define three kinds of containing objects : –Bag 

• a list of  resources or literals without order. Bag is used to set that a property owns several values and that there is no meaning attached to the way they are listed. Identical values are allowed . 

–Sequence • an ordered sequence of resources or literals. The order of values of a 

property is heare meaningful. Identical values are allowed . 

–Alternative • A list of resources or literals that  represent alternative choices for the unique 

value of a property. 

Page 39: Disseminating Web (3.0) knowlege XML standards : RDF, OWL

 ATHENS 2007 ­ ENSAM Paris Henry Boccon­Gibod

39

Examples

<rdf:Description rdf:about="http://www.recshop.fake/cd/Beatles"> <cd:format>

<rdf:Alt> <rdf:li>CD</rdf:li> <rdf:li>Record</rdf:li> <rdf:li>Tape</rdf:li>

</rdf:Alt> </cd:format>

</rdf:Description>

<rdf:RDF xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:cd="http://www.recshop.fake/cd#"> <rdf:Descriptionrdf:about="http://www.recshop.fake/cd/Beatles"> <cd:artist>

<rdf:Seq> <rdf:li>George</rdf:li> <rdf:li>John</rdf:li> <rdf:li>Paul</rdf:li> <rdf:li>Ringo</rdf:li>

</rdf:Seq> </cd:artist>

</rdf:Description> </rdf:RDF>

Page 40: Disseminating Web (3.0) knowlege XML standards : RDF, OWL

 ATHENS 2007 ­ ENSAM Paris Henry Boccon­Gibod

40

Closed  Collections

• The attribute  rdf:parseType="Collection"Define a non ordered closed list of elements<rdf:RDF xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"

xmlns:cd="http://recshop.fake/cd# "xmlns:bt="http://recshop.fake/cd/Beatles#" xmlns="http://recshop.fake/cd/Beatles#" >

<rdf:Description rdf:about="http://recshop.fake/cd/Beatles"> <cd:artist rdf:parseType="Collection">

<rdf:Description rdf:about="#George"/> <rdf:Description rdf:about="#John"/> <rdf:Description rdf:about="#Paul"/> <rdf:Description rdf:about="#Ringo"/>

</cd:artist> </rdf:Description> </rdf:RDF>

Page 41: Disseminating Web (3.0) knowlege XML standards : RDF, OWL

 ATHENS 2007 ­ ENSAM Paris Henry Boccon­Gibod

41

N3 : An other kind of  RDF expression 

• N3 notation is simple :subject verb object punctuation<#pat> <#knows> <#jo> .

(All is URL ; the character # indicate that the resource is attached to the URI of the current document courant, which namespace is a  default )

• Only object can be literal :<#pat> <#aged> 24.

• More  readable :<#pat> is <#aged> 24.

• punctuation ";" et"," allows to factorize the subject respectively for verb and object<#pat> is <#child>of <#jo> ; is <#parent> of <#fred>.

• [ ] identify resource from properties <#pat> has<#child> [ <#aged> 21], [ <#aged> 24],

• Other kind of expression :[ <#name> "Pat"; <#age> 24; <#eyecolor> "blue" ].

Page 42: Disseminating Web (3.0) knowlege XML standards : RDF, OWL

 ATHENS 2007 ­ ENSAM Paris Henry Boccon­Gibod

42

N3 : An other kind of  RDF expression (cont’d)

• The current document is sayed as followed<> <#title> "A simple example of N3".

• However attachment to a namespace is preferable :<> <http://purl.org/dc/elements/1.1/title> " titre de ce document ".

• prefix mechanism used to refer a namespace :@prefix dc: <http://purl.org/dc/elements/1.1/> . <> dc:title " titre de ce document ".

(where the fact that the name is colonized allow to avoid de <>) • To declare the use of a default prefix : 

@prefix : <#> . • Then one may write : 

:pat :aged 24. au lieu de <#pat> <#aged> 24 .

• vocabulary equivalence is expressed using the sign =:woman = foo:human_female .:Title a rdf:Property; = dc:title .

Page 43: Disseminating Web (3.0) knowlege XML standards : RDF, OWL

 ATHENS 2007 ­ ENSAM Paris Henry Boccon­Gibod

43

Exercise

• Description in RDF of the relationships in the town of Verona between Montaigu and Capulets, Roméo and Juliette…

Vérone

Montaigu Capulet

Roméo Juliettelove

hate

is is

Live in Live in

Page 44: Disseminating Web (3.0) knowlege XML standards : RDF, OWL

 ATHENS 2007 ­ ENSAM Paris Henry Boccon­Gibod

44

<?xml version='1.0' encoding='UTF-8'?><rdf:RDF xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:a="http://www.MonVocabulaire#" xmlns:kb="http://www.MonVocabulaire#" xmlns:rdfs="&rdfs;"><kb:Personne rdf:about="http://www.MonVocabulaire#KB_155146_Instance_4" kb:Label="Romeo" rdfs:label="Romeo"/><kb:Personne rdf:about="http://www.MonVocabulaire#KB_155146_Instance_6" kb:Label="Juliette" rdfs:label="Juliette"/><kb:Famille rdf:about="http://www.MonVocabulaire#KB_155146_Instance_7" kb:Label="Montaigu" rdfs:label="Montaigu"/><kb:Famille rdf:about="http://www.MonVocabulaire#KB_155146_Instance_8" kb:Label="Capulet" rdfs:label="Capulet"/><kb:Ville rdf:about="http://www.MonVocabulaire#KB_155146_Instance_9" kb:Label="Verone" rdfs:label="Verone"/><kb:aime rdf:about="http://www.MonVocabulaire#Shakespeare_Instance_0" rdfs:label="Shakespeare_Instance_0"> <a:_to rdf:resource="http://www.MonVocabulaire#KB_155146_Instance_4"/> <a:_from rdf:resource="http://www.MonVocabulaire#KB_155146_Instance_6"/></kb:aime>

<kb:aime rdf:about="http://www.MonVocabulaire#Shakespeare_Instance_1" rdfs:label="Shakespeare_Instance_1"> <a:_from rdf:resource="http://www.MonVocabulaire#KB_155146_Instance_4"/> <a:_to rdf:resource="http://www.MonVocabulaire#KB_155146_Instance_6"/></kb:aime><kb:hait rdf:about="http://www.MonVocabulaire#Shakespeare_Instance_2" rdfs:label="Shakespeare_Instance_2"> <a:_to rdf:resource="http://www.MonVocabulaire#KB_155146_Instance_7"/> <a:_from rdf:resource="http://www.MonVocabulaire#KB_155146_Instance_8"/></kb:hait><kb:hait rdf:about="http://www.MonVocabulaire#Shakespeare_Instance_3" rdfs:label="Shakespeare_Instance_3"> <a:_from rdf:resource="http://www.MonVocabulaire#KB_155146_Instance_7"/> <a:_to rdf:resource="http://www.MonVocabulaire#KB_155146_Instance_8"/></kb:hait><kb:habite rdf:about="http://www.MonVocabulaire#Shakespeare_Instance_4" rdfs:label="Shakespeare_Instance_4"> <a:_from rdf:resource="http://www.MonVocabulaire#KB_155146_Instance_8"/> <a:_to rdf:resource="http://www.MonVocabulaire#KB_155146_Instance_9"/></kb:habite><kb:habite rdf:about="http://www.MonVocabulaire#Shakespeare_Instance_5" rdfs:label="Shakespeare_Instance_5"> <a:_from rdf:resource="http://www.MonVocabulaire#KB_155146_Instance_7"/> <a:_to rdf:resource="http://www.MonVocabulaire#KB_155146_Instance_9"/></kb:habite></rdf:RDF>

Page 45: Disseminating Web (3.0) knowlege XML standards : RDF, OWL

 ATHENS 2007 ­ ENSAM Paris Henry Boccon­Gibod

45

RDFS

• First Initiative of description of  RDF resources organisation • Extension of  RDF, as RDF define a basic set of classes and properties.• In the beginning was…

…the « resource » from which all come…   – rdfs:Resource : class of which all class is a sub­type– rdfs:Class, instance of itself, sub­type of rdfs:Resource – rdfs:Literal instance of rdfs:Class, sub­type of rdfs:Resource– rdfs:Datatype is the class of attributes. its instances correspond to a data model 

described in the specification of RDF concepts. rdfs:Datatype is as well an instance and  a sub­class of rdfs:Class. Each instance of  rdfs:Datatype is a sub­type of rdfs:Literal.

– rdfs:Property it the class of RDF properties, instance of rdf:Class– rdfs:range and rdfs:domain are instances of rdfs:Property attached recursively 

to rdfs:Property, : the domain rdfs:domain de rdfs:range and of rdfs:domain is rdfs:Property…

– rdf:type is an instance of rdfs:Property used to define a resource as an instance of a class. 

Page 46: Disseminating Web (3.0) knowlege XML standards : RDF, OWL

 ATHENS 2007 ­ ENSAM Paris Henry Boccon­Gibod

46

RDFS (suite)

– rdfs:subClassOf is an instance of rdfs:Property which defines that instances  of a  classe are  instances of an other classe from which its inherits

– rdfs:subPropertyOf is an instance of rdfs:Property which defines that  all resources addressed by a property are also resources of an other property from which its inherits.

– rdfs:label is an instance of rdfs:Property used to give a human readable version of a resource.

– rdfs:comment is an instance of rdfs:Property used to document a resource by a  comment 

Page 47: Disseminating Web (3.0) knowlege XML standards : RDF, OWL

 ATHENS 2007 ­ ENSAM Paris Henry Boccon­Gibod

47

The class of RDF Lists.rdf:List

The class of container membership properties, rdf:_1, rdf:_2, ..., all of which are sub­properties of 'member'.rdfs:ContainerMembershipProperty

The class of RDF containers.rdfs:Container

The class of containers of alternatives.rdf:Alt

The class of ordered containers.rdf:Seq

The class of unordered containers.rdf:Bag

The class of RDF statements.rdf:Statement

The class of RDF datatypes.rdfs:Datatype

The class of RDF properties.rdf:Property

The class of classes.rdfs:Class

The class of XML literals values.rdf:XMLLiteral

The class of literal values, e.g. textual strings and integers.rdfs:Literal

The class resource, everything.rdfs:Resource

commentClass name

Page 48: Disseminating Web (3.0) knowlege XML standards : RDF, OWL

 ATHENS 2007 ­ ENSAM Paris Henry Boccon­Gibod

48

rdfs:Resourcerdf:StatementThe object of the subject RDF statement.rdf:object

rdfs:Resourcerdf:StatementThe predicate of the subject RDF statement.rdf:predicate

rdfs:Resourcerdf:StatementThe subject of the subject RDF statement.rdf:subject

rdfs:Resourcerdfs:ResourceIdiomatic property used for structured values (see the RDF Primer for an example of its usage).rdf:value

rdfs:Resourcerdfs:ResourceThe definition of the subject resource.rdfs:isDefinedBy

rdfs:Resourcerdfs:ResourceFurther information about the subject resource.rdfs:seeAlso

rdf:Listrdf:ListThe rest of the subject RDF list after the first item.rdf:rest

rdfs:Resourcerdf:ListThe first item in the subject RDF list.rdf:first

rdfs:Resourcerdfs:ResourceA member of the subject resource.rdfs:member

rdfs:Literalrdfs:ResourceA description of the subject resource.rdfs:comment

rdfs:Literalrdfs:ResourceA human­readable name for the subject.rdfs:label

rdfs:Classrdf:PropertyA range of the subject property.rdfs:range

rdfs:Classrdf:PropertyA domain of the subject property.rdfs:domain

rdf:Propertyrdf:PropertyThe subject is a subproperty of a property.rdfs:subPropertyOf

rdfs:Classrdfs:ClassThe subject is a subclass of a class.rdfs:subClassOf

rdfs:Classrdfs:ResourceThe subject is an instance of a class.rdf:type

rangedomaincommentProperty name

Page 49: Disseminating Web (3.0) knowlege XML standards : RDF, OWL

 ATHENS 2007 ­ ENSAM Paris Henry Boccon­Gibod

49

Tragedy Sample<?xml version='1.0' encoding='UTF-8'?><rdf:RDF xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"

xmlns:a="http://www.MonVocabulaire#" xmlns:kb="http://www.MonVocabulaire#" xmlns:rdfs="&rdfs;">

<rdfs:Class rdf:about="http://www.MonVocabulaire#Famille" rdfs:label="Famille"><rdfs:subClassOf

rdf:resource="http://www.MonVocabulaire#Objet_tragique"/></rdfs:Class><rdf:Property rdf:about="http://www.MonVocabulaire#Label"

a:maxCardinality="1" rdfs:label="Label"><rdfs:domain rdf:resource="http://www.MonVocabulaire#Famille"/><rdfs:domain rdf:resource="http://www.MonVocabulaire#Personne"/><rdfs:domain rdf:resource="http://www.MonVocabulaire#Ville"/><rdfs:range rdf:resource="&rdfs;Literal"/>

</rdf:Property><rdfs:Class rdf:about="http://www.MonVocabulaire#Objet_tragique"

rdfs:label="Objet_tragique"><rdfs:subClassOf rdf:resource="&rdfs;Resource"/>

</rdfs:Class><rdfs:Class rdf:about="http://www.MonVocabulaire#Personne"

rdfs:label="Personne"><rdfs:subClassOf

rdf:resource="http://www.MonVocabulaire#Objet_tragique"/></rdfs:Class><rdfs:Class rdf:about="http://www.MonVocabulaire#Ville"

rdfs:label="Ville"><rdfs:subClassOf

rdf:resource="http://www.MonVocabulaire#Objet_tragique"/></rdfs:Class><rdfs:Class rdf:about="http://www.MonVocabulaire#aime"

rdfs:label="aime"><rdfs:subClassOf

rdf:resource="http://www.MonVocabulaire#_directed_binary_relation"/></rdfs:Class><rdfs:Class rdf:about="http://www.MonVocabulaire#habite"

rdfs:label="habite"><rdfs:subClassOf

rdf:resource="http://www.MonVocabulaire#_directed_binary_relation"/></rdfs:Class><rdfs:Class rdf:about="http://www.MonVocabulaire#hait"

rdfs:label="hait"><rdfs:subClassOf

rdf:resource="http://www.MonVocabulaire#_directed_binary_relation"/></rdfs:Class></rdf:RDF>

Page 50: Disseminating Web (3.0) knowlege XML standards : RDF, OWL

 ATHENS 2007 ­ ENSAM Paris Henry Boccon­Gibod

50

OWL

• OWL : acronym of Web Ontology Language(en plus chouette!)

– Wikipedia : The Web Ontology Language (OWL) is a language for defining and instantiating Web ontologies. An OWL ontology may include descriptions of classes, along with their related properties and instances. OWL is designed for use by applications that need to process the content of information instead of just presenting information to humans. It facilitates greater machine interpretability of Web content than that supported by XML, RDF, and RDF Schema (RDF­S) by providing additional vocabulary along with a formal semantics. OWL is based on earlier languages OIL and DAML+OIL, and is now a W3C recommendation. .

– To the concepts of class, resource, literal and properties of sub­classes, de sub­ properties, of value fields, of  application domains already existing in RDFS, OWL add concepts of equivalent classes, of equivalent properties , equivalent resources, different resources, opposite , de symmetric resources. It adds also the concept of cardinality...

• The OWL documents became a formal W3C recommendation on February 10, 2004 and the working group was disbanded on May 31, 2004.[4] 

Page 51: Disseminating Web (3.0) knowlege XML standards : RDF, OWL

 ATHENS 2007 ­ ENSAM Paris Henry Boccon­Gibod

51

The three levels of OWL 

• Wikipedia : OWL currently has three sublanguages (sometimes also referred to as 'species'): OWL Lite, OWL DL, and OWL Full. These three increasingly expressive sublanguages are designed for use by specific communities of implementers and users.  :   

– OWL­Lite, • supports those users primarily needing a classification hierarchy and simple constraints. For example, while it 

supports cardinality constraints, it only permits cardinality values of 0 or 1. It should be simpler to provide tool support for OWL Lite than its more expressive relatives, and OWL Lite provides a quick migration path for thesauri and other taxonomies. OWL Lite also has a lower formal complexity than OWL DL; see the section on OWL Lite in the OWL Reference for further details. 

– OWL­DL,• supports those users who want the maximum expressiveness while retaining computational completeness (all 

conclusions are guaranteed to be computed) and decidability (all computations will finish in finite time). OWL DL includes all OWL language constructs, but they can be used only under certain restrictions (for example, while a class may be a subclass of many classes, a class cannot be an instance of another class). OWL DL is so named due to its correspondence with description logic, a field of research that has studied the logics that form the formal foundation of OWL 

– OWL­Full., • is meant for users who want maximum expressiveness and the syntactic freedom of RDF with no computational 

guarantees. For example, in OWL Full a class can be treated simultaneously as a collection of individuals and as an individual in its own right. OWL Full allows an ontology to augment the meaning of the pre­defined (RDF or OWL) vocabulary. It is unlikely that any reasoning software will be able to support complete reasoning for every feature of OWL Full. 

Page 52: Disseminating Web (3.0) knowlege XML standards : RDF, OWL

 ATHENS 2007 ­ ENSAM Paris Henry Boccon­Gibod

52

OWL Class

• Owl:Thing is the mother class of all classes• Owl:noThing is the child class of all classes

• An OWL class may be defined–  by a  reference (URI)

<owl:Class rdf:ID="Toto" rdf:resource= "http://toto.org">

–  through a list of instances:<owl:Class rdf:ID="continents"><owl:oneOf rdf:parseType="Collection">

<owl:Thing rdf:about="#Eurasie"/><owl:Thing rdf:about="#Afrique"/><owl:Thing rdf:about="#Amerique_du_Nord"/><owl:Thing rdf:about="#Amerique_du_Sud "/><owl:Thing rdf:about="#Australie"/><owl:Thing rdf:about="#Antarctique"/>

</owl:oneOf></owl:Class>

Page 53: Disseminating Web (3.0) knowlege XML standards : RDF, OWL

 ATHENS 2007 ­ ENSAM Paris Henry Boccon­Gibod

53

OWL Class

• An OWL class may be defined–  by its properties (intension definition)

•  Properties Types : owl:allValuesFrom,owl:someValuesFrom

• Properties Values : owl:hasValue

•  Properties Cardinality : owl:maxCardinality, owl:minCardinality, owl:Cardinality

Example : class of resources which have one or more  property #author of type #novelist

<owl:Restriction><owl:onProperty rdf:resource="#author" /><owl:allValuesFrom rdf:resource="#novelist" />

</owl:Restriction>

Page 54: Disseminating Web (3.0) knowlege XML standards : RDF, OWL

 ATHENS 2007 ­ ENSAM Paris Henry Boccon­Gibod

54

OWL Class

• An OWL class may be defined– as union, intersection, complement of other classes

<owl:Class><owl:intersectionOf rdf:parseType="Collection">

<owl:Class rdf:about="continents"><owl:Class>

<owl:oneOf rdf:parseType="Collection"><owl:Thing rdf:about="#Europe" /><owl:Thing rdf:about="#Asie" /><owl:Thing rdf:about="#Afrique" />

</owl:oneOf></owl:Class>

</owl:intersectionOf></owl:Class>

Page 55: Disseminating Web (3.0) knowlege XML standards : RDF, OWL

 ATHENS 2007 ­ ENSAM Paris Henry Boccon­Gibod

55

•  rdfs:subClassOf : the extension of a class is included in the extension of the other

•  owl:equivalentClass : both classes have same extension, but are not of the same concept.

<footballTeam owl:equivalentClass us:soccerTeam />•  owl:disjointWith : disjoint classes

OWL Class

Page 56: Disseminating Web (3.0) knowlege XML standards : RDF, OWL

 ATHENS 2007 ­ ENSAM Paris Henry Boccon­Gibod

56

Properties

• RDF Schema provide the concepts of: – rdfs:subPropertyOf, rdfs:domain and rdfs:range

•  OWL enlarge relationship between properties :– owl:equivalentProperty : both have same extension, but are not 

identicals :– owl:inverseOf : one is the inverse of the other.

<owl:ObjectProperty rdf:ID="enfant"><owl:inverseOf rdf:resource="#parent"/>

</owl:ObjectProperty>

– cardinality constraints de : owl:FunctionalProperty (mono­valuées), et owl:InverseFunctionalProperty

– logical constraints :owl:SymmetricProperty (exemple époux)owl:TransitiveProperty (exemple ascendant)

Page 57: Disseminating Web (3.0) knowlege XML standards : RDF, OWL

 ATHENS 2007 ­ ENSAM Paris Henry Boccon­Gibod

57

Shakespeare example (ontology) 

<owl:ObjectProperty rdf:ID="habite">    <rdfs:domain rdf:resource="#famille"/>    <rdfs:range rdf:resource="#ville"/>  </owl:ObjectProperty>  <owl:ObjectProperty rdf:about="#a_pour_amant">    <owl:inverseOf rdf:resource="#a_pour_amante"/>    <rdfs:range rdf:resource="#garçon"/>    <rdfs:domain rdf:resource="#fille"/>  </owl:ObjectProperty>  <owl:DatatypeProperty rdf:ID="nom">    <rdf:type rdf:resource="http://www.w3.org/2002/07/owl#FunctionalProperty"/>    <rdfs:domain>      <owl:Class>        <owl:unionOf rdf:parseType="Collection">          <owl:Class rdf:about="#personne"/>          <owl:Class rdf:about="#famille"/>          <owl:Class rdf:about="#ville"/>        </owl:unionOf>      </owl:Class>    </rdfs:domain>  </owl:DatatypeProperty> 

Page 58: Disseminating Web (3.0) knowlege XML standards : RDF, OWL

 ATHENS 2007 ­ ENSAM Paris Henry Boccon­Gibod

58

Shakespeare example (ontology)

<owl:ObjectProperty rdf:ID="a_pour_amante">    <rdfs:range rdf:resource="#fille"/>    <owl:inverseOf>      <owl:ObjectProperty rdf:ID="a_pour_amant"/>    </owl:inverseOf>    <rdfs:domain rdf:resource="#garçon"/>  </owl:ObjectProperty>  <owl:ObjectProperty rdf:ID="hait_de_génération_en_génération">    <rdfs:range rdf:resource="#famille"/>    <rdfs:domain rdf:resource="#famille"/>  </owl:ObjectProperty>  <owl:ObjectProperty rdf:ID="appartient_à_la_famille">    <rdfs:domain rdf:resource="#personne"/>    <rdfs:range rdf:resource="#famille"/>    <owl:inverseOf>      <owl:ObjectProperty rdf:ID="inverse_of_appartient_à_la_famille"/>    </owl:inverseOf> </owl:ObjectProperty> <owl:ObjectProperty rdf:about="#inverse_of_appartient_à_la_famille">    <owl:inverseOf rdf:resource="#appartient_à_la_famille"/>    <rdfs:range rdf:resource="#personne"/>    <rdfs:domain rdf:resource="#famille"/>  </owl:ObjectProperty>  

Page 59: Disseminating Web (3.0) knowlege XML standards : RDF, OWL

 ATHENS 2007 ­ ENSAM Paris Henry Boccon­Gibod

59

Shakespeare example (ontology)

<owl:ObjectProperty rdf:ID="habite">    <rdfs:domain rdf:resource="#famille"/>    <rdfs:range rdf:resource="#ville"/>  </owl:ObjectProperty>  <owl:ObjectProperty rdf:about="#a_pour_amant">    <owl:inverseOf rdf:resource="#a_pour_amante"/>    <rdfs:range rdf:resource="#garçon"/>    <rdfs:domain rdf:resource="#fille"/>  </owl:ObjectProperty>  <owl:DatatypeProperty rdf:ID="nom">    <rdf:type rdf:resource="http://www.w3.org/2002/07/owl#FunctionalProperty"/>    <rdfs:domain>      <owl:Class>        <owl:unionOf rdf:parseType="Collection">          <owl:Class rdf:about="#personne"/>          <owl:Class rdf:about="#famille"/>          <owl:Class rdf:about="#ville"/>        </owl:unionOf>      </owl:Class>    </rdfs:domain>  </owl:DatatypeProperty> 

Page 60: Disseminating Web (3.0) knowlege XML standards : RDF, OWL

 ATHENS 2007 ­ ENSAM Paris Henry Boccon­Gibod

60

Shakespeare example (populated ontology)

<personne rdf:ID="personne_9">    <a_pour_amant>      <garçon rdf:ID="personne_7">        <nom rdf:datatype="http://www.w3.org/2001/XMLSchema#string" >Roméo</nom>        <a_pour_amante rdf:resource="#personne_9"/>        <rdf:type rdf:resource="#personne"/>        <appartient_à_la_famille>          <famille rdf:ID="Montaigu">            <habite>              <ville rdf:ID="ville_13">                <nom rdf:datatype="http://www.w3.org/2001/XMLSchema#string">Vérone</nom>              </ville>            </habite>            <inverse_of_appartient_à_la_famille rdf:resource="#personne_7"/>          </famille>        </appartient_à_la_famille>      </garçon>    </a_pour_amant>    <nom rdf:datatype="http://www.w3.org/2001/XMLSchema#string">Juliette</nom>    <rdf:type rdf:resource="#fille"/>    <appartient_à_la_famille>      <famille rdf:ID="famille_11">        <inverse_of_appartient_à_la_famille rdf:resource="#personne_9"/>        <habite rdf:resource="#ville_13"/>        <hait_de_génération_en_génération rdf:resource="#Montaigu"/>        <nom rdf:datatype="http://www.w3.org/2001/XMLSchema#string">Capulet</nom>      </famille>    </appartient_à_la_famille>  </personne>

</rdf:RDF>

Page 61: Disseminating Web (3.0) knowlege XML standards : RDF, OWL

 ATHENS 2007 ­ ENSAM Paris Henry Boccon­Gibod

61

Semantic Web Rule Language (swrl)

•SWRL (Semantic Web Rule Language) is a rule language for the semantic web, that combine des sub­languages OWL (OWL DL and OWL Lite) with those of Rule Markup Language (Unary/Binary Datalog). 

•Exemple of family rule: hasParent(?x1,?x2)   hasBrother(?x2,?x3)   hasUncle(?x1,?x3) ∧ ⇒

<ruleml:imp> <ruleml:_rlab ruleml:href="#example1"/> <ruleml:_body>

<swrlx:individualPropertyAtom swrlx:property="hasParent"> <ruleml:var>x1</ruleml:var>

<ruleml:var>x2</ruleml:var> </swrlx:individualPropertyAtom>

<swrlx:individualPropertyAtom swrlx:property="hasBrother"> <ruleml:var>x2</ruleml:var>

<ruleml:var>x3</ruleml:var></swrlx:individualPropertyAtom>

</ruleml:_body> <ruleml:_head>

<swrlx:individualPropertyAtom swrlx:property="hasUncle"> <ruleml:var>x1</ruleml:var> <ruleml:var>x3</ruleml:var>

</swrlx:individualPropertyAtom> </ruleml:_head>

</ruleml:imp>

Page 62: Disseminating Web (3.0) knowlege XML standards : RDF, OWL

 ATHENS 2007 ­ ENSAM Paris Henry Boccon­Gibod

62

Huge set of syntax… … but efficient tools exist 

that allow to build and populate ontologies, for instance :– Protégé

• From Stanford University, is the most known, popular and used ontology tool. It is an Open­source software, initially based on a frame model, adapted to RDF, RDFS OWL standards. It is a platform on which plug­ins may be connected for reasoning, graphical display etc.

• http://protege.stanford.edu/  

– Swoop• Is an ontology development tool created  by the Maryland University 

for the MINDSWAP project. It has been natively based on RDF and OWL standards, with their different syntaxes (not only XML). It is a lighter application than Protégé but it  accepts the connection of inference engines. 

• http://www.mindswap.org/2004/SWOOP/ 

Page 63: Disseminating Web (3.0) knowlege XML standards : RDF, OWL

 ATHENS 2007 ­ ENSAM Paris Henry Boccon­Gibod

63

Culminate 2 : Yet an other standard ! For what is it useful ?

• As for XML, plenty of RDF/RDFS/OWL applications do not initially depend on the Web. 

– Ontologies are formal standard expressions of kind of data managed by popular mind mapping tools

• Mind manager• The Brain,• Visual Mind • SmartDraw • FreeMind

• OWL Ontologies do not have the rigidity of SQL database models

– One can expand and improve easily models of populated ontology, without loss of data

Page 64: Disseminating Web (3.0) knowlege XML standards : RDF, OWL

 ATHENS 2007 ­ ENSAM Paris Henry Boccon­Gibod

64

Development of ontologies contents 

• Plenty ontologies are already used to store huge knowledge– Generic knowledge

• OpenCyc ; Cyc is an artificial intelligence project that attempts to assemble a comprehensive ontology and database of everyday common sense knowledge, with the goal of enabling AI applications to perform human­like reasoning. , 

• Sumo, Suggested Upper Merged Ontology, is an upper ontology intended as a foundation ontology for a variety of computer information processing systems. It was originally developed by the Teknowledge Corporation and now is maintained by Articulate Software. It is one candidate for the "standard upper ontology" that IEEE working group 1600.1 is working on. It can be downloaded and used freely.

– A Generic Ontology Search engine• http://swoogle.umbc.edu/

– Knowledge In biological sciences• Gene ontology 

– http://geneontology.org/index.shtml– http://archive.geneontology.org/latest­termdb/go_daily­termdb.owl.gz

• Open Biomedical Ontologies– OBO, Another ontological expression : http://genomebiology.com/2005/6/5/R46  – http://www.berkeleybop.org/ontologies/#ontologies

– …

Page 65: Disseminating Web (3.0) knowlege XML standards : RDF, OWL

 ATHENS 2007 ­ ENSAM Paris Henry Boccon­Gibod

65

Lexter®

Exter®

Worldtrek®

XTM Topic Maps publication

Web

Worldtrek®

Human

Expertise

corpusTML

Term

candidates

network

TML

Structured

Validated

Terminology

Human knowledge

texts resources TMF concepts & terms

corpus

OWL Ontology

Classes

Individuals

Terminology

A pragmatic ontology building  method: using a linguistic terminology to ontology chain   

Page 66: Disseminating Web (3.0) knowlege XML standards : RDF, OWL

 ATHENS 2007 ­ ENSAM Paris Henry Boccon­Gibod

66

A pragmatic ontology building  method: using a linguistic terminology to ontology chain

OWL-DL rules

SWRL rules

knowledge

Application

Web portal

corpusTMFOWL

OWL editor Protégé®Swoop®…

TML20WL

(XSL)

OWL2TML

Jena

CleanOWL®

(Java)

accessed classes

description

prescription

operation

inference

other services

Page 67: Disseminating Web (3.0) knowlege XML standards : RDF, OWL

 ATHENS 2007 ­ ENSAM Paris Henry Boccon­Gibod

67

Example of ontology construction using the WorldTrek terminology edition tool

Page 68: Disseminating Web (3.0) knowlege XML standards : RDF, OWL

 ATHENS 2007 ­ ENSAM Paris Henry Boccon­Gibod

68

Result of terminology edition in : Protégé®

Page 69: Disseminating Web (3.0) knowlege XML standards : RDF, OWL

 ATHENS 2007 ­ ENSAM Paris Henry Boccon­Gibod

69

Pragmatic ontologies application :for Services Oriented Architecture (SOA) 

• Ontologies are pragmatic ways for web service discovery– A semantic network index is a better solution than a flat directory – OWL­S initiative provides mechanism to manage Web services 

metadata

Service

ServiceGrounding

ServiceProfile

ServiceModel

Has description

present support

What servicesare proposed ?

How serviceswork ?

How to accessto services ?

Page 70: Disseminating Web (3.0) knowlege XML standards : RDF, OWL

 ATHENS 2007 ­ ENSAM Paris Henry Boccon­Gibod

70

Pragmatic ontologies application : Enterprise Information System architecture

Page 71: Disseminating Web (3.0) knowlege XML standards : RDF, OWL

 ATHENS 2007 ­ ENSAM Paris Henry Boccon­Gibod

71

Perspective, in order to conclude 

” People keep asking what Web 3.0 is. I think maybe when you've got an overlay of scalable vector graphics ­ everything rippling and folding and looking misty ­ on Web 2.0 and access to a semantic Web integrated across a huge space of data, you'll have access to an unbelievable data resource.  ”

Tim Berners­Lee,