Rational Developer for System z

IMS Web 2.0 Correlator file

The IMS Web 2.0 Correlator file tab allows you to specify the service identification properties and the IMS™ system interaction properties for the new service.

This tab contains the following fields:

IMS Web 2.0 Correlator Array Support

The IMS Web 2.0 Correlator file contains a list of parameters derived from the request language structure. The parameters represent name-value pair inputs to the service. For non-array data items, the parameter list contains a single unique entry and parameter name assigned to the item. For array data items, every occurrence of the data item is handled as unique parameter to the service. For example, given the following request language structure:

01 INPUT-MSG.
   05 CUSTOMER OCCURS 5 TIMES.
      10 CUSTOMER-ID PIC X(10).
      10 CUSTOMER-PHONE PIC X(10) OCCURS 2 TIMES.

The following parameter list is generated:

<IMS:parameter index="1"  maxchars="10" name="customer_id"        .../> 
<IMS:parameter index="2"  maxchars="10" name="customer_phone"     .../> 
<IMS:parameter index="3"  maxchars="10" name="customer_phone::2"  .../> 
<IMS:parameter index="4"  maxchars="10" name="customer_id::2"     .../> 
<IMS:parameter index="5"  maxchars="10" name="customer_phone::3"  .../> 
<IMS:parameter index="6"  maxchars="10" name="customer_phone::4"  .../> 
<IMS:parameter index="7"  maxchars="10" name="customer_id::3"     .../> 
<IMS:parameter index="8"  maxchars="10" name="customer_phone::5"  .../> 
<IMS:parameter index="9"  maxchars="10" name="customer_phone::6"  .../> 
<IMS:parameter index="10" maxchars="10" name="customer_id::4"     .../> 
<IMS:parameter index="11" maxchars="10" name="customer_phone::7"  .../> 
<IMS:parameter index="12" maxchars="10" name="customer_phone::8"  .../> 
<IMS:parameter index="13" maxchars="10" name="customer_id::5"     .../> 
<IMS:parameter index="14" maxchars="10" name="customer_phone::9"  .../> 
<IMS:parameter index="15" maxchars="10" name="customer_phone::10" .../> 

In COBOL and PL/I, it is possible to declare variable length arrays whose current max range is held in a control data item with a max value equal to the upperbound of the array. In COBOL the control data item is called the ODO Object, and in PL/I it is called the Refer Object. Control data items will be generated as parameters without names and will be set to their maximum value in the XML template. This implications of this is that all arrays are treated as fixed length. For example, given the following request language structure:

01 INPUT-MSG. 
   05 CUSTOMER-COUNT PIC 9(4) COMP. 
   05 CUSTOMER OCCURS 1 TO 5 TIMES DEPENDING ON CUSTOMER-COUNT. 
      10 CUSTOMER-ID PIC X(10). 
      10 CUSTOMER-PHONE PIC X(10) OCCURS 2 TIMES. 

The following parameter list and XML template is generated:

<IMS:parameter index="1"  maxchars="4"  name="" value="5"         .../> 
<IMS:parameter index="2"  maxchars="10" name="customer_id"        .../> 
<IMS:parameter index="3"  maxchars="10" name="customer_phone"     .../> 
<IMS:parameter index="4"  maxchars="10" name="customer_phone::2"  .../> 
<IMS:parameter index="5"  maxchars="10" name="customer_id::2"     .../> 
<IMS:parameter index="6"  maxchars="10" name="customer_phone::3"  .../> 
<IMS:parameter index="7"  maxchars="10" name="customer_phone::4"  .../> 
<IMS:parameter index="8"  maxchars="10" name="customer_id::3"     .../>  
<IMS:parameter index="9"  maxchars="10" name="customer_phone::5"  .../> 
<IMS:parameter index="10" maxchars="10" name="customer_phone::6"  .../> 
<IMS:parameter index="11" maxchars="10" name="customer_id::4"     .../> 
<IMS:parameter index="12" maxchars="10" name="customer_phone::7"  .../> 
<IMS:parameter index="13" maxchars="10" name="customer_phone::8"  .../> 
<IMS:parameter index="14" maxchars="10" name="customer_id::5"     .../> 
<IMS:parameter index="15" maxchars="10" name="customer_phone::9"  .../> 
<IMS:parameter index="16" maxchars="10" name="customer_phone::10" .../> 

<INPUTMSG> 
  <customer_count>5</customer_count> 
  <customers> 
    <customer_id>&customer_id;</customer_id> 
    <customer_phone>&customer_phone;</customer_phone> 
    <customer_phone>&customer_phone::2;</customer_phone> 
  </customers> 
  <customers>  
    <customer_id>&customer_id::2;</customer_id> 
    <customer_phone>&customer_phone::3;</customer_phone> 
    <customer_phone>&customer_phone::4;</customer_phone> 
  </customers> 
  <customers> 
    <customer_id>&customer_id::3;</customer_id> 
    <customer_phone>&customer_phone::5;</customer_phone> 
    <customer_phone>&customer_phone::6;</customer_phone> 
  </customers> 
  <customers> 
    <customer_id>&customer_id::4;</customer_id> 
    <customer_phone>&customer_phone::7;</customer_phone> 
    <customer_phone>&customer_phone::8;</customer_phone> 
  </customers> 
  <customers> 
    <customer_id>&customer_id::5;</customer_id> 
    <customer_phone>&customer_phone::9;</customer_phone> 
    <customer_phone>&customer_phone::10;</customer_phone> 
 </customers> 
</INPUTMSG> 

Feedback