Master Web Intelligence 2005/2006. Web Sémantique. Philippe Beaune ENSM SE. mailto : Philippe.Beaune@emse.fr. Lundi 23 janvier 2006 1



Documents pareils
Instructions Mozilla Thunderbird Page 1

APPENDIX 6 BONUS RING FORMAT

COUNCIL OF THE EUROPEAN UNION. Brussels, 18 September 2008 (19.09) (OR. fr) 13156/08 LIMITE PI 53

An Ontology-Based Approach for Closed-Loop Product Lifecycle Management

COPYRIGHT Danish Standards. NOT FOR COMMERCIAL USE OR REPRODUCTION. DS/EN 61303:1997

that the child(ren) was/were in need of protection under Part III of the Child and Family Services Act, and the court made an order on

Improving the breakdown of the Central Credit Register data by category of enterprises

Exemple PLS avec SAS

Bigdata et Web sémantique. les données + l intelligence= la solution

AMENDMENT TO BILL 32 AMENDEMENT AU PROJET DE LOI 32

Application Form/ Formulaire de demande

Evolution et architecture des systèmes d'information, de l'internet. Impact sur les IDS. IDS2014, Nailloux 26-28/05/2014

English Q&A #1 Braille Services Requirement PPTC Q1. Would you like our proposal to be shipped or do you prefer an electronic submission?

Utiliser une WebCam. Micro-ordinateurs, informations, idées, trucs et astuces

RULE 5 - SERVICE OF DOCUMENTS RÈGLE 5 SIGNIFICATION DE DOCUMENTS. Rule 5 / Règle 5

WEB page builder and server for SCADA applications usable from a WEB navigator

CLIM/GTP/27/8 ANNEX III/ANNEXE III. Category 1 New indications/ 1 re catégorie Nouvelles indications

Comprendre l impact de l utilisation des réseaux sociaux en entreprise SYNTHESE DES RESULTATS : EUROPE ET FRANCE

APPENDIX 2. Provisions to be included in the contract between the Provider and the. Holder

Problématiques de recherche. Figure Research Agenda for service-oriented computing

Deadline(s): Assignment: in week 8 of block C Exam: in week 7 (oral exam) and in the exam week (written exam) of block D

LES TECHNOLOGIES DU WEB APPLIQUÉES AUX DONNÉES STRUCTURÉES

THE LAW SOCIETY OF UPPER CANADA BY-LAW 19 [HANDLING OF MONEY AND OTHER PROPERTY] MOTION TO BE MOVED AT THE MEETING OF CONVOCATION ON JANUARY 24, 2002

Archived Content. Contenu archivé

How to Login to Career Page

Gestion des prestations Volontaire

Le passé composé. C'est le passé! Tout ça c'est du passé! That's the past! All that's in the past!

Les Portfolios et Moodle Petit inventaire

Forthcoming Database

Algorithmes de recommandation, Cours Master 2, février 2011

MELTING POTES, LA SECTION INTERNATIONALE DU BELLASSO (Association étudiante de lʼensaparis-belleville) PRESENTE :

NORME INTERNATIONALE INTERNATIONAL STANDARD. Dispositifs à semiconducteurs Dispositifs discrets. Semiconductor devices Discrete devices

iqtool - Outil e-learning innovateur pour enseigner la Gestion de Qualité au niveau BAC+2

Lesson Plan Physical Descriptions. belle vieille grande petite grosse laide mignonne jolie. beau vieux grand petit gros laid mignon

UML : Unified Modeling Language

RDF Schema pour les ontologies légères

Quick Start Guide This guide is intended to get you started with Rational ClearCase or Rational ClearCase MultiSite.

THÈSE. présentée à TÉLÉCOM PARISTECH. pour obtenir le grade de. DOCTEUR de TÉLÉCOM PARISTECH. Mention Informatique et Réseaux. par.

Notice Technique / Technical Manual

Practice Direction. Class Proceedings

RAPID Prenez le contrôle sur vos données

Tammy: Something exceptional happened today. I met somebody legendary. Tex: Qui as-tu rencontré? Tex: Who did you meet?

Form of Deeds Relating to Certain Successions of Cree and Naskapi Beneficiaries Regulations

Nouveautés printemps 2013

Stakeholder Feedback Form January 2013 Recirculation

OUVRIR UN COMPTE CLIENT PRIVÉ

Cheque Holding Policy Disclosure (Banks) Regulations. Règlement sur la communication de la politique de retenue de chèques (banques) CONSOLIDATION

Tex: The book of which I'm the author is an historical novel.

CEPF FINAL PROJECT COMPLETION REPORT

INDIVIDUALS AND LEGAL ENTITIES: If the dividends have not been paid yet, you may be eligible for the simplified procedure.

DOCUMENTATION - FRANCAIS... 2

Support Orders and Support Provisions (Banks and Authorized Foreign Banks) Regulations

AUDIT COMMITTEE: TERMS OF REFERENCE

Faits saillants et survol des résultats du sondage

IDENTITÉ DE L ÉTUDIANT / APPLICANT INFORMATION

Règlement sur le télémarketing et les centres d'appel. Call Centres Telemarketing Sales Regulation

Once the installation is complete, you can delete the temporary Zip files..

Plan. Department of Informatics

«Rénovation des curricula de l enseignement supérieur - Kazakhstan»

Credit Note and Debit Note Information (GST/ HST) Regulations

DOCUMENTATION - FRANCAIS... 2

valentin labelstar office Made-to-measure label design. Conception des étiquettes sur mesure. Quality. Tradition. Innovation DRUCKSYSTEME

