Software Disclaimer

Abstract Class UML 2.3::WriteStructuralFeatureAction

Description:

WriteStructuralFeatureAction is an abstract class for structural feature actions that change structural feature values.

Direct Superclasses: StructuralFeatureAction

Direct Subclasses: RemoveStructuralFeatureValueAction, AddStructuralFeatureValueAction

Class Precedence List: WriteStructuralFeatureAction, StructuralFeatureAction, Action, ExecutableNode, ActivityNode, RedefinableElement, NamedElement, Element

Properties:

result : OutputPin (0 1); -- source WriteStructuralFeatureAction
value : InputPin (0 1); -- source WriteStructuralFeatureAction
object : InputPin (1 1); -- source StructuralFeatureAction
structuralFeature : StructuralFeature (1 1); -- source StructuralFeatureAction
context : Classifier (0 1); -- source Action
input : InputPin (0 *); -- source Action
isLocallyReentrant : Boolean (1 1); -- source Action
localPostcondition : Constraint (0 *); -- source Action
localPrecondition : Constraint (0 *); -- source Action
output : OutputPin (0 *); -- source Action
handler : ExceptionHandler (0 *); -- source ExecutableNode
activity : Activity (0 1); -- source ActivityNode
inGroup : ActivityGroup (0 *); -- source ActivityNode

Groups containing the node.
{readonly}
Derived union with sources: (inStructuredNode, inPartition, inInterruptibleRegion)
Opposite: ActivityGroup.containedNode

inInterruptibleRegion : InterruptibleActivityRegion (0 *); -- source ActivityNode
inPartition : ActivityPartition (0 *); -- source ActivityNode
inStructuredNode : StructuredActivityNode (0 1); -- source ActivityNode
incoming : ActivityEdge (0 *); -- source ActivityNode
outgoing : ActivityEdge (0 *); -- source ActivityNode
redefinedNode : ActivityNode (0 *); -- source ActivityNode
isLeaf : Boolean (1 1); -- source RedefinableElement
redefinedElement : RedefinableElement (0 *); -- source RedefinableElement
redefinitionContext : Classifier (0 *); -- source RedefinableElement
clientDependency : Dependency (0 *); -- source NamedElement
name : String (0 1); -- source NamedElement
nameExpression : StringExpression (0 1); -- source NamedElement
namespace : Namespace (0 1); -- source NamedElement
qualifiedName : String (0 1); -- source NamedElement
visibility : VisibilityKind (0 1); -- source NamedElement
ownedComment : Comment (0 *); -- source Element
ownedElement : Element (0 *); -- source Element
owner : Element (0 1); -- source Element

Constraints:

Signature: type_of_result() : Boolean;
Description: The type of the result output pin is the same as the type of the inherited object input pin.
Expression: result->notEmpty() implies self.result.type = self.object.type

Signature: multiplicity_of_result() : Boolean;
Description: The multiplicity of the result output pin must be 1..1.
The OCL used here is not normative.
Editor's notes: No multiplicity
Expression: result->notEmpty() implies self.result.is(1,1)
Original: result->notEmpty() implies self.result.multiplicity.is(1,1)

Signature: multiplicity() : Boolean;
Description: The multiplicity of the input pin is 1..1.
The OCL used here is not normative.
Editor's notes: No multiplicity
Expression: self.value.is(1,1)
Original: self.value.multiplicity.is(1,1)

Signature: input_pin() : Boolean;
Description: The type input pin is the same as the classifier of the structural feature.
Expression: self.value -> notEmpty() implies self.value.type.oclIsKindOf(Classifier) and self.structuralFeature.featuringClassifier->includes(self.value.type.oclAsType(Classifier))

Operations:

No additional operations.



Send questions or comments to [email protected].