|Previous||UML Classes||Table of Contents||UML Packages||Next|
A data store node is a central buffer node for non-transient information.
CentralBufferNode (from IntermediateActivities ) on page 365
A data store keeps all tokens that enter it, copying them when they are chosen to move downstream. Incoming tokens containing
a particular object replace any tokens in the object node containing that object.
No additional attributes
No additional associations
No additional constraints
Tokens chosen to move downstream are copied so that tokens appear to never leave the data store. If a token containing an
object is chosen to move into a data store, and there is a token containing that object already in the data store, then the
chosen token replaces the existing one. Selection and transformation behavior on outgoing edges can be designed to get information
out of the data store, as if a query were being performed. For example, the selection behavior can identify an object to retrieve
and the transformation behavior can get the value of an attribute on that object. Selection can also be designed to only succeed
when a downstream action has control passed to it, thereby implementing the pull semantics of earlier forms of data flow.
The data store notation is a special case of the object node notation, using the label «datastore».
«datastore» name [state]
Figure 12.74 - Data store node notation.
The figure below is an example of using a data store node.
Data stores are introduced to support earlier forms of data flow modeling in which data is persistent and used as needed,
rather than transient and used when available.
Data stores are new in UML 2.0.