83 pages
Français

Web Services et Web sémantique, en route vers - These ...

-

Obtenez un accès à la bibliothèque pour le consulter en ligne
En savoir plus

Description

Web Services et Web sémantique, en route vers - These ...

Sujets

Informations

Publié par
Nombre de lectures 646
Langue Français
Poids de l'ouvrage 4 Mo
 
                            
  
   Web Services et Web sémantique, en route vers  l'interopérabilité intelligente ?  
 Didier MICLO - Année 2008/2009  Master Informatique  Ecole d'ingénierie informatique CS2I Nevers  
    
PREAMBULE
  L'amélioration des moyens de communication a depuis toujours été l'une des préoccupations majeures de l'humanité et ce n'est évidemment pas avec la complexité grandissante de nos systèmes d'information, toujours demandeurs de plus de ressources, que la tendance s'inversera. A l'heure actuelle, nous pourrions même dire qu'il est devenu vital de réussir à faire communiquer l'ensemble des systèmes car les machines isolées ne disposent plus de la quantité d'informations suffisantes pour répondre à la majorité des demandes.  Malheureusement, avec des systèmes qui se complexifient, il devient également de plus en plus difficile de permettre la communication entre machines. C'est principalement pour répondre à cette problématique que sont nées les premières technologies d'applications réparties qui ont ainsi permis à des composants dispersés sur des machines hétérogènes de communiquer entre eux, bien que les environnements soient considérés comme étant incompatibles.  L'interopérabilité apportée par ces technologies n'a par la suite jamais cessé de s'améliorer mais aujourd'hui elle doit encore franchir un nouveau palier car les technologies Web imposent à présent que les composants soient capables de communiquer, non plus dans un environnement privé et restreint comme par le passé, mais à travers le réseau Internet tout entier. C'est ainsi que les nouvelles recherches dans ce domaine ont permis de donner naissance aux Web Services pour répondre à cette problématique Web.  Des progrès restent tout de même encore à réaliser pour obtenir une interopérabilité totale car, bien que les Web Services soient maintenant capables d'échanger des données de façon quasi autonome à travers Internet, ils sont pour l'instant encore incapables d'en comprendre le sens et ne peuvent par conséquent effectuer aucun raisonnement intelligent à partir de celles-ci. C'est pour cette raison que nous commençons à rencontrer les premiers termes informatiques intégrant des notions de sémantique destinées à rendre les données compréhensibles pour les machines. Mais au vu de cette immensité qu'est le Web, on peut légitimement se demander s'il sera possible de le sémantiser et surtout si ce chantier titanesque va réellement permettre d'apporter cette interopérabilité sémantique qui rendra nos systèmes intelligents.      
 
2
   
SOMMAIRE
  PREAMBULE................................................................ ...............................................................2 ........ 
SOMMAIRE..........................................................................................................................................3 
ETAT DE L'ART.. ........................................ .5........................................................................................ I - L'interopérabilité........................................................................................................................6 II - Du réseau aux applications réparties........................................................................................6 III - Les applications réparties ........................................................................................................7  3.1 - Middleware.... ................................................................................8 ..................................... 3.3 - CORBA................................ ............................................................................ ...9................ 3.3 - RPC........................................1 ......0................ ..................................................................... 3.4 - RMI. .......................................................................................................................... 11........ 3.5 - DCOM..............................................................................................................................11 IV - L'explosion des technologies Web .......................................................................................... 12 V - Conclusion1 ..4................................................................................................ ............................. 
PREREQUIS TECHNIQUES........................................................................................ ....51 ................. I - Le principe Client / Serveur................................................16. ............................................. ........ II - Le modèle TCP/IP...................................................................................................................17 2.1 - Les couches de TCP/IP.....................................................................................................17 2.2 - Le protocole IP.........................8.1. .............................................................................. ........ 2.3 - Le protocole TCP.............................................................................................................19 III - Le protocole HTTP............. ................................................................2 0.................................... 3.1 - Les transactions HTTP................................. ....................................................................2 0 3.2 - Les méthodes HTTP................................22.  ......................................................................... IV - Le langage HTML..................................................................................................................23 V - Le langage XML......................................................................................................................24 5.1 - La séparation du fond de la forme...................................................................................25 5.2 - La structure des documents XML................................................ .............................6 2........ 5.3 - Le codage d'un document XML....................................................................................26 5.4 - Les espaces de noms.... ....................................72 ................................................................. VI - URI / URL / URN................................................................ ........................................82 ............ 
3
  LES WEB SERVICES. 30.................................................... .................................................................... I - La base de conception: SOA................................ ....................................................................13 . II - Principe de fonctionnement............................................................ ...3.... 3.................................. III - Les technologies en tail..................... 4.3. ............................................................................... 3.1 - XML-RPC................................. 34........................................................................................  3.2 - SOAP................................................................................................................................36 3.3 - WSDL................................................................................................................................40 3.4 - UDDI24 ....................................................................................................................... ......... 3.5 - REST................................................................................................ 45. ................................ IV - Les WS - * .94................................................................................................ .............................. 4.1 - La WS - I........ .................................................................................... ...............................49 4.2 - La carte des WS - * aujourd'hui .....................................................................1.. 5................ 
LE WEB SEMANTIQUE....................................................................................................................52 I - La sémantique..... ..........................................................5 ............................................................3 1.1 - Le niveau métalinguistique....................................................................3 5......................... .. 1.2 - Les relations sémantiques.................................................................................................53 II - La sémantique appliquée au Web................................... ....................................................5.6... . 2.1  La base de tout : RDF......................................................................................................59 -2.2 - La construction de vocabulaire pour RDF........61... ................................................ ............ 2.2.1 - Construction de vocabulaires simples : RDFS16 ..................................................... .... 2.2.2 - Construction d'ontologie : OWL............................................6 3.. ................................. 2.3 - La récupération de l'information : SPARQL................................... 68................ ................. 2.4 - Passerelles entre Web syntaxique et Web sémantique.....................................................71 2.4.1 - RDFa................................................................17 ....................... .................................. 2.4.2 - GRDDL...................................... ......................................................................... 7......4 III- Les standards scifiques aux Web Services..........................................................................76 3.1 - OWL-S..............................................................................................................................76 3.2 - WSMO...............................................................................................................................77 3.3 - SAWSDL................................8 7........................... ................................................................ 
CONCLUSION........ ...........................................................................................................7 9................ 
IOGRAPHI..............................................................................................................................80 BIBLE    
 
4
 
                     
 
  
 
E
TAT DE
5
 
