Class UML 2.4.1::ConditionalNode
Description:
A conditional node is a structured activity node that represents an exclusive
choice among some number of alternatives.
Direct Superclasses: StructuredActivityNodeDirect Subclasses: Class Precedence List: ConditionalNode,
StructuredActivityNode,
Action,
ExecutableNode,
ActivityNode,
RedefinableElement,
Namespace,
ActivityGroup,
NamedElement,
ElementProperties:
![](/se-interop/image/down-arrow.png)
clause :
Clause (1 *); -- source
ConditionalNode![](/se-interop/image/down-arrow.png)
isAssured : Boolean (1 1); -- source
ConditionalNode![](/se-interop/image/down-arrow.png)
isDeterminate : Boolean (1 1); -- source
ConditionalNode![](/se-interop/image/right-arrow.png)
result :
OutputPin (0 *); -- source
ConditionalNodeA list of output pins that constitute the data flow outputs of the conditional.
{
composite,
ordered}
Subsets: Action.output
Redefines: StructuredActivityNode.structuredNodeOutput
![](/se-interop/image/down-arrow.png)
activity :
Activity (0 1); -- source
StructuredActivityNode![](/se-interop/image/down-arrow.png)
edge :
ActivityEdge (0 *); -- source
StructuredActivityNode![](/se-interop/image/down-arrow.png)
mustIsolate : Boolean (1 1); -- source
StructuredActivityNode![](/se-interop/image/down-arrow.png)
node :
ActivityNode (0 *); -- source
StructuredActivityNode![](/se-interop/image/down-arrow.png)
structuredNodeInput :
InputPin (0 *); -- source
StructuredActivityNode![](/se-interop/image/down-arrow.png)
variable :
Variable (0 *); -- source
StructuredActivityNode![](/se-interop/image/down-arrow.png)
context :
Classifier (0 1); -- source
Action![](/se-interop/image/down-arrow.png)
input :
InputPin (0 *); -- source
Action![](/se-interop/image/right-arrow.png)
isLocallyReentrant : Boolean (1 1); -- source
ActionIf true, the action can begin a new, concurrent execution, even if there
is already another execution of the action ongoing. If false, the action
cannot begin a new execution until any previous execution has completed.
Default value: FALSE
![](/se-interop/image/down-arrow.png)
localPostcondition :
Constraint (0 *); -- source
Action![](/se-interop/image/down-arrow.png)
localPrecondition :
Constraint (0 *); -- source
Action![](/se-interop/image/down-arrow.png)
output :
OutputPin (0 *); -- source
Action![](/se-interop/image/down-arrow.png)
handler :
ExceptionHandler (0 *); -- source
ExecutableNode![](/se-interop/image/down-arrow.png)
inGroup :
ActivityGroup (0 *); -- source
ActivityNode![](/se-interop/image/down-arrow.png)
inInterruptibleRegion :
InterruptibleActivityRegion (0 *); -- source
ActivityNode![](/se-interop/image/down-arrow.png)
inPartition :
ActivityPartition (0 *); -- source
ActivityNode![](/se-interop/image/down-arrow.png)
inStructuredNode :
StructuredActivityNode (0 1); -- source
ActivityNode![](/se-interop/image/down-arrow.png)
incoming :
ActivityEdge (0 *); -- source
ActivityNode![](/se-interop/image/down-arrow.png)
outgoing :
ActivityEdge (0 *); -- source
ActivityNode![](/se-interop/image/down-arrow.png)
redefinedNode :
ActivityNode (0 *); -- source
ActivityNode![](/se-interop/image/down-arrow.png)
isLeaf : Boolean (1 1); -- source
RedefinableElement![](/se-interop/image/down-arrow.png)
redefinedElement :
RedefinableElement (0 *); -- source
RedefinableElement![](/se-interop/image/down-arrow.png)
redefinitionContext :
Classifier (0 *); -- source
RedefinableElement![](/se-interop/image/down-arrow.png)
elementImport :
ElementImport (0 *); -- source
Namespace![](/se-interop/image/down-arrow.png)
importedMember :
PackageableElement (0 *); -- source
Namespace![](/se-interop/image/down-arrow.png)
member :
NamedElement (0 *); -- source
Namespace![](/se-interop/image/down-arrow.png)
ownedMember :
NamedElement (0 *); -- source
Namespace![](/se-interop/image/down-arrow.png)
ownedRule :
Constraint (0 *); -- source
Namespace![](/se-interop/image/down-arrow.png)
packageImport :
PackageImport (0 *); -- source
Namespace![](/se-interop/image/down-arrow.png)
containedEdge :
ActivityEdge (0 *); -- source
ActivityGroup![](/se-interop/image/right-arrow.png)
containedNode :
ActivityNode (0 *); -- source
ActivityGroupNodes immediately contained in the group.
{
readonly}
Derived union with sources: (node)
Opposite: ActivityNode.inGroup
![](/se-interop/image/right-arrow.png)
subgroup :
ActivityGroup (0 *); -- source
ActivityGroupGroups immediately contained in the group.
{
composite,
readonly}
Derived union with sources: ()
Subsets: Element.ownedElement
Opposite: ActivityGroup.superGroup
![](/se-interop/image/down-arrow.png)
superGroup :
ActivityGroup (0 1); -- source
ActivityGroup![](/se-interop/image/down-arrow.png)
clientDependency :
Dependency (0 *); -- source
NamedElement![](/se-interop/image/down-arrow.png)
name : String (0 1); -- source
NamedElement![](/se-interop/image/down-arrow.png)
nameExpression :
StringExpression (0 1); -- source
NamedElement![](/se-interop/image/down-arrow.png)
namespace :
Namespace (0 1); -- source
NamedElement![](/se-interop/image/down-arrow.png)
qualifiedName : String (0 1); -- source
NamedElement![](/se-interop/image/down-arrow.png)
visibility :
VisibilityKind (0 1); -- source
NamedElement![](/se-interop/image/down-arrow.png)
ownedComment :
Comment (0 *); -- source
Element![](/se-interop/image/down-arrow.png)
ownedElement :
Element (0 *); -- source
Element![](/se-interop/image/down-arrow.png)
owner :
Element (0 1); -- source
ElementConstraints:
Signature: result_no_incoming() : Boolean;
Description: The result output pins have no incoming edges.
Expression: true
Signature: one_clause_with_executable_node() : Boolean;
Description: No ExecutableNode may appear in the test or body part of more than one
clause of a conditional node.
Expression: true
Signature: no_input_pins() : Boolean;
Description: A conditional node has no input pins.
Expression: true
Signature: matching_output_pins() : Boolean;
Description: Each clause of a conditional node must have the same number of bodyOutput
pins as the conditional node has result output pins, and each clause bodyOutput
pin must be compatible with the corresponding result pin (by positional
order) in type, multiplicity, ordering and uniqueness.
Expression: true
Signature: executable_nodes() : Boolean;
Description: The union of the ExecutabledNodes in the test and body parts of all clauses
must be the same as the subset of nodes contained in the ConditionalNode
(considered as a StructuredActivityNode) that are ExecutableNodes.
Expression: true
Signature: clause_no_predecessor() : Boolean;
Description: No two clauses within a ConditionalNode maybe predecessor clauses of each
other, either directly or indirectly.
Expression: true
Operations:
No additional operations.
Send questions or comments to
[email protected].