Abstract Class UML 2.3::BehavioralFeature
Description:
A behavioral feature owns zero or more parameter sets.
Direct Superclasses: Namespace,
FeatureDirect Subclasses: Reception,
OperationClass Precedence List: BehavioralFeature,
Namespace,
Feature,
RedefinableElement,
NamedElement,
ElementProperties:

concurrency :
CallConcurrencyKind (1 1); -- source
BehavioralFeature
isAbstract : Boolean (1 1); -- source
BehavioralFeature
method :
Behavior (0 *); -- source
BehavioralFeature
ownedParameter :
Parameter (0 *); -- source
BehavioralFeature
ownedParameterSet :
ParameterSet (0 *); -- source
BehavioralFeature
raisedException :
Type (0 *); -- source
BehavioralFeature
elementImport :
ElementImport (0 *); -- source
Namespace
importedMember :
PackageableElement (0 *); -- source
Namespace
member :
NamedElement (0 *); -- source
Namespace
ownedMember :
NamedElement (0 *); -- source
Namespace
ownedRule :
Constraint (0 *); -- source
Namespace
packageImport :
PackageImport (0 *); -- source
Namespace
featuringClassifier :
Classifier (0 *); -- source
Feature
isStatic : Boolean (1 1); -- source
Feature
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
ElementConstraints:
Signature: CMOF_14_3_17() : Boolean;
Description: 14.3 [17] BehavioralFeature must be sequential
https://sites.google.com/site/metamodelingantipatterns/catalog/mof/behavioral-feature-is-not-sequential
Expression: concurrency = CallConcurrencyKind::sequential
Operations:
Signature: isDistinguishableFrom(n : NamedElement; ns : Namespace; ) : Boolean;
Description: The query isDistinguishableFrom() determines whether two BehavioralFeatures may coexist in the same Namespace. It specifies that they have to have different signatures.
Expression: result = if n.oclIsKindOf(BehavioralFeature)
then
if ns.getNamesOfMember(self)->intersection(ns.getNamesOfMember(n))->notEmpty()
then Set{}->including(self)->including(n)->isUnique(bf | bf.ownedParameter->collect(type))
else true
endif
else true
endif
Send questions or comments to
[email protected].