DOCUMENTATION MODULE BLOCKCATEGORIESCUSTOM Module crée par Prestacrea - Version : 2.0

Cedric Dumoulin (C) The Java EE 7 Tutorial

Mon Service Public - Case study and Mapping to SAML/Liberty specifications. Gaël Gourmelen - France Telecom 23/04/2007

Formulaire de candidature pour les bourses de mobilité internationale niveau Master/ Application Form for International Master Scholarship Programme

This is a preview - click here to buy the full publication NORME INTERNATIONALE INTERNATIONAL STAN DARD. Telecontrol equipment and systems

Le Web de Données Dan VODISLAV Université de Cergy-Pontoise Master Informatique M2 Plan

Disclosure on Account Opening by Telephone Request (Trust and Loan Companies) Regulations

Natixis Asset Management Response to the European Commission Green Paper on shadow banking

Exercices sur SQL server 2000

Frequently Asked Questions

FÉDÉRATION INTERNATIONALE DE NATATION Diving

Règlement relatif à l examen fait conformément à la Déclaration canadienne des droits. Canadian Bill of Rights Examination Regulations CODIFICATION

INSERTION TECHNIQUES FOR JOB SHOP SCHEDULING

Discours du Ministre Tassarajen Pillay Chedumbrum. Ministre des Technologies de l'information et de la Communication (TIC) Worshop on Dot.

Resident Canadian (Insurance Companies) Regulations. Règlement sur les résidents canadiens (sociétés d assurances) CONSOLIDATION CODIFICATION

8. Cours virtuel Enjeux nordiques / Online Class Northern Issues Formulaire de demande de bourse / Fellowship Application Form

First Nations Assessment Inspection Regulations. Règlement sur l inspection aux fins d évaluation foncière des premières nations CONSOLIDATION

lundi 3 août 2009 Choose your language What is Document Connection for Mac? Communautés Numériques L informatique à la portée du Grand Public

Calculation of Interest Regulations. Règlement sur le calcul des intérêts CONSOLIDATION CODIFICATION. Current to August 4, 2015 À jour au 4 août 2015

Paxton. ins Net2 desktop reader USB

Web sémantique et pratiques documentaires

CONVENTION DE STAGE TYPE STANDART TRAINING CONTRACT

Export Permit (Steel Monitoring) Regulations. Règlement sur les licences d exportation (surveillance de l acier) CONSOLIDATION CODIFICATION

UNIVERSITY OF MALTA FACULTY OF ARTS. French as Main Area in an ordinary Bachelor s Degree

Disclosure on Account Opening by Telephone Request (Retail Associations) Regulations

Ordonnance sur le paiement à un enfant ou à une personne qui n est pas saine d esprit. Infant or Person of Unsound Mind Payment Order CODIFICATION

SCHOLARSHIP ANSTO FRENCH EMBASSY (SAFE) PROGRAM APPLICATION FORM

Monitor LRD. Table des matières

4. SERVICES WEB REST 46

XML et travail collaboratif : vers un Web sémantique

accidents and repairs:

Module Title: French 4

ETABLISSEMENT D ENSEIGNEMENT OU ORGANISME DE FORMATION / UNIVERSITY OR COLLEGE:

1.The pronouns me, te, nous, and vous are object pronouns.

Editing and managing Systems engineering processes at Snecma

3615 SELFIE. HOW-TO / GUIDE D'UTILISATION

Grandes tendances et leurs impacts sur l acquisition de produits et services TI.

Contrôle d'accès Access control. Notice technique / Technical Manual

Transcription:

Master Web Intelligence 2005/2006 Web Sémantique Philippe Beaune ENSM SE mailto : Philippe.Beaune@emse.fr Lundi 23 janvier 2006 1

Bref retour sur le TP ontologies Modéliser une ontologie c'est pas confortable : l'énoncé du TP le réflétait, sans exagération Vous auriez dû vous poser la question : puis je utiliser Dublin Core? Une ontologie sur le temps?... Dans un premier temps vous auriez dû vous éloigner du clavier avec un papier et un crayon... Lundi 23 janvier 2006 2

MaSuperClasse template slots : créateur = PhB MaMetaClasse template slots : créateur = PhB TP : astuce SubClass Instance Instance UneClasse slots : créateur = PhB template slots : créateur = PhB Instance SubClass UneSousClasse slots : créateur = PhB template slots : créateur = PhB Instance en Protégé Instance1 slots : créateur = PhB Instance2 slots : créateur = PhB Lundi 23 janvier 2006 3

Plan général révisé (21h en 7 séances) Mardi 3 janv AM : repr. des connaissances Mardi 10 janv AM : DL & ontologies Lundi 16 janv PM : TP Protégé Mardi 17 janv AM : TP ontologie Lundi 23 janv PM : Le Web Sémantique Mardi 24 janv AM : TP OWL Mercredi 1er fév (8h 10h) : examen Lundi 23 janvier 2006 4

Rappel Lundi 23 janvier 2006 5

Nouvelle vision (2002) Motivation Lundi 23 janvier 2006 6

Plan du cours Généralités sur le Web Sémantique et applications Langages pour le Web Sémantique XML RDF et RDFS OWL = DAML+OIL? Web Services Lundi 23 janvier 2006 7

Documents pour approfondir À disposition, quelques articles (PDF) généralistes mais de référence sur : http://www.emse.fr/~beaune/websem/ Un dossier AFIA (avril 2003) Un article des assises 2002 du GdR I3 Un article basique de Tim Berners Lee (2001) La vision d'aaron Swartz (2002) Perspectives : rapport EU NSF (J. Euzénat, 2002) Des tutoriaux, etc. Attention aux droits d'auteur Lundi 23 janvier 2006 8

