Plan... as Architecture des Systèmes d Information. Constats. as Architecture des Systèmes d Information



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

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

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

Exploration des technologies web pour créer une interaction entre Mahara et les plateformes professionnelles et sociales

JDev Atelier Datalift

Je catalogue, tu FRBRises, il/elle googlise. L évolution des catalogues et les bibliothécaires Vendredi 29 mars 2013 Manufacture des tabacs

Évaluation d une architecture de stockage RDF distribuée

Catalogue des formations Edition 2015

4. SERVICES WEB REST 46

XML par la pratique Bases indispensables, concepts et cas pratiques (3ième édition)

Les services usuels de l Internet

Linked Open Data. Le Web de données Réseau, usages, perspectives. Eric Charton. Eric Charton

Learning Object Metadata

Internet. DNS World Wide Web. Divers. Mécanismes de base Exécution d'applications sur le web. Proxy, fire-wall

Créer une base de données vidéo sans programmation (avec Drupal)

Langage HTML (2 partie) <HyperText Markup Language> <tv>lt La Salle Avignon BTS IRIS</tv>

Vues d ensembles de documents RDF

INTERNET est un RESEAU D ORDINATEURS RELIES ENTRE EUX A L ECHELLE PLANETAIRE. Internet : interconnexion de réseaux (anglais : net = réseau)

Introduction aux «Services Web»

FileMaker Server 11. Publication Web personnalisée avec XML et XSLT

DSL. Domain Specific Language. À l'aide des technologies Eclipse Modeling. Goulwen Le Fur Le 23 novembre 2012

Big Data et Graphes : Quelques pistes de recherche

OCL - Object Constraint Language

Présentation générale du projet data.bnf.fr

XML, PMML, SOAP. Rapport. EPITA SCIA Promo janvier Julien Lemoine Alexandre Thibault Nicolas Wiest-Million

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

XML et travail collaboratif : vers un Web sémantique

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

Petite définition : Présentation :

1 ère Université WEB. Courbevoie Samedi 21 octobre Votre site interactif sur internet.

Thierry BOULANGER. par la pratique. Bases indispensables Concepts et cas pratiques XML. 3 ième édition. Nouvelle édition

Cours Master Recherche RI 7 Extraction et Intégration d'information du Web «Services Web»

Devenez un véritable développeur web en 3 mois!

TIC. Réseau informatique. Historique - 1. Historique - 2. TC - IUT Montpellier Internet et le Web

Information utiles. webpage : Google+ : digiusto/

1 Introduction et installation

Introduction aux concepts d ez Publish

Glossaire. ( themanualpage.org) soumises à la licence GNU FDL.

INTERNET, C'EST QUOI?

Module BD et sites WEB

Générer du code à partir d une description de haut niveau

Dans nos locaux au 98 Route de Sauve NÎMES. Un ordinateur PC par stagiaire, scanner, imprimante/copieur laser couleur

OASIS Date de publication

Web Sémantique. Examen

SQL Historique

Sommaire. -1-Computer en bref. Web en bref. Le web 3.0,...la mobilité. Evolution du Web web1.0, web2.0, web2.b, web3.0...

Big Data et Graphes : Quelques pistes de recherche

Adaptabilité d un MOOC aux styles d apprentissage. Hubert Kadima Directeur de Recherche LARIS/EISTI hubert.kadima@eisti.fr

SQL Parser XML Xquery : Approche de détection des injections SQL

Ingénierie Dirigée par les Modèles. Editeurs de modèles. (Eclipse Modeling Tools) Jean-Philippe Babau

Infrastructure de Données Spatiales

Logiciels de référencement

INTRODUCTION : Données structurées et accès simplifié

Synthèse... 1 Introduction Contexte de la création multimédia et surgissement du web sémantique 6

OpenPaaS Le réseau social d'entreprise

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

Le réseau Internet.

IFT2255 : Génie logiciel

Développement d applications Internet et réseaux avec LabVIEW. Alexandre STANURSKI National Instruments France

MEMOIRE DE STAGE. Amélioration de l'outillage support à une méthodologie de "Cartographie Sémantique"

Bases de données élémentaires Maude Manouvrier

SYSTÈMES D INFORMATIONS

Autour du web. Une introduction technique Première partie : HTML. Georges-André SILBER Centre de recherche en informatique MINES ParisTech

Programmation Internet Cours 4

Réseaux. 1 Généralités. E. Jeandel

Bases de données - Modèle relationnel

Supervision des contributions dans un portail de travail collaboratif

Protocoles Applicatifs

Module BDWEB. Maîtrise d informatique Cours 9 - Xquery. Anne Doucet. anne.doucet@lip6.fr