L'A
R
T
 
  I - L'intero érabilité  Longtemps étudiée, l'interopérabilité est devenue très importante et même critique dans de nombreux domaines tels que l'informatique, la médecine, l'aérospatiale, l'armée, l'industrie, etc. Pour la définir nous pourrions dire que l’interopérabilité est la capacité que possède un système à fonctionner avec un ou plusieurs autres systèmes de mêmes natures ou hétérogènes. Il convient néanmoins de faire la distinction entreintero érabilitéetcom atibilité.  On dit que deux systèmes sont compatibles si leurs constructions respectives leur permettent de communiquer et de travailler ensemble. On parlera d'interopérabilité à partir du moment où ces deux systèmes deviendront compatibles grâce à l'utilisation de normes externes. Nous pourrions simplifier cette définition en disant qu'il y a compatibilité entre systèmes s'ils peuvent fonctionner ensembles et interopérabilité si l'on sait pourquoi et comment ils peuvent le faire. Autrement dit, nous ne pourrons parler d'interopérabilité qu'à partir du moment où toutes les interfaces des systèmes seront intégralement connues.  L'interopérabilité est devenue l'un des enjeux majeurs de l'informatique actuel et futur, notamment en matière de technologies Web depuis qu'il est possible, grâce aux Web Services, de faire communiquer des composants d'applications réparties à travers Internet tout entier.  II - Du ré artiesréseau aux a lications  ¾  as réseau n'était ue in ormatiLe remier  Tout a débuté en1791 avec l'invention, par les frères Chappes, du premier télégraphe optique qui a permis l'envoi du premier message longue distance à haute vitesse. Le principe de ce télégraphe, composé de deux bras mobiles représentant un code différent pour chacune de leurs positions, était d'être capable de décrypter un message émis par un autre de ces télégraphes et de le reproduire à son tour. C'est ainsi que fut construit, en disposant plusieurs de ces télégraphes sur des tours espacées chacune d'une dizaine de kilomètres, le premier véritable réseau longue distance capable d'envoyer un message à près de 500 km/h. Vers 1850, ce réseau mesurait plus de 5000 km de long et reliait 29 villes de France. Malheureusement, ces télégraphes ne pouvant pas fonctionner la nuit ou par mauvais temps, ils furent abandonnés au profit des télégraphes électriques à partir de 1850.  
 
  ¾  ue ormatiLa naissance de l'in Le premier ordinateur, non officiellement reconnu en tant que tel, a été inventé parCharles Babbage, un mathématicien anglais, en 1823. Cet ordinateur, baptisé "Analytical Engine", était en réalité une machine à tisser pilotée à l'aide de cartes perforées. Cette machine devait théoriquement être capable d'effectuer toutes sortes de calculs en fonction des cartes utilisées et d'en reproduire le résultat algébrique sur le tissu. Bien que cette machine ne fut jamais achevée, chose compréhensible au vu de 6
 l'époque, elle comprenait déjà la plupart des principes qui seront utilisés plus tard pour la conception des ordinateurs, comme par exemple un programme, des données d'entrées / sorties, une mémoire interne ou encore une unité de calcul.  En 1904, une invention primordiale pour l'informatique a vu le jour :le tube à vide. Ce tube, qui était alors destiné à être utilisé comme amplificateur et qui ressemblait extérieurement à une grosse ampoule, devint du fait de sa propriété de commutation, le moyen de symboliser le codage binaire du premier ordinateur officiellement reconnu.Ce premier ordinateur, baptiséENIAC (Electronic Numerical Integrator Analyser and Computer)a été achevé en 1946 et était alors composé d'environ 18000 tubes à vide, pesait 30 tonnes, occupait une surface avoisinant les 72 m2et demandait une semaine de programmation pour réussir à effectuer 1000 instructions. Ces tubes à vide, beaucoup trop volumineux et très peu fiables (environ 5 minutes de durée de vie pour certains) ont été ensuite abandonnés au profit du transistor, inventé en 1947. Grâce aux transistors, plus petits, plus fiables et sans dégagement de chaleur, les ordinateurs allaient pouvoir eux aussi réduire leurs tailles et surtout devenir plus économiques.  Le 20 avril 1951 fut ensuite l'une des dates les plus importantes de l'histoire de l'informatique. Ce jour là, on réalisa un test grandeur nature dont le but était de détecter un avion cible à l'aide d'un radar dans le ciel du Massachusetts et de lui envoyer un autre avion intercepteur guidé informatiquement. Ce test peut paraître banal aujourd'hui mais à l'époque il représenta un pas de géant car pour la première fois dans l'histoire de l'humanité, un dispositif non humain fut chargé de prendre des décisions en temps réel et dans un environnement changeant.  ¾ La in des ordinateurs isolés Quelques années plus tard, ce fut au tour de la mise en réseau des ordinateurs d'être au cœur des préoccupations car les informaticiens se rendaient déjà bien compte du potentiel que pouvait apporter la mise en collaboration de ces machines. Malheureusement, l'interprétation automatique des différents formats de données est restée longtemps très laborieuse et la première solution viable ne fit sont apparition qu'en 1975 avec la naissance de l’EDI (Échange de Données Informatisées).  L'EDI était alors un principe conçu dans le but de permettre à deux parties désirant échanger des données de s'entendre sur la façon dont elles seront modélisées et envoyées (média, protocoles,..). L'EDI permis ainsi le premier échange de données utilisant des formats normalisés. L'EDI est encore utilisé aujourd'hui et concerne 90% des échanges de données.  Dans le même principe, de nouvelles technologies sont alors apparues comme par exemple CORBA (Common Object Request Broker Architecture)ou COM(Component Object Model). CORBA, est une architecture de type logicielle, qui permet à des composants de s'échanger des données standardisées et ceci indépendamment du langage de programmation utilisé. CORBA constitue la base des applications reparties actuelles.  III - Les a arties ré lications Grâce aux applications réparties, les informations ne sont plus obligatoirement stockées sur un seul et même serveur mais peuvent être dispersées aux quatre coins de la planète et ceci sur un nombre infini de serveurs. Il existe un certain nombre de plateformes pour développer ce type d'applications mais malheureusement, chacune d'entre elles utilise ses propres protocoles et deux applications développées sur une plateforme différente n'ont que très peu de chance de pouvoir interagir ensemble. La prise de conscience de ces limites a entraîné un gros effort de standardisation des formats d'échange de données et c'est au cœur de cette vision qu'est né le concept demiddlewareet d'intero érabilité.
