Main Page

Previous Section Next Section

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:


Previous Section Next Section


JavaScript Editor Java Tutorials Free JavaScript Editor