Apache Camel. Entreprise Integration Patterns. Raphaël Delaporte BreizhJUG

1. LA GESTION DES BASES DE DONNEES RELATIONNELLES

Cours 4 : Agrégats et GROUP BY

Services sur réseaux. Trois services à la loupe. Dominique PRESENT Dépt S.R.C. - I.U.T. de Marne la Vallée

Bibliothèque numérique de l enssib

Langage SQL : créer et interroger une base

Cours Base de données relationnelles. M. Boughanem, IUP STRI

Installation d un serveur HTTP (Hypertext Transfer Protocol) sous Débian 6

Compte-rendu re union Campus AAR 3 mars 2015

CRÉER, ROUTER ET GÉRER UNE NEWSLETTER, UN ING

1. Qu'est-ce que SQL? La maintenance des bases de données Les manipulations des bases de données... 5

Formation Site Web. Menu du jour. Le web comment ça marche? Créer un site web Une solution proposée pour débuter La suite?

Exemples de reque tes dans data.bnf.fr

FileMaker Server 12. publication Web personnalisée avec XML

Master Technologies numériques appliquées à l'histoire Deuxième année

ECR_DESCRIPTION CHAR(80), ECR_MONTANT NUMBER(10,2) NOT NULL, ECR_SENS CHAR(1) NOT NULL) ;

!" #$%&'(&)'*'+,--./&0'1&23,+2.)$4$%52'&%'6.%&2'

Semantic Web Inside Guillaume Érétéo Directeur R&D

Etude et développement d un moteur de recherche

Intégration de données complexes pour une vision 360 du client. Chloé Clavel EDF R&D Département ICAME

Le langage SQL Rappels

basée sur le cours de Bertrand Legal, maître de conférences à l ENSEIRB Olivier Augereau Formation UML

Web sémantique et pratiques documentaires

Le Langage SQL version Oracle

Gestion collaborative de documents

Introduction à ElasticSearch

Linked Data et description du produit automobile SemWeb Pro, Paris, 2 mai 2012

Extension SSO Java. Cette note technique décrit la configuration et la mise en œuvre du filtre de custom SSO Java.

OLAP : Mondrian + Pentaho. Maguelonne Teisseire Hugo Alatrista Salas hugo.alatrista- salas@teledetec9on.fr Flavien Bouillot

Transcription:

Plan... Web sémantique Partie I - Cours Document et Web Sémantique Nicol Delestre 1 Vers le Web sémantique 2 3 4 Publication, requêtage 5 Conclusion - v1.0 1 / 49 - v1.0 2 / 49 Vers le Web sémantique Les métadonnées de http://i.insa-rouen.fr/~delestre honorificprefix Dr Nicol Malandain image colleague jobtitle MC http://schema. org/person http://schema. org/person email familyname nicol.delestre @insa-rouen.fr France memberof /EducationalOrga nization Nicol Delestre Delestre url http://schema. org/country workfor memberof Architecture des Systèmes d'information alternatename BP08 Avenue de l'université F-76801 addresscountry postalcode addresslocality Saint-Etienne du Rouvray /EducationalOrga nization ASI streetaddress address http:/litislab.eu legalname url url itemprop itemtype /PostalAddress INSA de Rouen http://www.insa -rouen.fr /CollegeOrUniver sity Laboratoire d'informatique, du Traitement de l'information et des Systèmes alternatename LITIS - v1.0 3 / 49 Vers le Web sémantique Constats Certains éléments ne sont p nommés alors qu ils ont un rôle, ils représentent quelque chose (une personne, un établissement, une organisation pédagogique, etc.) Alors que la page décrit une personne ces métadonnées décrivent plus de chose honorificprefix Dr iamge jobtitle MC http://schema. org/person http://schema. org/person email familyname nicol.delestre @insa-rouen.fr France memberof /EducationalOrga nization http://i.insarouen.fr/~delestr e/images/photo ND.jpg http://i.insarouen.fr http://i.insarouen.fr/~delestr e/images/photo ND.jpg http://i.insarouen.fr Nicol Delestre Delestre url http://schema. org/country workfor memberof Architecture des Systèmes d'information alternatename BP08 Avenue de l'université F-76801 addresscountry postalcode addresslocality Saint-Etienne du Rouvray /EducationalOrga nization ASI streetaddress address http:/litislab.eu legalname url url itemprop itemtype /PostalAddress INSA de Rouen http://www.insa -rouen.fr /CollegeOrUniver sity Laboratoire d'informatique, du Traitement de l'information et des Systèmes Il y a deux types de liens alors que les deux servent à caractériser une entité Le même fichier, le même URL, rsemble des informations destinées aux humains et aux machines Nicol Malandain colleague alternatename LITIS - v1.0 4 / 49