7
  3.1 - Middleware Le termemiddleware, traduit en français parintergiciel, est apparu pour la première fois dans les années 1990 et pour le définir brièvement, nous pourrions dire qu'un intergiciel permet aux applications de communiquer entre elles à travers des environnements pouvant être incompatibles. Il joue un rôle comparable à celui d'un système d'exploitation en dissimulant la complexité de l'infrastructure sous-jacente pour en offrir une interface adaptée. Les intergiciels sont donc des logiciels de niveau intermédiaire, installés au-dessus du système d'exploitation et des protocoles de communication, qui réalisent les fonctions suivantes :  ¾ dissimuler la répartition d'une application, ¾ dissimuler l'hétérogénéité des composants matériels, des systèmes d'exploitation et des protocoles de communication, ¾ fournir des interfaces uniformes et normalisées, ¾ fournir un ensemble de services communs facilitant la coopération entre applications.  
  Organisation de l'intergiciel  C'est en 1988 que tout a réellement commencé avec la création de l'OSF (Open Software Foundationle but était d'unifier les diverses versions du système d'exploitation Unix. Bien) dont que cet objectif ne fut jamais atteint, l'OSF réussi tout de même à spécifier une plateforme intergicielle nommée DCE (Distributed Computing Environment) et qui comportait déjà un service d'appel de procédure à distance, un système réparti de gestion de fichiers, un serveur de temps et un service de sécurité.  En 1989, ce fut au tour de l'OMG(Object Management Group)d'être crée avec la mission de faire émerger les standards nécessaires à l’intégration d’applications distribuées orientées objet. A cette époque l'OMG était constitué de 750 acteurs informatiques (IBM, Sun, HP, …). Un an après sa création, l'OMG présenta sa première réalisation baptisée CORBA (Common Object Request Broker Architecture), une architecture d’objets distribués capable de répondre aux besoins de l'époque en matière de développement et d’interopérabilité. Microsoft, comme à son habitude, a quant à lui totalement ignoré l'initiative de l'OMG et a développé, à peu près à la même période, son propre intergiciel baptisé DCOM (Distributed Component Object Model). En 1995, la définition du langage Java par Sun Microsystems a ensuite ouvert la voie à plusieurs autres intergiciels basés sur les technologies RMI (Java Remote Method Invocation) et EJB (Enterprise JavaBeans).  Si CORBA constitue la première initiative majeure dans le domaine des objets distribués, nous venons de voir que d’autres solutions existent. Nous allons maintenant voir CORBA en détail puis nous ferons une présentation rapide des autres solutions car leur principe reste à peu de chose près identique. 8