Information Management IBM InfoSphere Master Data Management, Version 10.1

Configuring an adapter

You configure an MDM Tree adapter by defining a server, a tree, and the entities for that tree in the BPMConfig.xml file.

About this task

You can modify one of the existing adapters or create your own adapter.
In the adapter you define:
  • The server configuration. This includes the host, port, and additional configuration information that is required to connect to the hub server.
  • The contents that will appear in the tree. You can either use the one of the predefined adaptors or write your own adaptor by extending the AbstractToolkitAdaptor class.

There are two different types of trees that you can create, a compound tree and a hierarchy. For each of these tree types there are adaptors for both IBM® Initiate® Master Data Service and IBM InfoSphere® Master Data Management Server.

Compound trees
The IBM Initiate Master Data Service adaptor is com.ibm.im.mdm.apptoolkit.bpm.rest.toolkitdataadaptors.MDSToolkitAdaptor.

The IBM InfoSphere Master Data Management Server adaptor is com.ibm.im.mdm.apptoolkit.bpm.rest.toolkitdataadaptors.MDMSToolkitAdaptor.

In a compound tree you can define many entities, but the adaptor must be able to cope with those entities. For IBM Initiate Master Data Service, the entity must specify the composite view that the entity is using. For IBM InfoSphere Master Data Management Server the adaptor must specify the mdmtype. The mdmtype is an XPath expression to the entity that is returned from the transaction that is also defined in the entity. In the entity, specify the label that the node displays in the tree and the child nodes for that entity.

Hierarchies

The IBM Initiate Master Data Service adaptor is com.ibm.im.mdm.apptoolkit.bpm.rest.toolkitdataadaptors.MDSHierarchyAdaptor.

The IBM InfoSphere Master Data Management Server adaptor is com.ibm.im.mdm.apptoolkit.bpm.rest.toolkitdataadaptors.MDMHierarchytAdaptor.

For IBM Initiate Master Data Service, hierarchies are trees that show just one directed relationship. No additional types are shown. For IBM InfoSphere Master Data Management Server, the HierarchyServices are used. You can specify either the ID of the Hierarchy, or an ID of a HierarchyNode. The tree's root is the HierarchyNode that you specify.

To configure an adapter:

Procedure

  1. Configure a server.
  2. Configure the entities.

Example

The following example shows a section of the BPMConfig.xml file that defines the adapter:
- <Adaptor servicePath="MDMS" adaptorClass="com.ibm.im.mdm.apptoolkit.bpm.rest.toolkitdataadaptors.MDMSToolkitAdaptor">
   - <server>
       <host>london.lab.com</host> 
       <port>9080</port> 
     - <mdms>
          <mdmUser>cusadmin</mdmUser> 
          <mdmLocale>en</mdmLocale> 
          <mdmRequestId>3000</mdmRequestId> 
       </mdms>
     </server>
   - <tree>
     - <entities>
       - <entity type="Person" mdmType="//mdm:TCRMPersonBObj" id="mdm:PartyId" showRelationships="true">
              <nodeLabel>{mdm:DisplayName}</nodeLabel> 
            - <attributeCategory categoryLabel="Addresses" type="Address" 
                   path="mdm:TCRMPartyAddressBObj/mdm:TCRMAddressBObj" 
                   attrId="mdm:AddressIdPK">
                 <nodeLabel>{mdm:AddressLineOne}, {mdm:AddressLineTwo}, {mdm:City}</nodeLabel> 
              </attributeCategory>
            - <attributeCategory categoryLabel="Email Address" type="Email" 
                   path="mdm:TCRMPartyContactMethodBObj/mdm:TCRMContactMethodBObj[mdm:ContactMethodType=2]" 
                   attrId="mdm:ContactMethodIdPK">
                 <nodeLabel>{mdm:ReferenceNumber}</nodeLabel> 
              </attributeCategory>
            - <attributeCategory categoryLabel="Telephone No" type="Phone" 
                   path="mdm:TCRMPartyContactMethodBObj/mdm:TCRMContactMethodBObj[mdm:ContactMethodType=1]"
                   attrId="mdm:ContactMethodIdPK">
                 <nodeLabel>{mdm:ReferenceNumber} : {../mdm:ContactMethodUsageValue}</nodeLabel> 
              </attributeCategory>
              <relationship type="19" categoryLabel="Employee" /> 
              <relationship type="19" direction="inverse" categoryLabel="Employer" /> 
              <relationship type="2" categoryLabel="Parent" /> 
              <relationship type="2" direction="inverse" categoryLabel="Child" /> 
              <relationship type="1" categoryLabel="Spouse" /> 
              <suspectedDuplicate categoryLabel="Suspects" /> 
            - <txns>
               - <txn name="getParty" type="GET">
                    <param name="PartyId" value="$id" /> 
                    <param name="PartyType" value="" /> 
                    <param name="InquiryLevel" value="2" /> 
                 </txn>
               - <txn name="getAllPartySuspects" type="GET">
                    <param name="PartyId" value="$id" /> 
                    <param name="filter" value="1" /> 
                    <param name="suspectPartyInquiryLevel" value="0" /> 
                    <param name="suspectInquiryLevel" value="0" /> 
                 </txn>
             </txns>
          </entity>
       - <entity type="Organization" mdmType="//mdm:TCRMOrganizationBObj" 
               id="mdm:PartyId" showRelationships="true">
               <nodeLabel>{mdm:DisplayName}</nodeLabel> 
               <!--  Use the path expression to pull out the required category items --> 
           - <attributeCategory categoryLabel="Addresses" type="Address" 
                 path="mdm:TCRMPartyAddressBObj/mdm:TCRMAddressBObj" 
                 attrId="mdm:AddressIdPK">
                <nodeLabel>{mdm:AddressLineOne}, {mdm:AddressLineTwo}, {mdm:City}</nodeLabel> 
             </attributeCategory>
           - <attributeCategory categoryLabel="Email Address" type="Email" 
                 path="mdm:TCRMPartyContactMethodBObj/mdm:TCRMContactMethodBObj[mdm:ContactMethodType=2]" 
                 attrId="mdm:ContactMethodIdPK">
                <nodeLabel>{mdm:ReferenceNumber}</nodeLabel> 
             </attributeCategory>
   .
   .
   .
       </entities>
    </tree>
 </Adaptor>


Feedback

Timestamp Last updated: 18 Oct 2012

Topic URL: