• Aucun résultat trouvé

En g´en´erale, le processus de d´ecouverte se base principalement sur les capacit´es des services. La capacit´e d’un service est une repr´esentation g´en´erique des fonctionnalit´es fournies par celui-ci. Dans la plupart des travaux propos´es, les capacit´es des services sont d´efinies par une description s´emantique. Le processus de d´ecouverte n´ecessite aussi un processus de matching qui permet de comparer les capacit´es des services avec celles de la requˆete utilisateur.

Description s´emantique des services web

Le standard WSDL pr´esente des lacunes de pr´ecision dans la description d’un service. Ces lacunes sont li´ees au niveau d’expressivit´e faible de la description syntaxique car elle est limit´ee `a l’´enum´eration des op´erations et `a la description des types des param`etres d’entr´ee/sortie. Elle ne caract´erise pas la s´emantique de la fonctionnalit´e accomplie par le service. Pour pallier le manque de s´emantique de WSDL, plusieurs approches proposent de rajouter une couche au-dessus de WSDL compl´etant la description syntaxique par des pr´ecisions s´emantiques. La s´emantique d’un service permet d’automatiser les tˆaches li´ees

`

a sa r´eutilisation, `a savoir : la d´ecouverte, la composition, l’invocation, etc.

OWL-S (OWL based on ontology language for services) [7] est une ontologie parti-culi`ere `a base de OWL2. Elle est con¸cue pour d´ecrire s´emantiquement les capacit´es des services. L’ontologie OWL-S d´ecrit un service `a l’aide de trois classes : Service Profile, Service Model, et Service Grounding. Le Service Profile fournit une description de haut niveau d’un service et de son fournisseur. il implique trois types d’information : (i) une description du fournisseur de service, (ii) le comportement fonctionnel du service, et (iii) les propri´et´es non-fonctionnelles du services (e.g., QoS). Le comportement fonctionnel du service est d´efini par les propri´et´es IOPE i.e., Input, Output, Precondition, Effect. Le Service Model d´efinit plusieurs types de processus (i.e., processus atomiques, processus simples, et processus composite) d´ecrivant l’ordonnancement des op´erations et le com-portement d’un service dans une interaction. Le Service Grounding d´ecrit les modalit´es de communication avec un service en pr´ecisant le protocole, le format des messages, la s´erialisation et l’adressage. Il est le r´esultat d’une correspondance entre le Service Model d´ecrivant le service et la description WSDL originale.

WSMO (Web Service Modeling Ontology) [100] fournie un mod`ele conceptuel pour la description s´emantique des services dans le but d’automatiser leur d´ecouverte, leur com-position, etc. WSMO est constitu´e de quatre ´el´ements : (1) l’ontologie qui formalisme un domaine de connaissances ; (2) Les buts qui d´ecrivent les objectifs des utilisateurs ; (3) Les services ainsi que leurs descriptions s´emantiques ; (4) et des m´ediateurs qui assurent l’interop´erabilit´e et r´esolvent les probl`emes d’h´et´erog´en´eit´es entre les services. La descrip-tion des ´el´ements de WSMO est repr´esent´ee en utilisant WSML (Web Service Modeling Language) [39].

SAWSDL(Semantic Annotation for WSDL) [65] pr´esente un m´ecanisme permettant

d’annoter s´emantiquement les services d´ecrits avec WSDL . SAWSDL ne sp´ecifi´e pas un langage pour repr´esenter les mod`eles s´emantiques, mais plutˆot il fournit un m´ecanisme `

a travers lequel des concepts appartenant `a des mod`eles s´emantiques existants (i.e., une ontologie de domaine) peuvent ˆetre r´ef´er´es `a partir d’un document WSDL. SAWSDL pro-pose des extensions `a WSDL similaires `a celles propos´ees par WSDL-S [3]. Sa particularit´e r´eside dans l’annotation suppl´ementaire des sch´emas XML.

2. http ://www.w3.org/TR/2003/WD-owl-features-20030331/

Plusieurs approches ont ´et´e propos´ees pour adresser le probl`eme de la s´emantisation

des services REST. L’approche SA-REST [109] permet de s´emantiser un service REST

en ajoutant des annotations s´emantique (RDFa) sur des ressources web qui d´ecrivent la documentation de celui-ci (e.g., HTML, XHTML, etc). SAWADL [76,77] est une approche d’annotation pour les services REST. Elle propose des extensions pour la description WADL [49]. SOOWL-S (Social-oriented OWL-S) [80] est une extension de l’ontologie de services OWL-S. Elle est con¸cue dans le but de s´emantiser les diff´erents types d’APIs (e.g. SOAP, REST, JS, RSS,..) utilis´ees dans la construction des applications Mashup.