Vers le Web sémantique Le web sémantique 1 / 3 Vers le Web sémantique Le web sémantique 2 / 3 Définition Le Web des données et le Web Sémantique sont le Web pour les machines : le Web implique l utilisation (et son extension) des technologies du Web (URL, HTTP) et des principes du Web (informations décentralisées et interconnectées) pour les machines implique informations structurées Des URL aux URI Les URL permettent d identifier un document sur le Web Les URI (et IRI) permettent de référencer un objet, une resource, un concept, une idée, etc. sur le Web Lorsqu un URI correspondant à un URL, le contenu retourné après une requête HTTP GET dépend du type mime (accept) demandé (cf. [BP08]) : text/html : une page Web est retournée application/rdf+xml : une description Web sémantique est retournée - v1.0 5 / 49 - v1.0 6 / 49 Vers le Web sémantique Le web sémantique 3 / 3 1 / 3 Plus exactement Standards et Outils Techniques Aujourd'hui WEB des Documents URL HTTP HTML DTD XSD Moteur de recherche Recherche d'information bée sur des index de mots Monde des documents WEB des Données URI HTTP S Moteur de requêtes Mise en correspondance de graphes Monde des bes de données WEB Sémantique URI HTTP OWL Moteur de requêtes Logique Monde des bes de connaissances Des milliards de pages Des milliards de triplets Des milliers d'ontologies Inspiré de la présentation de MC Rousset : http://www.college-de-france.fr/media/serge-abiteboul/upl5540483766962034581_rousset20120530.pdf Présentation Langage de représentation de métadonnées proposé par le W3C en 1999 Le document présentant la dernière version (2004) est composé de 6 parties : 1 Primer : connaissances de be du 2 Concepts : syntaxe abstraite définissant le 3 Syntax : représentation XML du 4 Semantics : Interprétation logique du 5 Vocabulary : Définition de nouveau vocabulaire ( Schema) 6 Test Ces : Tests unitaires - v1.0 7 / 49 - v1.0 8 / 49

2 / 3 3 / 3 Concepts de be Un triplé composé de : Sujet ou Ressource : Ressource sur laquelle s applique la métadonnée Prédicat ou Propriété : Nom de la métadonnée appliquée à la ressource Objet ou valeur : Valeur de la métadonnée (peut être une resource ou un litéral) Possibilité de structurer l information http://www.w3c.org/home/lsila Creator http://www.w3c.org/home/lsila Creator http://www.w3c.org/staffd/85740 Name Email Name Email Ora Lsila lsila@w3.org Ora Lsila lsila@w3.org http://www.w3c.org/home/lsila creator Ora Lsila [W3C99] [W3C99] - v1.0 9 / 49 - v1.0 10 / 49 Introduction au /XML 1 / 4 Introduction au /XML 2 / 4 L élément de be : Description Ressource : Attribut about Prédicat : Élément inclus provenant d un schéma (voir S) Valeur : Spécifiée dans l élément inclus <? xml version =" 1.0 "?> <rdf: xmlns:rdf="http: //www.w3.org /1999/02/22 - rdf -syntax -ns#" xmlns:exterms ="http: //www.example.org /terms /"> < rdf:description rdf:about ="http: //www.example.org /index.html "> < exterms:creation - date > August 16, 1999 </ exterms:creation - date > </ rdf: > On peut avoir plusieurs descriptions faisant référence à plusieurs schém S <? xml version =" 1.0 "?> <rdf: xmlns:rdf="http: //www.w3.org /1999/02/22 - rdf -syntax -ns#" xmlns:dc="http: // purl.org /dc/elements /1.1/ " xmlns:exterms ="http: //www.example.org /terms /"> < rdf:description rdf:about ="http: //www.example.org /index.html "> < exterms:creation - date > August 16, 1999 </ exterms:creation - date > < rdf:description rdf:about ="http: //www.example.org /index.html "> < dc:language >en </ dc:language > </ rdf: > Tous les exemples qui suivent sont issus de [W3C04] - v1.0 11 / 49 - v1.0 12 / 49

