Académique Documents
Professionnel Documents
Culture Documents
Abstract. Lobjectif de ce papier est de dfinir une ontologie technique de services pour le langage de description de service Web smantique YASA4WSDL. Cette ontologie intgre des concepts utiles du mta-modle de WSDL et des ontologies OWSL-S et WSMO. Lintgration de ces ontologies est ralise avec diffrentes techniques dappariement conformment un processus de mapping dontologies. Lontologie rsultante offre une couverture smantique des concepts spcifiques aux services Web. Keywords: Services Web smantique, Ontologie.
1. Introduction
Les travaux mens autour de la description des services Web utilisent de plus en plus les ontologies pour fournir une reprsentation de linformation smantique, la fois, dtaille, riche et facile manipuler par les machines. Afin de profiter des avantages des ontologies et pour particulirement amliorer la dcouverte et la composition de services Web, nous avons dvelopp le langage YASA4WSDL[1] qui tend le langage SAWSDL. Cette extension vient combler un manque au niveau de la spcification de la nature de lannotation smantique dans SAWSDL[11]. La description YASA4WSDL est enrichie par des rfrences portes sur des concepts techniques de services tels que prcondition, effet, opration, etc. Ces concepts proviennent dune ontologie dite technique . Lobjectif de ce papier est de continuer les travaux autour de YASA4WSDL par la dfinition dune Ontologie Technique de Services . Nous proposons de dvelopper une telle ontologie par lintgration des concepts de services des ontologies de OWL-S[2] et WSMO[4], du mta-modle de WSDL[12] et de concepts retenus des diffrents travaux de recherche. Ce papier est organis comme suit. Dans la section 2, nous prsentons une brve revue des ontologies de services. La section 3 prsente le contexte et les motivations de notre contribution. La section 4 prsente les techniques et systmes de mapping utiles pour lintgration dontologies. Dans la section 5, nous montrons comment ces techniques seront utilises pour la construction dune ontologie technique pour le langage YASA4WSDL. La dernire section est consacre la conclusion et aux perspectives de ce travail.
par le mta-modle de WSDL, SAWSDL, OWL-S et WSMO. Dans [13], les concepts du vocabulaire de Composite Capabilities/Preference Profiles (CC/PP)[14] est tendu afin dajouter plus dinformation smantique dans la description. Ce standard propos par la W3C sest dot de nouveaux concepts (type de service, qualit de service, location, etc.). Par ailleurs, il existe dautres de smantique de services telle que celle propose dans [15, 16], travers la DIANE Service Description (DSD) et les DIANE Elements (DE). Ce travail met en pratique des concepts additionnels que WSMO et OWL-S ne mettent pas en uvre. Dans [16, 17], les auteurs dcrivent comment DSD utilise une ontologie afin dexprimer des concepts tels que la prcondition et leffet.
3. Contexte et motivations
Nous prsentons dans cette section le contexte de notre contribution savoir le langage YASA4WSDL et nous identifions les besoin de la dfinition dune ontologie de service pour YASA4WSDL. 3.1. YASA4WSDL Lide de YASAWSDL est dtendre SAWSDL afin damliorer lexpressivit de la description de service. Dans SAWSDL et pour chaque lment WSDL, on peut rfrencer plusieurs concepts dune ontologie de domaine. Mais, il ny aurait aucune spcification de la nature des informations smantiques. Lannotation dune opration par un concept dun domaine mtier est une annotation gros grain, puisque elle ne distingue pas sil sagit dune prcondition, dun effet ou un dun rsultat de lopration. Ainsi, nous avons propos YASA4WSDL qui ajoute dans le systme dannotation des descriptions de service Web SAWSDL, un nouvel attribut nomm serviceConcept. Cet attribut permet lannotation de plusieurs aspects dun lment WSDL en utilisant des concepts techniques dune ontologie de service qui correspondent des concepts dune ontologie dun domaine mtier rfrencs dans lattribut modelReference de SAWSDL. Prenons lexemple de Fig. 1. Nous utilisons deux types dontologie. La premire ontologie est dite ontologie technique . Elle dcrit la smantique de plusieurs concepts des services Web (ex. precondition et effect). La deuxime ontologie est dite ontologie de domaine . Dans lexemple de Fig.1, cest une ontologie de rservation de vols. Lexemple prsente lannotation smantique dune opration nomme reserveFlight. Lattribut modelReference rfrence deux concepts de lontologie de domaine : validFlightInfo et reservationInfo. Lattribut serviceConcept offre la capacit de distinguer les rles jous par les deux concepts validFlightInfo et reservationInfo, rfrencs par lattribut modelReference. Pour cela, serviceConcept spcifie que ces deux concepts correspondent respectivement aux concepts de services : precondition et effect. Lordre est important, puisque on associe le premier concept technique (precondition) au premier concept de domaine (validFlightInfo), le second concept technique au second concept de domaine, et ainsi de suite.
En plus du renforcement de lexpressivit de la description smantique, un autre avantage est souligner dans cette approche : dans YASA4WSDL, nous concevons une ontologie technique de services avec la possibilit de ltendre tout moment : par de nouveaux concepts, en intgrant de nouveaux lment de description ou des concepts plus prcis, etc. Lavantage offert par lapproche est que ces extensions et ces enrichissements nauront aucun impact sur le systme dannotation. Lontologie ne sera pas limite. Ainsi, cela le systme continuera tre indpendant, dune part, du langage et lontologie assurant la reprsentation du domaine, et dautre part, du langage et lontologie assurant la reprsentation de la smantique des services Web. Cet aspect de YASA4WSDL offrira une flexibilit la communaut des dveloppeurs afin de choisir leurs ontologies techniques et leurs langages de reprsentation smantique favoris, ceci leurs permettra de rutiliser leurs ontologies techniques et dannoter les descriptions avec plusieurs ontologies. 3.2. Besoin dune ontologie technique de services
Les principaux objectifs des approches de description smantique de service sont lautomatisation et lamlioration de la dcouverte, la composition et linvocation services. Nous observons que ces objectifs sont atteints par OWL-S et WSMO puisque ces approches dcrivent dune faon ou dune autre les profils de services pour la dcouverte, le comportement des services pour la composition et le grounding pour linvocation. Nanmoins, OWL-S et WSMO, sont des approches qui dpendent de langages de description dontologies spcifique, OWL et WSML, se limitent un ensemble de concepts bien dfinie. SAWSDL sintresse la dcouverte et linvocation automatique des services mais il ne soccupe pas de la composition. Il permet dutiliser tous types dontologies (OWL, WSML, UML, etc.) et tant proche de WSDL, SAWSDL ne ncessite pas beaucoup defforts pour les dveloppeurs habitus WSDL. Par contre SAWSDL ne permet ni la composition ni la dcouverte de service base sur proprits non fonctionnelles. Ce dfaut est principalement du de la limite dexpressivit du mtamodle de WSDL. Ce constat est lorigine de la proposition de YASA4WSDL qui permet dannoter une description WSDL non seulement par des concepts mtier mais aussi par des concepts de services dfinis dans une ontologie de technique de service.
YASA4WSDL tant une extension de WSDL permet dutiliser tous types dontologies et facile utiliser par les dveloppeurs habitus WSDL. Par contre, YASA4WSDL permettra lautomatisation et lamlioration de la dcouverte, la composition et linvocation services, si lontologie de technique de services utiliss par lannotation contient des concepts permettant ces oprations tels que le profil, le comportement et le grounding de service. Ainsi lobjectif de ce papier est de dfinir une ontologie technique de services pour YASA4WSDL qui intgrera des concepts utiles du mta-modle de WSDL, de lontologie suprieur OWSL-S et de WSMO.
4.
Techniques de mapping
Les correspondances ou mappings sont les relations entre les lments de deux reprsentations (ontologies, schmas de bases de donnes, etc.), indiquant une similarit relative selon une mesure donne [10]. Le matching ou appariement est le processus de dfinition d'un ensemble de fonctions permettant de spcifier des correspondances entre les termes[8]. Ceci peut tre ralis par un ou plusieurs mthodes de comparaison dites matcher ; ce sont des fonctions utilises pour calculer la distance entre deux entits. Les matchers sont les techniques combines dans le processus de matching. Les diffrentes mthodes dappariement de concepts (matchers) sont organises selon la classification de la Fig.2 qui montre ces matchers suivant le type dentits comparer et la mthode utilise pour calculer la similarit. Par exemple, le matcher syntaxique compare deux concepts suivant leurs galit de leur noms (ex. les labels des concepts).
Pour intgrer les ontologies de service, nous nous basons sur le systme dappariement OMIE[18] qui propose une approche faisant face certaines limitations des systmes voqus prcdemment. OMIE ne ncessite pas lintroduction pralable dun ensemble dappariements pour diffrents concepts des deux ontologies apparier, contrairement certains systmes (ex. Anchorprompt[9]). OMIE rduit limplication directe de lutilisateur dans le processus de validation,
alors que dans les systmes existants, lutilisateur intervient directement pour valider ou refuser les mapping proposs. Afin de produire un mapping entre deux ontologies, OMIE excute un processus qui contient plusieurs tapes, chaque tape comprend une ou plusieurs mcanismes de comparaison : - Etape 1. (Calcul des similarits) : les appariements base des comparaisons syntactiques et linguistiques sont appliqus sur des couples de concepts, afin de mesurer leur similarit terminologique. Etape 2. (Combinaison et gnration des mappings candidats) : les valeurs de similarit retournes dans l'tape prcdente sont alors combines afin de produire une seule valeur de similarit. Etape 3. (Filtrage des hypothses de mapping) : une fois lensemble des hypothses de mapping est gnr, des mthodes de filtrage sont employes afin d'liminer les hypothses de mapping les moins pertinentes. Ces mthodes sont bases sur les relations structurales et smantiques entre les concepts et sur les mapping dj valids. Un seuil est galement utilis pour carter des hypothses de mapping contient une valeur de similarit trs basse. Etape 4. (Le processus de validation) : lensemble des hypothses de mapping fournies aprs la phase de filtrage sera ordonn suivant les valeurs de similarit. Ensuite lutilisateur choisi la plus pertinente sa requte, ce retour de lutilisateur (appel feedback) sera sauvegard pour le rutiliser.
Input WSDL InterfaceWSDL Precondition Postcondition InterfaceFault WebService Capability OutputWSDL ...
On affecte au matcher un degr de confiance Conf 1 = 1 et on dfinit des rgles pour calculer la valeur de similarit SV retourne pour un couple de concepts comparables (0 pour ! et #). Table 3 rsulte de lapplication des rgles (2), (3) et (4) : SV=1 ssi Distance=0 SV=1/1+Distance-Min(nom(C1),nom(C2)) si Distance> Min(nom(C1),nom(C2)) Sinon SV=0.7
Table 3. Extrait des rsultats aprs application de matching terminologique.
InputOWLS 1 0.25 0 0 0 0 0 0.7 ... ServiceWSDL 0 0 0 0 0 0.7 0 0 ... InterfaceWSMO 0 1 0 0 0.7 0 0 0 ... Capacity 0 0 0 0 0 0 0.7 0 ... OutputOWLS 0.7 0 0 0 0 0 0 1 ... Result 0.5 0 0 0 0 0 0.1 0.5 ... Precondition 0 0 1 0.7 0 0 0 0 ...
Input WSDL InterfaceWSDL Precondition Postcondition InterfaceFault WebService Capability OutputWSDL ...
Matching linguistique base des informations auxiliaires. Nous adoptons ici la dfinition du matcher base du dictionnaire WordNet : nous nous basons sur les liens smantiques entre les termes en langage naturel pour calculer la valeur de similarit SV : les synonymes sont des entits quivalentes (SV=1), les hyponymes sont des entits recouvrantes (SV=0.5) sinon pas de lien (SV=0). On affecte au matcher un degr de confiance Conf 1=2. Table 4 prsente les valeurs de similarits. Combinaison des matchers et gnration des hypothses de mapping. Nous utilisons la combinaison parallle des matchers, le rsultat des diffrents matchers individuels (lists ci-dessus) sera combin (voir Table 5) pour identifier un seul mapping candidat (appel aussi hypothse de mapping) entre chaque couple de concepts. Chacune de ces hypothses de mapping (Hpi) contient cinq-tuples : Hp <R, c, c, ConfHp, SVHp> avec : R : Relation identifie par les matchers entre le couple de concepts : c et c, Le degr de confiance de lhypothse de mapping Hp est : ConfHp = Confi i Valeur de similarit produite par combinaison des matchers
SVHp =
Conf i SV i
i
Conf i
i
Le mapping est bas sur ce tableau puisque les hypothses de mapping en rsultent :
Hp<,Input,Input,3,1> Hp<,Input,Result,3,0.1> Hp<,Input,Output,3,0.2> Hp<,Interface,Input,3,0.25> Hp<,Interface,Interface,3,1> Hp<,Precondition,Input,3,0.08> Hp<,Precondition,Precondition,3,1> Hp<,Postconditon,Preconditon,3,0.2> Hp<,InterfaceFault,Interface,3,0.2> Hp<,WebService,Service,3,0.56> Hp<,Capability,Capacity,3,0.9> Hp<, Capability,Result,3,0.03> Hp<, Output,Result,3,0.1> Hp<, Output,Output,3,1> . . .
Matching smantique. Nous utilisons aussi les trois matchers smantiques : (i) le matcher smantique Top-Down (voir Fig.3), (ii) le matcher smantique Bottom-up et (iii) le matcher smantique de voisinage. Nous dfinissons les variables utilises dans les algorithmes par : R est la relation smantique dfinie dans les deux ontologies O et O ; |V-Child(c)|R= Ndr-OfSem-Child(c,R) est le nombre des concepts fils relis au concept c par la relation non-symtrique R, (c.--d., la partie Rang de la relation R) ; |V-Father(c)|R= Ndr-OfSem-Father(c,R) est le nombre des concepts pres relis au concept c par la relation non-symtrique R, (c.--d., la partie Domain de la relation R) ; |V(c)|R= Ndr-OfSem-Concept(c,R) est le nombre des concepts relis au concept c par la relation symtrique R ; ConfSem-R reprsente le degr de confiance de la relation smantique R.
Exemple. On a Hp <,Capability,Result,3,0.03>, Map<,Effect,Effect,3,1>, et Conf sem-R=1 et R:hasEffect. On applique la rgle du matcher smantique : On a : C5:Effect, D4:Effect, Conf1=1, SV1=1, C3:Capability, D2:Result, Conf2=2, SV2=0.03 Donc : SV2 = SV2 + (SV1 / min(1,1))= 0.03 + 1/1 = 1.03 Conf2 = Conf1+ Conf sem-R = 3 + 1 = 4 do, Hp<,Capability,Result,4,1.03> Matching structurel. Chacune des rgles, du matching structurel, donnera une ide sur la similarit entre deux entits, mais typiquement aucune delle ne produit le mapping toute seule. Chaque rgle applique nous fournit un poids de similarit entre deux entits compares (concept ou relation). Un seuil est dfini sur les valeurs de la similarit pour identifier la correspondance ou la non-correspondance. Afin dapporter plus de prcision au niveau des valeurs de similarit, nous utilisons aussi les deux matchers structuraux : Top-Down et Bottom-up qui ont les
mmes principes des rgles du matching smantique, sauf quon sintresse la relation hirarchique entre les concepts. La proprit transitive de la relation hirarchique mne dfinir des fils (respectivement des pres) directs et dautres indirects. Faute despace, nous ne pouvons prsenter en dtails ces rgles. 5.2. Filtrage Il existe trois types de filtres : structuraux, smantiques et base de seuil : Avec les filtres structuraux, nous pouvons utiliser les mappings gnrs prcdemment (pour raliser un croissement avec un mapping), ou faire un croissement inter-hypothses ou finalement liminer les divergences avec le mapping existants. Avec les filtres smantiques, nous exploitons galement les relations smantiques des ontologies basant sur leurs proprits. Par consquent, nous utilisons deux filtres smantiques selon le type de la relation : symtrique ou non-symtrique. Nous ne prsentons pas ces rgles en dtails par souci despace. Avec les filtres base de seuil, nous dfinissons un seuil (Th) sur les valeurs de similarits au-dessous desquels les hypothses ne sont pas considres (voir (5)), la valeur de Th pourrait tre modifie par ladministrateur du systme travers un interface graphique. Pour chaque Hp <,c,d,Conf,SV> SI (SV<Th) ALORS (liminer Hp) (5)
Finalement nous appliquons lensemble des filtres ncessaires sur les hypothses ; Par exemple, dans un filtre base de seuil, nous trions en ordre dcroissant les hypothses selon la valeur de leurs SV et nous liminons les hypothses de mapping les moins pertinentes. A ce stade, il ne reste qu valider le mapping et exporter lontologie rsultat. Nous navons pu insrer larbre de lontologie technique de services vu la taille de la figure. Le filtrage et la validation des hypothses de mapping permettent de gnrer des mappings : Map<,Input,Input> Map<,Interface,Interface> Map<,Precondition,Precondition> Map<,WebService,Service> Map<,Capability,Capacity> Map<,Output,Result> Map<,Output,Output> Voici la liste des principaux concepts de lontologie technique aprs validation des mappings :
Effect ServiceModel Precondition
Process AtomicProcess SimpleProcess CompositeProcess Parameter Profile Local Participant Input Output Result Service Choreography
Orchestration Capability Goal Interface Effect Assumption Postcondition Description InterfaceFault InterfaceOperation Operation BindingOperation Endpoint
BindingFault Binding Documentation Comment Category Community Version Status Business Actor Provider Constraint Port
6. Conclusion et perspectives
Dans ce papier, nous avons prsent une brve revue des ontologies de services et les techniques et systmes de mapping, utiles pour lintgration dontologies. Nous avons construit une ontologie technique de service comment intgration des ontologies OWL-S, WSMO et le mta-modle WSDL et dautres concepts, travers lidentification des correspondances entre les concepts de ces diffrentes ontologies. Dans YASA4WSDL, lannotation de la description du service, peut tre faite manuellement ou travers une interface graphique afin dassister lutilisateur en important les ontologies et en exposant les concepts des ontologies, tout en exigeant des contraintes dannotation (vu que tout lment descriptif ne peut tre annot par nimporte quel concept, do un ensemble de contraintes dannotation qui reste dfinir et implmenter avec linterface dannotation). Le travail que nous sommes entrain de mener consiste formaliser ces contraintes et de mettre en uvre un outil daide lannotation des descriptions YASA4WSDL.
Rfrences
1. Chabeb, Y., Tata, S. : Yet Another Semantic Annotation for WSDL (YASA4WSDL). In : Proceedings of the IADIS WWW/Internet 2008 Conference. (2008) 437441 2. Martin, D., Paolucci, M., Mcilraith, S., Burstein, M., Mcdermott, D., Mcguinness, D., Parsia, B., Payne, T., Sabou, M., Solanki, M., Srinivasan, N., Sycara, K. : Bringing Semantics to Web Services : The OWL-S Approach, Springer (2004) 2642 3. Claro, D.B., Albers, P., Hao, J.K. : Approaches of Web Services Composition - Comparison between BPEL4WS and OWL-S. In : ICEIS (4). (2005) 208213 4. Lara, R., Roman, D., Polleres, A., Fensel, D. : A Conceptual Comparison of WSMO and OWL-S. In : ECOWS 2004. Volume 3250 of LNCS., Springer (2004) 254269 5. Smith, M.K., Welty, C., McGuinness, D.L. : OWL Web Ontology Language Guide. http ://www.w3.org/TR/2004/RECowlguide20040210/ (2004) 6. Fensel, D., Bussler, C. : The Web Service Modeling Framework WSMF. Electronic Commerce Research and Applications 1 (2002) 113137 7. de Bruijn, J., al. : The Web Service Modeling Language WSML. WSML Final Draft. http ://www.wsmo.org/TR/d16/d16.1/v0.21/ (2005)
8. He, B., Chang, K.C.C. : Statistical Schema Matching across Web Query Interfaces. In : SIGMOD Conference. (2003) 217228 9. Noy, N., Musen, M. : Anchor-PROMPT : Using non-local context for semantic matching. In : In Proc. IJCAI 2001 workshop on ontology and information sharing. (2001) 6370 10. Klein, M.C.A. : XML, RDF, and Relatives. IEEE Intelligent Systems 16 (2001) 2628 11. Farrell, J., Lausen, H. : Semantic annotations for WSDL and XML schema. http ://www.w3.org/TR/2007/REC-sawsdl-20070828/ (2007) 12. W3C : Web Services Description Language (WSDL). http ://www.w3.org/TR/wsdl/ (2001) 13. Li, H., Wang, H. : A Method of Service Description and Discovery in Pervasive Computing Environments. Pervasive Computing and Applications, 2006 1st International Symposium on (2006) 604607 14. Klyne, G., al. : Composite Capability/Preference Profiles (CC/PP) : Structure and Vocabularies 1.0. http ://www.w3.org/TR/CCPP-struct-vocab/ (2004) 15. Klein, M., Konig-Ries, B., Mussig, M. : What is needed for semantic service descriptions ? A proposal for suitable language constructs. Int. J. Web Grid Serv. 1 (2005) 328364 16. Kuster, U., Konig-Ries, B. : Semantic Mediation between Business Partners - A SWSChallenge Solution Using DIANE Service Descriptions. In : WI-IATW 07 : Proceedings of the 2007 IEEE/WIC/ACM International Conferences on Web Intelligence and Intelligent Agent Technology -Workshops,Washington, DC, USA, IEEE Computer Society (2007) 139143 17. Klan, F. : Context-aware service discovery, selection and usage. In : 18th GIWorkshop on the Foundations of Databases, Wittenberg, Saxony-Anhalt. (2006) 18. Elbyed, A. : Ontologie mapping pour lintgration des donnes htrognes. PhD thesis, TELECOM et Management SudParis, Evry, France (2008)