To create a new operation
- Click Create operation on the left side of the dialog.
Click the appropriate icon on the right side of the dialog to select a new operation type (see descriptions in the following table).
Click to create a new simple navigation operation. This icon is available only when specifying members of a union or exclude operation, input collection for a filter operation, scope and type parameters for the find operation.
|Click to create a new metachain navigation operation.|
|Click to create a new find operation.|
Click to create a new filter operation and then specify both the input collection that you need to filter and the filter criteria.
Click to specify a new type test operation as a condition for selected filter operation. In other cases, the icon is not available.
The operation tests, whether the type of the element matches the given type or stereotype. If the types matches, it returns true, and if they not – false. You can also use this operation to check, if the element is an instance of the given classifier.
For this operation, you must specify the following parameters:
Click to create a new Property Test operation. This operation tests model elements to find out if they contain the specified property values. If the property values of a model element match with the ones you specified, the operation returns true, otherwise it returns false.
To specify a Property Test operation, select the desired properties and specify their values in the Property Test specification area on the right side of the dialog.
Additionally expand the operation node in the operation list on the left side of the dialog and, if needed, change the AND Operator property value. If AND Operator is set to true (by default), the operation returns true only for the elements that contain all of the specified property values. If AND Operator is set to false, the operation returns true for the elements that contain at least one of the specified property values.
Click to specify a new Nested Operation. Nested Operation is an operation, the body of which is a structured expression. It is inline equivalent to defining an executable operation in the model as an Opaque Behavior with the StructuredExpression language and then using it. Nested Operation can be used as an argument to higher order operation calls, such as Filter. In simple operation calls it is not available.
Click to create a new union operation and then specify as many members for it as you need.
You can select the Unique check box to have only one identical element count as a result.
The option is especially important to return non-unique numeric values to execute mathematical operations (such as Sum) correctly.
Click to create a new exclude operation and then specify both From and Excluded members for it.
Click to add a new operation from the model. You can select either one of the built-in operations, which are stored in standard/system profiles of your project, or a custom operation.
Click to create a new script operation, which language can be one of the following:
It can also be a reference to a java class (Binary).
|Click to select an element from the model.|
|Click to create a String value.|
|Click to create a Boolean value.|
|Click to create a Integer value.|
|Click to create a Null value.|
|Click to create a collection of values.|
Click to add an operation executing a specified expression. Execute operation takes the supplied expression fragment and grafts it into the current expression tree for executing. Expression fragment is an XML string that can be dynamically fetched from any source, such as another tag. The unique value of this operation is that the specified expression can be calculated dynamically instead of being fixed. As a result, the calculation to be executed can depend on the Contextual element.
Click to add an expression retrieving the contextual variable specified by name. Most common case is accessing the THIS variable, which stores the current Contextual element. This is usually the starting point – argument for other operations – such as Simple Navigation or Metachain Navigation.