66
1 Corese Corese Moteur de recherche Moteur de recherche s s é é mantique pour RDF mantique pour RDF Olivier. Olivier. Corby Corby @ @ sophia sophia . . inria inria . . fr fr Projet ACACIA Projet ACACIA INRIA, Sophia Antipolis INRIA, Sophia Antipolis http://www.inria.fr/acacia http://www.inria.fr/acacia « « Knowledge is Power Knowledge is Power » »

Corese Moteur de recherche s é mantique pour RDF

  • Upload
    zarita

  • View
    52

  • Download
    0

Embed Size (px)

DESCRIPTION

Corese Moteur de recherche s é mantique pour RDF. [email protected] Projet ACACIA INRIA, Sophia Antipolis http://www.inria.fr/acacia « Knowledge is Power ». Corese. COnceptual REsource Search Engine Moteur de recherche RDF en graphe conceptuel - PowerPoint PPT Presentation

Citation preview

Page 1: Corese Moteur de recherche s é mantique pour RDF

1

CoreseCoreseMoteur de recherche sMoteur de recherche séémantique mantique

pour RDFpour RDFOlivier.Olivier.CorbyCorby@@sophiasophia..inriainria..frfr

Projet ACACIAProjet ACACIAINRIA, Sophia AntipolisINRIA, Sophia Antipolis

http://www.inria.fr/acaciahttp://www.inria.fr/acacia

««Knowledge is PowerKnowledge is Power»»

Page 2: Corese Moteur de recherche s é mantique pour RDF

2

CoreseCorese

COnceptual REsource Search EngineCOnceptual REsource Search Engine

Moteur de recherche RDF en graphe Moteur de recherche RDF en graphe conceptuelconceptuel

Resource Description Framework Resource Description Framework (W3C) (W3C)

Page 3: Corese Moteur de recherche s é mantique pour RDF

3

Histoire Histoire 1992 Acacia : acquisition des connaissances à 1992 Acacia : acquisition des connaissances à partir de documents structurés avec des graphes partir de documents structurés avec des graphes conceptuelsconceptuels1998 : XML 1998 : XML 1999 : RDF, 1er prototype de Corese1999 : RDF, 1er prototype de Corese2000 ICCS : RDF et les graphes conceptuels2000 ICCS : RDF et les graphes conceptuels2000-2001 : Moteur Corese pour Comma, 2000-2001 : Moteur Corese pour Comma, projet européenprojet européen

Page 4: Corese Moteur de recherche s é mantique pour RDF

4

Graphes conceptuelsGraphes conceptuelsModModèèle de John Sowale de John Sowahttp://www.http://www.jfsowajfsowa.com/cg/.com/cg/cgexampcgexamp..htmhtm

RRééseau sseau séémantiquemantique– Concept Concept [Person : John][Person : John]– Relation Relation (author)(author)

Concepts et relations typConcepts et relations typééssHiHiéérarchies de types de concept et de relationrarchies de types de concept et de relation

Page 5: Corese Moteur de recherche s é mantique pour RDF

5

GCGC

[Book:doc]-[Book:doc]--(author)-[Person:jr]--(author)-[Person:jr]-

-(name)-[Literal:“John Rawls”]-(name)-[Literal:“John Rawls”]-(title)--(title)-

-[Literal:“Theory of Justice”]-[Literal:“Theory of Justice”]

Page 6: Corese Moteur de recherche s é mantique pour RDF

6

RDFRDF

<Book rdf:about=‘doc’><Book rdf:about=‘doc’><author><author>

<Person rdf:about=‘jr’><Person rdf:about=‘jr’> <name>John Rawls</name><name>John Rawls</name></Person></Person>

</author></author><title>Theory of Justice</title><title>Theory of Justice</title>

</Book></Book>

Page 7: Corese Moteur de recherche s é mantique pour RDF

7