Le Web actuel Navigation à très bas niveau : Clics sur des liens Recherche de pages par mots clés «c'est comme de la programmation en assembleur avec des go to» Problèmes : Des millions de documents sont sur le Web! Pertinence, précision,... des recherches Lundi 23 janvier 2006 9

Le Web actuel (suite) Recherche d'infos limitée : L'Homme doit interpréter le résultat Interopérabilité difficile : Différents points de vue sur les documents Services limités : Ex : comment organiser un séjour? Lundi 23 janvier 2006 10

Solution niv. 1 : Wrapper Lundi 23 janvier 2006 11

Wrapper (suite) Automatisation de l'extraction de l'information et médiation Le mediator s'occupe de l'utilisateur et les wrappers des sources de données Les wrappers ont été adaptés aux données semi structurées, et tentent d'utiliser le format HTML avec des heuristiques (ex. : pour trouver un prix, chercher un nombre suivi d'un symbole monétaire) Lundi 23 janvier 2006 12

Solution niv. 2 : ajout de sémantique XML : les balises indiquent la sémantique (implicite, par convention) des données <nom>philippe Beaune</nom> XML structure les données en arborescences <personne> <nom>philippe Beaune</nom> <téléphone>+(33) 477 420 136</téléphone> </personne> XML permet de définir des balises personnelles Lundi 23 janvier 2006 13

Ajout de sémantique (suite) XML lie la structure et la sémantique dans les documents RDF permet d'ajouter de la sémantique sans aucun présupposé sur la structure du document : Application XML Ajout de méta information aux documents Web RDFS : schéma de structuration des données Lundi 23 janvier 2006 14

Solution niv. 3 : les ontologies Ontologies = Spécifications formelles et consensuelles de conceptualisations Compréhension commune et partagée d'un domaine Mais quid de la standardisation du vocabulaire? Et quid de la standardisation de la structuration? Lundi 23 janvier 2006 15

Applications Lundi 23 janvier 2006 16

Knowledge Management Gestion des connaissances, gestion des compétences,... : acquisition, maintenance et accès à la connaissance, interopérabilité Les grandes entreprises ont des intranet très fournis Les ontologies permettent des définitions structurelles et sémantiques des documents Recherche d'informations, échanges de documents, maintenance,... Lundi 23 janvier 2006 17

B2C / recherche d'infos Parcours manuel des magasins en ligne Wrappers : spécifiques à chaque magasins Infos partielles (ex : frais de port) Avec une structuration des informations : agents intelligents pour aider au choix Il faut que ces agents comprennent l'information disponible Lundi 23 janvier 2006 18

Commerce électronique (B2B) EDIFACT : lourd, coûteux, pas lisible, peu intégré, maintenance, pas évolutif,... Ontologies : lisibles, interopérables, outils,... Mais il faut quand même des traducteurs : <produit> <auto> <type>voiture</type> <nom> <nom>renault></nom> <prix>20 000 euros</prix> </nom> </produit> <Renault> <prix>x $</prix> </auto> Lundi 23 janvier 2006 19

Un scénario (cf. Euzénat) Quelques exemples illustratifs...... mais surtout pas prédictifs. Les usages ne précèdent pas la technologie, mais la technologie permet les usages. Lundi 23 janvier 2006 20

Scénario Clara, en vacances à Honolulu, rencontre plusieurs personnes avec qui elle échange des vcards. Un soir, elle consulte son assistant pour les prévisions du lendemain. Son assistant lui ressort une vcard : «Ce type semble correspondre à l'offre de poste que Bill a publiée sur l'intranet. Puis je en informer Bill?». Clara demande des explications. L'assistant : «d'après son CV, trouvé sur le site de sa compagnie, il a les compétences requises, en temps que statisticien, à la tête d'une équipe de Data Mining, dans un labo de... à l'université Xx». Clara demande le degré de confiance en tout ça. L'assistant : «il est cité plusieurs fois dans les pages de l'université Xx et les revues dans lesquelles il a publié sont bien cotées par l'assistant de Bill...». Clara autorise la transmission. Bill et Peter se donnent rendez vous à tel congrès... Grâce à l'assistant de Peter qui sait qu'il est végétarien, ils évitent un faux pas. Avant le repas, Peter examine un point qui le tracasse : Bill a utilisé le mot «Services» en parlant de... Son assistant lui montre que «Services» en bases de données signifie... Lundi 23 janvier 2006 21

Scénario (suite) Besoins : Assistants performants Connectivité sans fil Échange de connaissances Protocoles de négociation Un grand nombre de données et de connaissances Protection des données Des modèles de confiance, de négociation, de filtrage,... Lundi 23 janvier 2006 22

Plan du cours Généralités sur le Web Sémantique et applications Langages pour le Web Sémantique XML RDF et RDFS OWL = DAML+OIL? Web Services Lundi 23 janvier 2006 23

XML rappels Un SGML simplifié HTML était prévu pour décrire la structure d'un document, mais il est utilisé comme un langage de présentation XML : structures arborescentes avec une syntaxe linéaire XML : extensible XML : méta langage Lundi 23 janvier 2006 24

XML : rappels (suite) Éléments : <balise>contenu</balise> Attributs : <balise nom=valeur>... </balise> Références : <... Commentaires : <! blabla > Process Instructions : <?name pidata?> CDATA : <![CDATA[ quelque chose ]]> Prologue : <?XML version=...?>... Lundi 23 janvier 2006 25