Une autre fa¸con pour s´emantiser les services web est d’utiliser les vues s´emantiques. Cette cat´egorie d’approches est destin´ee beaucoup plus aux services orient´es donn´ees (i.e., services DaaS). Dans [9], la s´emantique d’un service web est d´ecrite de fa¸con d´eclarative en utilisant des vues RDF (vues param´etr´ees). Une vue RDF est une requˆete SPARQL d´efinie `a partir d’une ontologie de domaine. L’avantage de cette approche est qu’elle per-met de d´efinir non seulement la s´emantique des entr´ees/sorites, mais aussi les relations s´emantiques qui existent entre eux. Les vues RDF sont associ´ees aux services en utilisant une des approches d’annotation, e.g., SAWSDL, WSDL-S, etc.

Les auteurs dans [120, 125] ´etendent le mod`ele de s´emantisation IOPE (i.e., Service Profile de OWL-S) tout en utilisant les vues s´emantiques. Dans cette approche, chaque param`etre d’entr´ee/sortie d’un service est annot´e par une vue RDF, plutˆot que par un simple concept ontologique qui d´ecrit de fa¸con globale la s´emantique de celui-ci. Dans cette situation, les vues RDF jouent le rˆole d’un mapping (i.e., une correspondance d´etaill´ee) entre l’ontologie de domaine et les entr´ees/sorties des services, ce qui permet d’assurer une s´election plus pertinente.

Matching des services web

Le matching des services permet d’identifier les services qui sont pertinents `a la requˆete utilisateur. L’ensemble des services pertinents est obtenu en calculant des valeurs de simila-rit´e indiquant le degr´e de rapprochement entre les services et la requˆete. Le calcul de simi-larit´e se base soit sur les aspects syntaxiques des services soit sur les aspects s´emantiques. iMatcher1 [60] offre un syst`eme de matching syntaxique bas´e sur les profils de ser-vices (i.e., Service Profile de l’ontologie OWL-S). L’ensemble de profils de service est

stock´e sous forme de graphes RDF s´erialis´e dans une base de donn´ees RDF avec une extension de RDQL, appel´ee iRDQL [13]. Le degr´e de similarit´e est calcul´e `a partir de quatre m´etriques de similarit´e syntaxique : TFIDF (Term Frequency-Inverse Document Frequency), la distance de similarit´e de Levenshtein , la mesure du vecteur Cosinus et la mesure de divergence de Jensen-Shannon. Les r´esultats sont class´es en fonction des scores num´eriques de ces mesures de similarit´es syntaxiques et d’un seuil d´efini par l’utilisateur. Klusch et al. [61] proposent une approche de matching pour les services s´emantique de type OWL-S. Dans cette approche, la requˆete utilisateur est d´efinie `a travers OWL-S de la mˆeme fa¸con que les services. La comparaison entre la requˆete et les services se base uniquement sur la partie Service Profile de l’ontologie OWL-S (i.e., les propri´et´es IOPE). Les degr´es de similarit´e sont calcul´es en se basant sur une approche hybride (OWL-MX) impliquant des techniques de similarit´e syntaxique (une approche `a base d’IR) et s´emantique (une approche `a base de r`egles logiques). Dans un autre travail, Klusch et al. [63] adoptent l’approche OWL-MX pour l’ontologie de services WSMO.

SAWSDL-MX [62] est un matchmaker inspir´e par les matchmakers OWLS-MX [61]

et WSMO-MX [63]. Il est destin´e pour les services qui sont s´emantis´es par le mod`ele SAWSDL. Il utilise `a la fois une approche de matching logique bas´ee sur le raisonnement par subsomption, et une approche de matching syntaxique bas´ee sur les techniques de recherche d’information. Le processus de matching recouvre les ´el´ements de description suivants : interface, operation, input et output. Par exemple, pour r´ealiser le matching des interfaces, le matchmaker effectue des matching sur des graphes bipartis dont les noeuds repr´esentant des op´erations du service. Les degr´es de similarit´e dans une d´ecouverte de services avec SAWSDL-MX [62] peuvent ˆetre distingu´es en deux cat´egories : (1) Les degr´es de similarit´e calcul´es par l’approche logique : Exact, Plug-in, Subsumes et Subsumed-by, et (2) Les degr´es de similarit´e calcul´es par l’approche hybride :Subsumed-by (s’il a besoin de calcul de similarit´e syntaxique additionnelle) et Nearest-neighbour (pour compenser les appariements faux n´egatifs).

Les auteurs dans [103] proposent une approche de d´ecouverte qui se base sur les tech-niques de traitement du langage naturel (NLP). Dans cette approche, les services sont s´emantiquement d´ecrits par le mod`ele WSMO. Les requˆetes utilisateurs sont sp´ecifi´ees en langage naturel sous forme de mots cl´es. Le matching entre les mots cl´es de la requˆete 114 3. D ´ECOUVERTE ET COMPOSITION DE SERVICES WEB

et les concepts ontologiques des services est r´ealis´e en se basant sur plusieurs techniques, e.g., part-of-speech tagging, lemmatization, et word sense disambiguation.