Class UML 2.4.1::ObjectFlow
Description:
An object flow is an activity edge that can have objects or data passing
along it.Object flows have support for multicast/receive, token selection
from object nodes, and transformation of tokens.
Direct Superclasses: ActivityEdgeDirect Subclasses: Class Precedence List: ObjectFlow,
ActivityEdge,
RedefinableElement,
NamedElement,
ElementProperties:
isMulticast : Boolean (1 1); -- source
ObjectFlow isMultireceive : Boolean (1 1); -- source
ObjectFlow selection :
Behavior (0 1); -- source
ObjectFlow transformation :
Behavior (0 1); -- source
ObjectFlow activity :
Activity (0 1); -- source
ActivityEdge guard :
ValueSpecification (1 1); -- source
ActivityEdge inGroup :
ActivityGroup (0 *); -- source
ActivityEdge inPartition :
ActivityPartition (0 *); -- source
ActivityEdge inStructuredNode :
StructuredActivityNode (0 1); -- source
ActivityEdge interrupts :
InterruptibleActivityRegion (0 1); -- source
ActivityEdge redefinedEdge :
ActivityEdge (0 *); -- source
ActivityEdge source :
ActivityNode (1 1); -- source
ActivityEdge target :
ActivityNode (1 1); -- source
ActivityEdge weight :
ValueSpecification (1 1); -- source
ActivityEdge isLeaf : Boolean (1 1); -- source
RedefinableElement redefinedElement :
RedefinableElement (0 *); -- source
RedefinableElement redefinitionContext :
Classifier (0 *); -- source
RedefinableElement clientDependency :
Dependency (0 *); -- source
NamedElement name : String (0 1); -- source
NamedElement nameExpression :
StringExpression (0 1); -- source
NamedElement namespace :
Namespace (0 1); -- source
NamedElement qualifiedName : String (0 1); -- source
NamedElement visibility :
VisibilityKind (0 1); -- source
NamedElement ownedComment :
Comment (0 *); -- source
Element ownedElement :
Element (0 *); -- source
Element owner :
Element (0 1); -- source
ElementConstraints:
Signature: transformation_behaviour() : Boolean;
Description: A transformation behavior has one input parameter and one output parameter.
The input parameter must be the same as or a supertype of the type of object
token coming from the source end. The output parameter must be the same
or a subtype of the type of object token expected downstream. The behavior
cannot have side effects.
Expression: true
Signature: target() : Boolean;
Description: An edge with constant weight may not target an object node, or lead to
an object node downstream with no intervening actions, that has an upper
bound less than the weight.
Expression: true
Signature: selection_behaviour() : Boolean;
Description: An object flow may have a selection behavior only if has an object node
as a source.
Expression: true
Signature: same_upper_bounds() : Boolean;
Description: Object nodes connected by an object flow, with optionally intervening control
nodes, must have the same upper bounds.
Expression: true
Signature: no_actions() : Boolean;
Description: Object flows may not have actions at either end.
Expression: true
Signature: is_multicast_or_is_multireceive() : Boolean;
Description: isMulticast and isMultireceive cannot both be true.
Expression: true
Signature: input_and_output_parameter() : Boolean;
Description: A selection behavior has one input parameter and one output parameter.
The input parameter must be a bag of elements of the same as or a supertype
of the type of source object node. The output parameter must be the same
or a subtype of the type of source object node. The behavior cannot have
side effects.
Expression: true
Signature: compatible_types() : Boolean;
Description: Object nodes connected by an object flow, with optionally intervening control
nodes, must have compatible types. In particular, the downstream object
node type must be the same or a supertype of the upstream object node type.
Expression: true
Operations:
No additional operations.
Send questions or comments to
[email protected].