GC - RDFGC - RDFConcept Concept ressource ressourceRelation Relation propri propriééttééType Type classe classeSignature de relation Signature de relation domain, range domain, range Projection pour retrouver des ressourcesProjection pour retrouver des ressourcesRDF comme format de GCRDF comme format de GC

Page 8: Corese Moteur de recherche s é mantique pour RDF

8

DiffDifféérencesrences

RDF : relation binaire, CG : n-aireRDF : relation binaire, CG : n-aireRDF : ressources peuvent avoir plusieurs RDF : ressources peuvent avoir plusieurs typestypesRDF distingue les littRDF distingue les littééraux et les ressourcesraux et les ressourcesRDF est multilingue (RDF est multilingue (xml:langxml:lang tag) tag)

Page 9: Corese Moteur de recherche s é mantique pour RDF

9

Onto

logie

Country Company Person

employs subdivisionOfactivityInanimate

Entity

nationality

domain

range

RDF S

subClassOfrangedomain typesubPropertyOf

Property

Resource

Class

Literal

Anno

tatio n

RDF www.T-Nova.de www.DeutscheTelekom.de

subdivisionOf activityTelecom

Page 10: Corese Moteur de recherche s é mantique pour RDF

10

CoreseCorese

Construire une représentation Construire une représentation d’un schema RDF et d’un schema RDF et d’énoncés RDFd’énoncés RDF

Rechercher des ressourcesRechercher des ressourcesClasser des ressources par inférence de typeClasser des ressources par inférence de typeCompléter la base de ressources par des inférencesCompléter la base de ressources par des inférencesServeur Web sémantiqueServeur Web sémantique

Page 11: Corese Moteur de recherche s é mantique pour RDF

11

Moteur de rechercheMoteur de recherche

Projection d’un graphe requProjection d’un graphe requête sur le graphe ête sur le graphe ciblecibleOpOpéérateurs de rechercherateurs de rechercheProjection approchProjection approchééeeGroupement des rGroupement des réésultatssultats

Page 12: Corese Moteur de recherche s é mantique pour RDF

12

RequRequêête te àà la OQL la OQL

select d.title, p.nameselect d.title, p.namefrom d Document, p Personfrom d Document, p Personwhere d.title like‘XML’ and where d.title like‘XML’ and

d.author = p d.author = p

Page 13: Corese Moteur de recherche s é mantique pour RDF

13

RequRequêête te àà la RQL la RQLSelect ?title, ?pnameSelect ?title, ?pnameFrom From

?doc rdf:type ex:Document?doc rdf:type ex:Document?p rdf:type ex:Person?p rdf:type ex:Person

Where Where ?doc ex:title ?title?doc ex:title ?title?title like ‘XML’?title like ‘XML’?doc ex:author ?p?doc ex:author ?p?p ex:name ?pname?p ex:name ?pname

Page 14: Corese Moteur de recherche s é mantique pour RDF

14

RequRequêête Corese te Corese

<c:Document c:Title=‘~XML’><c:Document c:Title=‘~XML’> <c:author><c:author> <c:Person c:name=‘?x’/><c:Person c:name=‘?x’/> </c:author> </c:author> </c:Document> </c:Document>

Page 15: Corese Moteur de recherche s é mantique pour RDF

15

ProjectionProjectionQuery : Query : [[DocumentDocument]]--((authorauthor))--[[CreatorCreator]]

Trouver des occurrences spTrouver des occurrences spécialisées écialisées ::

RRééponse 1ponse 1 [[PaperPaper]]--((authorauthor))--[P[Personerson]]Paper < Document Person < CreatorPaper < Document Person < Creator

RRééponse 2 ponse 2 [[ReportReport]]--((authorauthor))--[[TeamTeam]] Report < Document Team < CreatorReport < Document Team < Creator

Page 16: Corese Moteur de recherche s é mantique pour RDF

16

RRéésultatsultat

Les graphes rLes graphes réésultats sont traduits en RDFsultats sont traduits en RDF

Et traitEt traitéés par une feuille de style XSLT qui s par une feuille de style XSLT qui engendre du HTMLengendre du HTML

