Business Entity Relationships


Large organizations need the ability to register multiple businessEntity entries yet maintain relationships amongst them. In the Flute Bank scenario, since it has a banking division regulated by the Federal Deposit Insurance Corporation (FDIC), an investment division regulated by the Securities and Exchange Commission (SEC), and an insurance division regulated by the states in which Flute Bank does business, Flute would like to register each of its subcompanies as separate business entities.

UDDI provides a find_relatedBusinesses API that allows users to view registered relationships. For relationships to be valid, each businessEntity owner must acknowledge the relationship. This prevents one business from creating misleading entries to indicate that it is related to another business when it really is not. Business entity relationships can also be useful for modeling an organization and its divisional/departmental structures.

Using the save_business API, Flute Bank can create several businessEntity entries in the UDDI registry. They would also use the add_publisherAssertion APIs, so the relationships between the bank's divisions would appear valid. Listing 6.6 shows what the add_publisherAssertions would look like.

Listing 6.6: Publisher assertions

start example
 <add_publisherAssertions generic="2.0" xmlns="urn:uddi-org:api_v2" >   <authInfo> ... </authInfo>   <publisherAssertion>        <!--Business Key for Flute Bank Corporation.-->        <fromKey>CBC2A349-A4C1-22D4-AE87-BC8713D2BD9</fromKey>        <!--Business Key for Flute Bank and Trust.-->        <toKey>CEE2A349-D4C1-23D4-AE87-BC8453D2B39</toKey>        <keyedReference           tModelKey="uuid:716B3D7B-FF33-470D-BCD5-B2425B529D02"           keyValue="parent-child"/>   </publisherAssertion>   <publisherAssertion>        <!--Business Key for Flute Bank Corporation.-->        <fromKey>CBC2A349-A4C1-22D4-AE87-BC8713D2BD9</fromKey>        <!--Business Key for Flute Bank Investments-->        <toKey>CDE2A432-DEC1-22D4-AE87-BC8453D2E39</toKey>        <keyedReference           tModelKey="uuid:716B3D7B-FF33-470D-BCD5-B2425B529D02"           keyValue="parent-child"/>   </publisherAssertion>   <publisherAssertion>        <!--Business Key for Flute Bank Corporation.-->        <fromKey>CBC2A349-A4C1-22D4-AE87-BC8713D2BD9</fromKey>        <!--Business Key for Flute Bank Insurance-->        <toKey>BEA2A319-D5C1-67D4-AE87-BC8411D2B39</toKey>        <keyedReference                              tModelKey="uuid:716B3D7B-FF33-470D-BCD5-B2425B529D02"                              keyValue="parent-child"/>   </publisherAssertion> <!--Have to also do other side of assertions--> </add_publisherAssertions> 
end example

UDDI has the ability to also notify businessEntities whenever someone attempts to create an assertion through the get_assertionsStatusReport. The keyedReference in the example is a special type of tModel and can hold three possible values:

  • parent-child indicates that the businessEntity indicated in the toKey is the child of the businessEntity specified in the fromKey.

  • peer-peer indicates that the businessEntities in the fromKey and toKey are peers.

  • identity refers to two businessEntities that are the same organization.




Java Web Services Architecture
Java Web Services Architecture (The Morgan Kaufmann Series in Data Management Systems)
ISBN: 1558609008
EAN: 2147483647
Year: 2005
Pages: 210

flylib.com © 2008-2017.
If you may any questions please contact us: flylib@qtcs.net