UDDI avec WSDL

Le modèle de données UDDI définit une structure générique pour stocker des informations sur une entreprise et les services Web qu'elle publie. Le modèle de données UDDI est complètement extensible et comprend plusieurs structures de séquence d'informations répétées.

Cependant, WSDL est utilisé pour décrire l'interface d'un service Web. WSDL est assez simple à utiliser avec UDDI.

  • WSDL est représenté dans UDDI à l'aide d'une combinaison d'informations businessService, bindingTemplate et tModel .

  • Comme pour tout service enregistré dans UDDI, les informations génériques sur le service sont stockées dans la structure de données businessService , et les informations spécifiques sur la manière et le lieu d'accès au service sont stockées dans une ou plusieurs structures bindingTemplate associées . Chaque structure bindingTemplate comprend un élément qui contient l'adresse réseau du service et auquel est associée une ou plusieurs structures tModel qui décrivent et identifient de manière unique le service.

  • Lorsque UDDI est utilisé pour stocker des informations WSDL ou des pointeurs vers des fichiers WSDL, le tModel doit être désigné par convention sous le nom de type wsdlSpec , ce qui signifie que l' élément overviewDoc est clairement identifié comme pointant vers une définition d'interface de service WSDL.

  • Pour UDDI, le contenu WSDL est divisé en deux éléments principaux: le fichier d'interface et le fichier d'implémentation.

Le service Web du système de réservation Hertz fournit un exemple concret de la façon dont UDDI et WSDL fonctionnent ensemble. Voici le <tModel> pour ce service Web -

<tModel authorizedName = "..." operator = "..." tModelKey = "...">
   <name>HertzReserveService</name>
   <description xml:lang = "en">
      WSDL description of the Hertz reservation service interface
   </description>
	
   <overviewDoc>
      <description xml:lang = "en">
         WSDL source document.
      </description>
      <overviewURL>
         http://mach3.ebphost.net/wsdl/hertz_reserve.wsdl
      </overviewURL>
   </overviewDoc>
   
   <categoryBag>
      <keyedReference tModelKey = "uuid:C1ACF26D-9672-4404-9D70-39B756E62AB4"
         keyName = "uddi-org:types" keyValue = "wsdlSpec"/>
   </categoryBag>	
</tModel>

Les points clés sont -

  • L'élément overviewURL donne l'URL vers laquelle se trouve le fichier WSDL de définition d'interface de service. Cela permet aux humains et aux outils compatibles UDDI / WSDL de localiser la définition de l'interface de service.

  • Le but de l'élément keyedReference dans le categoryBag est de s'assurer que ce tModel est catégorisé comme un document de spécification WSDL.