Free Trial

Safari Books Online is a digital library providing on-demand subscription access to thousands of learning resources.

Share this Page URL

Chapter 6. The UDDI Data Structures > WS-I Conformance Claims - Pg. 137

The UDDI Data Structures 137 In an instance of this structure, the fromKey and toKey elements will contain the unique UDDI businessEntity identifiers of the entities involved in the relationship. For example, the from- Key might contain the UUID of the IBM Corporation, while the toKey contains the UUID of IBM's Professional Services division. The keyedReference element will point to a tModel that repre- sents the relationship between these organizations. This tModel must be categorized using the relationship UDDI type (see Table 6-2). Listing 6-14 shows a publisher Assertion ex- pressing the relationship between a fictitious corporation and one of its divisions. Example 6-14. A publisherAssertion Structure <publisherAssertion> <fromKey>0207DE98-9C61-4138-A121-4B9E636B7649</fromKey> <toKey>1EE48BF0-9356-11D5-8838-002035229C64</toKey> <keyedReference keyName="subsidiary" keyValue="parent-child" tModelKey="uuid:807A2C62-EE22-470D-ADC6-E0424A337C03"/> </publisherAssertion> In order for the publisherAssertion to be valid and therefore visible in the UDDI registry, both entities must submit complementary publisherAssertion entries. If only one of them does, that assertion will not be visible to anyone but the publisher, and will not be considered valid. This re- quirement prevents misrepresentation. An organization cannot feign a relationship that the other organization does not recognize--for example, that it's a division of another company, a member of a consortium, or a preferred vendor. UUID Keys Most of the primary UDDI data structures (businessEntity, business Service, binding- Template, and tModel) are automatically assigned a Universally Unique Identifier (UUID) key when they are added to the UDDI registry. The UUID is a hexadecimal-encoded number that is about 30 characters long and is generated using the DCE UUID-generation algorithm. 8 The UUID is globally unique--there will not be duplicates even in other registries. The following is an example of a UUID generated for a businessEntity: 01B1FA80-2A15-11D6-9B59-000629DC0A53 The UUIDs for the primary data structures all take the same form, except for the tModel, which prefixes its UUID value with "uuid:". The tModel is the only data structure that does this, because the tModelKey is supposed to be a valid URI (Uniform Resource Identifier)--hence the uuid prefix. In version 3.0 of UDDI, the specification of tModelKey has been broadened so that you can use values that are understandable to humans, instead of always using UUID values. WS-I Conformance Claims A tModel that represents a Web service may claim that it adheres to the WS-I Basic Profile 1.0 by including a WS-I conformance claim categorization, as shown in Listing 6-15. Example 6-15. Including a Conformance Claim in a WSDL tModel <tModel tModelKey="UUID:4C9D3FE0-2A16-11D6-9B59-000629DC0A53"> <name>Monson-Haefel:BookQuote</name> <description xml:lang="en"> Provides a wholesale price given for a ISBN number. </description> 8 The specification for the DCE UUID-generating algorithm can be found at guids-01.txt.