Introduction au /XML 3 / 4 Introduction au /XML 4 / 4 Les valeurs peuvent être des littéraux ou des ressources L attribut datatype permet de typer les littéraux (possibilité d utiliser les types xsd) Possibilité d utiliser les ENTITY des DTD <? xml version =" 1.0 "?> <!DOCTYPE rdf: [<!ENTITY xsd "http: //www.w3.org /2001/ XMLSchema #">]> <rdf: xmlns:rdf="http: //www.w3.org /1999/02/22 - rdf -syntax -ns#" xmlns:dc="http: // purl.org /dc/elements /1.1/ " xmlns:exterms ="http: //www.example.org /terms /"> < rdf:description rdf:about ="http: //www.example.org /index.html "> < exterms:creation - date rdf:datatype ="& xsd ;# date ">1999-08 -16 </ exterms:creation - date > < dc:language >en </ dc:language > <dc:creator rdf:resource="http: //www.example.org /staffid /85740 "/> </ rdf: > Les attributs nodeid et id permettent de créer des nœuds vides <? xml version =" 1.0 "?> <rdf: xmlns:rdf="http: //www.w3.org /1999/02/22 - rdf -syntax -ns#" xmlns:dc="http: // purl.org /dc/elements /1.1/ " xmlns:exterms ="http: // example.org /stuff /1.0/ "> <rdf:description rdf:about="http: //www.w3.org /TR/rdf -syntax -grammar "> < dc:title > / XML Syntax Specification ( Revised )</ dc:title > < exterms:editor rdf:nodeid =" abc "/> < rdf:description rdf:nodeid =" abc "> < exterms:fullname >Dave Beckett </ exterms:fullname > < exterms:homepage rdf:resource ="http: // purl.org /net /dajobe /"/> </ rdf: > - v1.0 13 / 49 - v1.0 14 / 49 Conteneur 1 / 4 Conteneur 2 / 4 Bag, sequence et alternative Il est fréquent de devoir faire référence à plusieurs ressources (par exemple un livre écrit par plusieurs auteurs ) propose trois conteneurs : bag Liste non ordonnée de resources ou de littéraux (élément bag) sequence Liste ordonnée de resources ou de littéraux (élément seq) alternative Liste de resources ou de littéreaux qui représentent des alternatives pour une valeur unique (élément alt) Les éléments du conteneur sont listés à l aide de l élément li ou i avec (i > 0) Pour alternative il doit y avoir au moins un élément 1 (élément par défaut) Bag <? xml version =" 1.0 "?> <rdf: xmlns:rdf="http: //www.w3.org /1999/02/22 - rdf -syntax -ns#" xmlns:s ="http: // example.org /students /vocab #"> <rdf:description rdf:about="http: // example.org /courses /6.001 "> < s:students > < rdf:bag > < rdf:li rdf:resource ="http: // example.org /students /Amy "/> < rdf:li rdf:resource ="http: // example.org /students /Mohamed "/> < rdf:li rdf:resource ="http: // example.org /students /Johann "/> < rdf:li rdf:resource ="http: // example.org /students /Maria "/> < rdf:li rdf:resource ="http: // example.org /students /Phuong "/> </ rdf:bag > </ s:students > </ rdf: > - v1.0 15 / 49 - v1.0 16 / 49

Conteneur 3 / 4 Conteneur 4 / 4 Alternative <? xml version =" 1.0 "?> <rdf: xmlns:rdf="http: //www.w3.org /1999/02/22 - rdf -syntax -ns#" xmlns:s ="http: // example.org /packages /vocab #"> < rdf:description rdf:about ="http: // example.org /packages /X11 "> < s:distributionsite > < rdf:alt > < rdf:li rdf:resource ="ftp: //ftp.example.org "/> < rdf:li rdf:resource ="ftp: // ftp1.example.org "/> < rdf:li rdf:resource ="ftp: // ftp2.example.org "/> </ rdf:alt > </ s:distributionsite > </ rdf: > Problème Lorsque la ressource est une collection, la propriété porte sur la collection ou sur les éléments de cette collection Sur la collection si utilisation de l attribut about Sur les éléments de la collection si utilisation de l attribut abouteach < rdf:bag ID=" pages "> < rdf:li resource ="http: //foo.org /foo.html " /> < rdf:li resource ="http: //bar.org /bar.html " /> </ rdf:bag > < rdf:description abouteach ="# pages "> < s:creator >Ora Lsila </ s:creator > http: // www. w3. org/ TR/ 1999/ REC-rdf-syntax-19990222/ - v1.0 17 / 49 - v1.0 18 / 49 Préfixe Turtle 1 / 2 Préfixe d URI Lorsque l on veut appliquer une propriété à un ensemble de ressources organisé hiérarchiquement (un début d URI, préfixe, en commun), on peut utiliser la propriété au préfixe grâce à l attribut abouteachprefix Une autre méthode de sérialisation La syntaxe XML est verbeuse, peut être difficile à lire (par les humains) Une autre syntaxe Turtle (N3) a été proposée par Tim Berners-Lee pour être encore plus facile à lire Syntaxe simple : @ prefix ns: <URI >.... < rdf:description abouteachprefix ="http: //foo.org /doc "> < s:copyright >(c) 1998, The Foo Organization </ s:copyright > [W3C99] <ns:sujet > <Predicat1 > <Valeur1 >; <Predicat2 > <Valeur21 >,<Valeur22 >,...;... <Predicatn > <Valeurn >. [ <Predicat1 > <Valeur1 >. <Predicat2 > <Valeur21 >,<Valeur22 >,...;... <Predicatn > <Valeurn >. ] - v1.0 19 / 49 - v1.0 20 / 49

