Class InformationFlow
InformationFlows describe circulation of information through a system in a general manner. They do not specify the nature of the information, mechanisms by which it is conveyed, sequences of exchange or any control conditions. During more detailed modeling, representation and realization links may be added to specify which model elements implement an InformationFlow and to show how information is conveyed. InformationFlows require some kind of “information channel” for unidirectional transmission of information items from sources to targets. They specify the information channel’s realizations, if any, and identify the information that flows along them. Information moving along the information channel may be represented by abstract InformationItems and by concrete Classifiers. <p>From package UML::InformationFlows.</p>
[XmlNamespace("http://www.eclipse.org/uml2/5.0.0/UML")]
[XmlNamespacePrefix("uml")]
[ModelRepresentationClass("http://www.eclipse.org/uml2/5.0.0/UML#//InformationFlow")]
public class InformationFlow : PackageableElement, IInformationFlow, IDirectedRelationship, IRelationship, IPackageableElement, IParameterableElement, INamedElement, IElement, IEModelElement, IModelElement, INotifyPropertyChanged, INotifyPropertyChanging
- Inheritance
-
InformationFlow
- Implements
- Inherited Members
Constructors
InformationFlow()
Creates a new instance
public InformationFlow()
Properties
Children
Gets the child model elements of this model element
public override IEnumerableExpression<IModelElement> Children { get; }
Property Value
ClassInstance
Gets the Class model for this type
public static IClass ClassInstance { get; }
Property Value
Conveyed
Specifies the information items that may circulate on this information flow. <p>From package UML::InformationFlows.</p>
[LowerBound(1)]
[XmlElementName("conveyed")]
[XmlAttribute(true)]
public ISetExpression<IClassifier> Conveyed { get; }
Property Value
InformationSource
Defines from which source the conveyed InformationItems are initiated. <p>From package UML::InformationFlows.</p>
[LowerBound(1)]
[XmlElementName("informationSource")]
[XmlAttribute(true)]
public ISetExpression<INamedElement> InformationSource { get; }
Property Value
InformationTarget
Defines to which target the conveyed InformationItems are directed. <p>From package UML::InformationFlows.</p>
[LowerBound(1)]
[XmlElementName("informationTarget")]
[XmlAttribute(true)]
public ISetExpression<INamedElement> InformationTarget { get; }
Property Value
Realization
Determines which Relationship will realize the specified flow. <p>From package UML::InformationFlows.</p>
[XmlElementName("realization")]
[XmlAttribute(true)]
public ISetExpression<IRelationship> Realization { get; }
Property Value
RealizingActivityEdge
Determines which ActivityEdges will realize the specified flow. <p>From package UML::InformationFlows.</p>
[XmlElementName("realizingActivityEdge")]
[XmlAttribute(true)]
public ISetExpression<IActivityEdge> RealizingActivityEdge { get; }
Property Value
RealizingConnector
Determines which Connectors will realize the specified flow. <p>From package UML::InformationFlows.</p>
[XmlElementName("realizingConnector")]
[XmlAttribute(true)]
public ISetExpression<IConnector> RealizingConnector { get; }
Property Value
RealizingMessage
Determines which Messages will realize the specified flow. <p>From package UML::InformationFlows.</p>
[XmlElementName("realizingMessage")]
[XmlAttribute(true)]
public ISetExpression<IMessage> RealizingMessage { get; }
Property Value
ReferencedElements
Gets the referenced model elements of this model element
public override IEnumerableExpression<IModelElement> ReferencedElements { get; }
Property Value
Methods
Convey_classifiers(object, object)
An information flow can only convey classifiers that are allowed to represent an information item. self.conveyed->forAll(oclIsKindOf(Class) or oclIsKindOf(Interface) or oclIsKindOf(InformationItem) or oclIsKindOf(Signal) or oclIsKindOf(Component))
public bool Convey_classifiers(object diagnostics, object context)
Parameters
diagnostics
objectThe chain of diagnostics to which problems are to be appended.
context
objectThe cache of context-specific information.
Returns
GetClass()
Gets the Class for this model element
public override IClass GetClass()
Returns
GetCollectionForFeature(string)
Gets the Model element collection for the given feature
protected override IList GetCollectionForFeature(string feature)
Parameters
feature
stringThe requested feature
Returns
- IList
A non-generic list of elements
Must_conform(object, object)
The sources and targets of the information flow must conform to the sources and targets or conversely the targets and sources of the realization relationships.
public bool Must_conform(object diagnostics, object context)
Parameters
diagnostics
objectThe chain of diagnostics to which problems are to be appended.
context
objectThe cache of context-specific information.
Returns
Sources_and_targets_kind(object, object)
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, Behavior and InstanceSpecification except when its classifier is a relationship (i.e. it represents a link). (self.informationSource->forAll( sis | 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 not sis.oclAsType(InstanceSpecification).classifier->exists(oclIsKindOf(Relationship)))))
and
(self.informationTarget->forAll( sit | 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 not sit.oclAsType(InstanceSpecification).classifier->exists(oclIsKindOf(Relationship)))))
public bool Sources_and_targets_kind(object diagnostics, object context)
Parameters
diagnostics
objectThe chain of diagnostics to which problems are to be appended.
context
objectThe cache of context-specific information.