Class UML 2.3::InformationFlow
Description:
An information flow specifies that one or more information items circulates
from its sources to its targets. Information flows require some kind of
information channel for transmitting information items from the source
to the destination. An information channel is represented in various ways
depending on the nature of its sources and targets. It may be represented
by connectors, links, associations, or even dependencies. For example,
if the source and destination are parts in some composite structure such
as a collaboration, then the information channel is likely to be represented
by a connector between them. Or, if the source and target are objects (which
are a kind of instance specification), they may be represented by a link
that joins the two, and so on.
Direct Superclasses: PackageableElement,
DirectedRelationshipDirect Subclasses: Class Precedence List: InformationFlow,
PackageableElement,
ParameterableElement,
NamedElement,
DirectedRelationship,
Relationship,
ElementProperties:
![](/se-interop/image/down-arrow.png?hunchentoot-session=96119%3A3B59C65121560E94BC85988A8DF59D65)
conveyed :
Classifier (1 *); -- source
InformationFlow![](/se-interop/image/down-arrow.png?hunchentoot-session=96119%3A3B59C65121560E94BC85988A8DF59D65)
informationSource :
NamedElement (1 *); -- source
InformationFlow![](/se-interop/image/down-arrow.png?hunchentoot-session=96119%3A3B59C65121560E94BC85988A8DF59D65)
informationTarget :
NamedElement (1 *); -- source
InformationFlow![](/se-interop/image/down-arrow.png?hunchentoot-session=96119%3A3B59C65121560E94BC85988A8DF59D65)
realization :
Relationship (0 *); -- source
InformationFlow![](/se-interop/image/down-arrow.png?hunchentoot-session=96119%3A3B59C65121560E94BC85988A8DF59D65)
realizingActivityEdge :
ActivityEdge (0 *); -- source
InformationFlow![](/se-interop/image/down-arrow.png?hunchentoot-session=96119%3A3B59C65121560E94BC85988A8DF59D65)
realizingConnector :
Connector (0 *); -- source
InformationFlow![](/se-interop/image/down-arrow.png?hunchentoot-session=96119%3A3B59C65121560E94BC85988A8DF59D65)
realizingMessage :
Message (0 *); -- source
InformationFlow![](/se-interop/image/down-arrow.png?hunchentoot-session=96119%3A3B59C65121560E94BC85988A8DF59D65)
visibility :
VisibilityKind (1 1); -- source
PackageableElement![](/se-interop/image/down-arrow.png?hunchentoot-session=96119%3A3B59C65121560E94BC85988A8DF59D65)
owningTemplateParameter :
TemplateParameter (0 1); -- source
ParameterableElement![](/se-interop/image/down-arrow.png?hunchentoot-session=96119%3A3B59C65121560E94BC85988A8DF59D65)
templateParameter :
TemplateParameter (0 1); -- source
ParameterableElement![](/se-interop/image/down-arrow.png?hunchentoot-session=96119%3A3B59C65121560E94BC85988A8DF59D65)
clientDependency :
Dependency (0 *); -- source
NamedElement![](/se-interop/image/down-arrow.png?hunchentoot-session=96119%3A3B59C65121560E94BC85988A8DF59D65)
name : String (0 1); -- source
NamedElement![](/se-interop/image/down-arrow.png?hunchentoot-session=96119%3A3B59C65121560E94BC85988A8DF59D65)
nameExpression :
StringExpression (0 1); -- source
NamedElement![](/se-interop/image/down-arrow.png?hunchentoot-session=96119%3A3B59C65121560E94BC85988A8DF59D65)
namespace :
Namespace (0 1); -- source
NamedElement![](/se-interop/image/down-arrow.png?hunchentoot-session=96119%3A3B59C65121560E94BC85988A8DF59D65)
qualifiedName : String (0 1); -- source
NamedElement![](/se-interop/image/down-arrow.png?hunchentoot-session=96119%3A3B59C65121560E94BC85988A8DF59D65)
source :
Element (1 *); -- source
DirectedRelationship![](/se-interop/image/down-arrow.png?hunchentoot-session=96119%3A3B59C65121560E94BC85988A8DF59D65)
target :
Element (1 *); -- source
DirectedRelationship![](/se-interop/image/down-arrow.png?hunchentoot-session=96119%3A3B59C65121560E94BC85988A8DF59D65)
relatedElement :
Element (1 *); -- source
Relationship![](/se-interop/image/down-arrow.png?hunchentoot-session=96119%3A3B59C65121560E94BC85988A8DF59D65)
ownedComment :
Comment (0 *); -- source
Element![](/se-interop/image/down-arrow.png?hunchentoot-session=96119%3A3B59C65121560E94BC85988A8DF59D65)
ownedElement :
Element (0 *); -- source
Element![](/se-interop/image/down-arrow.png?hunchentoot-session=96119%3A3B59C65121560E94BC85988A8DF59D65)
owner :
Element (0 1); -- source
ElementConstraints:
Signature: sources_and_targets_kind() : Boolean;
Description: The sources and targets of the information flow can only be one of the
following kind: Actor, Node, UseCase, Artifact, Class, Component, Port,
Property, Interface, Package, ActivityNode, ActivityPartition and InstanceSpecification
except when its classifier is a relationship (i.e. it represents a link).
The OCL used here is not normative.Editor's notes: p-> missing in many places
Expression: (self.informationSource->forAll(p | p->oclIsKindOf(Actor) or p->oclIsKindOf(Node) or
p->oclIsKindOf(UseCase) or p->oclIsKindOf(Artifact) or p->oclIsKindOf(Class) or
p->oclIsKindOf(Component) or p->oclIsKindOf(Port) or p->oclIsKindOf(Property) or
p->oclIsKindOf(Interface) or p->oclIsKindOf(Package) or p->oclIsKindOf(ActivityNode) or
p->oclIsKindOf(ActivityPartition) or p->oclIsKindOf(InstanceSpecification))) and
(self.informationTarget->forAll(p | p->oclIsKindOf(Actor) or p->oclIsKindOf(Node) or
p->oclIsKindOf(UseCase) or p->oclIsKindOf(Artifact) or p->oclIsKindOf(Class) or
p->oclIsKindOf(Component) or p->oclIsKindOf(Port) or p->oclIsKindOf(Property) or
p->oclIsKindOf(Interface) or p->oclIsKindOf(Package) or p->oclIsKindOf(ActivityNode) or
p->oclIsKindOf(ActivityPartition) or p->oclIsKindOf(InstanceSpecification)))
Original: (self.informationSource->forAll(p | p->oclIsKindOf(Actor) or oclIsKindOf(Node) or
oclIsKindOf(UseCase) or oclIsKindOf(Artifact) or oclIsKindOf(Class) or
oclIsKindOf(Component) or oclIsKindOf(Port) or oclIsKindOf(Property) or
oclIsKindOf(Interface) or oclIsKindOf(Package) or oclIsKindOf(ActivityNode) or
oclIsKindOf(ActivityPartition) or oclIsKindOf(InstanceSpecification))) and
(self.informationTarget->forAll(p | p->oclIsKindOf(Actor) or oclIsKindOf(Node) or
oclIsKindOf(UseCase) or oclIsKindOf(Artifact) or oclIsKindOf(Class) or
oclIsKindOf(Component) or oclIsKindOf(Port) or oclIsKindOf(Property) or
oclIsKindOf(Interface) or oclIsKindOf(Package) or oclIsKindOf(ActivityNode) or
oclIsKindOf(ActivityPartition) or oclIsKindOf(InstanceSpecification)))
Signature: must_conform() : Boolean;
Description: The sources and targets of the information flow must conform with the sources
and targets or conversely the targets and sources of the realization relationships.
Expression: true
Signature: convey_classifiers() : Boolean;
Description: An information flow can only convey classifiers that are allowed to represent
an information item.
Expression: self.conveyed.represented->forAll(p | p->oclIsKindOf(Class) or oclIsKindOf(Interface)
or oclIsKindOf(InformationItem) or oclIsKindOf(Signal) or oclIsKindOf(Component))
Operations:
No additional operations.
Send questions or comments to
[email protected].