Turtle 2 / 2 D autres formats Comparaison (Wikipédia) < 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: //en. wikipedia. org / wiki / Tony_Benn "> < dc:title >Tony Benn </ dc:title > < dc:publisher > Wikipedia </ dc:publisher > </ rdf: > @prefix dc: <http :// purl.org /dc/elements /1.1/ >. <http :// en. wikipedia. org / wiki / Tony_Benn > dc: title " Tony Benn "; dc: publisher " Wikipedia ". http://www.w3.org/tr/rdf11-new/ - v1.0 21 / 49 - v1.0 22 / 49 Clse En il est possible d socier à une ressource une ou plusieurs clses : en utilisant la propriété rdf:type en utilisant le nom de la clse pour la balise décrivant la ressource en remplacement rdf:description (sérialisation XML) en utilisant la propriété a (sérialisation N3) Cela permet de connaître l ensemble des propriétés qui sont valides pour cette ressource Deux Langages ( Query Language et Update) et un protocole d interrogation de bes de données Syntaxe ressemblant à SQL Principe de fonctionnement : recherche de sous-graphes dans un graphe (graph matching) Tous les exemples de ce cours sont issus de Learning de Bob DuCharme [DuC11] Vous pourrez trouver un tutoriel complet issu de ce livre sur la chaîne YouTube de Noureddin Sadawi https://www.youtube.com/user/drnoureddinsadawi/ - v1.0 23 / 49 - v1.0 24 / 49

Obtenir la valeur d une propriété [DuC11] Obtenir l URI d une ressource [DuC11] Be # file : ex002. ttl # file : ex007.rq Be ab: richard ab: hometel " (229) 276-5135 ". ab:richard ab:email " richard49@hotmail. ab: cindy ab: hometel " (245) 646-5488 ". ab: cindy ab: email " cindym@gmail. ab: craig ab: hometel " (194) 966-1505 ". ab:craig ab:email " craigellis@yahoo.com ". ab: craig ab: email "c. SELECT? craigemail FROM <ex002.ttl > ab: craig ab: email? craigemail. -------------------------------- craigemail ================================ "c. ellis@usairwaysgroup.com " " craigellis@yahoo.com " -------------------------------- Le FROM est optionnel - v1.0 25 / 49 Obtenir toutes les propriétés d une ressource [DuC11] # file : ex002. ttl ab: richard ab: hometel " (229) 276-5135 ". ab:richard ab:email " richard49@hotmail. ab: cindy ab: hometel " (245) 646-5488 ". ab: cindy ab: email " cindym@gmail. ab: craig ab: hometel " (194) 966-1505 ". ab:craig ab:email " craigellis@yahoo.com ". ab: craig ab: email "c. # file : ex008.rq SELECT? person? person ab: hometel " (229) 276-5135 ". -------------- person ============== ab: richard -------------- - v1.0 26 / 49 Contraindre certaines valeurs [DuC11] Be Be # file : ex002. ttl ab: richard ab: hometel " (229) 276-5135 ". ab:richard ab:email " richard49@hotmail. ab: cindy ab: hometel " (245) 646-5488 ". ab: cindy ab: email " cindym@gmail. # file : ex010.rq SELECT? propertyname? propertyvalue ab: cindy? propertyname? propertyvalue. # file : ex012. ttl @prefix d: <http :// learningsparql.com /ns/ data #>. d: i0432 ab: firstname " Richard ". d: i0432 ab: ltname " Mutt ". d: i0432 ab: hometel " (229) 276-5135 ". d:i0432 ab:email " richard49@hotmail. # file : ex013.rq SELECT? craigemail? person ab: firstname " Craig ".? person ab: email? craigemail. ab: craig ab: hometel " (194) 966-1505 ". ab:craig ab:email " craigellis@yahoo.com ". ab: craig ab: email "c. ------------------------------------- propertyname propertyvalue ===================================== ab: email " cindym@gmail. com " ab: hometel "(245) 646-5488" ------------------------------------- d: i9771 ab: firstname " Cindy ". d: i9771 ab: ltname " Marshall ". d: i9771 ab: hometel " (245) 646-5488 ". d: i9771 ab: email " cindym@gmail. d: i8301 ab: firstname " Craig ". d: i8301 ab: ltname " Ellis ". d:i8301 ab:email " craigellis@yahoo.com ". d: i8301 ab: email "c. -------------------------------- craigemail ================================ "c. ellis@usairwaysgroup.com " " craigellis@yahoo.com " -------------------------------- - v1.0 27 / 49 - v1.0 28 / 49

