◷ Reading Time: 1 minute
Data
This command structures the data of a Decision Table. The data part of the table must be encapsulated by Row and then by Value element in the xml. Each value in the data section represents a positive condition, if a negative condition is required it should be prefixed by ‘not:’.
Decision Table supports iterating through items of a list and processes them. To do that, the on and childName parameter must be set.
Parameters
- on
- Description: Defines a list of items to iterate through
- Mandatory: No
- Type: Expression
- childName
- Description: Defines the name of parameter, each item in the list will be referenced
- Mandatory: Yes, when ‘on’ is defined
- Type: String (Parameter name)
Sample
<DecisionTable name="person growing state">
<Declaration>
<Define name="person" direction="In"/>
<Define name="title" direction="Out"/>
</Declaration>
<Columns>
<Condition name="Min" expression="person.Age ge $value" />
<Condition name="Max" expression="person.Age le $value"/>
<Action name="Title" type="set" variable="title" expression="$value"/>
<Action name="Title" expression="person.SetTitle($value)"/>
</Columns>
<Data>
<Row>
<Value>0</Value>
<Value>3</Value>
<Value>infant</Value>
</Row>
<Row>
<Value>4</Value>
<Value>6</Value>
<Value>kid</Value>
</Row>
<Row>
<Value>7</Value>
<Value>18</Value>
<Value>teen</Value>
</Row>
<Row>
<Value>19</Value>
<Value>23</Value>
<Value>young</Value>
</Row>
<Row>
<Value>not: 24</Value>
<Value>99999</Value>
<Value>adult</Value>
</Row>
</Data>
</DecisionTable>