Page 17: Corese Moteur de recherche s é mantique pour RDF

17

Projection approchProjection approchééeeRRéponse tolère des concepts non spécialiséséponse tolère des concepts non spécialisés

Query :Query :[TechnicalReport](author)[Person][TechnicalReport](author)[Person]

Target : Target : [ResearchReport] (author) [Team][ResearchReport] (author) [Team]

Page 18: Corese Moteur de recherche s é mantique pour RDF

18

Projection approchProjection approchééee DocumentDocument

TechnicalReportTechnicalReport ResearchReportResearchReport

CreatorCreator

PersonPerson TeamTeam

Query :Query :[TechnicalReport](author)[Person][TechnicalReport](author)[Person]

Page 19: Corese Moteur de recherche s é mantique pour RDF

19

Distance ontologiqueDistance ontologiqueCalcule une Calcule une distancedistance ontologique ontologique entreentre concept concept requrequêête et concept ciblete et concept cible

Distance = longueur du plus court chemin le long de Distance = longueur du plus court chemin le long de la relation de subsomption entre concept requla relation de subsomption entre concept requêête et te et cible, passe par le plus prcible, passe par le plus préécis supertype communcis supertype commun

Distance entre rDistance entre rééponse et requponse et requêête = somme des te = somme des distances des concepts approchdistances des concepts approchééss

Page 20: Corese Moteur de recherche s é mantique pour RDF

20

Distance ontologiqueDistance ontologique

Distance entre des frDistance entre des frèères : 2res : 2Entre des cousins germains : 4Entre des cousins germains : 4

O ise au R epti le M am m ife re

V er teb re

V e rs M e du se

In ve rteb re

A n im a l

Page 21: Corese Moteur de recherche s é mantique pour RDF

21

DistanceDistanceDe plus, la distance diminue avec la profondeurDe plus, la distance diminue avec la profondeur

La distance entre un pLa distance entre un pèère de profondeur n et un fils re de profondeur n et un fils est de 1/2est de 1/2nn

Ainsi Homme est plus proche de ChimpanzAinsi Homme est plus proche de Chimpanzé que é que Vertébré de InvVertébré de Invertébré ertébré !!

Page 22: Corese Moteur de recherche s é mantique pour RDF

22

DistanceDistance

O ise au R e pti le

H omm e Chim p an ze

M am m ife re

V er teb re

V e rs M edu se

In ve rteb re

A n im a l

Page 23: Corese Moteur de recherche s é mantique pour RDF

23

OpOpéérateurs de requrateurs de requêêtete~ contain~ contain^ startWith^ startWith< <= = >= >< <= = >= > nombre ou string nombre ou string! negation : != !~! negation : != !~

| boolean or : | boolean or : ~XML | ~ RDF~XML | ~ RDF

<: <=: =: >=: >: type<: <=: =: >=: >: type

Page 24: Corese Moteur de recherche s é mantique pour RDF

24

OpOpéérateursrateursTrouver un document :Trouver un document :

?doc rdf:type ex:Document?doc rdf:type ex:DocumentLe titre contient XML :Le titre contient XML :

?doc ex:title ?title ~XML?doc ex:title ?title ~XML

Le titre contient XML ou RDF :Le titre contient XML ou RDF :?doc ex:title ?title ~XML | ~RDF?doc ex:title ?title ~XML | ~RDF

La date est antLa date est antéérieure rieure àà 2004 : 2004 :?doc ex:date ?date <= 2004-01-01?doc ex:date ?date <= 2004-01-01

Page 25: Corese Moteur de recherche s é mantique pour RDF

25

OpOpéérateurs avec variablerateurs avec variableDeux auteurs diffDeux auteurs difféérents :rents :

?doc ex:author ?p1?doc ex:author ?p1?doc ex:author ?p2 != ?p1?doc ex:author ?p2 != ?p1

Deux personnes de mDeux personnes de mêême noms :me noms :

