Configuring Sun Master Indexes

Configuring the Master Index Object Structure

After you create the master index framework and create the configuration files, you can modify the object structure that you defined. The properties for the objects and fields you will store in the master index database are defined in object.xml. For more information about this file and the configurable options, see Master Index Object Definition Configuration in Understanding Sun Master Index Configuration Options .

The object tree in the Configuration Editor corresponds to object.xml in the master index application. Any changes you make to the object structure in the Configuration Editor are reflected in object.xml, and MIDM field property changes are also reflected in midm.xml. If you modify the XML file directly, you need to update midm.xml manually.

Changing the object structure might also require that you make corresponding changes to the other configuration files. For example, if you add a new field to object.xml that you want to include in queries and matching, you need to make the corresponding changes to query.xml, mefa.xml, and update.xml. Only changes made before generating the project take effect for the new application.

You can configure the object structure either through the Master Index Configuration Editor or by modifying the XML file directly. Both methods are described here. Perform any of the following actions to configure the object structure.

Adding an Object to the Master Index Object Structure

You can add new objects to the object structure as needed. Note that the object structure can contain only one parent object but multiple child objects. If you use the Configuration Editor, you can either create an undefined object or create an object from a predefined template. A predefined object includes a set of predefined fields with default configurations.


Note –

Due to database naming constraints, the length of the name of the parent object plus the length of any child object names must be 21 characters or less.


ProcedureTo Add an Undefined Object (Configuration Editor)

  1. In the Projects window, right-click the Configuration node in the project you want to modify, and then click Edit.

    The Configuration Editor appears.

  2. Select the parent object, and then click Add Sub Object Node on the Configuration Editor toolbar.

    The object structure expands, and a new child object appears at the bottom of the object structure.

  3. Type a new name for the object, and then press Enter.

  4. Define the fields for the new object, as described in Adding a Field to the Master Index Object Structure.

  5. On the Configuration Editor toolbar, click Save.

ProcedureTo Add a Predefined Object (Configuration Editor)

  1. In the Projects window, right-click the Configuration node in the project you want to modify, and then click Edit.

    The Configuration Editor appears.

  2. Select the parent object, click Templates in the toolbar, and then select the template you want to use.

    The new child object and any defined fields appear in the object tree.

  3. To change the name of the new object, double-click the object name, type the new name, and then press Enter.

  4. Do any of the following:

  5. On the Configuration Editor toolbar, click Save.

ProcedureTo Add an Undefined Object (XML editor)

  1. In the Projects window, expand the Configuration node in the project you want to modify, and then double-click object.xml.

    The file opens in the NetBeans XML editor.

  2. Scroll to the location where you want to create the new object (after the database element but before relationships).

  3. Create a nodes element.

  4. Create and name a tag element within the new nodes element (the value of the tag element is the name of the object you are defining).

    Make sure the new nodes element does not fall within any existing nodes elements. For example:


    <nodes>
       <tag>Person</tag>
       ...
    </nodes>
    <nodes>
       <tag>Address</tag>
    </nodes>
    
  5. Define the fields for the new object, as described in Adding a Field to the Master Index Object Structure.

  6. Define the relationship of the new object to the existing objects, as described in Defining Relationships Between Master Index Objects.

  7. Save and close the file.

Modifying an Object's Name In the Master Index Object Definition

You can modify the name of an object in object.xml, but you must also make the corresponding changes to the remaining configuration files.

ProcedureTo Modify an Object's Name (Configuration Editor)

  1. In the Projects window, right-click the Configuration node in the project you want to modify, and then click Edit.

    The Configuration Editor appears.

  2. Click the plus sign next to the parent object to expand the object structure.

  3. Click twice on the name of the object you want to change.

  4. Type in the new name, and then press Enter.

  5. On the Configuration Editor toolbar, click Save.

ProcedureTo Modify an Object's Name (XML Editor)

  1. In the Projects window, expand the Configuration node in the project you want to modify, and then double-click object.xml.

    The file opens in the NetBeans XML editor.

  2. Scroll to the tag element defining the object you want to modify.

  3. Change the value of the tag element.

  4. Modify the object name in the relationships definition, as described in Defining Relationships Between Master Index Objects.

  5. Save and close the file.