Filtrer certains résultats [DuC11] 1 / 2 # file : ex021.rq SELECT *?s?p?o. FILTER ( regex (?o, " yahoo ","i")) --------------------------------------------------------------------------------- s p o ================================================================================= <http :// learningsparql.com /ns/data #i8301 > ab:email " craigellis@yahoo.com " --------------------------------------------------------------------------------- - v1.0 29 / 49 Attention aux requêtes trop contraintes [DuC11] Filtrer certains résultats [DuC11] 2 / 2 FILTER Ne prend qu un seul argument Opérateurs :!, =,! =, >, <, <=, >=,, &&, IN Fonctions : BOUND, isuri, isiri, isblank, isliteral, STR, LANG, DATATYPE, sameterm, langmatches, REGEX Possibilités d appeler des fonctions externes Exemple fonction externe (W3C) PREFIX ageo : <http :// example.org /geo #> SELECT? neighbor?a ageo : placename " Grenoble ".?a ageo : location? axloc.?a ageo : location? ayloc.?b ageo : placename? neighbor.?b ageo : location? bxloc.?b ageo : location? byloc. FILTER ( ageo : distance (? axloc,? ayloc,? bxloc,? byloc ) < 10 ). - v1.0 30 / 49 Avoir des contraintes optionnelles [DuC11] 1 / 2 Be # file : ex057.rq # file : ex054. ttl @prefix d: <http :// learningsparql.com /ns/ data #>. d: i0432 ab: firstname " Richard ". d: i0432 ab: ltname " Mutt ". d: i0432 ab: hometel " (229) 276-5135 ". d: i0432 ab: nick " Dick ". d:i0432 ab:email " richard49@hotmail. # file : ex055.rq SELECT? f i r s t? l a s t? worktel?s ab: firstname? f i r s t ; ab: ltname? l a s t ; ab: worktel? worktel. SELECT? f i r s t? l a s t? worktel?s ab: firstname? f i r s t ; ab: ltname? l a s t. OPTIONAL?s ab: worktel? worktel. d: i9771 ab: firstname " Cindy ". d: i9771 ab: ltname " Marshall ". d: i9771 ab: hometel " (245) 646-5488 ". d: i9771 ab: email " cindym@gmail. d: i8301 ab: firstname " Craig ". d: i8301 ab: ltname " Ellis ". d: i8301 ab: worktel " (245) 315-5486 ". d:i8301 ab:email " craigellis@yahoo.com ". d: i8301 ab: email "c. ---------------------------------------- first lt worktel ======================================== " Craig " " Ellis " "(245) 315-5486" ---------------------------------------- --------------------------------------------- first lt worktel ============================================= " Craig " " Ellis " "(245) 315-5486" " Cindy " " Marshall " " Richard " " Mutt " --------------------------------------------- - v1.0 31 / 49 - v1.0 32 / 49