?p1 rdf:type ex:Person ?p1 ex:name ?x?p1 rdf:type ex:Person ?p1 ex:name ?x?p2 rdf:type ex:Person ?p2 ex:name ?x?p2 rdf:type ex:Person ?p2 ex:name ?x?p1 != ?p2?p1 != ?p2

Page 26: Corese Moteur de recherche s é mantique pour RDF

26

OpOpéérateurs de typerateurs de typeUn document de type Un document de type éégal gal à à TechnicalReportTechnicalReport?x rdf:type ex:Document =: ex:TechnicalReport?x rdf:type ex:Document =: ex:TechnicalReport

Un document qui ne soit pas un Rapport technique :Un document qui ne soit pas un Rapport technique :?x rdf:type ex:Document !<=: ex:TechnicalReport?x rdf:type ex:Document !<=: ex:TechnicalReport

Documents diffDocuments difféérents, de mrents, de mêême type :me type :

?x rdf:type ex:Document?x rdf:type ex:Document?y rdf:type ex:Document != ?x =: ?x?y rdf:type ex:Document != ?x =: ?x

Page 27: Corese Moteur de recherche s é mantique pour RDF

27

NNéégationgation

Trouver une personne qui n’est pas l’auteur d’un document dont le Trouver une personne qui n’est pas l’auteur d’un document dont le titre contient XML :titre contient XML :

?p rdf:type ex:Person ?p rdf:type ex:Person ?doc ex:title ~XML?doc ex:title ~XML?p not ex:author ?doc?p not ex:author ?doc

Page 28: Corese Moteur de recherche s é mantique pour RDF

28

Chemin de longueur variableChemin de longueur variableTrouver par quel chemin deux personnes sont reliTrouver par quel chemin deux personnes sont reliéées, chemin de es, chemin de longueur au plus n :longueur au plus n :

?x rdf:type ex:Person?x rdf:type ex:Person?y rdf:type ex:Person?y rdf:type ex:Person?x ex:relation *2 ?y ?x ex:relation *2 ?y

EssaieEssaie : :?x ex:relation ?y ?x ex:relation ?y

?x ex:relation ?t ex:relation ?y?x ex:relation ?t ex:relation ?y

Page 29: Corese Moteur de recherche s é mantique pour RDF

29

Tous les chemins de longueur variableTous les chemins de longueur variableTrouver par quels chemins deux personnes sont reliTrouver par quels chemins deux personnes sont reliéées, chemins de es, chemins de longueur au plus n :longueur au plus n :

?x rdf:type ex:Person?x rdf:type ex:Person?y rdf:type ex:Person?y rdf:type ex:Person?x ex:relation ?x ex:relation allall *2 ?y *2 ?y

EssaieEssaie : :?x ex:relation ?y ?x ex:relation ?y

?x ex:relation ?t ex:relation ?y?x ex:relation ?t ex:relation ?y

Page 30: Corese Moteur de recherche s é mantique pour RDF

30

PropriPropriééttéé g géénnéérique rique Ressources reliRessources reliéées par n’importe quelle propries par n’importe quelle propriééttéé : :

?x cos:Property ?y?x cos:Property ?y

Trouver un document dont le titre contient XML et retourner toutes Trouver un document dont le titre contient XML et retourner toutes ses propriétés :ses propriétés :

?doc ex:title ~XML?doc ex:title ~XML?doc cos:Property ?p?doc cos:Property ?p

Page 31: Corese Moteur de recherche s é mantique pour RDF

31

XML Schema DatatypesXML Schema Datatypesxsd:string xsd:string xsd:floatxsd:floatxsd:integerxsd:integerxsd:datexsd:dateXsd:booleanXsd:boolean

Page 32: Corese Moteur de recherche s é mantique pour RDF

32

RDF DatatypeRDF Datatype<!ENTITY xsd <!ENTITY xsd ””http://www.w3.org/2001/XMLSchema#http://www.w3.org/2001/XMLSchema#”” > >