Deleting an Object From the Master Index Object Structure

If you define an object in error, you can remove the object from object.xml. If you modify the XML file directly, you must also remove the relationship definition for the object. Remember to make the corresponding changes to the remaining configuration files.

ProcedureTo Delete an Object (Configuration Editor)

  1. In the Projects window, right-click the Configuration node in the project you want to modify, and then click Edit.

    The Configuration Editor appears.

  2. Expand the object structure by clicking the plus sign by the parent object.

  3. Do any of the following:

    • Right-click in the object tree panel, and then click Delete.

    • Press the Delete key.

    • In the Configuration Editor toolbar, click Delete.

  4. On the confirmation dialog box, click Yes.

    The object and any fields associated with that object are deleted. If you remove the parent object, all child objects are also removed.

  5. On the Configuration Editor toolbar, click Save.

ProcedureTo Delete an Object (XML Editor)

  1. In the Projects window, expand the Configuration node in the project you want to modify, and then double-click object.xml.

    The file opens in the NetBeans XML editor.

  2. Scroll to the nodes element containing the object you want to delete.

  3. Delete all text between and including the nodes tags that contain the object tag.

    For example, to delete the Address object below, delete the boldface text.


    <nodes>
       <tag>Person</tag>
    </nodes>
    <nodes>
       <tag>Address</tag>
    </nodes>
    
  4. Remove the object name from the relationship list, as described in Defining Relationships Between Master Index Objects.

  5. Save and close the file.

Adding a Field to the Master Index Object Structure

Once you define an object in object.xml, you can add new fields to the object and configure the properties for those fields. Be sure to add the field to any relevant structures in the remaining configuration files. For information about field naming restrictions, see Master Index Field Name Restrictions.

ProcedureTo Add a Field (Configuration Editor)

  1. In the Projects window, right-click the Configuration node in the project you want to modify, and then click Edit.

    The Configuration Editor appears.

  2. Expand the object structure until you see the object to which you want to add a field.

  3. In the object tree panel, do one of the following:

    • To add the field to the end of the object’s field list, select the name of the object to which you want to add a new field and then click Add Field in the toolbar.

    • To add the field immediately following an existing field, select the field after which you want to add the new field and then click Add Field in the toolbar.

      The tree expands and a new field is inserted.

  4. To change the field name, double-click the new field, type the new name, and then press Enter.

  5. Continue to Modifying Master Field Properties.

ProcedureTo Add a Field (XML Editor)

  1. In the Projects window, expand the Configuration node in the project you want to modify, and then double-click object.xml.

    The file opens in the NetBeans XML editor.

  2. Scroll to the tag element defining the object to which you want to add a field.

  3. Under the tag element, create a new fields element.

    For example:


    <nodes>
       <tag>Address</tag>
       <fields>
       </fields>
    <nodes>
  4. Specify the field properties described in Master Index Field Property Elements within the new fields tags.

    For example:


    <fields>
       <field-name>AddressType</field-name>
       <field-type>string</field-type>
       <size>8</size>
       <updateable>true</updateable>
       <required>true</required>
       <code-module>ADDRTYPE</code-module>
       <pattern/>
       <key-type>true</key-type>
    </fields>
  5. Save and close the file.

Deleting a Field from the Master Index Object Structure

If a field is defined for an object but does not belong to that object, you can delete the field from the object structure. Make the corresponding changes to the remaining configuration files.

ProcedureTo Delete a Field (Configuration Editor)

  1. In the Projects window, right-click the Configuration node in the project you want to modify, and then click Edit.

    The Configuration Editor appears.

  2. Expand the object structure until the field you want to delete is visible.

  3. Select the field and do any of the following:

    • Right-click in the object tree panel, and then click Delete.

    • Press the Delete key.

    • In the Configuration Editor toolbar, click Delete.

  4. On the confirmation dialog, click Yes.

    The field is removed from the object tree.

  5. On the Configuration Editor toolbar, click Save.

