Process list and map variables
are referenced in XPath expressions by name in the same way that
other types of variables are referenced. However, to access specific
data items in list and map variables,
you also need to indicate which data item in a list or map variable
you want to set or access.
list variables
To reference an entire list variable,
you use the name of the list variable. For example,
to copy all of the data from a list variable named original_list to
a list variable named copy_list,
the XPath expression that you use to reference original_list is /process_data/original_list.
To
indicate the data item in a list variable, you
need to specify the index position of the item. For example, a process
stores document data in a list variable named listofdocs.
You can use the execute operation of the Set Value service to retrieve
the first document in the list and save it in a document variable
named firstdoc. The XPath expression that returns
the first document in the list is /process_data/listofdocs[1].
Note: Indexes for list variables are
1-based so that the first item in the list has an index of 1.
Note: When saving the results of service operations
in list variables, the returned data items are
appended to the list after any existing items. To replace the items
in a list, you specify the index of the first item (for example, /process_data/listVar[1]).
map variables
To reference an entire map variable,
you use the name of the map variable. For example,
to copy all of the data from a map variable named original_map to a map variable
named copy_map, the XPath expression that you use
to reference original_map is /process_data/original_map.
To
indicate the data item in a map variable, you need
to specify the key for the key-value pair. For example, a process
stores names and email addresses in a map variable
named varmapofemails. Names are used as the key,
and the email addresses are the corresponding values. You can use
the execute operation of the Set Value service to retrieve Tony’s
email address and store it in a string variable
named tonyemail. The XPath expression that returns
the value in the map variable that corresponds
to the key of tony is /process_data/mapofemails[@id='tony'].
Note: Unlike list variables, the order
in which data items are stored in map variables
can be different each time you use the map variable.
When referencing data items in map variables, you
cannot make any assumptions about the order of the data items.