<c:Person><c:Person><c:age <c:age rdf:datatype=‘&xsd;integer’rdf:datatype=‘&xsd;integer’>44</c:age>>44</c:age>

<c:name <c:name rdf:datatype=‘&xsd;string’rdf:datatype=‘&xsd;string’>Laurent>Laurent </c:name></c:name>

<c:date <c:date rdf:datatype=‘&xsd;date’rdf:datatype=‘&xsd;date’>1959-10-16>1959-10-16</c:date></c:date>

</c:Person></c:Person>

Page 33: Corese Moteur de recherche s é mantique pour RDF

33

RDF DatatypeRDF DatatypeRDF impose de prRDF impose de prééciser systciser systéématiquement le datatype, mmatiquement le datatype, mêême si le me si le

range de la proprirange de la propriééttéé est typ est typé sur ce datatype :é sur ce datatype :

<rdf:Property rdf:about=‘#speed’><rdf:Property rdf:about=‘#speed’><rdfs:range rdf:resource=‘&xsd;float’/><rdfs:range rdf:resource=‘&xsd;float’/>

</rdf:Property></rdf:Property>

<ex:Car><ex:Car><ex:speed rdf:datatype=‘&xsd;float>314</ex:speed><ex:speed rdf:datatype=‘&xsd;float>314</ex:speed></ex:Car></ex:Car>

Page 34: Corese Moteur de recherche s é mantique pour RDF

34

RDF DatatypeRDF DatatypeCorese permet, en option, de ne pas répéter le datatype et de l’inférer Corese permet, en option, de ne pas répéter le datatype et de l’inférer

à partir du schema RDFS :à partir du schema RDFS :<rdf:Property rdf:about=‘#speed’><rdf:Property rdf:about=‘#speed’>

<rdfs:range rdf:resource=‘&xsd;float’/><rdfs:range rdf:resource=‘&xsd;float’/></rdf:Property></rdf:Property><ex:Car><ex:Car>

<ex:speed>314</ex:speed><ex:speed>314</ex:speed></ex:Car></ex:Car>_:1 rdf:type ex:Car_:1 rdf:type ex:Car_:1 ex:speed 314 ^^ xsd:float_:1 ex:speed 314 ^^ xsd:float

Page 35: Corese Moteur de recherche s é mantique pour RDF

35

GroupementGroupementUne requUne requêête a pour rte a pour rééponse G1 .. Gnponse G1 .. GnOn peut grouper les graphes G1 .. Gn selon On peut grouper les graphes G1 .. Gn selon des critdes critèèrrees :s :

distinct x1 .. xndistinct x1 .. xngroup by x1 .. xngroup by x1 .. xngroup by connex x1 .. xngroup by connex x1 .. xncount x (by y)count x (by y)

Page 36: Corese Moteur de recherche s é mantique pour RDF

36

Distinct Distinct Une requUne requêête a pour rte a pour rééponse G1 .. Gnponse G1 .. Gn(select) distinct x1 x2(select) distinct x1 x2

G1 : x1=Jules, x2=JimG1 : x1=Jules, x2=JimG2 : x1=Jim, x2=JulesG2 : x1=Jim, x2=Jules

Ne garder qu’un seul graphe, par exemple G1Ne garder qu’un seul graphe, par exemple G1

Page 37: Corese Moteur de recherche s é mantique pour RDF

37

Group byGroup byUne requUne requêête a pour rte a pour rééponse G1 .. Gnponse G1 .. Gngroup by x1 x2group by x1 x2

Joindre les graphes qui ont mJoindre les graphes qui ont mêême x1 et mme x1 et mêême me x2x2Ex : grouper les documents par auteur et par Ex : grouper les documents par auteur et par annannééee

Page 38: Corese Moteur de recherche s é mantique pour RDF

38

Group byGroup by?doc rdf:type ex:Document?doc rdf:type ex:Document?doc ex:author ?p?doc ex:author ?p?doc ex:year ?y?doc ex:year ?y

D1 John 1990 D4 Jack 2000D1 John 1990 D4 Jack 2000D2 Jack 2000D2 Jack 2000D3 John 2004D3 John 2004

Page 39: Corese Moteur de recherche s é mantique pour RDF

39

Group byGroup byEx : grouper les documents par auteur et par Ex : grouper les documents par auteur et par annannééeeGroup by ?p, ?yGroup by ?p, ?y

John 1990 D1John 1990 D1John 2004 D2John 2004 D2Jack 2000 D2 D4Jack 2000 D2 D4

Page 40: Corese Moteur de recherche s é mantique pour RDF

40

Group by connexGroup by connexUne requUne requêête a pour rte a pour rééponse G1 .. Gnponse G1 .. Gngroup by connex x1 x2group by connex x1 x2

Joindre les graphes qui ont mJoindre les graphes qui ont mêême valeur pour me valeur pour x1 et/ou x2x1 et/ou x2

Page 41: Corese Moteur de recherche s é mantique pour RDF

41

Group by connexGroup by connexTrouver les compTrouver les compéétences similaires et former tences similaires et former les classes de comples classes de compéétences similaires tences similaires

?c1 ex:similar ?c2?c1 ex:similar ?c2Group by connex ?c1 ?c2Group by connex ?c1 ?c2

c1 similar c2c1 similar c2 c4 similar c5c4 similar c5c6 similar c4c6 similar c4 c3 similar c1c3 similar c1

Page 42: Corese Moteur de recherche s é mantique pour RDF

42

Group by connexGroup by connexTrouver les compTrouver les compéétences similaires et tences similaires et former les classes de compformer les classes de compéétences similaires tences similaires

Classe 1 {c1 similar c2, c3 similar c1}Classe 1 {c1 similar c2, c3 similar c1}

Classe 2Classe 2 {c4 similar c5, c6 similar c4}{c4 similar c5, c6 similar c4}

Page 43: Corese Moteur de recherche s é mantique pour RDF

43

Count Count Une requUne requêête a pour rte a pour rééponse G1 .. Gnponse G1 .. GnCount xCount x

Compter les occurrences diffCompter les occurrences difféérentes de x dans rentes de x dans le graphe rle graphe réésultatsultat

Ex : compter les ouvrages d’un auteurEx : compter les ouvrages d’un auteur

Page 44: Corese Moteur de recherche s é mantique pour RDF

44

Count Count Ex : compter les ouvrages des auteursEx : compter les ouvrages des auteurs

?doc ex:author ?p?doc ex:author ?pGroup by ?pGroup by ?pCount ?docCount ?doc

John D1 D2 (2)John D1 D2 (2)Jack D1 D4 D6 (3)Jack D1 D4 D6 (3)

Page 45: Corese Moteur de recherche s é mantique pour RDF

45

Extensions OWLExtensions OWL

owl:TransitivePropertyowl:TransitivePropertyowl:SymmetricProperty owl:SymmetricProperty owl:inverseOfowl:inverseOfowl:intersectionOfowl:intersectionOfowl:disjointWithowl:disjointWith

Page 46: Corese Moteur de recherche s é mantique pour RDF

46

IntersectionIntersectionowl:Class Womanowl:Class Woman owl:intersectionOfowl:intersectionOf

owl:Class Humanowl:Class Humanowl:Class Femaleowl:Class Female

DDééfinit une finit une ééquivalence entre Woman et l’intersection de Human quivalence entre Woman et l’intersection de Human et Femaleet Female

HumanHuman FemaleFemale WomanWoman

Page 47: Corese Moteur de recherche s é mantique pour RDF

47

InverseInversep1 owl:p1 owl:inverseOfinverseOf p2 p2

X p1 Y X p1 Y Y p2 X Y p2 X

hasParent owl:inverseOf hasChildhasParent owl:inverseOf hasChild

John hasParent Jim John hasParent Jim Jim hasChild John Jim hasChild John

Page 48: Corese Moteur de recherche s é mantique pour RDF

48