ProcedureTo Delete a Field (XML Editor)

  1. In the Projects window, expand the Configuration node in the project you want to modify, and then double-click object.xml.

    The file opens in the NetBeans XML editor.

  2. Scroll to the tag element defining the object from which you want to delete a field.

  3. Scroll to the fields element containing the field to delete, and then delete all text between and including the fields tags defining that field.

    For example, to delete the AddressLine1 field below, delete all text in the sample.


    <fields>
       <field-name>AddressLine1</field-name>
       <field-type>string</field-type>
       <size>5</size>
       <updateable>true</updateable>
       <required>false</required>
       <key-type>false</key-type>
       <code-module/>
       <pattern/>
       <key-type/>
    </fields>
  4. Save and close the file.

Modifying Master Field Properties

Every field in the object structure has a set of properties that must be configured before deploying the master index application. When a field is created, a set of default properties are defined for that field. You can modify the property configuration for each field to suit your data processing, storage, and display requirements. Field properties include general field attributes, such as the name, length, and data type, and MIDM field properties, such as the display name for the field and display formatting.


Note –

On the Configuration Editor, the fields in the MIDM section cannot be configured if the field is not defined to appear on the MIDM (that is, it does not appear in midm.xml).


ProcedureTo Modify Field Properties (Configuration Editor)

  1. In the Projects window, right-click the Configuration node in the project you want to modify, and then click Edit.

    The Configuration Editor appears.

  2. Expand the object structure until the field you want to configure is visible.

  3. In the object structure, select the field to configure.

    The General Properties page appears.

  4. On the Properties page in the right side of the window, modify the value of any of the properties listed in Master Index Configuration Editor Field Properties.


    Note –

    After you modify a property value, press Enter to apply the change.


  5. To view or modify matching properties, click the Matching tab and configure the properties as described in To Configure the Comparison Functions (Configuration Editor).

    This tab is only visible for fields that have a value in the Match Type field.

  6. On the Configuration Editor toolbar, click Save.

ProcedureTo Modify Field Properties (XML Editor)

  1. In the Projects window, expand the Configuration node in the project you want to modify, and then double-click object.xml.

    The file opens in the NetBeans XML editor.

  2. Scroll to the tag element defining the object to modify, and then to the fields element containing the field to modify.

  3. Modify the value of any of the elements described in Master Index Field Property Elements.


    Note –

    If you modify the name of a field, make the corresponding changes to the remaining configuration files. Some property elements might not exist for a field; add any necessary elements to the field definition to configure the field.


  4. Save and close the file.


Example 1 Field Properties in object.xml

The following example defines an address type field that is required in order to enter a record, and that uniquely identifies each address object in a record. It also defines a list, named ADDRTYPE, from which MIDM users can select a value to enter into the field.


<field-name>AddressType</field-name>
<field-type>string</field-type>
<size>8</size>
<updateable>true</updateable>
<required>true</required>
<pattern></pattern>
<code-module>ADDRTYPE</code-module>
<key-type>true</key-type>

The following example defines an employee ID field where the must be equal to or greater than 100001 and less than or equal to 199999. Only the characters 0–9 are allowed.


<field-name>EmployeeID</field-name>
<field-type>string</field-type>
<size>6</size>
<updateable>true</updateable>
<required>true</required>
<minimum-value>100001</minimum-value>
<maximum-value>199999</maximum-value>
<pattern>[0-9]{6}</pattern>
<key-type>false</key-type>

Defining Relationships Between Master Index Objects

Once all objects are customized, you must define relationships between those objects if you are modifying the XML file directly. If you are using the Configuration Editor, the relationships are automatically defined in the object tree.

ProcedureTo Define Object Relationships (XML Editor)

  1. In the Projects window, expand the Configuration node in the project you want to modify, and then double-click object.xml.

    The file opens in the NetBeans XML editor.

  2. Scroll to the relationships element near the end of the file.

  3. To specify a new parent object, modify the value of the name element.

    For example:


    <name>Individual</name>

    Note –

    This is not recommended. Changing the parent name requires changing all instances of the name in all configuration files. To change the parent object name, use the Configuration Editor, which automatically propagates the change.


  4. To change the name of a child object, modify the value of the appropriate children element.

  5. To add a child object, create and name a new children element.

  6. To delete a child object, delete all text between and including the appropriate children element.

  7. Save and close the file.


    Note –

    You can only specify one name element. The values you specify for the name and children elements must match an object name specified in the nodes elements earlier in the file.