Language elements
The interactive editing function is provided by the Condition Editor. Using the Condition Editor is very straightforward, but some terminology should be clear in order to assist with explanation.
Text in the condition part consists of a number of elements, which can be one of two types:
non-terminals — elements that are not yet fully defined and are acting as placeholders to be replaced with further elements
terminals — elements that are fully defined, and actually constitute the proper text of the condition.
An example will make the distinction clear. If it is not already open, open the Limit Order scenario as a template for exploring the Condition Editor features. See
Adding scenarios to projects.
Ensure you do not save any changes as this might render the sample unusable. It is recommended that you make a backup copy of the .sdf file. After the scenario is open:
1. Click the start state to select it.
2. Click the symbol in the Local Rules panel toolbar to add a new rule to the start state. The new rule is added to the bottom.
A new rule starts off with the condition part containing the text ‘condition’. Note that the word ‘condition’ is in quotes and also underlined. Both quotes and underlining indicate that this is a non-terminal, that is, it still needs to be replaced with more precise text for the condition to be finished. Because the rule is unfinished its name appears in red italics.
The Event Modeler window will look as follows:
Event Modeler with new rule
Because this condition is unfinished, the rule, the state and indeed the entire scenario are now unfinished. You can observe that a state is unfinished by the fact that its title is displayed in red italics text, as with the start state in this case.