UDDI com WSDL
O modelo de dados UDDI define uma estrutura genérica para armazenar informações sobre um negócio e os serviços da web que ele publica. O modelo de dados UDDI é completamente extensível, incluindo várias estruturas de sequência de informações repetidas.
No entanto, WSDL é usado para descrever a interface de um serviço da web. WSDL é bastante simples de usar com UDDI.
WSDL é representado em UDDI usando uma combinação de informações businessService, bindingTemplate e tModel .
Como acontece com qualquer serviço registrado no UDDI, as informações genéricas sobre o serviço são armazenadas na estrutura de dados businessService e as informações específicas sobre como e onde o serviço é acessado são armazenadas em uma ou mais estruturas bindingTemplate associadas . Cada estrutura bindingTemplate inclui um elemento que contém o endereço de rede do serviço e tem associado a ele uma ou mais estruturas tModel que descrevem e identificam exclusivamente o serviço.
Quando UDDI é usado para armazenar informações WSDL, ou ponteiros para arquivos WSDL, o tModel deve ser referido por convenção como tipo wsdlSpec , o que significa que o elemento overviewDoc é claramente identificado como apontando para uma definição de interface de serviço WSDL.
Para UDDI, o conteúdo WSDL é dividido em dois elementos principais, o arquivo de interface e o arquivo de implementação.
O serviço da web do sistema de reservas Hertz fornece um exemplo concreto de como UDDI e WSDL funcionam juntos. Aqui está o <tModel> para este serviço da 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>
Os pontos principais são -
O elemento overviewURL fornece a URL onde o arquivo WSDL de definição de interface de serviço pode ser localizado. Isso permite que humanos e ferramentas com reconhecimento de UDDI / WSDL localizem a definição da interface de serviço.
O objetivo do elemento keyedReference em categoryBag é certificar-se de que este tModel seja categorizado como um documento de especificação WSDL.