SymSyméétrietrie

p rdf:type owl:p rdf:type owl:SymmetricPropertySymmetricProperty

X p Y X p Y Y p X Y p X

ex:sibling rdf:type owl:SymmetricProperty ex:sibling rdf:type owl:SymmetricProperty

John ex:sibling Jack John ex:sibling Jack Jack ex:sibling John Jack ex:sibling John

Page 49: Corese Moteur de recherche s é mantique pour RDF

49

TransitivitTransitivitééowl:TransitiveProperty owl:TransitiveProperty

X p Y X p Y Y p Z Y p Z X p ZX p Z

ex:partOf rdf:type owl:TransitivePropertyex:partOf rdf:type owl:TransitiveProperty

ex:axis ex:partOf ex:engineex:axis ex:partOf ex:engineex:engine ex:partOf ex:car ex:engine ex:partOf ex:car ex:axis ex:partOf ex:carex:axis ex:partOf ex:car

Page 50: Corese Moteur de recherche s é mantique pour RDF

50

RRèèglesglesSiSi une Personne est membre d’une Equipe une Personne est membre d’une Equipe qui participe à un Consortiumqui participe à un ConsortiumAlorsAlors cette Personne est du type Participant et cette Personne est du type Participant et elle participe au Consortium elle participe au Consortium

Page 51: Corese Moteur de recherche s é mantique pour RDF

51

RRèègles de graphegles de grapheCG1 CG1 CG2 CG2

[Person:?x][Person:?x]-(member)-[Team]--(member)-[Team]-

-(participate)--(participate)--[Consortium:?c] -[Consortium:?c]

[Participant:?x] –(participate)- [Participant:?x] –(participate)- [Consortium:?c][Consortium:?c]

Page 52: Corese Moteur de recherche s é mantique pour RDF

52

InfInféérencesrences1. Préciser le type d’un concept :1. Préciser le type d’un concept :

[Person: ?x] -> [[Person: ?x] -> [ParticipantParticipant: ?x]: ?x]

2. Cr2. Crééer une relation entre concepts :er une relation entre concepts :

[Participant: ?x]-([Participant: ?x]-(participateparticipate)-)-[Consortium :?c][Consortium :?c]

Page 53: Corese Moteur de recherche s é mantique pour RDF

53

InfInféérencesrencesPermet de dPermet de dééfinir des types de conceptsfinir des types de concepts

Un Patient est une personne qui a une maladie :Un Patient est une personne qui a une maladie :IF IF

?x rdf:type ex:Person ?x rdf:type ex:Person ?x ex:hasDesease ?d?x ex:hasDesease ?d

THENTHEN ?x rdf:type ex:Patient?x rdf:type ex:Patient

Page 54: Corese Moteur de recherche s é mantique pour RDF

54

Règle de grapheRègle de graphe

Pour appliquer une rPour appliquer une règle Cègle C D D sur unsur un graphe G : graphe G :1. Trouver par projection une occurrence de C 1. Trouver par projection une occurrence de C

dans G : C’dans G : C’ C C2. Joindre la conclusion D au graphe G sur les 2. Joindre la conclusion D au graphe G sur les

concepts de C’ trouvconcepts de C’ trouvéés par projection s par projection

Page 55: Corese Moteur de recherche s é mantique pour RDF

55

Syntaxe de rSyntaxe de rèègles RDFgles RDF<cos:rule><cos:rule>

<cos:if><cos:if><c:Person rdf:about=‘?p’><c:Person rdf:about=‘?p’>

<c:member><c:member> <c:Team><c:Team>

<c:participate><c:participate> <c:Consortium <c:Consortium

rdf:about=‘?c’/>rdf:about=‘?c’/></c:participate></c:participate>

</c:Team></c:Team></c:member></c:member>

</c:Person</c:Person</cos:if></cos:if>

Page 56: Corese Moteur de recherche s é mantique pour RDF

56

Syntaxe RDFSyntaxe RDF

