Class UML 2.4.1::FunctionBehavior
Description:
A function behavior is an opaque behavior that does not access or modify
any objects or other external data.
Direct Superclasses: OpaqueBehaviorDirect Subclasses: Class Precedence List: FunctionBehavior,
OpaqueBehavior,
Behavior,
Class,
EncapsulatedClassifier,
StructuredClassifier,
BehavioredClassifier,
Classifier,
Namespace,
Type,
PackageableElement,
ParameterableElement,
RedefinableElement,
NamedElement,
TemplateableElement,
ElementProperties:
![](/se-interop/image/down-arrow.png?hunchentoot-session=97014%3A3BF2D1ED236F22CD69DE88E9CC0D73FE)
body : String (0 *); -- source
OpaqueBehavior![](/se-interop/image/down-arrow.png?hunchentoot-session=97014%3A3BF2D1ED236F22CD69DE88E9CC0D73FE)
language : String (0 *); -- source
OpaqueBehavior![](/se-interop/image/down-arrow.png?hunchentoot-session=97014%3A3BF2D1ED236F22CD69DE88E9CC0D73FE)
context :
BehavioredClassifier (0 1); -- source
Behavior![](/se-interop/image/down-arrow.png?hunchentoot-session=97014%3A3BF2D1ED236F22CD69DE88E9CC0D73FE)
isReentrant : Boolean (1 1); -- source
Behavior![](/se-interop/image/right-arrow.png?hunchentoot-session=97014%3A3BF2D1ED236F22CD69DE88E9CC0D73FE)
ownedParameter :
Parameter (0 *); -- source
BehaviorReferences a list of parameters to the behavior which describes the order
and type of arguments that can be given when the behavior is invoked and
of the values which will be returned when the behavior completes its execution.
{
composite,
ordered}
Subsets: Namespace.ownedMember
![](/se-interop/image/down-arrow.png?hunchentoot-session=97014%3A3BF2D1ED236F22CD69DE88E9CC0D73FE)
ownedParameterSet :
ParameterSet (0 *); -- source
Behavior![](/se-interop/image/down-arrow.png?hunchentoot-session=97014%3A3BF2D1ED236F22CD69DE88E9CC0D73FE)
postcondition :
Constraint (0 *); -- source
Behavior![](/se-interop/image/right-arrow.png?hunchentoot-session=97014%3A3BF2D1ED236F22CD69DE88E9CC0D73FE)
precondition :
Constraint (0 *); -- source
BehaviorAn optional set of Constraints specifying what must be fulfilled when the
behavior is invoked.
{
composite}
Subsets: Namespace.ownedRule
![](/se-interop/image/down-arrow.png?hunchentoot-session=97014%3A3BF2D1ED236F22CD69DE88E9CC0D73FE)
redefinedBehavior :
Behavior (0 *); -- source
Behavior![](/se-interop/image/down-arrow.png?hunchentoot-session=97014%3A3BF2D1ED236F22CD69DE88E9CC0D73FE)
specification :
BehavioralFeature (0 1); -- source
Behavior![](/se-interop/image/down-arrow.png?hunchentoot-session=97014%3A3BF2D1ED236F22CD69DE88E9CC0D73FE)
extension :
Extension (0 *); -- source
Class![](/se-interop/image/down-arrow.png?hunchentoot-session=97014%3A3BF2D1ED236F22CD69DE88E9CC0D73FE)
isAbstract : Boolean (1 1); -- source
Class![](/se-interop/image/down-arrow.png?hunchentoot-session=97014%3A3BF2D1ED236F22CD69DE88E9CC0D73FE)
isActive : Boolean (1 1); -- source
Class![](/se-interop/image/down-arrow.png?hunchentoot-session=97014%3A3BF2D1ED236F22CD69DE88E9CC0D73FE)
nestedClassifier :
Classifier (0 *); -- source
Class![](/se-interop/image/down-arrow.png?hunchentoot-session=97014%3A3BF2D1ED236F22CD69DE88E9CC0D73FE)
ownedAttribute :
Property (0 *); -- source
Class![](/se-interop/image/down-arrow.png?hunchentoot-session=97014%3A3BF2D1ED236F22CD69DE88E9CC0D73FE)
ownedOperation :
Operation (0 *); -- source
Class![](/se-interop/image/down-arrow.png?hunchentoot-session=97014%3A3BF2D1ED236F22CD69DE88E9CC0D73FE)
ownedReception :
Reception (0 *); -- source
Class![](/se-interop/image/down-arrow.png?hunchentoot-session=97014%3A3BF2D1ED236F22CD69DE88E9CC0D73FE)
superClass :
Class (0 *); -- source
Class![](/se-interop/image/down-arrow.png?hunchentoot-session=97014%3A3BF2D1ED236F22CD69DE88E9CC0D73FE)
ownedPort :
Port (0 *); -- source
EncapsulatedClassifier![](/se-interop/image/down-arrow.png?hunchentoot-session=97014%3A3BF2D1ED236F22CD69DE88E9CC0D73FE)
ownedConnector :
Connector (0 *); -- source
StructuredClassifier![](/se-interop/image/down-arrow.png?hunchentoot-session=97014%3A3BF2D1ED236F22CD69DE88E9CC0D73FE)
part :
Property (0 *); -- source
StructuredClassifier![](/se-interop/image/down-arrow.png?hunchentoot-session=97014%3A3BF2D1ED236F22CD69DE88E9CC0D73FE)
role :
ConnectableElement (0 *); -- source
StructuredClassifier![](/se-interop/image/down-arrow.png?hunchentoot-session=97014%3A3BF2D1ED236F22CD69DE88E9CC0D73FE)
classifierBehavior :
Behavior (0 1); -- source
BehavioredClassifier![](/se-interop/image/down-arrow.png?hunchentoot-session=97014%3A3BF2D1ED236F22CD69DE88E9CC0D73FE)
interfaceRealization :
InterfaceRealization (0 *); -- source
BehavioredClassifier![](/se-interop/image/down-arrow.png?hunchentoot-session=97014%3A3BF2D1ED236F22CD69DE88E9CC0D73FE)
ownedBehavior :
Behavior (0 *); -- source
BehavioredClassifier![](/se-interop/image/down-arrow.png?hunchentoot-session=97014%3A3BF2D1ED236F22CD69DE88E9CC0D73FE)
attribute :
Property (0 *); -- source
Classifier![](/se-interop/image/down-arrow.png?hunchentoot-session=97014%3A3BF2D1ED236F22CD69DE88E9CC0D73FE)
collaborationUse :
CollaborationUse (0 *); -- source
Classifier![](/se-interop/image/down-arrow.png?hunchentoot-session=97014%3A3BF2D1ED236F22CD69DE88E9CC0D73FE)
feature :
Feature (0 *); -- source
Classifier![](/se-interop/image/right-arrow.png?hunchentoot-session=97014%3A3BF2D1ED236F22CD69DE88E9CC0D73FE)
generalization :
Generalization (0 *); -- source
ClassifierSpecifies the Generalization relationships for this Classifier. These Generalizations
navigaten to more general classifiers in the generalization hierarchy.
{
composite}
Subsets: Element.ownedElement
Opposite: Generalization.specific
![](/se-interop/image/down-arrow.png?hunchentoot-session=97014%3A3BF2D1ED236F22CD69DE88E9CC0D73FE)
inheritedMember :
NamedElement (0 *); -- source
Classifier![](/se-interop/image/down-arrow.png?hunchentoot-session=97014%3A3BF2D1ED236F22CD69DE88E9CC0D73FE)
isFinalSpecialization : Boolean (1 1); -- source
Classifier![](/se-interop/image/down-arrow.png?hunchentoot-session=97014%3A3BF2D1ED236F22CD69DE88E9CC0D73FE)
ownedTemplateSignature :
RedefinableTemplateSignature (0 1); -- source
Classifier![](/se-interop/image/down-arrow.png?hunchentoot-session=97014%3A3BF2D1ED236F22CD69DE88E9CC0D73FE)
ownedUseCase :
UseCase (0 *); -- source
Classifier![](/se-interop/image/down-arrow.png?hunchentoot-session=97014%3A3BF2D1ED236F22CD69DE88E9CC0D73FE)
powertypeExtent :
GeneralizationSet (0 *); -- source
Classifier![](/se-interop/image/down-arrow.png?hunchentoot-session=97014%3A3BF2D1ED236F22CD69DE88E9CC0D73FE)
redefinedClassifier :
Classifier (0 *); -- source
Classifier![](/se-interop/image/down-arrow.png?hunchentoot-session=97014%3A3BF2D1ED236F22CD69DE88E9CC0D73FE)
representation :
CollaborationUse (0 1); -- source
Classifier![](/se-interop/image/down-arrow.png?hunchentoot-session=97014%3A3BF2D1ED236F22CD69DE88E9CC0D73FE)
substitution :
Substitution (0 *); -- source
Classifier![](/se-interop/image/down-arrow.png?hunchentoot-session=97014%3A3BF2D1ED236F22CD69DE88E9CC0D73FE)
templateParameter :
ClassifierTemplateParameter (0 1); -- source
Classifier![](/se-interop/image/down-arrow.png?hunchentoot-session=97014%3A3BF2D1ED236F22CD69DE88E9CC0D73FE)
useCase :
UseCase (0 *); -- source
Classifier![](/se-interop/image/down-arrow.png?hunchentoot-session=97014%3A3BF2D1ED236F22CD69DE88E9CC0D73FE)
elementImport :
ElementImport (0 *); -- source
Namespace![](/se-interop/image/down-arrow.png?hunchentoot-session=97014%3A3BF2D1ED236F22CD69DE88E9CC0D73FE)
importedMember :
PackageableElement (0 *); -- source
Namespace![](/se-interop/image/down-arrow.png?hunchentoot-session=97014%3A3BF2D1ED236F22CD69DE88E9CC0D73FE)
member :
NamedElement (0 *); -- source
Namespace![](/se-interop/image/down-arrow.png?hunchentoot-session=97014%3A3BF2D1ED236F22CD69DE88E9CC0D73FE)
ownedMember :
NamedElement (0 *); -- source
Namespace![](/se-interop/image/down-arrow.png?hunchentoot-session=97014%3A3BF2D1ED236F22CD69DE88E9CC0D73FE)
ownedRule :
Constraint (0 *); -- source
Namespace![](/se-interop/image/down-arrow.png?hunchentoot-session=97014%3A3BF2D1ED236F22CD69DE88E9CC0D73FE)
packageImport :
PackageImport (0 *); -- source
Namespace![](/se-interop/image/down-arrow.png?hunchentoot-session=97014%3A3BF2D1ED236F22CD69DE88E9CC0D73FE)
package :
Package (0 1); -- source
Type![](/se-interop/image/right-arrow.png?hunchentoot-session=97014%3A3BF2D1ED236F22CD69DE88E9CC0D73FE)
visibility :
VisibilityKind (1 1); -- source
PackageableElementIndicates that packageable elements must always have a visibility, i.e.,
visibility is not optional.
Redefines: NamedElement.visibility
Default value: PUBLIC
![](/se-interop/image/down-arrow.png?hunchentoot-session=97014%3A3BF2D1ED236F22CD69DE88E9CC0D73FE)
owningTemplateParameter :
TemplateParameter (0 1); -- source
ParameterableElement![](/se-interop/image/down-arrow.png?hunchentoot-session=97014%3A3BF2D1ED236F22CD69DE88E9CC0D73FE)
isLeaf : Boolean (1 1); -- source
RedefinableElement![](/se-interop/image/down-arrow.png?hunchentoot-session=97014%3A3BF2D1ED236F22CD69DE88E9CC0D73FE)
redefinedElement :
RedefinableElement (0 *); -- source
RedefinableElement![](/se-interop/image/down-arrow.png?hunchentoot-session=97014%3A3BF2D1ED236F22CD69DE88E9CC0D73FE)
redefinitionContext :
Classifier (0 *); -- source
RedefinableElement![](/se-interop/image/down-arrow.png?hunchentoot-session=97014%3A3BF2D1ED236F22CD69DE88E9CC0D73FE)
clientDependency :
Dependency (0 *); -- source
NamedElement![](/se-interop/image/down-arrow.png?hunchentoot-session=97014%3A3BF2D1ED236F22CD69DE88E9CC0D73FE)
name : String (0 1); -- source
NamedElement![](/se-interop/image/down-arrow.png?hunchentoot-session=97014%3A3BF2D1ED236F22CD69DE88E9CC0D73FE)
nameExpression :
StringExpression (0 1); -- source
NamedElement![](/se-interop/image/down-arrow.png?hunchentoot-session=97014%3A3BF2D1ED236F22CD69DE88E9CC0D73FE)
namespace :
Namespace (0 1); -- source
NamedElement![](/se-interop/image/down-arrow.png?hunchentoot-session=97014%3A3BF2D1ED236F22CD69DE88E9CC0D73FE)
qualifiedName : String (0 1); -- source
NamedElement![](/se-interop/image/down-arrow.png?hunchentoot-session=97014%3A3BF2D1ED236F22CD69DE88E9CC0D73FE)
templateBinding :
TemplateBinding (0 *); -- source
TemplateableElement![](/se-interop/image/down-arrow.png?hunchentoot-session=97014%3A3BF2D1ED236F22CD69DE88E9CC0D73FE)
ownedComment :
Comment (0 *); -- source
Element![](/se-interop/image/down-arrow.png?hunchentoot-session=97014%3A3BF2D1ED236F22CD69DE88E9CC0D73FE)
ownedElement :
Element (0 *); -- source
Element![](/se-interop/image/down-arrow.png?hunchentoot-session=97014%3A3BF2D1ED236F22CD69DE88E9CC0D73FE)
owner :
Element (0 1); -- source
ElementConstraints:
Signature: types_of_parameters() : Boolean;
Description: The types of parameters are all data types, which may not nest anything
but other datatypes.
The OCL used here is not normative.Editor's notes: Is this an operator or a constraint?
Expression: true
Original: def: hasAllDataTypeAttributes(d : DataType) : Boolean = d.ownedAttribute->forAll(a | a.type.oclIsTypeOf(DataType) and hasAllDataTypeAttributes(a.type)) self.ownedParameters->forAll(p | p.type.notEmpty() and p.oclIsTypeOf(DataType) and hasAllDataTypeAttributes(p))
Signature: one_output_parameter() : Boolean;
Description: A function behavior has at least one output parameter.
Expression: self.ownedParameters-> select(p | p.direction=#out or p.direction=#inout or p.direction=#return)->size() >= 1
Operations:
No additional operations.
Send questions or comments to
[email protected].