Avoir des contraintes optionnelles [DuC11] 2 / 2 Filtrer des contraintes optionnelles [DuC11] 1 / 2 # file : ex061.rq Be SELECT? f i r s t? l a s t? worktel? nick?s ab: firstname? f i r s t ; ab: ltname? l a s t. OPTIONAL?s ab: worktel? worktel. OPTIONAL?s ab: nick? nick. ------------------------------------------------------ first lt worktel nick ====================================================== " Craig " " Ellis " "(245) 315-5486" " Cindy " " Marshall " " Richard " " Mutt " " Dick " ------------------------------------------------------ - v1.0 33 / 49 Filtrer des contraintes optionnelles [DuC11] 2 / 2 Be # file : ex054. ttl @prefix d: <http :// learningsparql.com /ns/ data #>. d: i0432 ab: firstname " Richard ". d: i0432 ab: ltname " Mutt ". d: i0432 ab: hometel " (229) 276-5135 ". d: i0432 ab: nick " Dick ". d:i0432 ab:email " richard49@hotmail. d: i9771 ab: firstname " Cindy ". d: i9771 ab: ltname " Marshall ". d: i9771 ab: hometel " (245) 646-5488 ". d: i9771 ab: email " cindym@gmail. ( 1.1) # file : ex067.rq SELECT? f i r s t? l a s t?s ab: firstname? f i r s t ; ab: ltname? l a s t. FILTER NOT EXISTS?s ab: worktel? worknum d: i8301 ab: firstname " Craig ". d: i8301 ab: ltname " Ellis ". d: i8301 ab: worktel " (245) 315-5486 ". d:i8301 ab:email " craigellis@yahoo.com -------------------------- ". first lt d: i8301 ab: email "c. ========================== " Cindy " " Marshall " Architecture des Systèmes " Richard " " Mutt " d Information -------------------------- - v1.0 35 / 49 # file : ex054. ttl @prefix d: <http :// learningsparql.com /ns/ data #>. d: i0432 ab: firstname " Richard ". d: i0432 ab: ltname " Mutt ". d: i0432 ab: hometel " (229) 276-5135 ". d: i0432 ab: nick " Dick ". d:i0432 ab:email " richard49@hotmail. d: i9771 ab: firstname " Cindy ". d: i9771 ab: ltname " Marshall ". d: i9771 ab: hometel " (245) 646-5488 ". d: i9771 ab: email " cindym@gmail. # file : ex065.rq SELECT? f i r s t? l a s t?s ab: firstname? f i r s t ; ab: ltname? l a s t. OPTIONAL?s ab: worktel? worknum. FILTER (! bound (? worknum )) d: i8301 ab: firstname " Craig ". d: i8301 ab: ltname " Ellis ". d: i8301 ab: worktel " (245) 315-5486 ". d:i8301 ab:email " craigellis@yahoo.com -------------------------- ". first lt d: i8301 ab: email "c. ========================== " Cindy " " Marshall " " Richard " " Mutt " -------------------------- - v1.0 34 / 49 Éviter les répétitions [DuC11] Be # file : ex054. ttl @prefix d: <http :// learningsparql.com /ns/data #>. d: i0432 ab: firstname " Richard ". d: i0432 ab: ltname " Mutt ". d: i0432 ab: hometel " (229) 276-5135 ". d: i0432 ab: nick " Dick ". d:i0432 ab:email " richard49@hotmail. d: i9771 ab: firstname " Cindy ". d: i9771 ab: ltname " Marshall ". d: i9771 ab: hometel " (245) 646-5488 ". d: i9771 ab: email " cindym@gmail.... # file : ex092.rq SELECT DISTINCT?p?s?p?o. - v1.0 36 / 49

Combiner des résultats [DuC11] 1 / 4 Be # file : ex069. ttl @prefix d: <http :// learningsparql.com /ns/ data #>. # People d: i0432 ab: firstname " Richard " ; ab: ltname " Mutt " ; ab:email " richard49@hotmail. d: i9771 ab: firstname " Cindy " ; ab: ltname " Marshall " ; ab: email " cindym@gmail. d: i8301 ab: firstname " Craig " ; ab: ltname " Ellis " ; ab: email "c. # Courses d: course34 ab: coursetitle " Modeling Data with OWL ". d: course71 ab: coursetitle " Enhancing Websites with a ". d: course59 ab: coursetitle " Using with non - Data ". d: course85 ab: coursetitle " Updating Data with ". # Who s taking which courses d: i8301 ab: takingcourse d: course59. d: i9771 ab: takingcourse d: course34. d: i0432 ab: takingcourse d: course85. d: i0432 ab: takingcourse d: course59. d: i9771 ab: takingcourse d: course59. - v1.0 37 / 49 Combiner des résultats [DuC11] 3 / 4 Combiner des résultats [DuC11] 2 / 4 # file : ex098.rq PREFIX d: <http :// learningsparql.com /ns/data #> SELECT *? person ab: firstname? f i r s t ; ab: ltname? l a s t. UNION? course ab: coursetitle? coursename. ------------------------------------------------------------------------------------ person first lt course coursename ==================================================================================== d: i8301 " Craig " " Ellis " d: i9771 " Cindy " " Marshall " d: i0432 " Richard " " Mutt " d: course85 " Updating Data with " d: course59 " Using with non - Data " - v1.0 d: course71 " Enhancing Websites with a " 38 / 49 d: course34 " Modeling Data with OWL " ------------------------------------------------------------------------------------ Combiner des résultats [DuC11] 4 / 4 Be # file : ex100. ttl @prefix d: <http :// learningsparql.com /ns / data #>. d: i0432 ab: firstname " Richard " ; ab: ltname " Mutt " ; ab: instrument " sax " ; ab: instrument " clarinet ". d: i9771 ab: firstname " Cindy " ; ab: ltname " Marshall " ; ab: instrument " drums ". # file : ex101.rq SELECT? f i r s t? l a s t? instrument? person ab: firstname? f i r s t ; ab: ltname? l a s t ; ab: instrument " trumpet " ; ab: instrument? instrument. UNION ------------------------------------ first lt instrument ==================================== " Craig " " Ellis " " trumpet " " Richard " " Mutt " " clarinet " " Richard " " Mutt " " sax " ------------------------------------ d: i8301 ab: firstname " Craig " ; ab: ltname " Ellis " ; ab: instrument " trumpet ".? person ab: firstname? f i r s t ; ab: ltname? l a s t ; ab: instrument " sax " ; ab: instrument? instrument. - v1.0 39 / 49 - v1.0 40 / 49

