Abstract Class UML 2.4.1::BehavioralFeature
Description:
A behavioral feature is a feature of a classifier that specifies an aspect
of the behavior of its instances.A behavioral feature is implemented (realized)
by a behavior. A behavioral feature specifies that a classifier will respond
to a designated request by invoking its implementing method.A behavioral
feature owns zero or more parameter sets.
Direct Superclasses: Namespace,
FeatureDirect Subclasses: Reception,
OperationClass Precedence List: BehavioralFeature,
Namespace,
Feature,
RedefinableElement,
NamedElement,
ElementProperties:
![](/se-interop/image/right-arrow.png?hunchentoot-session=98027%3A2D75451AD077F40BD5C74B7BCC07CC9D)
concurrency :
CallConcurrencyKind (1 1); -- source
BehavioralFeatureSpecifies the semantics of concurrent calls to the same passive instance
(i.e., an instance originating from a class with isActive being false).
Active instances control access to their own behavioral features.
Default value: SEQUENTIAL
![](/se-interop/image/down-arrow.png?hunchentoot-session=98027%3A2D75451AD077F40BD5C74B7BCC07CC9D)
isAbstract : Boolean (1 1); -- source
BehavioralFeature![](/se-interop/image/down-arrow.png?hunchentoot-session=98027%3A2D75451AD077F40BD5C74B7BCC07CC9D)
method :
Behavior (0 *); -- source
BehavioralFeature![](/se-interop/image/down-arrow.png?hunchentoot-session=98027%3A2D75451AD077F40BD5C74B7BCC07CC9D)
ownedParameter :
Parameter (0 *); -- source
BehavioralFeature![](/se-interop/image/down-arrow.png?hunchentoot-session=98027%3A2D75451AD077F40BD5C74B7BCC07CC9D)
ownedParameterSet :
ParameterSet (0 *); -- source
BehavioralFeature![](/se-interop/image/right-arrow.png?hunchentoot-session=98027%3A2D75451AD077F40BD5C74B7BCC07CC9D)
raisedException :
Type (0 *); -- source
BehavioralFeatureReferences the Types representing exceptions that may be raised during
an invocation of this feature.
![](/se-interop/image/down-arrow.png?hunchentoot-session=98027%3A2D75451AD077F40BD5C74B7BCC07CC9D)
elementImport :
ElementImport (0 *); -- source
Namespace![](/se-interop/image/down-arrow.png?hunchentoot-session=98027%3A2D75451AD077F40BD5C74B7BCC07CC9D)
importedMember :
PackageableElement (0 *); -- source
Namespace![](/se-interop/image/down-arrow.png?hunchentoot-session=98027%3A2D75451AD077F40BD5C74B7BCC07CC9D)
member :
NamedElement (0 *); -- source
Namespace![](/se-interop/image/right-arrow.png?hunchentoot-session=98027%3A2D75451AD077F40BD5C74B7BCC07CC9D)
ownedMember :
NamedElement (0 *); -- source
NamespaceA collection of NamedElements owned by the Namespace.
{
composite,
readonly}
Derived union with sources: (ownedRule, ownedParameterSet, ownedParameter)
Subsets: Element.ownedElement, Namespace.member
Opposite: NamedElement.namespace
![](/se-interop/image/down-arrow.png?hunchentoot-session=98027%3A2D75451AD077F40BD5C74B7BCC07CC9D)
ownedRule :
Constraint (0 *); -- source
Namespace![](/se-interop/image/down-arrow.png?hunchentoot-session=98027%3A2D75451AD077F40BD5C74B7BCC07CC9D)
packageImport :
PackageImport (0 *); -- source
Namespace![](/se-interop/image/down-arrow.png?hunchentoot-session=98027%3A2D75451AD077F40BD5C74B7BCC07CC9D)
featuringClassifier :
Classifier (0 *); -- source
Feature![](/se-interop/image/down-arrow.png?hunchentoot-session=98027%3A2D75451AD077F40BD5C74B7BCC07CC9D)
isStatic : Boolean (1 1); -- source
Feature![](/se-interop/image/down-arrow.png?hunchentoot-session=98027%3A2D75451AD077F40BD5C74B7BCC07CC9D)
isLeaf : Boolean (1 1); -- source
RedefinableElement![](/se-interop/image/down-arrow.png?hunchentoot-session=98027%3A2D75451AD077F40BD5C74B7BCC07CC9D)
redefinedElement :
RedefinableElement (0 *); -- source
RedefinableElement![](/se-interop/image/down-arrow.png?hunchentoot-session=98027%3A2D75451AD077F40BD5C74B7BCC07CC9D)
redefinitionContext :
Classifier (0 *); -- source
RedefinableElement![](/se-interop/image/down-arrow.png?hunchentoot-session=98027%3A2D75451AD077F40BD5C74B7BCC07CC9D)
clientDependency :
Dependency (0 *); -- source
NamedElement![](/se-interop/image/down-arrow.png?hunchentoot-session=98027%3A2D75451AD077F40BD5C74B7BCC07CC9D)
name : String (0 1); -- source
NamedElement![](/se-interop/image/down-arrow.png?hunchentoot-session=98027%3A2D75451AD077F40BD5C74B7BCC07CC9D)
nameExpression :
StringExpression (0 1); -- source
NamedElement![](/se-interop/image/down-arrow.png?hunchentoot-session=98027%3A2D75451AD077F40BD5C74B7BCC07CC9D)
namespace :
Namespace (0 1); -- source
NamedElement![](/se-interop/image/down-arrow.png?hunchentoot-session=98027%3A2D75451AD077F40BD5C74B7BCC07CC9D)
qualifiedName : String (0 1); -- source
NamedElement![](/se-interop/image/down-arrow.png?hunchentoot-session=98027%3A2D75451AD077F40BD5C74B7BCC07CC9D)
visibility :
VisibilityKind (0 1); -- source
NamedElement![](/se-interop/image/down-arrow.png?hunchentoot-session=98027%3A2D75451AD077F40BD5C74B7BCC07CC9D)
ownedComment :
Comment (0 *); -- source
Element![](/se-interop/image/down-arrow.png?hunchentoot-session=98027%3A2D75451AD077F40BD5C74B7BCC07CC9D)
ownedElement :
Element (0 *); -- source
Element![](/se-interop/image/down-arrow.png?hunchentoot-session=98027%3A2D75451AD077F40BD5C74B7BCC07CC9D)
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].