OWL-S
Les services Web sémantiques ont été
conçus dans le but de trouver, d'invoquer et de gérer les
services web de la manière la plus automatique possible, sans recourt
à l'intervention manuelle. Pour se faire, les services Web
sémantiques sont décrits à partir du langage
OWL-S126(*),
lui-même extension du langage OWL détaillé
précédemment. Pour tendre vers cette automatisation, il a fallu
définir finement l'ontologie du service et ainsi déterminer trois
zones d'informations distinctes :
q le profil (ServiceProfile),
pour répondre à la question : que fait le service ou plus
précisément quelles informations sont gérées par le
service ?
q le modèle de processus
(ServiceModel), pour savoir comment il fonctionne c'est à dire toutes
les informations concernant les entrées et les sorties ainsi que les
« pré » et « post » conditions
du service,
q les liaisons avec le service
(ServiceGrounding), pour connaître le moyen d'y accéder
(protocole, port ...).
Le W3C propose la représentation suivante de
l'expression fine d'un service :
Illustration 67 :
Ontologie des services
(Source :
http://www.w3.org/Submission/OWL-S)
ServiceProfile
La classe ServiceProfile donne les informations permettant
à un agent de publier ou trouver un service souhaité. Il s'agit
là du premier tamis par lequel la recherche d'un service Web passe. A
l'issue du passage au travers de ce premier tamis, il est possible de savoir si
le service convient ou ne convient pas. Le terme de
« matching » est parfois utilisé pour évoquer
cette comparaison qui se fait sur trois axes :
q Le service et son
fournisseur : le nom du service, sa description, le nom de son
fournisseur, son adresse physique, d'adresse web, etc.
q Le comportement fonctionnel du
service : les entrées et les sorties du service, les pré et
post conditions,
q
Les attributs fonctionnels utiles en termes de contrat de
service : le temps de réponse, le coût du service.
Illustration 68 : Ontologie
du ServiceProfile
(Source :
http://www.w3.org/Submission/OWL-S)
ServiceModel
Le ServiceModel permet d'analyser plus finement
l'éligibilité du service ayant passé avec succès la
première maille du tamis (cf. ServiceProfile). Cette classe permet aussi
d'expliquer comment le service fonctionne. Pour cela, il est
représenté comme un processus (sous classe Process) et peut
constituer lui-même un processus composite constitué de
séquences d'enchaînement diverses.
Illustration 69 : Ontologie
du ServiceModel
(Source :
http://www.w3.org/Submission/OWL-S)
Structure
|
Description
|
Sequence
|
Exécute une liste de processus dans un ordre
donné
|
Concurrent
|
Exécute les activités d'un ensemble de processus
|
Split
|
Invoque les activités d'un ensemble de processus
|
Split+Join
|
Invoque les activités d'un ensemble de processus avec
synchronisation
|
Unordered
|
Exécute tous les processus sans souci de l'ordre
d'exécution
|
Choice
|
Choisit parmi plusieurs alternatives et execute l'activité
choisie
|
If-Then-Else
|
Condition classique : si...sinon
|
Repeat-Until
|
Réitère tant que
|
Repeat-While
|
Réitère jusqu'à ce que
|
Tableau 7 : Mots clefs
permettant la construction d'un process composite
* 126 A l'origine
OWL-S s'appelait DAML-S par le DARPA.
|