Previous Table of Contents Next


5.5.2 Expressions Associations


   5.5.2.1 ExpressionNodeClassifier

   The ExpressionNodeClassifier association identifies the type of an ExpressionNode instance.

   Ends

   expressionNode

Identifies the ExpressionNode instances for which this Classifier acts as the type.

class:

multiplicity:

ExpressionNode
zero or more

   type

Identifies the Classifier instance that represents the type of the expression at this level in the expression hierarchy. Although, formally, each node within an expression tree is capable of having a value and therefore, a data type, this reference is optional because modeling the data type of intermediate nodes in an expression tree is not always interesting, thereby reducing the effort required to create expression trees.

class:

multiplicity:

Classifier
zero or one

   5.5.2.2 NodeFeature

   The NodeFeature association identifies the Feature (usually, an Attribute or Operation subtype) that FeatureNode represents.

   Ends

   feature featureNode

Identifies the Feature (attribute or operation) that this FeatureNode instance represents.

class:

multiplicity:

Feature
exactly one

Identifies the FeatureNode instances that use a particular Feature.

class:

multiplicity:

FeatureNode
zero or more

   5.5.2.3 OperationArgument Protected

   The OperationArgument association identifies and orders the actual arguments of an Operation indicated by the FeatureNode end of the association. This association is meaningful only if the FeatureNode references, via the NodeFeature association, a Feature that is also an Operation. The association is not meaningful under other circumstances.

   Ends

   argument

Identifies the ExpressionNode instances that represent the actual arguments for this FeatureNode. If the argument reference is null, the FeatureNode is an attribute or parameter-less function or operation.

class:

multiplicity:

ExpressionNode
zero or more; ordered

   featureNode

Identifies the FeatureNode for which this ExpressionNode instance represents the value of an argument. Because arguments can themselves represent entire expression sub-trees, this reference is used to create hierarchies of expression nodes, permitting representation of entire expression trees within the CWM.

class:

multiplicity:

aggregation:

FeatureNode
zero or one
composite

   5.5.2.4 ReferencedElement

   The ReferencedElement association links the ElementNode instances of an expression with the ModelElement instances to which they refer.

   Ends

   elementNode

Identifies the ElementNode instances that represent a particular ModelElement in expressions.

class:

multiplicity:

ElementNode
zero or more

   modelElement

Identifies the ModelElement instance that this ElementNode references.

class:

multiplicity:

ModelElement
exactly one