XML : rappels (suite) Un document XML est valide s'il est bienformé et, lorsqu'il utilise une DTD, s'il respecte cette DTD (ou un schéma XML) Schéma XML : définit la structure des documents, le vocabulaire des balises, des types de données, des contraintes,... Espaces de noms... Lundi 23 janvier 2006 26

XML : espaces de noms Un même document doit pouvoir utiliser plusieurs vocabulaires de balisages : Conception modulaire Réutilisation Mêmes noms (éléments, attributs) avec sens différents dans vocabulaires indépendants Lèver les ambiguïtés Exemple : titre = M, Mme, Mlle titre = «Les fleurs du mal» Lundi 23 janvier 2006 27

XML : espaces de noms syntaxe <definitions name=... xmlns:soap='' http://schemas.xmlsoap.org/wsdl/soap/''...> <soap:body use=''quelque chose''> </definitions> Lundi 23 janvier 2006 28

RDF : présentation Resource Description Framework Permet la représentation de métadonnées (données sur les données) Ce modèle peut être vu comme un graphe étiqueté et orienté, ou comme un modèle orienté objets Une syntaxe en XML ; mais pas la seule Lundi 23 janvier 2006 29

RDF : objectifs The broad goal of RDF is to define a mechanism for describing resources that makes no assumptions about a particular application domain, nor defines (a priori) the semantics of any application domain. The definition of the mechanism should be domain neutral, yet the mechanism should be suitable for describing information about any domain. The foundation of RDF is a model for representing named properties and property values. The RDF model draws on wellestablished principles from various data representation communities. RDF properties may be thought of as attributes of resources and in this sense correspond to traditional attributevalue pairs. RDF properties also represent relationships between resources and an RDF model can therefore resemble an entityrelationship diagram. (More precisely, RDF Schemas which are themselves instances of RDF data models are ER diagrams.) In object oriented design terminology, resources correspond to objects and properties correspond to instance variables. Lundi 23 janvier 2006 30

RDF : 4 niveaux Des triplets d'uris 3 types de bases : ressources, propriétés et délcarations Des types plus complexes : listes, collections, alternatives,... Des schémas : classes, types de propriétés,... Lundi 23 janvier 2006 31

RDF : déclarations Une délcaration est un triplet (a,b,c) qui signifie que le sujet a a comme valeur pour la propriété b l'objet c (http://www.w3.org/home/lassila, hascreator, Ora Lassila) Lundi 23 janvier 2006 32