<cos:then><cos:then><c:<c:ParticipantParticipant rdf:about=‘?p’> rdf:about=‘?p’>

<c:participate rdf:resource=‘?c’/><c:participate rdf:resource=‘?c’/></c:</c:ParticipantParticipant>>

</cos:then></cos:then>

</cos:rule></cos:rule>

Page 57: Corese Moteur de recherche s é mantique pour RDF

57

Serveur Web sServeur Web séémantiquemantique

Moteur Corese intMoteur Corese intégré dans un serveur égré dans un serveur tomcat, dans une servlettomcat, dans une servletNavigation dans les ontologies RDFS par des Navigation dans les ontologies RDFS par des feuilles de stylefeuilles de style

Page 58: Corese Moteur de recherche s é mantique pour RDF

58

Serveur Web sServeur Web séémantiquemantique

Interrogation du moteur via des formulaires Interrogation du moteur via des formulaires HTML/JSPHTML/JSPLes formulaires sont construits en connexion Les formulaires sont construits en connexion avec le moteur en consultant l’ontologieavec le moteur en consultant l’ontologie

Page 59: Corese Moteur de recherche s é mantique pour RDF

59

ApplicationsApplications2000-2001 : Comma2000-2001 : Comma2002 Corese pour Samovar avec Renault2002 Corese pour Samovar avec Renault2003-2004 : Corese pour KMP, projet RNRT 2003-2004 : Corese pour KMP, projet RNRT Cartographie des compétences sur Sophia Cartographie des compétences sur Sophia AntipolisAntipolisVersion de distributionVersion de distributionhttp://www.inria.fr/acacia/soft/corese http://www.inria.fr/acacia/soft/corese

2002-2004 : ODL Inria2002-2004 : ODL Inria

Page 60: Corese Moteur de recherche s é mantique pour RDF

60

CommaCommaO’Comma : Corporate Memory Management O’Comma : Corporate Memory Management through Agentsthrough AgentsSystSystèème multi agents (Jade)me multi agents (Jade)Ontology en RDF : Document, Entreprise, Ontology en RDF : Document, Entreprise, Domaine, UtilisateurDomaine, UtilisateurMoteur de recherche Corese : RDF en graphe Moteur de recherche Corese : RDF en graphe conceptuelsconceptuelsRRèègles de graphegles de graphe

Page 61: Corese Moteur de recherche s é mantique pour RDF

61

CommaCommaMéthode: Recueil, Phase terminologique, Structuration, Méthode: Recueil, Phase terminologique, Structuration,

Validation, Formalisation en RDFSValidation, Formalisation en RDFS

Résultat: 4Résultat: 4770 concepts, 0 concepts, 880 relations, 0 relations, 1133 niveaux de profondeur niveaux de profondeur

Page 62: Corese Moteur de recherche s é mantique pour RDF

62

CommaComma

Niveau spécifique

Haut niveau

Niveau médian

Aspects Aspects EntrepriseEntreprise

Aspects Aspects DocumentDocument

Aspects Aspects UtilisateurUtilisateur

Aspects Aspects DomaineDomaine

Page 63: Corese Moteur de recherche s é mantique pour RDF

63

KMPKMPKMP : Knowledge Management PlatformKMP : Knowledge Management PlatformCartographie des compCartographie des compéétences en Ttences en Téélléécom sur com sur Sophia AntipolisSophia AntipolisServeur Web sServeur Web séémantique de compmantique de compéétencetenceFavoriser les partenariatsFavoriser les partenariatsOntologie en RDF : CompOntologie en RDF : Compéétence, Organisation, tence, Organisation, DomaineDomaine

Page 64: Corese Moteur de recherche s é mantique pour RDF

64

Projets FutursProjets FutursWebLearn : Action CNRS, eLearning, WebLearn : Action CNRS, eLearning, mémoire d’entreprise, mémoire d’entreprise, génie civil, génie civil, document, document,

Page 66: Corese Moteur de recherche s é mantique pour RDF

66

DDéémomo