A key feature of modeling is the possibility to have objects exchanging flows. Some objects produce flows and others consume them. In
The behavior of flow-type object instances is described in the arKItect Developer User's Guide.
When a relation is defined as a flow, the following type properties become relevant:
- Bidirectional
- Hide in Expanded Block
- Line Type
- Arrow Type
- Everything in the Flow Line tab
- Everything in the Flow Font tab
These are the properties applicable to the links and link labels in the Internal Block Diagram; they define the graphical properties of your flow instances. Line and arrow types as well as the Flow Line and Flow Font tabs are treated in more detail in Type Properties.
Defining a Relation As a Flow
A relation can be defined as a flow by checking the Flow is defined case in the Type Properties window. A relation can be defined as a flow when creating a new rule or later by accessing the rule properties.
The flow relation can be defined either as
- Input/Output
- Input
- Output
The same child type can have both a flow and an element relation to its parent (for an example, see Types and Type Relations).
Bidirectional Flows
It is sometimes useful to define more abstract kinds of bidirectional flows whose direction (producer → consumer) is not clearly defined or flows that can contain elements moving in the two directions. For instance, interfaces, boundaries or symmetric links could be defined as bidirectional. To activate the Bidirectional property, check the corresponding check-box in the Type Properties window.
Hide in Expanded Block
Hide in Expanded Block permits to hide the flow containers of first-level child flows inside the focus object of the Internal Block Diagram. To activate the Hide in Expanded Block property, check the corresponding check-box.