Business Processes and Rules: Siebel eBusiness Application Integration Volume IV > Creating and Using Dispatch Rules >

Output Transformation


Before dispatching the incoming hierarchy to the business service, EAI Dispatch Service can be used to perform some transformations to the hierarchy to make it appropriate for the target business service. A transform specifies how the intermediate output, in the memory, is going to be generated before it is dispatched to the service and the method you specified in the rule.

If you do not define any transforms, the EAI Dispatch Service will send the input directly to the business service. However, if you define transforms, the EAI Dispatch Service will create intermediate output based on the values of the transforms before sending the input to the business service you have defined in your rule.

Transforms are specified using one or more of the following targets in permissible combination.

RootHierarchy

This target creates a new output root hierarchy based on the source expression. The source expression specifies a node in the input hierarchy. The hierarchy rooted at this node is copied as the target root hierarchy. You can use the root hierarchy for minor modifications, such as adding a property, to the input hierarchy.

Only one root hierarchy transform can be specified because this transform always creates a new hierarchy. The root hierarchy transform is always executed before any other transforms in the combination.

NOTE:  For the following targets, if an output hierarchy does not exist at the time of invoking the target, an output hierarchy is first created with just an empty root node before the target is applied.

ChildHierarchy

This target creates a new hierarchy as a child of the current output root hierarchy, based on the source expression. The source expression specifies a node in the input hierarchy. The hierarchy rooted at this node is copied as a new child hierarchy. You can use the child hierarchy for adding service arguments to an incoming document before dispatching to workflow or business service.

Type

This target sets the Type field to Source Expression in the root node of output hierarchy.

Value

This target sets the Value field to Source Expression in the root node of output hierarchy.

Property

This target creates or overwrites a property with name Property Name and value Source Expression in the root node of output hierarchy. You can use property to add business service arguments or workflow process properties.

As described in Table 4, for certain targets, in addition to the dispatch grammar, literal values can be used for the Source Expression property to retrieve the data from the input message.

Table 4. Literal Values for Source Expression.
Target
Source Expression
Property Name

Property

Dispatch grammar or a literal value enclosed in quotes to search for a value

Name of the Property

ChildHierarchy

Grammar to search for the hierarchy

N/A

RootHierarchy

Grammar to search for the hierarchy

N/A

Type

Dispatch grammar or Literal value enclosed in quotes to search for a value

N/A

Value

Literal value enclosed in quotes

N/A

NOTE:  You can combine one or more of the preceding transforms to achieve the desired transformation. The combination should not include more than one Root Hierarchy transform, Type transform, or Value transforms. However, it can include multiple Property transforms, as long as the names of the properties are different. Also if you do not want to transform the input data, but need to add an entry in transform—for example the process name of the dispatching workflow, you have to add another entry to the transform with Target: RootHierarchy, Source Expression: /*, and no Property Name. If you do not have a RootHierarchy transform, an empty PropertySet will be created and the called dispatching service will receive an invalid hierarchy data.

Business Processes and Rules: Siebel eBusiness Application Integration Volume IV