RDF : déclaration sur des déclarations (st1, rdf:subject, http://www.w3.org/h... ) (st1, rdf:predicate, hascreator) (st1, rdf:object, Ora Lassila) (Philippe, dit, st1) Lundi 23 janvier 2006 33

RDF : les 3 types de base Resources : All things being described by RDF expressions are called resources. A resource may be an entire Web page; such as the HTML document "http://www.w3.org/overview.html" for example. A resource may be a part of a Web page; e.g. a specific HTML or XML element within the document source. A resource may also be a whole collection of pages; e.g. an entire Web site. A resource may also be an object that is not directly accessible via the Web; e.g. a printed book. Resources are always named by URIs plus optional anchor ids. Anything can have a URI; the extensibility of URIs allows the introduction of identifiers for any entity imaginable. Lundi 23 janvier 2006 34

RDF : les 3 types de base Properties : a property is a specific aspect, characteristic, attribute, or relation used to describe a resource. Each property has a specific meaning, defines its permitted values, the types of resources it can describe, and its relationship with other properties. This document does not address how the characteristics of properties are expressed (for such information, refer to the RDF Schema specification). Statements : a specific resource together with a named property plus the value of that property for that resource is an RDF statement. These three individual parts of a statement are called, respectively, the subject, the predicate, and the object. The object of a statement (i.e., the property value) can be another resource or it can be a literal; i.e., a resource (specified by a URI) or a simple string or other primitive datatype defined by XML. In RDF terms, a literal may have content that is XML markup but is not further evaluated by the RDF processor. There are some syntactic restrictions on how markup in literals may be expressed Lundi 23 janvier 2006 35

RDF : exemple Ora Lassila is the creator of the resource http://www.w3.org/home/lassila Subject (Resource) Predicate (Property) Object (literal) http://www.w3.org/home/lassila Creator "Ora Lassila" http://www.w3.org/home/lassila has creator Ora Lassila Lundi 23 janvier 2006 36

RDF : exemple (suite) The individual whose name is Ora Lassila, email <lassila@w3.org>, is the creator of http://www.w3.org/home/lassila. http://www.w3.org/home/lassila has creator something and something has name Ora Lassila and email lassila@w3.org Lundi 23 janvier 2006 37

RDF : exemple suite The individual referred to by employee id 85740 is named Ora Lassila and has the email address lassila@w3.org. The resource http://www.w3.org/home/lassila was created by this individual. Lundi 23 janvier 2006 38

RDF : syntaxe XML de base [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) Lundi 23 janvier 2006 39

Ora Lassila is the creator of the resource http://www.w3.org/home/lassila Subject (Resource) Predicate (Property) Object (literal) RDF : exemple http://www.w3.org/home/lassila Creator "Ora Lassila" <?xml version="1.0"?> <rdf:rdf xmlns:rdf="http://www.w3.org/1999/02/22 rdf syntax ns#" xmlns:s="http://description.org/schema/"> <rdf:description about="http://www.w3.org/home/lassila"> <s:creator>ora Lassila</s:Creator> </rdf:description> </rdf:rdf> Lundi 23 janvier 2006 40

RDF : exemple <rdf:rdf xmlns:rdf="http://wwww.w3.org/1999/02/22 rdf syntax ns#" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:ex="http://mon_url.org/version/1.1/"> <rdf:description rdf:id="michel"/> <rdf:description rdf:id="vertigo"> <ex:homepage> <rdf:description rdf:about= ''http://cedric.cnam.fr/vertigo''> <dc:author> <rdf:description rdf:about="#michel"/> </dc:author> </rdf:description> </ex:homepage> <ex:directeur> <rdf:description rdf:about="#michel" /> </ex:directeur> </rdf:description> Lundi </rdf:rdf> 23 janvier 2006 41

RFD : exercice Écrivez dans cette syntaxe de base les deux exemples précédents : Page 36 Page 37 Lundi 23 janvier 2006 42

RDF : syntaxes Des syntaxes XML abrégées existent [2a] description [6a] propertyelt ::= '<rdf:description' idaboutattr? propattr* '/>' '<rdf:description' idaboutattr? propattr* '>' propertyelt* '</rdf:description>' typednode ::= '<' propname '>' value '</' propname '>' '<' propname resourceattr? propattr* '/>' [16] propattr ::= propname '="' string '"' (with embedded quotes escaped) [17] typednode ::= '<' typename idaboutattr? propattr* '/>' '<' typename idaboutattr? propattr* '>' property* '</' typename '>' Lundi 23 janvier 2006 43

RDF : containers Bag : an unordered list of resources or literals. Bags are used to declare that a property has multiple values and that there is no significance to the order in which the values are given. Bag might be used to give a list of part numbers where the order of processing the parts does not matter. Duplicate values are permitted. Sequence : an ordered list of resources or literals. Sequence is used to declare that a property has multiple values and that the order of the values is significant. Sequence might be used, for example, to preserve an alphabetical ordering of values. Duplicate values are permitted. Alternative : a list of resources or literals that represent alternatives for the (single) value of a property. Alternative might be used to provide alternative language translations for the title of a work, or to provide a list of Internet mirror sites at which a resource might be found. An application using a property whose value is an Alternative collection is aware that it can choose any one of the items in the list as appropriate. Lundi 23 janvier 2006 44

RDF containers : syntaxe [18] container ::= sequence bag alternative [19] sequence ::= '<rdf:seq' idattr? '>' member* '</rdf:seq>' [20] bag ::= '<rdf:bag' idattr? '>' member* '</rdf:bag>' [21] alternative ::= '<rdf:alt' idattr? '>' member+ '</rdf:alt>' [22] member ::= referenceditem inlineitem [23] referenceditem ::= '<rdf:li' resourceattr '/>' [24] inlineitem ::= '<rdf:li>' value '</rdf:li>' Containers may be used everywhere a Description is permitted: [1a] RDF ::= '<rdf:rdf>' obj* '</rdf:rdf>' [8a] value ::= obj string [25] obj ::= description container Lundi 23 janvier 2006 45

RDF containers : exemple The students in course 6.001 are Amy, Tim, John, Mary, and Sue <rdf:rdf> <rdf:description about="http://mycollege.edu/courses/6.001"> <s:students> <rdf:bag> <rdf:li resource="http://mycollege.edu/students/amy"/> <rdf:li resource="http://mycollege.edu/students/tim"/> <rdf:li resource="http://mycollege.edu/students/john"/> <rdf:li resource="http://mycollege.edu/students/mary"/> <rdf:li resource="http://mycollege.edu/students/sue"/> </rdf:bag> </s:students> </rdf:description> </rdf:rdf> Lundi 23 janvier 2006 46

RDF containers : exemple The source code for X11 may be found at ftp.x.org, ftp.cs.purdue.edu, or ftp.eu.net <rdf:rdf> <rdf:description about="http://x.org/packages/x11"> <s:distributionsite> <rdf:alt> <rdf:li resource="ftp://ftp.x.org"/> <rdf:li resource="ftp://ftp.cs.purdue.edu"/> <rdf:li resource="ftp://ftp.eu.net"/> </rdf:alt> </s:distributionsite> </rdf:description> </rdf:rdf> Lundi 23 janvier 2006 47

RDF : referents <rdf:bag ID="pages"> <rdf:li resource="http://foo.org/foo.html" /> <rdf:li resource="http://bar.org/bar.html" /> </rdf:bag> <rdf:description about="#pages"> <s:creator>ora Lassila</s:Creator> </rdf:description> Ora est créatrice du «Bag», et pas des pages. La référence de la description est le container. Lundi 23 janvier 2006 48

RDF : distributive referent (retiré de la recomm de 2004) Pour exprimer que Ora est créatrice de toutes les pages il faut étendre la syntaxe : [3a] idaboutattr ::= idattr aboutattr abouteachattr [26] abouteachattr ::= 'abouteach="' URI-reference '"' <rdf:description abouteach="#pages"> <s:creator>ora Lassila</s:Creator> </rdf:description> Équivalent à : <rdf:description about="http://foo.org/foo.html"> <s:creator>ora Lassila</s:Creator> </rdf:description> <rdf:description about="http://bar.org/bar.html"> <s:creator>ora Lassila</s:Creator> </rdf:description> Lundi 23 janvier 2006 49

RDF : container et motif URI (retiré de la recomm de 2004) Comment exprimer : "all pages at my Web site", or "all pages in this branch of my Web site"? [26a] abouteachattr ::= 'abouteach="' URI-reference '"' 'abouteachprefix="' string '"' <rdf:description abouteachprefix="http://foo.org/doc"> <s:copyright> 1998, The Foo Organization</s:Copyright> </rdf:description> <rdf:description about="http://foo.org/doc/page1"> <s:copyright> 1998, The Foo Organization</s:Copyright> Équivalent à : </rdf:description> <rdf:description about="http://foo.org/doc/page2"> <s:copyright> 1998, The Foo Organization</s:Copyright> </rdf:description> Lundi 23 janvier 2006 50

RDF : container vs repeated prop. Sue has written "Anthology of Time", "Zoological Reasoning", "Gravitational Reflections". Lundi 23 janvier 2006 51

RDF : container vs repeated prop. The committee of Fred, Wilma, and Dino approved the resolution. Lundi 23 janvier 2006 52

RDF : statements about statements Ralph Swick says that Ora Lassila is the creator of the resource http://www.w3.org/home/lassila. Lundi 23 janvier 2006 53

RDF : statements about statements <rdf:rdf xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:a="http://description.org/schema/"> <rdf:description> <rdf:subject resource="http://www.w3.org/home/lassila" /> <rdf:predicate resource="http://description.org/schema/creator" /> <rdf:object>ora Lassila</rdf:object> <rdf:type resource="http://www.w3.org/1999/02/22-rdf-syntax-ns#statement" /> <a:attributedto>ralph Swick</a:attributedTo> </rdf:description> </rdf:rdf> Lundi 23 janvier 2006 54

RDF : statements about statements (retiré de la recomm de 2004) [2b] description ::= '<rdf:description' idaboutattr? bagidattr? propattr* '/>' '<rdf:description' idaboutattr? bagidattr? propattr* '>' propertyelt* '</rdf:description>' [27] bagidattr ::= 'bagid="' IDsymbol '"' <rdf:rdf> <rdf:description about="http://www.w3.org/home/lassila" bagid="d_001"> <s:creator>ora Lassila</s:Creator> <s:title>ora's Home Page</s:Title> </rdf:description> </rdf:rdf> Lundi 23 janvier 2006 55

Lundi 23 janvier 2006 56

<rdf:description abouteach="#d_001"> <a:attributedto>ralph Swick</a:attributedTo> </rdf:description> Lundi 23 janvier 2006 57

RDF : exemple avec Dublin Core <rdf:rdf xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:dc="http://purl.org/metadata/dublin_core#"> <rdf:description about="http://www.dlib.org"> <dc:title>d-lib Program - Research in Digital Libraries</dc:Title> <dc:description>the D-Lib program supports the community of people with research interests in digital libraries and electronic publishing.</dc:description> <dc:publisher>corporation For National Research Initiatives</dc:Publisher> <dc:date>1995-01-07</dc:date> <dc:subject> <rdf:bag> <rdf:li>research; statistical methods</rdf:li> <rdf:li>education, research, related topics</rdf:li> <rdf:li>library use Studies</rdf:li> </rdf:bag> </dc:subject> <dc:type>world Wide Web Home Page</dc:Type> <dc:format>text/html</dc:format> <dc:language>en</dc:language> </rdf:description> </rdf:rdf> Lundi 23 janvier 2006 58

RDFS : pourquoi? Besoin de créer des vocabulaires dans certains domaines Donc besoin d'un langage pour le faire RDFS = RDF vocabulary description language (adopté le 10 février 2004) RDFS permet de créer des vocabulaires et de les organiser dans des hiérarchies typées (classes, sous classes, type, propriétés, souspropriétés, domaines, intervalles,...) Lundi 23 janvier 2006 59

RDFS (cand.recom. 27 mars 2000) Lundi 23 janvier 2006 60

RDFS (cand. recom. 27 mars 2000) Lundi 23 janvier 2006 61

RDFS : exemple Lundi 23 janvier 2006 62

RDFS : exemple <rdf:rdf xml:lang="en" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:rdfs="http://www.w3.org/2000/01/rdf-schema#"> <!-- Note: this RDF schema would typically be used in RDF instance data by referencing it with an XML namespace declaration, for example xmlns:xyz="http://www.w3.org/2000/03/example/vehicles#". This allows us to use abbreviations such as xyz:motorvehicle to refer unambiguously to the RDF class 'MotorVehicle'. --> <rdf:description ID="MotorVehicle"> <rdf:type resource="http://www.w3.org/2000/01/rdf-schema#class"/> <rdfs:subclassof rdf:resource="http://www.w3.org/2000/01/rdf-schema#resource"/> </rdf:description> <rdf:description ID="PassengerVehicle"> <rdf:type resource="http://www.w3.org/2000/01/rdf-schema#class"/> <rdfs:subclassof rdf:resource="#motorvehicle"/> </rdf:description> <rdf:description ID="Truck"> <rdf:type resource="http://www.w3.org/2000/01/rdf-schema#class"/> <rdfs:subclassof rdf:resource="#motorvehicle"/> </rdf:description> <rdf:description ID="Van"> <rdf:type resource="http://www.w3.org/2000/01/rdf-schema#class"/> <rdfs:subclassof rdf:resource="#motorvehicle"/> </rdf:description> <rdf:description ID="MiniVan"> <rdf:type resource="http://www.w3.org/2000/01/rdf-schema#class"/> <rdfs:subclassof rdf:resource="#van"/> <rdfs:subclassof rdf:resource="#passengervehicle"/> </rdf:description> </rdf:rdf> Lundi 23 janvier 2006 63

RFDS : autre exemple La propriété a_pour_mari est une sous propriété de a_pour_conjoint, et que tous les sujets de a_pour_mari sont membres de #Femme et #Mariés ; et que les objets de cette propriété sont membres de #Homme et #Mariés : <rdf:rdf> <rdf:property rdf:id="a_pour_conjoint"/> <rdf:property rdf:id="a_pour_mari"> <rdfs:subpropertyof rdf:resource="#a_pour_conjoint"/> <rdfs:domain rdf:resource="#femme"/> <rdfs:domain rdf:resource="#mariés"/> <rdfs:range rdf:resource="#homme"/> <rdfs:range rdf:resource="#mariés"/> </rdf:property> </rdf:rdf> Lundi 23 janvier 2006 64

Plan du cours Généralités sur le Web Sémantique et applications Langages pour le Web Sémantique XML RDF et RDFS OWL = DAML+OIL? Web Services Lundi 23 janvier 2006 65

Pourquoi aller plus haut? Avec RDF(S) : on ne peut pas exprimer la disjonction, l'équivalence, la cardinalité, des conditions nécessaires et suffisantes,... On ne peut pas raisonner (ou si peu!) OWL : Web Ontology Language (W3C) Mais avant : DAML (DARPA Agent Markup Language) OIL (Ontology Inference Layer, IST FP5) Lundi 23 janvier 2006 66

Exemple For example, a suitable pizza ontology might include the information that Mozzarella and Gorgonzola are kinds of cheese, that cheese is not a kind of meat or fish, and that a vegetarian pizza is one whose toppings do not include any meat or fish. This information allows the term «pizza topped with (only) Mozzarella and Gorgonzola» to be unambiguously interpreted (by, e.g., a pizza ordering agent) as a specialisation of the term «vegetarian pizza». Lundi 23 janvier 2006 67

Lundi 23 janvier 2006 68

OWL = DAML+OIL? OWL is intended to be used when the information contained in documents needs to be processed by applications, as opposed to situations where the content only needs to be presented to humans. OWL can be used to explicitly represent the meaning of terms in vocabularies and the relationships between those terms. This representation of terms and their interrelationships is called an ontology. OWL has more facilities for expressing meaning and semantics than XML, RDF, and RDF-S, and thus OWL goes beyond these languages in its ability to represent machine interpretable content on the Web. OWL is a revision of the DAML+OIL web ontology language incorporating lessons learned from the design and application of DAML+OIL. Lundi 23 janvier 2006 69

OWL The OWL Web Ontology Language is designed for use by applications that need to process the content of information instead of just presenting information to humans. OWL 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 has three increasinglyexpressive sublanguages: OWL Lite, OWL DL, and OWL Full. Lundi 23 janvier 2006 70

OWL XML provides a surface syntax for structured documents, but imposes no semantic constraints on the meaning of these documents. XML Schema is a language for restricting the structure of XML documents. RDF is a datamodel for objects ("resources") and relations between them, provides a simple semantics for this datamodel, and these datamodels can be represented in an XML syntax. RDF Schema is a vocabulary for describing properties and classes of RDF resources, with a semantics for generalization-hierarchies of such properties and classes. OWL adds more vocabulary for describing properties and classes: among others, relations between classes (e.g. disjointness), cardinality (e.g. "exactly one"), equality, richer typing of properties, characteristics of properties (e.g. symmetry), and enumerated classes. Lundi 23 janvier 2006 71

Sous langages d'owl 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 logics, a field of research that has studied the logics that form the formal foundation of OWL. Lundi 23 janvier 2006 72

Sous langages d'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. Every legal OWL Lite ontology is a legal OWL DL ontology. Every legal OWL DL ontology is a legal OWL Full ontology. Every valid OWL Lite conclusion is a valid OWL DL conclusion. Every valid OWL DL conclusion is a valid OWL Full conclusion. Lundi 23 janvier 2006 73

OWL et RDF OWL Full can be viewed as an extension of RDF, while OWL Lite and OWL DL can be viewed as extensions of a restricted view of RDF. Every OWL (Lite, DL, Full) document is an RDF document, and every RDF document is an OWL Full document, but only some RDF documents will be a legal OWL Lite or OWL DL document. Because of this, some care has to be taken when a user wants to migrate an RDF document to OWL. When the expressiveness of OWL DL or OWL Lite is deemed appropriate, some precautions have to be taken to ensure that the original RDF document complies with the additional constraints emposed by OWL DL and OWL Lite. Among others, every URI that is used as a class name must be explicitly asserted to be of type owl:class (and simililarly for properties), every individual must be asserted to belong to at least one class (even if only owl:thing), the URI's used for classes, properties and individuals must be mutually disjoint. The details of these and other constraints on OWL DL and OWL Lite are explained in appendix E of the OWL Reference. Lundi 23 janvier 2006 74

Avec RDFS... Using RDFS we can declare classes like Country, Person, Student and Canadian; state that Student is a subclass of Person; state that Canada and England are both instances of the class Country; declare Nationality as a property relating the classes Person (its domain) and Country (its range); state that age is a datatype property, with Person as its domain and integer as its range; state that Peter is an instance of the class Canadian, and that his age has value 48. Lundi 23 janvier 2006 75

Mais avec OWL : With OWL we can additionally: state that Country and Person are disjoint classes; state that Canada and England are distinct individuals; declare HasCitizen as the inverse property of Nationality; state that the class Stateless is defined precisely as those members of the class Person that have no values for the property Nationality; state that the class MultipleNationals is defined precisely as those membes of the class Person that have at least 2 values for the property Nationality; state that the class Canadian is defined precisely as those members of the class Person that have Canada as a value of the property Nationality; state that age is a functional property. Lundi 23 janvier 2006 76

OWL Lite : survol (1) Class : groupe d'individus, mêmes propriétés <owl:class rdf:id="regions"/> rdfs:subclassof rdfs:property ; rdfs:subpropertyof rdfs:domain ; rdfs:range Individual : instances de classes <Regions rdf:id="rhone_alpes"/> Lundi 23 janvier 2006 77

OWL Lite : survol (2) equivalentclass : <owl:class rdf:id="titi"> <owl:equivalentclass rdf:resource="toto"/> </owl:class> equivalentproperty ; sameas ; differentfrom ; AllDifferent inverseof ; TransitiveProperty ; SymmetricProperty ; FunctionnalProperty ;... allvaluefrom ; somevaluefrom ; mincardinality... Lundi 23 janvier 2006 78

OWL DL & Full : survol oneof : définir une classe en extension <owl:class rdf:id="titi"> <owl:oneof rdf:parsetype="collection"> <Titi rdf:resource="#prems"/> <Titi rfd:resource="#deuze"/> </owl:oneof> </owl:class> disjointwith ; unionof ; complementof ; intersectionof ; hasvalue... Lundi 23 janvier 2006 79

OWL Full : survol owl:class équivalent à rdfs:class OWL Full also allows classes to be treated as individuals object properties and datatype properties are not disjoint OWL Full will typically be useful for people who want to combine the expressivity of OWL with the flexibility and metamodelling features of RDF. However, use of the OWL Full features means that one loses some guarantees that OWL DL and OWL Lite can provide for reasoning systems. Lundi 23 janvier 2006 80

OWL DL : survol (1) OWL DL requires a pairwise separation between classes, datatypes, datatype properties, object properties, annotation properties, ontology properties, individuals, data values and the built in vocabulary. This means that, for example, a class cannot be at the same time an individual. In OWL DL the set of object properties and datatype properties are disjoint. OWL DL requires that no cardinality constraints (local nor global) can be placed on transitive properties or their inverses or any of their superproperties. Annotations are allowed only under certain conditions. Most RDF(S) vocabulary cannot be used within OWL DL. Lundi 23 janvier 2006 81

OWL DL : survol (2) All axioms must be well formed, with no missing or extra components, and must form a tree like structure. Axioms (facts) about individual equality and difference must be about named individuals. These constraints of OWL DL may seem like an arbitrary set, but in fact they are not. The constraints are based on work in the area of reasoners for Description Logic, which require these restrictions to provide the ontology builder or user with reasoning support. In particular, the OWL DL restrictions allow the maximal subset of OWL Full against which current research can assure that a decidable reasoning procedure can exist for an OWL reasoner. Lundi 23 janvier 2006 82

OWL : exemple (1) The following example defines a class of individuals which have at least one parent who is a physician: <owl:restriction> <owl:onproperty rdf:resource="#hasparent" /> <owl:somevaluesfrom rdf:resource="#physician" /> </owl:restriction> Lundi 23 janvier 2006 83

OWL : exemple (2) <owl:class> <owl:intersectionof rdf:parsetype="collection"> <owl:class> <owl:oneof rdf:parsetype="collection"> <owl:thing rdf:about="#tosca" /> <owl:thing rdf:about="#salome" /> </owl:oneof> </owl:class> <owl:class> <owl:oneof rdf:parsetype="collection"> <owl:thing rdf:about="#turandot" /> <owl:thing rdf:about="#tosca" /> </owl:oneof> </owl:class> </owl:intersectionof> </owl:class> Lundi 23 janvier 2006 84

OWL : exemple (3) <owl:class rdf:id="daponteoperaofmozart"> <owl:equivalentclass> <owl:class> <owl:oneof rdf:parsetype="collection"> <Opera rdf:about="#nozze_di_figaro"/> <Opera rdf:about="#don_giovanni"/> <Opera rdf:about="#cosi_fan_tutte"/> </owl:oneof> </owl:class> </owl:equivalentclass> </owl:class> Lundi 23 janvier 2006 85

OWL : exemple (4) <owl:class rdf:id="livingbeing"> <owl:unionof rdf:parsetype="collection"> <owl:class rdf:about="#plant"/> <owl:class rdf:about="#animal"/> </owl:unionof> </owl:class> Lundi 23 janvier 2006 86

OWL Full : exemple (5) <owl:class rdf:id="footballteam"> <owl:sameas rdf:resource="http://sports.org/us#soccerteam"/> </owl:class> Note the difference with the statement: <footballteam owl:equivalentclass us:soccerteam /> which states that the two classes have the same class extension, but are not (necessarily) the same concepts. Lundi 23 janvier 2006 87

OWL : exemple (6) <owl:alldifferent> <owl:distinctmembers rdf:parsetype="collection"> <Opera rdf:about="#don_giovanni"/> <Opera rdf:about="#nozze_di_figaro"/> <Opera rdf:about="#cosi_fan_tutte"/> <Opera rdf:about="#tosca"/> <Opera rdf:about="#turandot"/> <Opera rdf:about="#salome"/> </owl:distinctmembers> </owl:alldifferent> Lundi 23 janvier 2006 88

Plan du cours Généralités sur le Web Sémantique et applications Langages pour le Web Sémantique XML RDF et RDFS OWL = DAML+OIL? Web Services Lundi 23 janvier 2006 89

Web services Faire coopérer des applis sur le Web Travaux sur : Protocoles de communications Description des services et de leurs interactions Sécurité et vie privée XMLP, SOAP, WSDL,.NET, J2EE, UDDI, OWL S,... Lundi 23 janvier 2006 90

Lundi 23 janvier 2006 91

Web Services Lundi 23 janvier 2006 92