Et ce n est p fini! 1 / 2 Query Language Possibilité d utiliser des fonctions dans le SELECT : MIN, MAX, COUNT,... Possibilité d ordonner les résultats : ORDER BY Possibilité de grouper des résultats (GROUP BY) et d agréger des résultats (HAVING) avec différentes fonctions d aggrégation (MAX, AVG, SUM,...) Possibilité de limiter le nombre de résultats LIMIT (à utiliser sur des grandes be) ou de demander les résultats à partir d un certain rang (OFFSET) Possibilité d utiliser des variables : AS Possibilité de rechercher dans plusieurs be à la fois : SERVICE Possibilité d autres types de requêtes : DESCRIBE, ASK, CONSTRUCT... - v1.0 41 / 49 Et ce n est p fini! 2 / 2 Update Possibilité d ajouter des triplets Possibilité de supprimer (sous conditions ou p) des triplets Possibilité de mettre à jour (par ajout(s) et suppression(s) conditionnel(s)) des triplets - v1.0 42 / 49 Publication, requêtage Publication : Outils, API Publication, requêtage Exemple : fr.dbpedia.org Publication Publication de triplets : format N3 (.ttl) ou XML (.rdf) Utilisation d une be de données (par exemple JENA) proposant une entrée (par exemple Fuseki) Requêtage Utilisation de la méthode GET HTTP avec le type mime application/rdf+xml, lorsque l URI est une URL Utilisation d utilitaire de requêtage (par exemple arq) Utilisation d une API (par exemple Jena) - v1.0 43 / 49 - v1.0 44 / 49

Conclusion Conclusion Conclusion 1 / 4 Conclusion 2 / 4 Le web se mantique aujourd hui E volution du web se mantique source : http: // lod-cloud. net/ (2014) source : http: // lod-cloud. net/ 2007 - v1.0 45 / 49 - v1.0 Conclusion 46 / 49 Conclusion Conclusion 3 / 4 Conclusion 4 / 4 L Open data de fini par Tim Berners-Lee en 2006 Ce qui n a p e te pre sente Les autres me thodes de se rialisation Le conteneur list La re ification La notion de graphe et le Global Giant Graph http://www.w3.org/designissues/linkeddata.html - v1.0 47 / 49 - v1.0 48 / 49

Conclusion Références [BP08] [DuC11] [Gen08] [GFZC12] [GFZC15] Diego Berrueta and Jon Phipps. Best practice recipes for publishing rdf vocabularies. World Wide Web Consortium, Note NOTE-swbp-vocab-pub-20080828, August 2008. B. DuCharme. Learning. O Reilly Media, 2011. D. Genest. Cours sur le web sémantique, 2008. http://www.info.univ-angers.fr/pub/genest/enseignement/index.html. Fabien Gandon, Catherine Faron-Zucker, and Olivier Corby. Le Web sémantique : comment lier les données et les schém sur le web? InfoPro. Dunod, Paris, 2012. Sommaire et résumé disponibles sur le site de l éditeur à l adresse consulté le 2013-04-09 http ://http ://www.dunod.com/informatique-multimedia/systemes-dinformation-et-reseaux/strategie-etsystemes-dinformation/gestion-/le-web-semantique. Fabien Gandon, Catherine Faron-Zucker, and Olivier Corby. Web sémantique et web de données. https://www.france-universite-numerique-mooc.fr/courses/inria/41002/trimestre_1_2015/info, Mars 2015. [W3C99] Resource description framework, 1999. http://www.w3.org/tr/1999/rec-rdf-syntax-19990222/. [W3C04] Rdf primer, 2004. http://www.w3.org/tr/rdf-primer/. - v1.0 49 / 49