Starion Group

OMG SysML® Version 2 Ecore based Meta Model Documentation

Release 2024-03

Powered By Starion Group, 2022-2024

1. Enumeration Types

FeatureDirectionKind

FeatureDirectionKind enumerates the possible kinds of direction that a Feature may be given as a member of a Type.

Name Description
in

Values of the Feature on each instance of its domain are determined externally to that instance and used internally.

inout

Values of the Feature on each instance are determined either as in or out directions, or both.

out

Values of the Feature on each instance of its domain are determined internally to that instance and used externally.

PortionKind

PortionKind is an enumeration of the specific kinds of Occurrence portions that can be represented by an OccurrenceUsage.

Name Description
timeslice

A time slice of an Occurrence (a portion over time).

snapshot

A snapshot of an Occurrence (a time slice with zero duration).

RequirementConstraintKind

A RequirementConstraintKind indicates whether a ConstraintUsage is an assumption or a requirement in a RequirementDefinition or RequirementUsage.

Name Description
assumption

Indicates that a member ConstraintUsage of a RequirementDefinition or RequirementUsage represents an assumption.

requirement

Indicates that a member ConstraintUsage of a RequirementDefinition or RequirementUsagerepresents an requirement.

StateSubactionKind

A StateSubactionKind indicates whether the action of a StateSubactionMembership is an entry, do or exit action.

Name Description
entry

Indicates that the action of a StateSubactionMembership is an entryAction.

do

Indicates that the action of a StateSubactionMembership is a doAction.

exit

Indicates that the action of a StateSubactionMembership is an exitAction.

TransitionFeatureKind

A TransitionActionKind indicates whether the transitionFeature of a TransitionFeatureMembership is a trigger, guard or effect.

Name Description
trigger

Indicates that the transitionFeature of a TransitionFeatureMembership is a triggerAction.

guard

Indicates that the transitionFeature of a TransitionFeatureMembership is a guardExpression.

effect

Indicates that the transitionFeature of a TransitionFeatureMembership is an effectAction.

TriggerKind

TriggerKind enumerates the kinds of triggers that can be represented by a TriggerInvocationExpression.

Name Description
when

Indicates a change trigger, corresponding to the TriggerWhen Function from the Triggers model in the Kernel Semantic Library.

at

Indicates an absolute time trigger, corresponding to the TriggerAt Function from the Triggers model in the Kernel Semantic Library.

after

Indicates a relative time trigger, corresponding to the TriggerAfter Function from the Triggers model in the Kernel Semantic Library.

VisibilityKind

VisibilityKind is an enumeration whose literals specify the visibility of a Membership of an Element in a Namespace outside of that Namespace. Note that "visibility" specifically restricts whether an Element in a Namespace may be referenced by name from outside the Namespace and only otherwise restricts access to an Element as provided by specific constraints in the abstract syntax (e.g., preventing the import or inheritance of private Elements).

Name Description
private

Indicates a Membership is not visible outside its owning Namespace.

protected

An intermediate level of visibility between public and private. By default, it is equivalent to private for the purposes of normal access to and import of Elements from a Namespace. However, other Relationships may be specified to include Memberships with protected visibility in the list of memberships for a Namespace (e.g., Specialization).

public

Indicates that a Membership is publicly visible outside its owning Namespace.

2. Classes

AcceptActionUsage

Definition

An AcceptActionUsage is an ActionUsage that specifies the acceptance of an incomingTransfer from the Occurrence given by the result of its receiverArgument Expression. (If no receiverArgument is provided, the default is the this context of the AcceptActionUsage.) The payload of the accepted Transfer is output on its payloadParameter. Which Transfers may be accepted is determined by conformance to the typing and (potentially) binding of the payloadParameter.inputParameters()->size() >= 2receiverArgument = argument(2)payloadArgument = argument(1)payloadParameter = if parameter->isEmpty() then null else parameter->first() endifnot isTriggerAction() implies specializesFromLibrary('Actions::acceptActions')isSubactionUsage() and not isTriggerAction() implies specializesFromLibrary('Actions::Action::acceptSubactions')isTriggerAction() implies specializesFromLibrary('Actions::TransitionAction::accepter')payloadArgument <> null andpayloadArgument.oclIsKindOf(TriggerInvocationExpression) implies let invocation : Expression = payloadArgument.oclAsType(Expression) in parameter->size() >= 2 and invocation.parameter->size() >= 2 and ownedFeature->selectByKind(BindingConnector)->exists(b | b.relatedFeatures->includes(parameter->at(2)) and b.relatedFeatures->includes(invocation.parameter->at(2)))

Features

Name Description
Is Abstract FALSE
Generalizations ActionUsage

Properties

Name Type Default Description Inheritance
actionDefinition Behavior [0..-1] {derived} The Behaviors that are the types of this ActionUsage. Nominally, these would be ActionDefinitions, but other kinds of Kernel Behaviors are also allowed, to permit use of Behaviors from the Kernel Model Libraries. ActionUsage
aliasIds string [0..-1] Various alternative identifiers for this Element. Generally, these will be set by tools. Element
behavior Behavior [0..-1] {derived} The Behaviors that type this Step. Step
chainingFeature Feature [0..-1] {derived} The Feature that are chained together to determine the values of this Feature, derived from the chainingFeatures of the ownedFeatureChainings of this Feature, in the same order. The values of a Feature with chainingFeatures are the same as values of the last Feature in the chain, which can be found by starting with the values of the first Feature (for each instance of the domain of the original Feature), then using each of those as domain instances to find the values of the second Feature in chainingFeatures, and so on, to values of the last Feature. Feature
declaredName string [0..1] The declared name of this Element. Element
declaredShortName string [0..1] An optional alternative name for the Element that is intended to be shorter or in some way more succinct than its primary name. It may act as a modeler-specified identifier for the Element, though it is then the responsibility of the modeler to maintain the uniqueness of this identifier within a model or relative to some other context. Element
definition Classifier [0..-1] {derived} The Classifiers that are the types of this Usage. Nominally, these are Definitions, but other kinds of Kernel Classifiers are also allowed, to permit use of Classifiers from the Kernel Model Libraries. Usage
differencingType Type [0..-1] {derived} The interpretations of a Type with differencingTypes are asserted to be those of the first of those Types, but not including those of the remaining Types. For example, a Classifier might be the difference of a Classifier for people and another for people of a particular nationality, leaving people who are not of that nationality. Similarly, a feature of people might be the difference between a feature for their children and a Classifier for people of a particular sex, identifying their children not of that sex (because the interpretations of the children Feature that identify those of that sex are also interpretations of the Classifier for that sex). Type
directedFeature Feature [0..-1] {derived} The features of this Type that have a non-null direction. Type
directedUsage Usage [0..-1] {derived} The usages of this Usage that are directedFeatures. Usage
direction FeatureDirectionKind [0..1] Indicates how values of this Feature are determined or used (as specified for the FeatureDirectionKind). Feature
documentation Documentation [0..-1] {derived} The Documentation owned by this Element. Element
elementId string [1..1] The globally unique identifier for this Element. This is intended to be set by tooling, and it must not change during the lifetime of the Element. Element
endFeature Feature [0..-1] {derived} All features of this Type with isEnd = true. Type
endOwningType Type [0..1] {derived} The Type that is related to this Feature by an EndFeatureMembership in which the Feature is an ownedMemberFeature. Feature
feature Feature [0..-1] {derived} The ownedMemberFeatures of the featureMemberships of this Type. Type
featureMembership FeatureMembership [0..-1] {derived} The FeatureMemberships for features of this Type, which include all ownedFeatureMemberships and those inheritedMemberships that are FeatureMemberships (but does not include any importedMemberships). Type
featuringType Type [0..-1] {derived} Types that feature this Feature, such that any instance in the domain of the Feature must be classified by all of these Types, including at least all the featuringTypes of its typeFeaturings. If the Feature is chained, then the featuringTypes of the first Feature in the chain are also featuringTypes of the chained Feature. Feature
importedMembership Membership [0..-1] {derived} The Memberships in this Namespace that result from the ownedImports of this Namespace. Namespace
individualDefinition OccurrenceDefinition [0..1] {derived} The at most one occurrenceDefinition that has isIndividual = true. OccurrenceUsage
inheritedFeature Feature [0..-1] {derived} All the memberFeatures of the inheritedMemberships of this Type that are FeatureMemberships. Type
inheritedMembership Membership [0..-1] {derived} All Memberships inherited by this Type via Specialization or Conjugation. These are included in the derived union for the memberships of the Type. Type
input Feature [0..-1] {derived} All features related to this Type by FeatureMemberships that have direction in or inout. Type
intersectingType Type [0..-1] {derived} The interpretations of a Type with intersectingTypes are asserted to be those in common among the intersectingTypes, which are the Types derived from the intersectingType of the ownedIntersectings of this Type. For example, a Classifier might be an intersection of Classifiers for people of a particular sex and of a particular nationality. Similarly, a feature for people's children of a particular sex might be the intersection of a Feature for their children and a Classifier for people of that sex (because the interpretations of the children Feature that identify those of that sex are also interpretations of the Classifier for that sex). Type
isAbstract bool [1..1] false Indicates whether instances of this Type must also be instances of at least one of its specialized Types. Type
isComposite bool [1..1] false Whether the Feature is a composite feature of its featuringType. If so, the values of the Feature cannot exist after its featuring instance no longer does. Feature
isConjugated bool [1..1] {derived} Indicates whether this Type has an ownedConjugator. Type
isDerived bool [1..1] false Whether the values of this Feature can always be computed from the values of other Features. Feature
isEnd bool [1..1] false Whether or not the this Feature is an end Feature, requiring a different interpretation of the multiplicity of the Feature.An end Feature is always considered to map each domain instance to a single co-domain instance, whether or not a Multiplicity is given for it. If a Multiplicity is given for an end Feature, rather than giving the co-domain cardinality for the Feature as usual, it specifies a cardinality constraint for navigating across the endFeatures of the featuringType of the end Feature. That is, if a Type has n endFeatures, then the Multiplicity of any one of those end Features constrains the cardinality of the set of values of that Feature when the values of the other n-1 end Features are held fixed. Feature
isImpliedIncluded bool [1..1] false Whether all necessary implied Relationships have been included in the ownedRelationships of this Element. This property may be true, even if there are not actually any ownedRelationships with isImplied = true, meaning that no such Relationships are actually implied for this Element. However, if it is false, then ownedRelationships may not contain any implied Relationships. That is, either all required implied Relationships must be included, or none of them. Element
isIndividual bool [1..1] false Whether this OccurrenceUsage represents the usage of the specific individual (or portion of it) represented by its individualDefinition. OccurrenceUsage
isLibraryElement bool [1..1] {derived} Whether this Element is contained in the ownership tree of a library model. Element
isNonunique bool [1..1] {derived} false Feature
isOrdered bool [1..1] false Whether an order exists for the values of this Feature or not. Feature
isPortion bool [1..1] false Whether the values of this Feature are contained in the space and time of instances of the domain of the Feature and represent the same thing as those instances. Feature
isReadOnly bool [1..1] false Whether the values of this Feature can change over the lifetime of an instance of the domain. Feature
isReference bool [1..1] {derived} Whether this Usage is a referential Usage, that is, it has isComposite = false. Usage
isSufficient bool [1..1] false Whether all things that meet the classification conditions of this Type must be classified by the Type.(A Type gives conditions that must be met by whatever it classifies, but when isSufficient is false, things may meet those conditions but still not be classified by the Type. For example, a Type Car that is not sufficient could require everything it classifies to have four wheels, but not all four wheeled things would classify as cars. However, if the Type Car were sufficient, it would classify all four-wheeled things.) Type
isUnique bool [1..1] true Whether or not values for this Feature must have no duplicates or not. Feature
isVariation bool [1..1] Whether this Usage is for a variation point or not. If true, then all the memberships of the Usage must be VariantMemberships. Usage
member Element [0..-1] {derived} The set of all member Elements of this Namespace, which are the memberElements of all memberships of the Namespace. Namespace
membership Membership [0..-1] {derived} All Memberships in this Namespace, including (at least) the union of ownedMemberships and importedMemberships. Namespace
multiplicity Multiplicity [0..1] {derived} An ownedMember of this Type that is a Multiplicity, which constraints the cardinality of the Type. If there is no such ownedMember, then the cardinality of this Type is constrained by all the Multiplicity constraints applicable to any direct supertypes.  Type
name string [0..1] {derived} The name to be used for this Element during name resolution within its owningNamespace. This is derived using the effectiveName() operation. By default, it is the same as the declaredName, but this is overridden for certain kinds of Elements to compute a name even when the declaredName is null. Element
nestedAction ActionUsage [0..-1] {derived} The ActionUsages that are nestedUsages of this Usage. Usage
nestedAllocation AllocationUsage [0..-1] {derived} The AllocationUsages that are nestedUsages of this Usage. Usage
nestedAnalysisCase AnalysisCaseUsage [0..-1] {derived} The AnalysisCaseUsages that are nestedUsages of this Usage. Usage
nestedAttribute AttributeUsage [0..-1] {derived} The code>AttributeUsages that are nestedUsages of this Usage. Usage
nestedCalculation CalculationUsage [0..-1] {derived} The CalculationUsage that are nestedUsages of this Usage. Usage
nestedCase CaseUsage [0..-1] {derived} The CaseUsages that are nestedUsages of this Usage. Usage
nestedConcern ConcernUsage [0..-1] {derived} The ConcernUsages that are nestedUsages of this Usage. Usage
nestedConnection ConnectorAsUsage [0..-1] {derived} The ConnectorAsUsages that are nestedUsages of this Usage. Note that this list includes BindingConnectorAsUsages and SuccessionAsUsages, even though these are ConnectorAsUsages but not ConnectionUsages. Usage
nestedConstraint ConstraintUsage [0..-1] {derived} The ConstraintUsages that are nestedUsages of this Usage. Usage
nestedEnumeration EnumerationUsage [0..-1] {derived} The code>EnumerationUsages that are nestedUsages of this Usage. Usage
nestedFlow FlowConnectionUsage [0..-1] {derived} The code>FlowConnectionUsages that are nestedUsages of this Usage. Usage
nestedInterface InterfaceUsage [0..-1] {derived} The InterfaceUsages that are nestedUsages of this Usage. Usage
nestedItem ItemUsage [0..-1] {derived} The ItemUsages that are nestedUsages of this Usage. Usage
nestedMetadata MetadataUsage [0..-1] {derived} The MetadataUsages that are nestedUsages of this of this Usage. Usage
nestedOccurrence OccurrenceUsage [0..-1] {derived} The OccurrenceUsages that are nestedUsages of this Usage. Usage
nestedPart PartUsage [0..-1] {derived} The PartUsages that are nestedUsages of this Usage. Usage
nestedPort PortUsage [0..-1] {derived} The PortUsages that are nestedUsages of this Usage. Usage
nestedReference ReferenceUsage [0..-1] {derived} The ReferenceUsages that are nestedUsages of this Usage. Usage
nestedRendering RenderingUsage [0..-1] {derived} The RenderingUsages that are nestedUsages of this Usage. Usage
nestedRequirement RequirementUsage [0..-1] {derived} The RequirementUsages that are nestedUsages of this Usage. Usage
nestedState StateUsage [0..-1] {derived} The StateUsages that are nestedUsages of this Usage. Usage
nestedTransition TransitionUsage [0..-1] {derived} The TransitionUsages that are nestedUsages of this Usage. Usage
nestedUsage Usage [0..-1] {derived} The Usages that are ownedFeatures of this Usage. Usage
nestedUseCase UseCaseUsage [0..-1] {derived} The UseCaseUsages that are nestedUsages of this Usage. Usage
nestedVerificationCase VerificationCaseUsage [0..-1] {derived} The VerificationCaseUsages that are nestedUsages of this Usage. Usage
nestedView ViewUsage [0..-1] {derived} The ViewUsages that are nestedUsages of this Usage. Usage
nestedViewpoint ViewpointUsage [0..-1] {derived} The ViewpointUsages that are nestedUsages of this Usage. Usage
occurrenceDefinition Class [0..-1] {derived} The Classes that are the types of this OccurrenceUsage. Nominally, these are OccurrenceDefinitions, but other kinds of kernel Classes are also allowed, to permit use of Classes from the Kernel Model Libraries. OccurrenceUsage
output Feature [0..-1] {derived} All features related to this Type by FeatureMemberships that have direction out or inout. Type
ownedAnnotation Annotation [0..-1] {derived} The ownedRelationships of this Element that are Annotations, for which this Element is the annotatedElement. Element
ownedConjugator Conjugation [0..1] {derived} A Conjugation owned by this Type for which the Type is the originalType. Type
ownedDifferencing Differencing [0..-1] {derived} The ownedRelationships of this Type that are Differencings, having this Type as their typeDifferenced. Type
ownedDisjoining Disjoining [0..-1] {derived} The ownedRelationships of this Type that are Disjoinings, for which the Type is the typeDisjoined Type. Type
ownedElement Element [0..-1] {derived} The Elements owned by this Element, derived as the ownedRelatedElements of the ownedRelationships of this Element. Element
ownedEndFeature Feature [0..-1] {derived} All endFeatures of this Type that are ownedFeatures. Type
ownedFeature Feature [0..-1] {derived} The ownedMemberFeatures of the ownedFeatureMemberships of this Type. Type
ownedFeatureChaining FeatureChaining [0..-1] {derived} The ownedRelationships of this Feature that are FeatureChainings, for which the Feature will be the featureChained. Feature
ownedFeatureInverting FeatureInverting [0..-1] {derived} The ownedRelationships of this Feature that are FeatureInvertings and for which the Feature is the featureInverted. Feature
ownedFeatureMembership FeatureMembership [0..-1] {derived} The ownedMemberships of this Type that are FeatureMemberships, for which the Type is the owningType. Each such FeatureMembership identifies an ownedFeature of the Type. Type
ownedImport Import [0..-1] {derived} The ownedRelationships of this Namespace that are Imports, for which the Namespace is the importOwningNamespace. Namespace
ownedIntersecting Intersecting [0..-1] {derived} The ownedRelationships of this Type that are Intersectings, have the Type as their typeIntersected. Type
ownedMember Element [0..-1] {derived} The owned members of this Namespace, which are the ownedMemberElements of the ownedMemberships of the . Namespace
ownedMembership Membership [0..-1] {derived} The ownedRelationships of this Namespace that are Memberships, for which the Namespace is the membershipOwningNamespace. Namespace
ownedRedefinition Redefinition [0..-1] {derived} The ownedSubsettings of this Feature that are Redefinitions, for which the Feature is the redefiningFeature. Feature
ownedReferenceSubsetting ReferenceSubsetting [0..1] {derived} The one ownedSubsetting of this Feature, if any, that is a ReferenceSubsetting, for which the Feature is the referencingFeature. Feature
ownedRelationship Relationship [0..-1] {composite} The Relationships for which this Element is the owningRelatedElement. Element
ownedSpecialization Specialization [0..-1] {derived} The ownedRelationships of this Type that are Specializations, for which the Type is the specific Type. Type
ownedSubsetting Subsetting [0..-1] {derived} The ownedSpecializations of this Feature that are Subsettings, for which the Feature is the subsettingFeature. Feature
ownedTypeFeaturing TypeFeaturing [0..-1] {derived} The ownedRelationships of this Feature that are TypeFeaturings and for which the Feature is the featureOfType. Feature
ownedTyping FeatureTyping [0..-1] {derived} The ownedSpecializations of this Feature that are FeatureTypings, for which the Feature is the typedFeature. Feature
ownedUnioning Unioning [0..-1] {derived} The ownedRelationships of this Type that are Unionings, having the Type as their typeUnioned. Type
owner Element [0..1] {derived} The owner of this Element, derived as the owningRelatedElement of the owningRelationship of this Element, if any. Element
owningDefinition Definition [0..1] {derived} The Definition that owns this Usage (if any). Usage
owningFeatureMembership FeatureMembership [0..1] {derived} The FeatureMembership that owns this Feature as an ownedMemberFeature, determining its owningType. Feature
owningMembership OwningMembership [0..1] {derived} The owningRelationship of this Element, if that Relationship is a Membership. Element
owningNamespace Namespace [0..1] {derived} The Namespace that owns this Element, which is the membershipOwningNamespace of the owningMembership of this Element, if any. Element
owningRelationship Relationship [0..1] The Relationship for which this Element is an ownedRelatedElement, if any. Element
owningType Type [0..1] {derived} The Type that is the owningType of the owningFeatureMembership of this Feature. Feature
owningUsage Usage [0..1] {derived} The Usage in which this Usage is nested (if any). Usage
parameter Feature [0..-1] {derived} The parameters of this Step, which are defined as its directedFeatures, whose values are passed into and/or out of a performance of the Step. Step
payloadArgument Expression [0..1] {derived} An Expression whose result is bound to the payload parameter of this AcceptActionUsage. If provided, the AcceptActionUsage will only accept a Transfer with exactly this payload. AcceptActionUsage
payloadParameter ReferenceUsage [1..1] {derived} The nestedReference of this AcceptActionUsage that redefines the payload output parameter of the base AcceptActionUsage AcceptAction from the Systems Model Library. AcceptActionUsage
portionKind PortionKind [0..1] The kind of (temporal) portion of the life of the occurrenceDefinition represented by this OccurrenceUsage, if it is so restricted. OccurrenceUsage
qualifiedName string [0..1] {derived} The full ownership-qualified name of this Element, represented in a form that is valid according to the KerML textual concrete syntax for qualified names (including use of unrestricted name notation and escaped characters, as necessary). The qualifiedName is null if this Element has no owningNamespace or if there is not a complete ownership chain of named Namespaces from a root Namespace to this Element. Element
receiverArgument Expression [0..1] {derived} An Expression whose result is bound to the receiver input parameter of this AcceptActionUsage. AcceptActionUsage
shortName string [0..1] {derived} The short name to be used for this Element during name resolution within its owningNamespace. This is derived using the effectiveShortName() operation. By default, it is the same as the declaredShortName, but this is overridden for certain kinds of Elements to compute a shortName even when the declaredName is null. Element
textualRepresentation TextualRepresentation [0..-1] {derived} The TextualRepresentations that annotate this Element. Element
type Type [0..-1] {derived} Types that restrict the values of this Feature, such that the values must be instances of all the types. The types of a Feature are derived from its typings and the types of its subsettings. If the Feature is chained, then the types of the last Feature in the chain are also types of the chained Feature. Feature
unioningType Type [0..-1] {derived} The interpretations of a Type with unioningTypes are asserted to be the same as those of all the unioningTypes together, which are the Types derived from the unioningType of the ownedUnionings of this Type. For example, a Classifier for people might be the union of Classifiers for all the sexes. Similarly, a feature for people's children might be the union of features dividing them in the same ways as people in general. Type
usage Usage [0..-1] {derived} The Usages that are features of this Usage (not necessarily owned). Usage
variant Usage [0..-1] {derived} The Usages which represent the variants of this Usage as a variation point Usage, if isVariation = true. If isVariation = false, then there must be no variants. Usage
variantMembership VariantMembership [0..-1] {derived} The ownedMemberships of this Usage that are VariantMemberships. If isVariation = true, then this must be all memberships of the Usage. If isVariation = false, then variantMembershipmust be empty. Usage

ActionDefinition

Definition

An ActionDefinition is a Definition that is also a Behavior that defines an Action performed by a system or part of a system.specializesFromLibrary('Actions::Action')action = usage->selectByKind(ActionUsage)

Features

Name Description
Is Abstract FALSE
Generalizations OccurrenceDefinition Behavior

Properties

Name Type Default Description Inheritance
action ActionUsage [0..-1] {derived} The ActionUsages that are steps in this ActionDefinition, which define the actions that specify the behavior of the ActionDefinition. ActionDefinition
aliasIds string [0..-1] Various alternative identifiers for this Element. Generally, these will be set by tools. Element
declaredName string [0..1] The declared name of this Element. Element
declaredShortName string [0..1] An optional alternative name for the Element that is intended to be shorter or in some way more succinct than its primary name. It may act as a modeler-specified identifier for the Element, though it is then the responsibility of the modeler to maintain the uniqueness of this identifier within a model or relative to some other context. Element
differencingType Type [0..-1] {derived} The interpretations of a Type with differencingTypes are asserted to be those of the first of those Types, but not including those of the remaining Types. For example, a Classifier might be the difference of a Classifier for people and another for people of a particular nationality, leaving people who are not of that nationality. Similarly, a feature of people might be the difference between a feature for their children and a Classifier for people of a particular sex, identifying their children not of that sex (because the interpretations of the children Feature that identify those of that sex are also interpretations of the Classifier for that sex). Type
directedFeature Feature [0..-1] {derived} The features of this Type that have a non-null direction. Type
directedUsage Usage [0..-1] {derived} The usages of this Definition that are directedFeatures. Definition
documentation Documentation [0..-1] {derived} The Documentation owned by this Element. Element
elementId string [1..1] The globally unique identifier for this Element. This is intended to be set by tooling, and it must not change during the lifetime of the Element. Element
endFeature Feature [0..-1] {derived} All features of this Type with isEnd = true. Type
feature Feature [0..-1] {derived} The ownedMemberFeatures of the featureMemberships of this Type. Type
featureMembership FeatureMembership [0..-1] {derived} The FeatureMemberships for features of this Type, which include all ownedFeatureMemberships and those inheritedMemberships that are FeatureMemberships (but does not include any importedMemberships). Type
importedMembership Membership [0..-1] {derived} The Memberships in this Namespace that result from the ownedImports of this Namespace. Namespace
inheritedFeature Feature [0..-1] {derived} All the memberFeatures of the inheritedMemberships of this Type that are FeatureMemberships. Type
inheritedMembership Membership [0..-1] {derived} All Memberships inherited by this Type via Specialization or Conjugation. These are included in the derived union for the memberships of the Type. Type
input Feature [0..-1] {derived} All features related to this Type by FeatureMemberships that have direction in or inout. Type
intersectingType Type [0..-1] {derived} The interpretations of a Type with intersectingTypes are asserted to be those in common among the intersectingTypes, which are the Types derived from the intersectingType of the ownedIntersectings of this Type. For example, a Classifier might be an intersection of Classifiers for people of a particular sex and of a particular nationality. Similarly, a feature for people's children of a particular sex might be the intersection of a Feature for their children and a Classifier for people of that sex (because the interpretations of the children Feature that identify those of that sex are also interpretations of the Classifier for that sex). Type
isAbstract bool [1..1] false Indicates whether instances of this Type must also be instances of at least one of its specialized Types. Type
isConjugated bool [1..1] {derived} Indicates whether this Type has an ownedConjugator. Type
isImpliedIncluded bool [1..1] false Whether all necessary implied Relationships have been included in the ownedRelationships of this Element. This property may be true, even if there are not actually any ownedRelationships with isImplied = true, meaning that no such Relationships are actually implied for this Element. However, if it is false, then ownedRelationships may not contain any implied Relationships. That is, either all required implied Relationships must be included, or none of them. Element
isIndividual bool [1..1] false Whether this OccurrenceDefinition is constrained to represent single individual. OccurrenceDefinition
isLibraryElement bool [1..1] {derived} Whether this Element is contained in the ownership tree of a library model. Element
isSufficient bool [1..1] false Whether all things that meet the classification conditions of this Type must be classified by the Type.(A Type gives conditions that must be met by whatever it classifies, but when isSufficient is false, things may meet those conditions but still not be classified by the Type. For example, a Type Car that is not sufficient could require everything it classifies to have four wheels, but not all four wheeled things would classify as cars. However, if the Type Car were sufficient, it would classify all four-wheeled things.) Type
isVariation bool [1..1] Whether this Definition is for a variation point or not. If true, then all the memberships of the Definition must be VariantMemberships. Definition
lifeClass LifeClass [0..1] {derived} If isIndividual is true, a LifeClass that specializes this OccurrenceDefinition, restricting it to represent an individual. OccurrenceDefinition
member Element [0..-1] {derived} The set of all member Elements of this Namespace, which are the memberElements of all memberships of the Namespace. Namespace
membership Membership [0..-1] {derived} All Memberships in this Namespace, including (at least) the union of ownedMemberships and importedMemberships. Namespace
multiplicity Multiplicity [0..1] {derived} An ownedMember of this Type that is a Multiplicity, which constraints the cardinality of the Type. If there is no such ownedMember, then the cardinality of this Type is constrained by all the Multiplicity constraints applicable to any direct supertypes.  Type
name string [0..1] {derived} The name to be used for this Element during name resolution within its owningNamespace. This is derived using the effectiveName() operation. By default, it is the same as the declaredName, but this is overridden for certain kinds of Elements to compute a name even when the declaredName is null. Element
output Feature [0..-1] {derived} All features related to this Type by FeatureMemberships that have direction out or inout. Type
ownedAction ActionUsage [0..-1] {derived} The ActionUsages that are ownedUsages of this Definition. Definition
ownedAllocation AllocationUsage [0..-1] {derived} The AllocationUsages that are ownedUsages of this Definition. Definition
ownedAnalysisCase AnalysisCaseUsage [0..-1] {derived} The AnalysisCaseUsages that are ownedUsages of this Definition. Definition
ownedAnnotation Annotation [0..-1] {derived} The ownedRelationships of this Element that are Annotations, for which this Element is the annotatedElement. Element
ownedAttribute AttributeUsage [0..-1] {derived} The AttributeUsages that are ownedUsages of this Definition. Definition
ownedCalculation CalculationUsage [0..-1] {derived} The CalculationUsages that are ownedUsages of this Definition. Definition
ownedCase CaseUsage [0..-1] {derived} The code>CaseUsages that are ownedUsages of this Definition. Definition
ownedConcern ConcernUsage [0..-1] {derived} The ConcernUsages that are ownedUsages of this Definition. Definition
ownedConjugator Conjugation [0..1] {derived} A Conjugation owned by this Type for which the Type is the originalType. Type
ownedConnection ConnectorAsUsage [0..-1] {derived} The ConnectorAsUsages that are ownedUsages of this Definition. Note that this list includes BindingConnectorAsUsages and SuccessionAsUsages, even though these are ConnectorAsUsages but not ConnectionUsages. Definition
ownedConstraint ConstraintUsage [0..-1] {derived} The ConstraintUsages that are ownedUsages of this Definition. Definition
ownedDifferencing Differencing [0..-1] {derived} The ownedRelationships of this Type that are Differencings, having this Type as their typeDifferenced. Type
ownedDisjoining Disjoining [0..-1] {derived} The ownedRelationships of this Type that are Disjoinings, for which the Type is the typeDisjoined Type. Type
ownedElement Element [0..-1] {derived} The Elements owned by this Element, derived as the ownedRelatedElements of the ownedRelationships of this Element. Element
ownedEndFeature Feature [0..-1] {derived} All endFeatures of this Type that are ownedFeatures. Type
ownedEnumeration EnumerationUsage [0..-1] {derived} The EnumerationUsages that are ownedUsages of this Definition. Definition
ownedFeature Feature [0..-1] {derived} The ownedMemberFeatures of the ownedFeatureMemberships of this Type. Type
ownedFeatureMembership FeatureMembership [0..-1] {derived} The ownedMemberships of this Type that are FeatureMemberships, for which the Type is the owningType. Each such FeatureMembership identifies an ownedFeature of the Type. Type
ownedFlow FlowConnectionUsage [0..-1] {derived} The FlowConnectionUsages that are ownedUsages of this Definition. Definition
ownedImport Import [0..-1] {derived} The ownedRelationships of this Namespace that are Imports, for which the Namespace is the importOwningNamespace. Namespace
ownedInterface InterfaceUsage [0..-1] {derived} The InterfaceUsages that are ownedUsages of this Definition. Definition
ownedIntersecting Intersecting [0..-1] {derived} The ownedRelationships of this Type that are Intersectings, have the Type as their typeIntersected. Type
ownedItem ItemUsage [0..-1] {derived} The ItemUsages that are ownedUsages of this Definition. Definition
ownedMember Element [0..-1] {derived} The owned members of this Namespace, which are the ownedMemberElements of the ownedMemberships of the . Namespace
ownedMembership Membership [0..-1] {derived} The ownedRelationships of this Namespace that are Memberships, for which the Namespace is the membershipOwningNamespace. Namespace
ownedMetadata MetadataUsage [0..-1] {derived} The MetadataUsages that are ownedUsages of this Definition. Definition
ownedOccurrence OccurrenceUsage [0..-1] {derived} The OccurrenceUsages that are ownedUsages of this Definition. Definition
ownedPart PartUsage [0..-1] {derived} The PartUsages that are ownedUsages of this Definition. Definition
ownedPort PortUsage [0..-1] {derived} The PortUsages that are ownedUsages of this Definition. Definition
ownedReference ReferenceUsage [0..-1] {derived} The ReferenceUsages that are ownedUsages of this Definition. Definition
ownedRelationship Relationship [0..-1] {composite} The Relationships for which this Element is the owningRelatedElement. Element
ownedRendering RenderingUsage [0..-1] {derived} The RenderingUsages that are ownedUsages of this Definition. Definition
ownedRequirement RequirementUsage [0..-1] {derived} The RequirementUsages that are ownedUsages of this Definition. Definition
ownedSpecialization Specialization [0..-1] {derived} The ownedRelationships of this Type that are Specializations, for which the Type is the specific Type. Type
ownedState StateUsage [0..-1] {derived} The StateUsages that are ownedUsages of this Definition. Definition
ownedSubclassification Subclassification [0..-1] {derived} The ownedSpecializations of this Classifier that are Subclassifications, for which this Classifier is the subclassifier. Classifier
ownedTransition TransitionUsage [0..-1] {derived} The TransitionUsages that are ownedUsages of this Definition. Definition
ownedUnioning Unioning [0..-1] {derived} The ownedRelationships of this Type that are Unionings, having the Type as their typeUnioned. Type
ownedUsage Usage [0..-1] {derived} The Usages that are ownedFeatures of this Definition. Definition
ownedUseCase UseCaseUsage [0..-1] {derived} The UseCaseUsages that are ownedUsages of this Definition. Definition
ownedVerificationCase VerificationCaseUsage [0..-1] {derived} The VerificationCaseUsages that are ownedUsages of this Definition. Definition
ownedView ViewUsage [0..-1] {derived} The ViewUsages that are ownedUsages of this Definition. Definition
ownedViewpoint ViewpointUsage [0..-1] {derived} The ViewpointUsages that are ownedUsages of this Definition. Definition
owner Element [0..1] {derived} The owner of this Element, derived as the owningRelatedElement of the owningRelationship of this Element, if any. Element
owningMembership OwningMembership [0..1] {derived} The owningRelationship of this Element, if that Relationship is a Membership. Element
owningNamespace Namespace [0..1] {derived} The Namespace that owns this Element, which is the membershipOwningNamespace of the owningMembership of this Element, if any. Element
owningRelationship Relationship [0..1] The Relationship for which this Element is an ownedRelatedElement, if any. Element
parameter Feature [0..-1] {derived} The parameters of this Behavior, which are defined as its directedFeatures, whose values are passed into and/or out of a performance of the Behavior. Behavior
qualifiedName string [0..1] {derived} The full ownership-qualified name of this Element, represented in a form that is valid according to the KerML textual concrete syntax for qualified names (including use of unrestricted name notation and escaped characters, as necessary). The qualifiedName is null if this Element has no owningNamespace or if there is not a complete ownership chain of named Namespaces from a root Namespace to this Element. Element
shortName string [0..1] {derived} The short name to be used for this Element during name resolution within its owningNamespace. This is derived using the effectiveShortName() operation. By default, it is the same as the declaredShortName, but this is overridden for certain kinds of Elements to compute a shortName even when the declaredName is null. Element
step Step [0..-1] {derived} The Steps that make up this Behavior. Behavior
textualRepresentation TextualRepresentation [0..-1] {derived} The TextualRepresentations that annotate this Element. Element
unioningType Type [0..-1] {derived} The interpretations of a Type with unioningTypes are asserted to be the same as those of all the unioningTypes together, which are the Types derived from the unioningType of the ownedUnionings of this Type. For example, a Classifier for people might be the union of Classifiers for all the sexes. Similarly, a feature for people's children might be the union of features dividing them in the same ways as people in general. Type
usage Usage [0..-1] {derived} The Usages that are features of this Definition (not necessarily owned). Definition
variant Usage [0..-1] {derived} The Usages which represent the variants of this Definition as a variation point Definition, if isVariation = true. If isVariation = false, the there must be no variants. Definition
variantMembership VariantMembership [0..-1] {derived} The ownedMemberships of this Definition that are VariantMemberships. If isVariation = true, then this must be all ownedMemberships of the Definition. If isVariation = false, then variantMembershipmust be empty. Definition

ActionUsage

Definition

An ActionUsage is a Usage that is also a Step, and, so, is typed by a Behavior. Nominally, if the type is an ActionDefinition, an ActionUsage is a Usage of that ActionDefinition within a system. However, other kinds of kernel Behaviors are also allowed, to permit use of Behaviors from the Kernel Model Libraries.isSubactionUsage() implies specializesFromLibrary('Actions::Action::subactions')specializesFromLibrary('Actions::actions')isComposite and owningType <> null and(owningType.oclIsKindOf(PartDefinition) or owningType.oclIsKindOf(PartUsage)) implies specializesFromLibrary('Parts::Part::ownedActions')owningFeatureMembership <> null andowningFeatureMembership.oclIsKindOf(StateSubactionMembership) implies let kind : StateSubactionKind = owningFeatureMembership.oclAsType(StateSubactionMembership).kind in if kind = StateSubactionKind::entry then redefinesFromLibrary('States::StateAction::entryAction') else if kind = StateSubactionKind::do then redefinesFromLibrary('States::StateAction::doAction') else redefinesFromLibrary('States::StateAction::exitAction') endif endifowningType <> null and (owningType.oclIsKindOf(AnalysisCaseDefinition) and owningType.oclAsType(AnalysisCaseDefinition).analysisAction-> includes(self) or owningType.oclIsKindOf(AnalysisCaseUsage) and owningType.oclAsType(AnalysisCaseUsage).analysisAction-> includes(self)) implies specializesFromLibrary('AnalysisCases::AnalysisCase::analysisSteps')

Features

Name Description
Is Abstract FALSE
Generalizations OccurrenceUsage Step

Properties

Name Type Default Description Inheritance
actionDefinition Behavior [0..-1] {derived} The Behaviors that are the types of this ActionUsage. Nominally, these would be ActionDefinitions, but other kinds of Kernel Behaviors are also allowed, to permit use of Behaviors from the Kernel Model Libraries. ActionUsage
aliasIds string [0..-1] Various alternative identifiers for this Element. Generally, these will be set by tools. Element
behavior Behavior [0..-1] {derived} The Behaviors that type this Step. Step
chainingFeature Feature [0..-1] {derived} The Feature that are chained together to determine the values of this Feature, derived from the chainingFeatures of the ownedFeatureChainings of this Feature, in the same order. The values of a Feature with chainingFeatures are the same as values of the last Feature in the chain, which can be found by starting with the values of the first Feature (for each instance of the domain of the original Feature), then using each of those as domain instances to find the values of the second Feature in chainingFeatures, and so on, to values of the last Feature. Feature
declaredName string [0..1] The declared name of this Element. Element
declaredShortName string [0..1] An optional alternative name for the Element that is intended to be shorter or in some way more succinct than its primary name. It may act as a modeler-specified identifier for the Element, though it is then the responsibility of the modeler to maintain the uniqueness of this identifier within a model or relative to some other context. Element
definition Classifier [0..-1] {derived} The Classifiers that are the types of this Usage. Nominally, these are Definitions, but other kinds of Kernel Classifiers are also allowed, to permit use of Classifiers from the Kernel Model Libraries. Usage
differencingType Type [0..-1] {derived} The interpretations of a Type with differencingTypes are asserted to be those of the first of those Types, but not including those of the remaining Types. For example, a Classifier might be the difference of a Classifier for people and another for people of a particular nationality, leaving people who are not of that nationality. Similarly, a feature of people might be the difference between a feature for their children and a Classifier for people of a particular sex, identifying their children not of that sex (because the interpretations of the children Feature that identify those of that sex are also interpretations of the Classifier for that sex). Type
directedFeature Feature [0..-1] {derived} The features of this Type that have a non-null direction. Type
directedUsage Usage [0..-1] {derived} The usages of this Usage that are directedFeatures. Usage
direction FeatureDirectionKind [0..1] Indicates how values of this Feature are determined or used (as specified for the FeatureDirectionKind). Feature
documentation Documentation [0..-1] {derived} The Documentation owned by this Element. Element
elementId string [1..1] The globally unique identifier for this Element. This is intended to be set by tooling, and it must not change during the lifetime of the Element. Element
endFeature Feature [0..-1] {derived} All features of this Type with isEnd = true. Type
endOwningType Type [0..1] {derived} The Type that is related to this Feature by an EndFeatureMembership in which the Feature is an ownedMemberFeature. Feature
feature Feature [0..-1] {derived} The ownedMemberFeatures of the featureMemberships of this Type. Type
featureMembership FeatureMembership [0..-1] {derived} The FeatureMemberships for features of this Type, which include all ownedFeatureMemberships and those inheritedMemberships that are FeatureMemberships (but does not include any importedMemberships). Type
featuringType Type [0..-1] {derived} Types that feature this Feature, such that any instance in the domain of the Feature must be classified by all of these Types, including at least all the featuringTypes of its typeFeaturings. If the Feature is chained, then the featuringTypes of the first Feature in the chain are also featuringTypes of the chained Feature. Feature
importedMembership Membership [0..-1] {derived} The Memberships in this Namespace that result from the ownedImports of this Namespace. Namespace
individualDefinition OccurrenceDefinition [0..1] {derived} The at most one occurrenceDefinition that has isIndividual = true. OccurrenceUsage
inheritedFeature Feature [0..-1] {derived} All the memberFeatures of the inheritedMemberships of this Type that are FeatureMemberships. Type
inheritedMembership Membership [0..-1] {derived} All Memberships inherited by this Type via Specialization or Conjugation. These are included in the derived union for the memberships of the Type. Type
input Feature [0..-1] {derived} All features related to this Type by FeatureMemberships that have direction in or inout. Type
intersectingType Type [0..-1] {derived} The interpretations of a Type with intersectingTypes are asserted to be those in common among the intersectingTypes, which are the Types derived from the intersectingType of the ownedIntersectings of this Type. For example, a Classifier might be an intersection of Classifiers for people of a particular sex and of a particular nationality. Similarly, a feature for people's children of a particular sex might be the intersection of a Feature for their children and a Classifier for people of that sex (because the interpretations of the children Feature that identify those of that sex are also interpretations of the Classifier for that sex). Type
isAbstract bool [1..1] false Indicates whether instances of this Type must also be instances of at least one of its specialized Types. Type
isComposite bool [1..1] false Whether the Feature is a composite feature of its featuringType. If so, the values of the Feature cannot exist after its featuring instance no longer does. Feature
isConjugated bool [1..1] {derived} Indicates whether this Type has an ownedConjugator. Type
isDerived bool [1..1] false Whether the values of this Feature can always be computed from the values of other Features. Feature
isEnd bool [1..1] false Whether or not the this Feature is an end Feature, requiring a different interpretation of the multiplicity of the Feature.An end Feature is always considered to map each domain instance to a single co-domain instance, whether or not a Multiplicity is given for it. If a Multiplicity is given for an end Feature, rather than giving the co-domain cardinality for the Feature as usual, it specifies a cardinality constraint for navigating across the endFeatures of the featuringType of the end Feature. That is, if a Type has n endFeatures, then the Multiplicity of any one of those end Features constrains the cardinality of the set of values of that Feature when the values of the other n-1 end Features are held fixed. Feature
isImpliedIncluded bool [1..1] false Whether all necessary implied Relationships have been included in the ownedRelationships of this Element. This property may be true, even if there are not actually any ownedRelationships with isImplied = true, meaning that no such Relationships are actually implied for this Element. However, if it is false, then ownedRelationships may not contain any implied Relationships. That is, either all required implied Relationships must be included, or none of them. Element
isIndividual bool [1..1] false Whether this OccurrenceUsage represents the usage of the specific individual (or portion of it) represented by its individualDefinition. OccurrenceUsage
isLibraryElement bool [1..1] {derived} Whether this Element is contained in the ownership tree of a library model. Element
isNonunique bool [1..1] {derived} false Feature
isOrdered bool [1..1] false Whether an order exists for the values of this Feature or not. Feature
isPortion bool [1..1] false Whether the values of this Feature are contained in the space and time of instances of the domain of the Feature and represent the same thing as those instances. Feature
isReadOnly bool [1..1] false Whether the values of this Feature can change over the lifetime of an instance of the domain. Feature
isReference bool [1..1] {derived} Whether this Usage is a referential Usage, that is, it has isComposite = false. Usage
isSufficient bool [1..1] false Whether all things that meet the classification conditions of this Type must be classified by the Type.(A Type gives conditions that must be met by whatever it classifies, but when isSufficient is false, things may meet those conditions but still not be classified by the Type. For example, a Type Car that is not sufficient could require everything it classifies to have four wheels, but not all four wheeled things would classify as cars. However, if the Type Car were sufficient, it would classify all four-wheeled things.) Type
isUnique bool [1..1] true Whether or not values for this Feature must have no duplicates or not. Feature
isVariation bool [1..1] Whether this Usage is for a variation point or not. If true, then all the memberships of the Usage must be VariantMemberships. Usage
member Element [0..-1] {derived} The set of all member Elements of this Namespace, which are the memberElements of all memberships of the Namespace. Namespace
membership Membership [0..-1] {derived} All Memberships in this Namespace, including (at least) the union of ownedMemberships and importedMemberships. Namespace
multiplicity Multiplicity [0..1] {derived} An ownedMember of this Type that is a Multiplicity, which constraints the cardinality of the Type. If there is no such ownedMember, then the cardinality of this Type is constrained by all the Multiplicity constraints applicable to any direct supertypes.  Type
name string [0..1] {derived} The name to be used for this Element during name resolution within its owningNamespace. This is derived using the effectiveName() operation. By default, it is the same as the declaredName, but this is overridden for certain kinds of Elements to compute a name even when the declaredName is null. Element
nestedAction ActionUsage [0..-1] {derived} The ActionUsages that are nestedUsages of this Usage. Usage
nestedAllocation AllocationUsage [0..-1] {derived} The AllocationUsages that are nestedUsages of this Usage. Usage
nestedAnalysisCase AnalysisCaseUsage [0..-1] {derived} The AnalysisCaseUsages that are nestedUsages of this Usage. Usage
nestedAttribute AttributeUsage [0..-1] {derived} The code>AttributeUsages that are nestedUsages of this Usage. Usage
nestedCalculation CalculationUsage [0..-1] {derived} The CalculationUsage that are nestedUsages of this Usage. Usage
nestedCase CaseUsage [0..-1] {derived} The CaseUsages that are nestedUsages of this Usage. Usage
nestedConcern ConcernUsage [0..-1] {derived} The ConcernUsages that are nestedUsages of this Usage. Usage
nestedConnection ConnectorAsUsage [0..-1] {derived} The ConnectorAsUsages that are nestedUsages of this Usage. Note that this list includes BindingConnectorAsUsages and SuccessionAsUsages, even though these are ConnectorAsUsages but not ConnectionUsages. Usage
nestedConstraint ConstraintUsage [0..-1] {derived} The ConstraintUsages that are nestedUsages of this Usage. Usage
nestedEnumeration EnumerationUsage [0..-1] {derived} The code>EnumerationUsages that are nestedUsages of this Usage. Usage
nestedFlow FlowConnectionUsage [0..-1] {derived} The code>FlowConnectionUsages that are nestedUsages of this Usage. Usage
nestedInterface InterfaceUsage [0..-1] {derived} The InterfaceUsages that are nestedUsages of this Usage. Usage
nestedItem ItemUsage [0..-1] {derived} The ItemUsages that are nestedUsages of this Usage. Usage
nestedMetadata MetadataUsage [0..-1] {derived} The MetadataUsages that are nestedUsages of this of this Usage. Usage
nestedOccurrence OccurrenceUsage [0..-1] {derived} The OccurrenceUsages that are nestedUsages of this Usage. Usage
nestedPart PartUsage [0..-1] {derived} The PartUsages that are nestedUsages of this Usage. Usage
nestedPort PortUsage [0..-1] {derived} The PortUsages that are nestedUsages of this Usage. Usage
nestedReference ReferenceUsage [0..-1] {derived} The ReferenceUsages that are nestedUsages of this Usage. Usage
nestedRendering RenderingUsage [0..-1] {derived} The RenderingUsages that are nestedUsages of this Usage. Usage
nestedRequirement RequirementUsage [0..-1] {derived} The RequirementUsages that are nestedUsages of this Usage. Usage
nestedState StateUsage [0..-1] {derived} The StateUsages that are nestedUsages of this Usage. Usage
nestedTransition TransitionUsage [0..-1] {derived} The TransitionUsages that are nestedUsages of this Usage. Usage
nestedUsage Usage [0..-1] {derived} The Usages that are ownedFeatures of this Usage. Usage
nestedUseCase UseCaseUsage [0..-1] {derived} The UseCaseUsages that are nestedUsages of this Usage. Usage
nestedVerificationCase VerificationCaseUsage [0..-1] {derived} The VerificationCaseUsages that are nestedUsages of this Usage. Usage
nestedView ViewUsage [0..-1] {derived} The ViewUsages that are nestedUsages of this Usage. Usage
nestedViewpoint ViewpointUsage [0..-1] {derived} The ViewpointUsages that are nestedUsages of this Usage. Usage
occurrenceDefinition Class [0..-1] {derived} The Classes that are the types of this OccurrenceUsage. Nominally, these are OccurrenceDefinitions, but other kinds of kernel Classes are also allowed, to permit use of Classes from the Kernel Model Libraries. OccurrenceUsage
output Feature [0..-1] {derived} All features related to this Type by FeatureMemberships that have direction out or inout. Type
ownedAnnotation Annotation [0..-1] {derived} The ownedRelationships of this Element that are Annotations, for which this Element is the annotatedElement. Element
ownedConjugator Conjugation [0..1] {derived} A Conjugation owned by this Type for which the Type is the originalType. Type
ownedDifferencing Differencing [0..-1] {derived} The ownedRelationships of this Type that are Differencings, having this Type as their typeDifferenced. Type
ownedDisjoining Disjoining [0..-1] {derived} The ownedRelationships of this Type that are Disjoinings, for which the Type is the typeDisjoined Type. Type
ownedElement Element [0..-1] {derived} The Elements owned by this Element, derived as the ownedRelatedElements of the ownedRelationships of this Element. Element
ownedEndFeature Feature [0..-1] {derived} All endFeatures of this Type that are ownedFeatures. Type
ownedFeature Feature [0..-1] {derived} The ownedMemberFeatures of the ownedFeatureMemberships of this Type. Type
ownedFeatureChaining FeatureChaining [0..-1] {derived} The ownedRelationships of this Feature that are FeatureChainings, for which the Feature will be the featureChained. Feature
ownedFeatureInverting FeatureInverting [0..-1] {derived} The ownedRelationships of this Feature that are FeatureInvertings and for which the Feature is the featureInverted. Feature
ownedFeatureMembership FeatureMembership [0..-1] {derived} The ownedMemberships of this Type that are FeatureMemberships, for which the Type is the owningType. Each such FeatureMembership identifies an ownedFeature of the Type. Type
ownedImport Import [0..-1] {derived} The ownedRelationships of this Namespace that are Imports, for which the Namespace is the importOwningNamespace. Namespace
ownedIntersecting Intersecting [0..-1] {derived} The ownedRelationships of this Type that are Intersectings, have the Type as their typeIntersected. Type
ownedMember Element [0..-1] {derived} The owned members of this Namespace, which are the ownedMemberElements of the ownedMemberships of the . Namespace
ownedMembership Membership [0..-1] {derived} The ownedRelationships of this Namespace that are Memberships, for which the Namespace is the membershipOwningNamespace. Namespace
ownedRedefinition Redefinition [0..-1] {derived} The ownedSubsettings of this Feature that are Redefinitions, for which the Feature is the redefiningFeature. Feature
ownedReferenceSubsetting ReferenceSubsetting [0..1] {derived} The one ownedSubsetting of this Feature, if any, that is a ReferenceSubsetting, for which the Feature is the referencingFeature. Feature
ownedRelationship Relationship [0..-1] {composite} The Relationships for which this Element is the owningRelatedElement. Element
ownedSpecialization Specialization [0..-1] {derived} The ownedRelationships of this Type that are Specializations, for which the Type is the specific Type. Type
ownedSubsetting Subsetting [0..-1] {derived} The ownedSpecializations of this Feature that are Subsettings, for which the Feature is the subsettingFeature. Feature
ownedTypeFeaturing TypeFeaturing [0..-1] {derived} The ownedRelationships of this Feature that are TypeFeaturings and for which the Feature is the featureOfType. Feature
ownedTyping FeatureTyping [0..-1] {derived} The ownedSpecializations of this Feature that are FeatureTypings, for which the Feature is the typedFeature. Feature
ownedUnioning Unioning [0..-1] {derived} The ownedRelationships of this Type that are Unionings, having the Type as their typeUnioned. Type
owner Element [0..1] {derived} The owner of this Element, derived as the owningRelatedElement of the owningRelationship of this Element, if any. Element
owningDefinition Definition [0..1] {derived} The Definition that owns this Usage (if any). Usage
owningFeatureMembership FeatureMembership [0..1] {derived} The FeatureMembership that owns this Feature as an ownedMemberFeature, determining its owningType. Feature
owningMembership OwningMembership [0..1] {derived} The owningRelationship of this Element, if that Relationship is a Membership. Element
owningNamespace Namespace [0..1] {derived} The Namespace that owns this Element, which is the membershipOwningNamespace of the owningMembership of this Element, if any. Element
owningRelationship Relationship [0..1] The Relationship for which this Element is an ownedRelatedElement, if any. Element
owningType Type [0..1] {derived} The Type that is the owningType of the owningFeatureMembership of this Feature. Feature
owningUsage Usage [0..1] {derived} The Usage in which this Usage is nested (if any). Usage
parameter Feature [0..-1] {derived} The parameters of this Step, which are defined as its directedFeatures, whose values are passed into and/or out of a performance of the Step. Step
portionKind PortionKind [0..1] The kind of (temporal) portion of the life of the occurrenceDefinition represented by this OccurrenceUsage, if it is so restricted. OccurrenceUsage
qualifiedName string [0..1] {derived} The full ownership-qualified name of this Element, represented in a form that is valid according to the KerML textual concrete syntax for qualified names (including use of unrestricted name notation and escaped characters, as necessary). The qualifiedName is null if this Element has no owningNamespace or if there is not a complete ownership chain of named Namespaces from a root Namespace to this Element. Element
shortName string [0..1] {derived} The short name to be used for this Element during name resolution within its owningNamespace. This is derived using the effectiveShortName() operation. By default, it is the same as the declaredShortName, but this is overridden for certain kinds of Elements to compute a shortName even when the declaredName is null. Element
textualRepresentation TextualRepresentation [0..-1] {derived} The TextualRepresentations that annotate this Element. Element
type Type [0..-1] {derived} Types that restrict the values of this Feature, such that the values must be instances of all the types. The types of a Feature are derived from its typings and the types of its subsettings. If the Feature is chained, then the types of the last Feature in the chain are also types of the chained Feature. Feature
unioningType Type [0..-1] {derived} The interpretations of a Type with unioningTypes are asserted to be the same as those of all the unioningTypes together, which are the Types derived from the unioningType of the ownedUnionings of this Type. For example, a Classifier for people might be the union of Classifiers for all the sexes. Similarly, a feature for people's children might be the union of features dividing them in the same ways as people in general. Type
usage Usage [0..-1] {derived} The Usages that are features of this Usage (not necessarily owned). Usage
variant Usage [0..-1] {derived} The Usages which represent the variants of this Usage as a variation point Usage, if isVariation = true. If isVariation = false, then there must be no variants. Usage
variantMembership VariantMembership [0..-1] {derived} The ownedMemberships of this Usage that are VariantMemberships. If isVariation = true, then this must be all memberships of the Usage. If isVariation = false, then variantMembershipmust be empty. Usage

ActorMembership

Definition

An ActorMembership is a ParameterMembership that identifies a PartUsage as an actor parameter, which specifies a role played by an external entity in interaction with the owningType of the ActorMembership.owningType.oclIsKindOf(RequirementUsage) orowningType.oclIsKindOf(RequirementDefinition) orowningType.oclIsKindOf(CaseDefinition) orowningType.oclIsKindOf(CaseUsage)

Features

Name Description
Is Abstract FALSE
Generalizations ParameterMembership

Properties

Name Type Default Description Inheritance
aliasIds string [0..-1] Various alternative identifiers for this Element. Generally, these will be set by tools. Element
declaredName string [0..1] The declared name of this Element. Element
declaredShortName string [0..1] An optional alternative name for the Element that is intended to be shorter or in some way more succinct than its primary name. It may act as a modeler-specified identifier for the Element, though it is then the responsibility of the modeler to maintain the uniqueness of this identifier within a model or relative to some other context. Element
documentation Documentation [0..-1] {derived} The Documentation owned by this Element. Element
elementId string [1..1] The globally unique identifier for this Element. This is intended to be set by tooling, and it must not change during the lifetime of the Element. Element
feature Feature [1..1] The Feature that is featured by the featuringType. Featuring
isImplied bool [1..1] false Whether this Relationship was generated by tooling to meet semantic rules, rather than being directly created by a modeler. Relationship
isImpliedIncluded bool [1..1] false Whether all necessary implied Relationships have been included in the ownedRelationships of this Element. This property may be true, even if there are not actually any ownedRelationships with isImplied = true, meaning that no such Relationships are actually implied for this Element. However, if it is false, then ownedRelationships may not contain any implied Relationships. That is, either all required implied Relationships must be included, or none of them. Element
isLibraryElement bool [1..1] {derived} Whether this Element is contained in the ownership tree of a library model. Element
memberElement Element [1..1] The Element that becomes a member of the membershipOwningNamespace due to this Membership. Membership
memberElementId string [1..1] {derived} The elementId of the memberElement. Membership
memberName string [0..1] The name of the memberElement relative to the membershipOwningNamespace. Membership
membershipOwningNamespace Namespace [1..1] {derived} The Namespace of which the memberElement becomes a member due to this Membership. Membership
memberShortName string [0..1] The short name of the memberElement relative to the membershipOwningNamespace. Membership
name string [0..1] {derived} The name to be used for this Element during name resolution within its owningNamespace. This is derived using the effectiveName() operation. By default, it is the same as the declaredName, but this is overridden for certain kinds of Elements to compute a name even when the declaredName is null. Element
ownedActorParameter PartUsage [1..1] {derived} The PartUsage specifying the actor. ActorMembership
ownedAnnotation Annotation [0..-1] {derived} The ownedRelationships of this Element that are Annotations, for which this Element is the annotatedElement. Element
ownedElement Element [0..-1] {derived} The Elements owned by this Element, derived as the ownedRelatedElements of the ownedRelationships of this Element. Element
ownedMemberElement Element [1..1] {derived} The Element that becomes an ownedMember of the membershipOwningNamespace due to this OwningMembership. OwningMembership
ownedMemberElementId string [1..1] {derived} The elementId of the ownedMemberElement. OwningMembership
ownedMemberFeature Feature [1..1] {derived} The Feature that this FeatureMembership relates to its owningType, making it an ownedFeature of the owningType. FeatureMembership
ownedMemberName string [0..1] {derived} The name of the ownedMemberElement. OwningMembership
ownedMemberParameter Feature [1..1] {derived} The Feature that is identified as a parameter by this ParameterMembership. ParameterMembership
ownedMemberShortName string [0..1] {derived} The shortName of the ownedMemberElement. OwningMembership
ownedRelatedElement Element [0..-1] {composite} The relatedElements of this Relationship that are owned by the Relationship. Relationship
ownedRelationship Relationship [0..-1] {composite} The Relationships for which this Element is the owningRelatedElement. Element
owner Element [0..1] {derived} The owner of this Element, derived as the owningRelatedElement of the owningRelationship of this Element, if any. Element
owningMembership OwningMembership [0..1] {derived} The owningRelationship of this Element, if that Relationship is a Membership. Element
owningNamespace Namespace [0..1] {derived} The Namespace that owns this Element, which is the membershipOwningNamespace of the owningMembership of this Element, if any. Element
owningRelatedElement Element [0..1] The relatedElement of this Relationship that owns the Relationship, if any. Relationship
owningRelationship Relationship [0..1] The Relationship for which this Element is an ownedRelatedElement, if any. Element
owningType Type [1..1] {derived} The Type that owns this FeatureMembership. FeatureMembership
qualifiedName string [0..1] {derived} The full ownership-qualified name of this Element, represented in a form that is valid according to the KerML textual concrete syntax for qualified names (including use of unrestricted name notation and escaped characters, as necessary). The qualifiedName is null if this Element has no owningNamespace or if there is not a complete ownership chain of named Namespaces from a root Namespace to this Element. Element
relatedElement Element [0..-1] {derived} The Elements that are related by this Relationship, derived as the union of the source and target Elements of the Relationship. Relationship
shortName string [0..1] {derived} The short name to be used for this Element during name resolution within its owningNamespace. This is derived using the effectiveShortName() operation. By default, it is the same as the declaredShortName, but this is overridden for certain kinds of Elements to compute a shortName even when the declaredName is null. Element
source Element [0..-1] The relatedElements from which this Relationship is considered to be directed. Relationship
target Element [0..-1] The relatedElements to which this Relationship is considered to be directed. Relationship
textualRepresentation TextualRepresentation [0..-1] {derived} The TextualRepresentations that annotate this Element. Element
type Type [1..1] The Type that features the featureOfType. Featuring
visibility VisibilityKind [1..1] public Whether or not the Membership of the memberElement in the membershipOwningNamespace is publicly visible outside that Namespace. Membership

AllocationDefinition

Definition

An AllocationDefinition is a ConnectionDefinition that specifies that some or all of the responsibility to realize the intent of the source is allocated to the target instances. Such allocations define mappings across the various structures and hierarchies of a system model, perhaps as a precursor to more rigorous specifications and implementations. An AllocationDefinition can itself be refined using nested allocations that give a finer-grained decomposition of the containing allocation mapping.allocation = usage->selectAsKind(AllocationUsage)specializesFromLibrary('Allocations::Allocation')

Features

Name Description
Is Abstract FALSE
Generalizations ConnectionDefinition

Properties

Name Type Default Description Inheritance
aliasIds string [0..-1] Various alternative identifiers for this Element. Generally, these will be set by tools. Element
allocation AllocationUsage [0..-1] {derived} The AllocationUsages that refine the allocation mapping defined by this AllocationDefinition. AllocationDefinition
associationEnd Feature [0..-1] {derived} The features of the Association that identify the things that can be related by it. A concrete Association must have at least two associationEnds. When it has exactly two, the Association is called a binary Association. The ends of the Association determine which elements are eligible to be related by instances of the Association. Association
connectionEnd Usage [0..-1] {derived} The Usages that define the things related by the ConnectionDefinition. ConnectionDefinition
declaredName string [0..1] The declared name of this Element. Element
declaredShortName string [0..1] An optional alternative name for the Element that is intended to be shorter or in some way more succinct than its primary name. It may act as a modeler-specified identifier for the Element, though it is then the responsibility of the modeler to maintain the uniqueness of this identifier within a model or relative to some other context. Element
differencingType Type [0..-1] {derived} The interpretations of a Type with differencingTypes are asserted to be those of the first of those Types, but not including those of the remaining Types. For example, a Classifier might be the difference of a Classifier for people and another for people of a particular nationality, leaving people who are not of that nationality. Similarly, a feature of people might be the difference between a feature for their children and a Classifier for people of a particular sex, identifying their children not of that sex (because the interpretations of the children Feature that identify those of that sex are also interpretations of the Classifier for that sex). Type
directedFeature Feature [0..-1] {derived} The features of this Type that have a non-null direction. Type
directedUsage Usage [0..-1] {derived} The usages of this Definition that are directedFeatures. Definition
documentation Documentation [0..-1] {derived} The Documentation owned by this Element. Element
elementId string [1..1] The globally unique identifier for this Element. This is intended to be set by tooling, and it must not change during the lifetime of the Element. Element
endFeature Feature [0..-1] {derived} All features of this Type with isEnd = true. Type
feature Feature [0..-1] {derived} The ownedMemberFeatures of the featureMemberships of this Type. Type
featureMembership FeatureMembership [0..-1] {derived} The FeatureMemberships for features of this Type, which include all ownedFeatureMemberships and those inheritedMemberships that are FeatureMemberships (but does not include any importedMemberships). Type
importedMembership Membership [0..-1] {derived} The Memberships in this Namespace that result from the ownedImports of this Namespace. Namespace
inheritedFeature Feature [0..-1] {derived} All the memberFeatures of the inheritedMemberships of this Type that are FeatureMemberships. Type
inheritedMembership Membership [0..-1] {derived} All Memberships inherited by this Type via Specialization or Conjugation. These are included in the derived union for the memberships of the Type. Type
input Feature [0..-1] {derived} All features related to this Type by FeatureMemberships that have direction in or inout. Type
intersectingType Type [0..-1] {derived} The interpretations of a Type with intersectingTypes are asserted to be those in common among the intersectingTypes, which are the Types derived from the intersectingType of the ownedIntersectings of this Type. For example, a Classifier might be an intersection of Classifiers for people of a particular sex and of a particular nationality. Similarly, a feature for people's children of a particular sex might be the intersection of a Feature for their children and a Classifier for people of that sex (because the interpretations of the children Feature that identify those of that sex are also interpretations of the Classifier for that sex). Type
isAbstract bool [1..1] false Indicates whether instances of this Type must also be instances of at least one of its specialized Types. Type
isConjugated bool [1..1] {derived} Indicates whether this Type has an ownedConjugator. Type
isImplied bool [1..1] false Whether this Relationship was generated by tooling to meet semantic rules, rather than being directly created by a modeler. Relationship
isImpliedIncluded bool [1..1] false Whether all necessary implied Relationships have been included in the ownedRelationships of this Element. This property may be true, even if there are not actually any ownedRelationships with isImplied = true, meaning that no such Relationships are actually implied for this Element. However, if it is false, then ownedRelationships may not contain any implied Relationships. That is, either all required implied Relationships must be included, or none of them. Element
isIndividual bool [1..1] false Whether this OccurrenceDefinition is constrained to represent single individual. OccurrenceDefinition
isLibraryElement bool [1..1] {derived} Whether this Element is contained in the ownership tree of a library model. Element
isSufficient bool [1..1] false Whether all things that meet the classification conditions of this Type must be classified by the Type.(A Type gives conditions that must be met by whatever it classifies, but when isSufficient is false, things may meet those conditions but still not be classified by the Type. For example, a Type Car that is not sufficient could require everything it classifies to have four wheels, but not all four wheeled things would classify as cars. However, if the Type Car were sufficient, it would classify all four-wheeled things.) Type
isVariation bool [1..1] Whether this Definition is for a variation point or not. If true, then all the memberships of the Definition must be VariantMemberships. Definition
lifeClass LifeClass [0..1] {derived} If isIndividual is true, a LifeClass that specializes this OccurrenceDefinition, restricting it to represent an individual. OccurrenceDefinition
member Element [0..-1] {derived} The set of all member Elements of this Namespace, which are the memberElements of all memberships of the Namespace. Namespace
membership Membership [0..-1] {derived} All Memberships in this Namespace, including (at least) the union of ownedMemberships and importedMemberships. Namespace
multiplicity Multiplicity [0..1] {derived} An ownedMember of this Type that is a Multiplicity, which constraints the cardinality of the Type. If there is no such ownedMember, then the cardinality of this Type is constrained by all the Multiplicity constraints applicable to any direct supertypes.  Type
name string [0..1] {derived} The name to be used for this Element during name resolution within its owningNamespace. This is derived using the effectiveName() operation. By default, it is the same as the declaredName, but this is overridden for certain kinds of Elements to compute a name even when the declaredName is null. Element
output Feature [0..-1] {derived} All features related to this Type by FeatureMemberships that have direction out or inout. Type
ownedAction ActionUsage [0..-1] {derived} The ActionUsages that are ownedUsages of this Definition. Definition
ownedAllocation AllocationUsage [0..-1] {derived} The AllocationUsages that are ownedUsages of this Definition. Definition
ownedAnalysisCase AnalysisCaseUsage [0..-1] {derived} The AnalysisCaseUsages that are ownedUsages of this Definition. Definition
ownedAnnotation Annotation [0..-1] {derived} The ownedRelationships of this Element that are Annotations, for which this Element is the annotatedElement. Element
ownedAttribute AttributeUsage [0..-1] {derived} The AttributeUsages that are ownedUsages of this Definition. Definition
ownedCalculation CalculationUsage [0..-1] {derived} The CalculationUsages that are ownedUsages of this Definition. Definition
ownedCase CaseUsage [0..-1] {derived} The code>CaseUsages that are ownedUsages of this Definition. Definition
ownedConcern ConcernUsage [0..-1] {derived} The ConcernUsages that are ownedUsages of this Definition. Definition
ownedConjugator Conjugation [0..1] {derived} A Conjugation owned by this Type for which the Type is the originalType. Type
ownedConnection ConnectorAsUsage [0..-1] {derived} The ConnectorAsUsages that are ownedUsages of this Definition. Note that this list includes BindingConnectorAsUsages and SuccessionAsUsages, even though these are ConnectorAsUsages but not ConnectionUsages. Definition
ownedConstraint ConstraintUsage [0..-1] {derived} The ConstraintUsages that are ownedUsages of this Definition. Definition
ownedDifferencing Differencing [0..-1] {derived} The ownedRelationships of this Type that are Differencings, having this Type as their typeDifferenced. Type
ownedDisjoining Disjoining [0..-1] {derived} The ownedRelationships of this Type that are Disjoinings, for which the Type is the typeDisjoined Type. Type
ownedElement Element [0..-1] {derived} The Elements owned by this Element, derived as the ownedRelatedElements of the ownedRelationships of this Element. Element
ownedEndFeature Feature [0..-1] {derived} All endFeatures of this Type that are ownedFeatures. Type
ownedEnumeration EnumerationUsage [0..-1] {derived} The EnumerationUsages that are ownedUsages of this Definition. Definition
ownedFeature Feature [0..-1] {derived} The ownedMemberFeatures of the ownedFeatureMemberships of this Type. Type
ownedFeatureMembership FeatureMembership [0..-1] {derived} The ownedMemberships of this Type that are FeatureMemberships, for which the Type is the owningType. Each such FeatureMembership identifies an ownedFeature of the Type. Type
ownedFlow FlowConnectionUsage [0..-1] {derived} The FlowConnectionUsages that are ownedUsages of this Definition. Definition
ownedImport Import [0..-1] {derived} The ownedRelationships of this Namespace that are Imports, for which the Namespace is the importOwningNamespace. Namespace
ownedInterface InterfaceUsage [0..-1] {derived} The InterfaceUsages that are ownedUsages of this Definition. Definition
ownedIntersecting Intersecting [0..-1] {derived} The ownedRelationships of this Type that are Intersectings, have the Type as their typeIntersected. Type
ownedItem ItemUsage [0..-1] {derived} The ItemUsages that are ownedUsages of this Definition. Definition
ownedMember Element [0..-1] {derived} The owned members of this Namespace, which are the ownedMemberElements of the ownedMemberships of the . Namespace
ownedMembership Membership [0..-1] {derived} The ownedRelationships of this Namespace that are Memberships, for which the Namespace is the membershipOwningNamespace. Namespace
ownedMetadata MetadataUsage [0..-1] {derived} The MetadataUsages that are ownedUsages of this Definition. Definition
ownedOccurrence OccurrenceUsage [0..-1] {derived} The OccurrenceUsages that are ownedUsages of this Definition. Definition
ownedPart PartUsage [0..-1] {derived} The PartUsages that are ownedUsages of this Definition. Definition
ownedPort PortUsage [0..-1] {derived} The PortUsages that are ownedUsages of this Definition. Definition
ownedReference ReferenceUsage [0..-1] {derived} The ReferenceUsages that are ownedUsages of this Definition. Definition
ownedRelatedElement Element [0..-1] {composite} The relatedElements of this Relationship that are owned by the Relationship. Relationship
ownedRelationship Relationship [0..-1] {composite} The Relationships for which this Element is the owningRelatedElement. Element
ownedRendering RenderingUsage [0..-1] {derived} The RenderingUsages that are ownedUsages of this Definition. Definition
ownedRequirement RequirementUsage [0..-1] {derived} The RequirementUsages that are ownedUsages of this Definition. Definition
ownedSpecialization Specialization [0..-1] {derived} The ownedRelationships of this Type that are Specializations, for which the Type is the specific Type. Type
ownedState StateUsage [0..-1] {derived} The StateUsages that are ownedUsages of this Definition. Definition
ownedSubclassification Subclassification [0..-1] {derived} The ownedSpecializations of this Classifier that are Subclassifications, for which this Classifier is the subclassifier. Classifier
ownedTransition TransitionUsage [0..-1] {derived} The TransitionUsages that are ownedUsages of this Definition. Definition
ownedUnioning Unioning [0..-1] {derived} The ownedRelationships of this Type that are Unionings, having the Type as their typeUnioned. Type
ownedUsage Usage [0..-1] {derived} The Usages that are ownedFeatures of this Definition. Definition
ownedUseCase UseCaseUsage [0..-1] {derived} The UseCaseUsages that are ownedUsages of this Definition. Definition
ownedVerificationCase VerificationCaseUsage [0..-1] {derived} The VerificationCaseUsages that are ownedUsages of this Definition. Definition
ownedView ViewUsage [0..-1] {derived} The ViewUsages that are ownedUsages of this Definition. Definition
ownedViewpoint ViewpointUsage [0..-1] {derived} The ViewpointUsages that are ownedUsages of this Definition. Definition
owner Element [0..1] {derived} The owner of this Element, derived as the owningRelatedElement of the owningRelationship of this Element, if any. Element
owningMembership OwningMembership [0..1] {derived} The owningRelationship of this Element, if that Relationship is a Membership. Element
owningNamespace Namespace [0..1] {derived} The Namespace that owns this Element, which is the membershipOwningNamespace of the owningMembership of this Element, if any. Element
owningRelatedElement Element [0..1] The relatedElement of this Relationship that owns the Relationship, if any. Relationship
owningRelationship Relationship [0..1] The Relationship for which this Element is an ownedRelatedElement, if any. Element
qualifiedName string [0..1] {derived} The full ownership-qualified name of this Element, represented in a form that is valid according to the KerML textual concrete syntax for qualified names (including use of unrestricted name notation and escaped characters, as necessary). The qualifiedName is null if this Element has no owningNamespace or if there is not a complete ownership chain of named Namespaces from a root Namespace to this Element. Element
relatedElement Element [0..-1] {derived} The Elements that are related by this Relationship, derived as the union of the source and target Elements of the Relationship. Relationship
relatedType Type [0..-1] {derived} The types of the associationEnds of the Association, which are the relatedElements of the Association considered as a Relationship. Association
shortName string [0..1] {derived} The short name to be used for this Element during name resolution within its owningNamespace. This is derived using the effectiveShortName() operation. By default, it is the same as the declaredShortName, but this is overridden for certain kinds of Elements to compute a shortName even when the declaredName is null. Element
source Element [0..-1] The relatedElements from which this Relationship is considered to be directed. Relationship
sourceType Type [0..1] {derived} The source relatedType for this Association. It is the first relatedType of the Association. Association
target Element [0..-1] The relatedElements to which this Relationship is considered to be directed. Relationship
targetType Type [0..-1] {derived} The target relatedTypes for this Association. This includes all the relatedTypes other than the sourceType. Association
textualRepresentation TextualRepresentation [0..-1] {derived} The TextualRepresentations that annotate this Element. Element
unioningType Type [0..-1] {derived} The interpretations of a Type with unioningTypes are asserted to be the same as those of all the unioningTypes together, which are the Types derived from the unioningType of the ownedUnionings of this Type. For example, a Classifier for people might be the union of Classifiers for all the sexes. Similarly, a feature for people's children might be the union of features dividing them in the same ways as people in general. Type
usage Usage [0..-1] {derived} The Usages that are features of this Definition (not necessarily owned). Definition
variant Usage [0..-1] {derived} The Usages which represent the variants of this Definition as a variation point Definition, if isVariation = true. If isVariation = false, the there must be no variants. Definition
variantMembership VariantMembership [0..-1] {derived} The ownedMemberships of this Definition that are VariantMemberships. If isVariation = true, then this must be all ownedMemberships of the Definition. If isVariation = false, then variantMembershipmust be empty. Definition

AllocationUsage

Definition

An AllocationUsage is a usage of an AllocationDefinition asserting the allocation of the source feature to the target feature.specializesFromLibrary('Allocations::allocations')

Features

Name Description
Is Abstract FALSE
Generalizations ConnectionUsage

Properties

Name Type Default Description Inheritance
aliasIds string [0..-1] Various alternative identifiers for this Element. Generally, these will be set by tools. Element
allocationDefinition AllocationDefinition [0..-1] {derived} The AllocationDefinitions that are the types of this AllocationUsage. AllocationUsage
association Association [0..-1] {derived} The Associations that type the Connector. Connector
chainingFeature Feature [0..-1] {derived} The Feature that are chained together to determine the values of this Feature, derived from the chainingFeatures of the ownedFeatureChainings of this Feature, in the same order. The values of a Feature with chainingFeatures are the same as values of the last Feature in the chain, which can be found by starting with the values of the first Feature (for each instance of the domain of the original Feature), then using each of those as domain instances to find the values of the second Feature in chainingFeatures, and so on, to values of the last Feature. Feature
connectionDefinition AssociationStructure [0..-1] {derived} The AssociationStructures that are the types of this ConnectionUsage. Nominally, these are , but other kinds of Kernel AssociationStructures are also allowed, to permit use of AssociationStructures from the Kernel Model Libraries ConnectionUsage
connectorEnd Feature [0..-1] {derived} The endFeatures of a Connector, which redefine the endFeatures of the associations of the Connector. The connectorEnds determine via ReferenceSubsetting Relationships which Features are related by the Connector. Connector
declaredName string [0..1] The declared name of this Element. Element
declaredShortName string [0..1] An optional alternative name for the Element that is intended to be shorter or in some way more succinct than its primary name. It may act as a modeler-specified identifier for the Element, though it is then the responsibility of the modeler to maintain the uniqueness of this identifier within a model or relative to some other context. Element
definition Classifier [0..-1] {derived} The Classifiers that are the types of this Usage. Nominally, these are Definitions, but other kinds of Kernel Classifiers are also allowed, to permit use of Classifiers from the Kernel Model Libraries. Usage
differencingType Type [0..-1] {derived} The interpretations of a Type with differencingTypes are asserted to be those of the first of those Types, but not including those of the remaining Types. For example, a Classifier might be the difference of a Classifier for people and another for people of a particular nationality, leaving people who are not of that nationality. Similarly, a feature of people might be the difference between a feature for their children and a Classifier for people of a particular sex, identifying their children not of that sex (because the interpretations of the children Feature that identify those of that sex are also interpretations of the Classifier for that sex). Type
directedFeature Feature [0..-1] {derived} The features of this Type that have a non-null direction. Type
directedUsage Usage [0..-1] {derived} The usages of this Usage that are directedFeatures. Usage
direction FeatureDirectionKind [0..1] Indicates how values of this Feature are determined or used (as specified for the FeatureDirectionKind). Feature
documentation Documentation [0..-1] {derived} The Documentation owned by this Element. Element
elementId string [1..1] The globally unique identifier for this Element. This is intended to be set by tooling, and it must not change during the lifetime of the Element. Element
endFeature Feature [0..-1] {derived} All features of this Type with isEnd = true. Type
endOwningType Type [0..1] {derived} The Type that is related to this Feature by an EndFeatureMembership in which the Feature is an ownedMemberFeature. Feature
feature Feature [0..-1] {derived} The ownedMemberFeatures of the featureMemberships of this Type. Type
featureMembership FeatureMembership [0..-1] {derived} The FeatureMemberships for features of this Type, which include all ownedFeatureMemberships and those inheritedMemberships that are FeatureMemberships (but does not include any importedMemberships). Type
featuringType Type [0..-1] {derived} Types that feature this Feature, such that any instance in the domain of the Feature must be classified by all of these Types, including at least all the featuringTypes of its typeFeaturings. If the Feature is chained, then the featuringTypes of the first Feature in the chain are also featuringTypes of the chained Feature. Feature
importedMembership Membership [0..-1] {derived} The Memberships in this Namespace that result from the ownedImports of this Namespace. Namespace
individualDefinition OccurrenceDefinition [0..1] {derived} The at most one occurrenceDefinition that has isIndividual = true. OccurrenceUsage
inheritedFeature Feature [0..-1] {derived} All the memberFeatures of the inheritedMemberships of this Type that are FeatureMemberships. Type
inheritedMembership Membership [0..-1] {derived} All Memberships inherited by this Type via Specialization or Conjugation. These are included in the derived union for the memberships of the Type. Type
input Feature [0..-1] {derived} All features related to this Type by FeatureMemberships that have direction in or inout. Type
intersectingType Type [0..-1] {derived} The interpretations of a Type with intersectingTypes are asserted to be those in common among the intersectingTypes, which are the Types derived from the intersectingType of the ownedIntersectings of this Type. For example, a Classifier might be an intersection of Classifiers for people of a particular sex and of a particular nationality. Similarly, a feature for people's children of a particular sex might be the intersection of a Feature for their children and a Classifier for people of that sex (because the interpretations of the children Feature that identify those of that sex are also interpretations of the Classifier for that sex). Type
isAbstract bool [1..1] false Indicates whether instances of this Type must also be instances of at least one of its specialized Types. Type
isComposite bool [1..1] false Whether the Feature is a composite feature of its featuringType. If so, the values of the Feature cannot exist after its featuring instance no longer does. Feature
isConjugated bool [1..1] {derived} Indicates whether this Type has an ownedConjugator. Type
isDerived bool [1..1] false Whether the values of this Feature can always be computed from the values of other Features. Feature
isEnd bool [1..1] false Whether or not the this Feature is an end Feature, requiring a different interpretation of the multiplicity of the Feature.An end Feature is always considered to map each domain instance to a single co-domain instance, whether or not a Multiplicity is given for it. If a Multiplicity is given for an end Feature, rather than giving the co-domain cardinality for the Feature as usual, it specifies a cardinality constraint for navigating across the endFeatures of the featuringType of the end Feature. That is, if a Type has n endFeatures, then the Multiplicity of any one of those end Features constrains the cardinality of the set of values of that Feature when the values of the other n-1 end Features are held fixed. Feature
isImplied bool [1..1] false Whether this Relationship was generated by tooling to meet semantic rules, rather than being directly created by a modeler. Relationship
isImpliedIncluded bool [1..1] false Whether all necessary implied Relationships have been included in the ownedRelationships of this Element. This property may be true, even if there are not actually any ownedRelationships with isImplied = true, meaning that no such Relationships are actually implied for this Element. However, if it is false, then ownedRelationships may not contain any implied Relationships. That is, either all required implied Relationships must be included, or none of them. Element
isIndividual bool [1..1] false Whether this OccurrenceUsage represents the usage of the specific individual (or portion of it) represented by its individualDefinition. OccurrenceUsage
isLibraryElement bool [1..1] {derived} Whether this Element is contained in the ownership tree of a library model. Element
isNonunique bool [1..1] {derived} false Feature
isOrdered bool [1..1] false Whether an order exists for the values of this Feature or not. Feature
isPortion bool [1..1] false Whether the values of this Feature are contained in the space and time of instances of the domain of the Feature and represent the same thing as those instances. Feature
isReadOnly bool [1..1] false Whether the values of this Feature can change over the lifetime of an instance of the domain. Feature
isReference bool [1..1] {derived} Whether this Usage is a referential Usage, that is, it has isComposite = false. Usage
isSufficient bool [1..1] false Whether all things that meet the classification conditions of this Type must be classified by the Type.(A Type gives conditions that must be met by whatever it classifies, but when isSufficient is false, things may meet those conditions but still not be classified by the Type. For example, a Type Car that is not sufficient could require everything it classifies to have four wheels, but not all four wheeled things would classify as cars. However, if the Type Car were sufficient, it would classify all four-wheeled things.) Type
isUnique bool [1..1] true Whether or not values for this Feature must have no duplicates or not. Feature
isVariation bool [1..1] Whether this Usage is for a variation point or not. If true, then all the memberships of the Usage must be VariantMemberships. Usage
itemDefinition Structure [0..-1] {derived} The Structures that are the definitions of this ItemUsage. Nominally, these are ItemDefinitions, but other kinds of Kernel Structures are also allowed, to permit use of Structures from the Kernel Library. ItemUsage
member Element [0..-1] {derived} The set of all member Elements of this Namespace, which are the memberElements of all memberships of the Namespace. Namespace
membership Membership [0..-1] {derived} All Memberships in this Namespace, including (at least) the union of ownedMemberships and importedMemberships. Namespace
multiplicity Multiplicity [0..1] {derived} An ownedMember of this Type that is a Multiplicity, which constraints the cardinality of the Type. If there is no such ownedMember, then the cardinality of this Type is constrained by all the Multiplicity constraints applicable to any direct supertypes.  Type
name string [0..1] {derived} The name to be used for this Element during name resolution within its owningNamespace. This is derived using the effectiveName() operation. By default, it is the same as the declaredName, but this is overridden for certain kinds of Elements to compute a name even when the declaredName is null. Element
nestedAction ActionUsage [0..-1] {derived} The ActionUsages that are nestedUsages of this Usage. Usage
nestedAllocation AllocationUsage [0..-1] {derived} The AllocationUsages that are nestedUsages of this Usage. Usage
nestedAnalysisCase AnalysisCaseUsage [0..-1] {derived} The AnalysisCaseUsages that are nestedUsages of this Usage. Usage
nestedAttribute AttributeUsage [0..-1] {derived} The code>AttributeUsages that are nestedUsages of this Usage. Usage
nestedCalculation CalculationUsage [0..-1] {derived} The CalculationUsage that are nestedUsages of this Usage. Usage
nestedCase CaseUsage [0..-1] {derived} The CaseUsages that are nestedUsages of this Usage. Usage
nestedConcern ConcernUsage [0..-1] {derived} The ConcernUsages that are nestedUsages of this Usage. Usage
nestedConnection ConnectorAsUsage [0..-1] {derived} The ConnectorAsUsages that are nestedUsages of this Usage. Note that this list includes BindingConnectorAsUsages and SuccessionAsUsages, even though these are ConnectorAsUsages but not ConnectionUsages. Usage
nestedConstraint ConstraintUsage [0..-1] {derived} The ConstraintUsages that are nestedUsages of this Usage. Usage
nestedEnumeration EnumerationUsage [0..-1] {derived} The code>EnumerationUsages that are nestedUsages of this Usage. Usage
nestedFlow FlowConnectionUsage [0..-1] {derived} The code>FlowConnectionUsages that are nestedUsages of this Usage. Usage
nestedInterface InterfaceUsage [0..-1] {derived} The InterfaceUsages that are nestedUsages of this Usage. Usage
nestedItem ItemUsage [0..-1] {derived} The ItemUsages that are nestedUsages of this Usage. Usage
nestedMetadata MetadataUsage [0..-1] {derived} The MetadataUsages that are nestedUsages of this of this Usage. Usage
nestedOccurrence OccurrenceUsage [0..-1] {derived} The OccurrenceUsages that are nestedUsages of this Usage. Usage
nestedPart PartUsage [0..-1] {derived} The PartUsages that are nestedUsages of this Usage. Usage
nestedPort PortUsage [0..-1] {derived} The PortUsages that are nestedUsages of this Usage. Usage
nestedReference ReferenceUsage [0..-1] {derived} The ReferenceUsages that are nestedUsages of this Usage. Usage
nestedRendering RenderingUsage [0..-1] {derived} The RenderingUsages that are nestedUsages of this Usage. Usage
nestedRequirement RequirementUsage [0..-1] {derived} The RequirementUsages that are nestedUsages of this Usage. Usage
nestedState StateUsage [0..-1] {derived} The StateUsages that are nestedUsages of this Usage. Usage
nestedTransition TransitionUsage [0..-1] {derived} The TransitionUsages that are nestedUsages of this Usage. Usage
nestedUsage Usage [0..-1] {derived} The Usages that are ownedFeatures of this Usage. Usage
nestedUseCase UseCaseUsage [0..-1] {derived} The UseCaseUsages that are nestedUsages of this Usage. Usage
nestedVerificationCase VerificationCaseUsage [0..-1] {derived} The VerificationCaseUsages that are nestedUsages of this Usage. Usage
nestedView ViewUsage [0..-1] {derived} The ViewUsages that are nestedUsages of this Usage. Usage
nestedViewpoint ViewpointUsage [0..-1] {derived} The ViewpointUsages that are nestedUsages of this Usage. Usage
occurrenceDefinition Class [0..-1] {derived} The Classes that are the types of this OccurrenceUsage. Nominally, these are OccurrenceDefinitions, but other kinds of kernel Classes are also allowed, to permit use of Classes from the Kernel Model Libraries. OccurrenceUsage
output Feature [0..-1] {derived} All features related to this Type by FeatureMemberships that have direction out or inout. Type
ownedAnnotation Annotation [0..-1] {derived} The ownedRelationships of this Element that are Annotations, for which this Element is the annotatedElement. Element
ownedConjugator Conjugation [0..1] {derived} A Conjugation owned by this Type for which the Type is the originalType. Type
ownedDifferencing Differencing [0..-1] {derived} The ownedRelationships of this Type that are Differencings, having this Type as their typeDifferenced. Type
ownedDisjoining Disjoining [0..-1] {derived} The ownedRelationships of this Type that are Disjoinings, for which the Type is the typeDisjoined Type. Type
ownedElement Element [0..-1] {derived} The Elements owned by this Element, derived as the ownedRelatedElements of the ownedRelationships of this Element. Element
ownedEndFeature Feature [0..-1] {derived} All endFeatures of this Type that are ownedFeatures. Type
ownedFeature Feature [0..-1] {derived} The ownedMemberFeatures of the ownedFeatureMemberships of this Type. Type
ownedFeatureChaining FeatureChaining [0..-1] {derived} The ownedRelationships of this Feature that are FeatureChainings, for which the Feature will be the featureChained. Feature
ownedFeatureInverting FeatureInverting [0..-1] {derived} The ownedRelationships of this Feature that are FeatureInvertings and for which the Feature is the featureInverted. Feature
ownedFeatureMembership FeatureMembership [0..-1] {derived} The ownedMemberships of this Type that are FeatureMemberships, for which the Type is the owningType. Each such FeatureMembership identifies an ownedFeature of the Type. Type
ownedImport Import [0..-1] {derived} The ownedRelationships of this Namespace that are Imports, for which the Namespace is the importOwningNamespace. Namespace
ownedIntersecting Intersecting [0..-1] {derived} The ownedRelationships of this Type that are Intersectings, have the Type as their typeIntersected. Type
ownedMember Element [0..-1] {derived} The owned members of this Namespace, which are the ownedMemberElements of the ownedMemberships of the . Namespace
ownedMembership Membership [0..-1] {derived} The ownedRelationships of this Namespace that are Memberships, for which the Namespace is the membershipOwningNamespace. Namespace
ownedRedefinition Redefinition [0..-1] {derived} The ownedSubsettings of this Feature that are Redefinitions, for which the Feature is the redefiningFeature. Feature
ownedReferenceSubsetting ReferenceSubsetting [0..1] {derived} The one ownedSubsetting of this Feature, if any, that is a ReferenceSubsetting, for which the Feature is the referencingFeature. Feature
ownedRelatedElement Element [0..-1] {composite} The relatedElements of this Relationship that are owned by the Relationship. Relationship
ownedRelationship Relationship [0..-1] {composite} The Relationships for which this Element is the owningRelatedElement. Element
ownedSpecialization Specialization [0..-1] {derived} The ownedRelationships of this Type that are Specializations, for which the Type is the specific Type. Type
ownedSubsetting Subsetting [0..-1] {derived} The ownedSpecializations of this Feature that are Subsettings, for which the Feature is the subsettingFeature. Feature
ownedTypeFeaturing TypeFeaturing [0..-1] {derived} The ownedRelationships of this Feature that are TypeFeaturings and for which the Feature is the featureOfType. Feature
ownedTyping FeatureTyping [0..-1] {derived} The ownedSpecializations of this Feature that are FeatureTypings, for which the Feature is the typedFeature. Feature
ownedUnioning Unioning [0..-1] {derived} The ownedRelationships of this Type that are Unionings, having the Type as their typeUnioned. Type
owner Element [0..1] {derived} The owner of this Element, derived as the owningRelatedElement of the owningRelationship of this Element, if any. Element
owningDefinition Definition [0..1] {derived} The Definition that owns this Usage (if any). Usage
owningFeatureMembership FeatureMembership [0..1] {derived} The FeatureMembership that owns this Feature as an ownedMemberFeature, determining its owningType. Feature
owningMembership OwningMembership [0..1] {derived} The owningRelationship of this Element, if that Relationship is a Membership. Element
owningNamespace Namespace [0..1] {derived} The Namespace that owns this Element, which is the membershipOwningNamespace of the owningMembership of this Element, if any. Element
owningRelatedElement Element [0..1] The relatedElement of this Relationship that owns the Relationship, if any. Relationship
owningRelationship Relationship [0..1] The Relationship for which this Element is an ownedRelatedElement, if any. Element
owningType Type [0..1] {derived} The Type that is the owningType of the owningFeatureMembership of this Feature. Feature
owningUsage Usage [0..1] {derived} The Usage in which this Usage is nested (if any). Usage
partDefinition PartDefinition [0..-1] {derived} The itemDefinitions of this PartUsage that are PartDefinitions. PartUsage
portionKind PortionKind [0..1] The kind of (temporal) portion of the life of the occurrenceDefinition represented by this OccurrenceUsage, if it is so restricted. OccurrenceUsage
qualifiedName string [0..1] {derived} The full ownership-qualified name of this Element, represented in a form that is valid according to the KerML textual concrete syntax for qualified names (including use of unrestricted name notation and escaped characters, as necessary). The qualifiedName is null if this Element has no owningNamespace or if there is not a complete ownership chain of named Namespaces from a root Namespace to this Element. Element
relatedElement Element [0..-1] {derived} The Elements that are related by this Relationship, derived as the union of the source and target Elements of the Relationship. Relationship
relatedFeature Feature [0..-1] {derived} The Features that are related by this Connector considered as a Relationship and that restrict the links it identifies, given by the referenced Features of the connectorEnds of the Connector. Connector
shortName string [0..1] {derived} The short name to be used for this Element during name resolution within its owningNamespace. This is derived using the effectiveShortName() operation. By default, it is the same as the declaredShortName, but this is overridden for certain kinds of Elements to compute a shortName even when the declaredName is null. Element
source Element [0..-1] The relatedElements from which this Relationship is considered to be directed. Relationship
sourceFeature Feature [0..1] {derived} The source relatedFeature for this Connector. It is the first relatedFeature. Connector
target Element [0..-1] The relatedElements to which this Relationship is considered to be directed. Relationship
targetFeature Feature [0..-1] {derived} The target relatedFeatures for this Connector. This includes all the relatedFeatures other than the sourceFeature. Connector
textualRepresentation TextualRepresentation [0..-1] {derived} The TextualRepresentations that annotate this Element. Element
type Type [0..-1] {derived} Types that restrict the values of this Feature, such that the values must be instances of all the types. The types of a Feature are derived from its typings and the types of its subsettings. If the Feature is chained, then the types of the last Feature in the chain are also types of the chained Feature. Feature
unioningType Type [0..-1] {derived} The interpretations of a Type with unioningTypes are asserted to be the same as those of all the unioningTypes together, which are the Types derived from the unioningType of the ownedUnionings of this Type. For example, a Classifier for people might be the union of Classifiers for all the sexes. Similarly, a feature for people's children might be the union of features dividing them in the same ways as people in general. Type
usage Usage [0..-1] {derived} The Usages that are features of this Usage (not necessarily owned). Usage
variant Usage [0..-1] {derived} The Usages which represent the variants of this Usage as a variation point Usage, if isVariation = true. If isVariation = false, then there must be no variants. Usage
variantMembership VariantMembership [0..-1] {derived} The ownedMemberships of this Usage that are VariantMemberships. If isVariation = true, then this must be all memberships of the Usage. If isVariation = false, then variantMembershipmust be empty. Usage

AnalysisCaseDefinition

Definition

An AnalysisCaseDefinition is a CaseDefinition for the case of carrying out an analysis.analysisAction = action->select( isComposite and specializes('AnalysisCases::AnalysisAction'))resultExpression = let results : OrderedSet(ResultExpressionMembership) = featureMembersip-> selectByKind(ResultExpressionMembership) in if results->isEmpty() then null else results->first().ownedResultExpression endifspecializesFromLibrary('AnalysisCases::AnalysisCase')

Features

Name Description
Is Abstract FALSE
Generalizations CaseDefinition

Properties

Name Type Default Description Inheritance
action ActionUsage [0..-1] {derived} The ActionUsages that are steps in this ActionDefinition, which define the actions that specify the behavior of the ActionDefinition. ActionDefinition
actorParameter PartUsage [0..-1] {derived} The parameters of this CaseDefinition that represent actors involved in the case. CaseDefinition
aliasIds string [0..-1] Various alternative identifiers for this Element. Generally, these will be set by tools. Element
analysisAction ActionUsage [0..-1] {derived} The composite actions of the AnalysisCaseDefinition that are defined as AnalysisActions. AnalysisCaseDefinition
calculation CalculationUsage [0..-1] {derived} The actions of this CalculationDefinition that are CalculationUsages. CalculationDefinition
declaredName string [0..1] The declared name of this Element. Element
declaredShortName string [0..1] An optional alternative name for the Element that is intended to be shorter or in some way more succinct than its primary name. It may act as a modeler-specified identifier for the Element, though it is then the responsibility of the modeler to maintain the uniqueness of this identifier within a model or relative to some other context. Element
differencingType Type [0..-1] {derived} The interpretations of a Type with differencingTypes are asserted to be those of the first of those Types, but not including those of the remaining Types. For example, a Classifier might be the difference of a Classifier for people and another for people of a particular nationality, leaving people who are not of that nationality. Similarly, a feature of people might be the difference between a feature for their children and a Classifier for people of a particular sex, identifying their children not of that sex (because the interpretations of the children Feature that identify those of that sex are also interpretations of the Classifier for that sex). Type
directedFeature Feature [0..-1] {derived} The features of this Type that have a non-null direction. Type
directedUsage Usage [0..-1] {derived} The usages of this Definition that are directedFeatures. Definition
documentation Documentation [0..-1] {derived} The Documentation owned by this Element. Element
elementId string [1..1] The globally unique identifier for this Element. This is intended to be set by tooling, and it must not change during the lifetime of the Element. Element
endFeature Feature [0..-1] {derived} All features of this Type with isEnd = true. Type
expression Expression [0..-1] {derived} The Expressions that are steps in the calculation of the result of this Function.The set of expressions that represent computational steps or parts of a system of equations within the Function. Function
feature Feature [0..-1] {derived} The ownedMemberFeatures of the featureMemberships of this Type. Type
featureMembership FeatureMembership [0..-1] {derived} The FeatureMemberships for features of this Type, which include all ownedFeatureMemberships and those inheritedMemberships that are FeatureMemberships (but does not include any importedMemberships). Type
importedMembership Membership [0..-1] {derived} The Memberships in this Namespace that result from the ownedImports of this Namespace. Namespace
inheritedFeature Feature [0..-1] {derived} All the memberFeatures of the inheritedMemberships of this Type that are FeatureMemberships. Type
inheritedMembership Membership [0..-1] {derived} All Memberships inherited by this Type via Specialization or Conjugation. These are included in the derived union for the memberships of the Type. Type
input Feature [0..-1] {derived} All features related to this Type by FeatureMemberships that have direction in or inout. Type
intersectingType Type [0..-1] {derived} The interpretations of a Type with intersectingTypes are asserted to be those in common among the intersectingTypes, which are the Types derived from the intersectingType of the ownedIntersectings of this Type. For example, a Classifier might be an intersection of Classifiers for people of a particular sex and of a particular nationality. Similarly, a feature for people's children of a particular sex might be the intersection of a Feature for their children and a Classifier for people of that sex (because the interpretations of the children Feature that identify those of that sex are also interpretations of the Classifier for that sex). Type
isAbstract bool [1..1] false Indicates whether instances of this Type must also be instances of at least one of its specialized Types. Type
isConjugated bool [1..1] {derived} Indicates whether this Type has an ownedConjugator. Type
isImpliedIncluded bool [1..1] false Whether all necessary implied Relationships have been included in the ownedRelationships of this Element. This property may be true, even if there are not actually any ownedRelationships with isImplied = true, meaning that no such Relationships are actually implied for this Element. However, if it is false, then ownedRelationships may not contain any implied Relationships. That is, either all required implied Relationships must be included, or none of them. Element
isIndividual bool [1..1] false Whether this OccurrenceDefinition is constrained to represent single individual. OccurrenceDefinition
isLibraryElement bool [1..1] {derived} Whether this Element is contained in the ownership tree of a library model. Element
isModelLevelEvaluable bool [1..1] {derived} Whether this Function can be used as the function of a model-level evaluable InvocationExpression. Certain Functions from the Kernel Functions Library are considered to have isModelLevelEvaluable = true. For all other Functions it is false.Note: See the specification of the KerML concrete syntax notation for Expressions for an identification of which library Functions are model-level evaluable. Function
isSufficient bool [1..1] false Whether all things that meet the classification conditions of this Type must be classified by the Type.(A Type gives conditions that must be met by whatever it classifies, but when isSufficient is false, things may meet those conditions but still not be classified by the Type. For example, a Type Car that is not sufficient could require everything it classifies to have four wheels, but not all four wheeled things would classify as cars. However, if the Type Car were sufficient, it would classify all four-wheeled things.) Type
isVariation bool [1..1] Whether this Definition is for a variation point or not. If true, then all the memberships of the Definition must be VariantMemberships. Definition
lifeClass LifeClass [0..1] {derived} If isIndividual is true, a LifeClass that specializes this OccurrenceDefinition, restricting it to represent an individual. OccurrenceDefinition
member Element [0..-1] {derived} The set of all member Elements of this Namespace, which are the memberElements of all memberships of the Namespace. Namespace
membership Membership [0..-1] {derived} All Memberships in this Namespace, including (at least) the union of ownedMemberships and importedMemberships. Namespace
multiplicity Multiplicity [0..1] {derived} An ownedMember of this Type that is a Multiplicity, which constraints the cardinality of the Type. If there is no such ownedMember, then the cardinality of this Type is constrained by all the Multiplicity constraints applicable to any direct supertypes.  Type
name string [0..1] {derived} The name to be used for this Element during name resolution within its owningNamespace. This is derived using the effectiveName() operation. By default, it is the same as the declaredName, but this is overridden for certain kinds of Elements to compute a name even when the declaredName is null. Element
objectiveRequirement RequirementUsage [0..1] {derived} The RequirementUsage representing the objective of this CaseDefinition. CaseDefinition
output Feature [0..-1] {derived} All features related to this Type by FeatureMemberships that have direction out or inout. Type
ownedAction ActionUsage [0..-1] {derived} The ActionUsages that are ownedUsages of this Definition. Definition
ownedAllocation AllocationUsage [0..-1] {derived} The AllocationUsages that are ownedUsages of this Definition. Definition
ownedAnalysisCase AnalysisCaseUsage [0..-1] {derived} The AnalysisCaseUsages that are ownedUsages of this Definition. Definition
ownedAnnotation Annotation [0..-1] {derived} The ownedRelationships of this Element that are Annotations, for which this Element is the annotatedElement. Element
ownedAttribute AttributeUsage [0..-1] {derived} The AttributeUsages that are ownedUsages of this Definition. Definition
ownedCalculation CalculationUsage [0..-1] {derived} The CalculationUsages that are ownedUsages of this Definition. Definition
ownedCase CaseUsage [0..-1] {derived} The code>CaseUsages that are ownedUsages of this Definition. Definition
ownedConcern ConcernUsage [0..-1] {derived} The ConcernUsages that are ownedUsages of this Definition. Definition
ownedConjugator Conjugation [0..1] {derived} A Conjugation owned by this Type for which the Type is the originalType. Type
ownedConnection ConnectorAsUsage [0..-1] {derived} The ConnectorAsUsages that are ownedUsages of this Definition. Note that this list includes BindingConnectorAsUsages and SuccessionAsUsages, even though these are ConnectorAsUsages but not ConnectionUsages. Definition
ownedConstraint ConstraintUsage [0..-1] {derived} The ConstraintUsages that are ownedUsages of this Definition. Definition
ownedDifferencing Differencing [0..-1] {derived} The ownedRelationships of this Type that are Differencings, having this Type as their typeDifferenced. Type
ownedDisjoining Disjoining [0..-1] {derived} The ownedRelationships of this Type that are Disjoinings, for which the Type is the typeDisjoined Type. Type
ownedElement Element [0..-1] {derived} The Elements owned by this Element, derived as the ownedRelatedElements of the ownedRelationships of this Element. Element
ownedEndFeature Feature [0..-1] {derived} All endFeatures of this Type that are ownedFeatures. Type
ownedEnumeration EnumerationUsage [0..-1] {derived} The EnumerationUsages that are ownedUsages of this Definition. Definition
ownedFeature Feature [0..-1] {derived} The ownedMemberFeatures of the ownedFeatureMemberships of this Type. Type
ownedFeatureMembership FeatureMembership [0..-1] {derived} The ownedMemberships of this Type that are FeatureMemberships, for which the Type is the owningType. Each such FeatureMembership identifies an ownedFeature of the Type. Type
ownedFlow FlowConnectionUsage [0..-1] {derived} The FlowConnectionUsages that are ownedUsages of this Definition. Definition
ownedImport Import [0..-1] {derived} The ownedRelationships of this Namespace that are Imports, for which the Namespace is the importOwningNamespace. Namespace
ownedInterface InterfaceUsage [0..-1] {derived} The InterfaceUsages that are ownedUsages of this Definition. Definition
ownedIntersecting Intersecting [0..-1] {derived} The ownedRelationships of this Type that are Intersectings, have the Type as their typeIntersected. Type
ownedItem ItemUsage [0..-1] {derived} The ItemUsages that are ownedUsages of this Definition. Definition
ownedMember Element [0..-1] {derived} The owned members of this Namespace, which are the ownedMemberElements of the ownedMemberships of the . Namespace
ownedMembership Membership [0..-1] {derived} The ownedRelationships of this Namespace that are Memberships, for which the Namespace is the membershipOwningNamespace. Namespace
ownedMetadata MetadataUsage [0..-1] {derived} The MetadataUsages that are ownedUsages of this Definition. Definition
ownedOccurrence OccurrenceUsage [0..-1] {derived} The OccurrenceUsages that are ownedUsages of this Definition. Definition
ownedPart PartUsage [0..-1] {derived} The PartUsages that are ownedUsages of this Definition. Definition
ownedPort PortUsage [0..-1] {derived} The PortUsages that are ownedUsages of this Definition. Definition
ownedReference ReferenceUsage [0..-1] {derived} The ReferenceUsages that are ownedUsages of this Definition. Definition
ownedRelationship Relationship [0..-1] {composite} The Relationships for which this Element is the owningRelatedElement. Element
ownedRendering RenderingUsage [0..-1] {derived} The RenderingUsages that are ownedUsages of this Definition. Definition
ownedRequirement RequirementUsage [0..-1] {derived} The RequirementUsages that are ownedUsages of this Definition. Definition
ownedSpecialization Specialization [0..-1] {derived} The ownedRelationships of this Type that are Specializations, for which the Type is the specific Type. Type
ownedState StateUsage [0..-1] {derived} The StateUsages that are ownedUsages of this Definition. Definition
ownedSubclassification Subclassification [0..-1] {derived} The ownedSpecializations of this Classifier that are Subclassifications, for which this Classifier is the subclassifier. Classifier
ownedTransition TransitionUsage [0..-1] {derived} The TransitionUsages that are ownedUsages of this Definition. Definition
ownedUnioning Unioning [0..-1] {derived} The ownedRelationships of this Type that are Unionings, having the Type as their typeUnioned. Type
ownedUsage Usage [0..-1] {derived} The Usages that are ownedFeatures of this Definition. Definition
ownedUseCase UseCaseUsage [0..-1] {derived} The UseCaseUsages that are ownedUsages of this Definition. Definition
ownedVerificationCase VerificationCaseUsage [0..-1] {derived} The VerificationCaseUsages that are ownedUsages of this Definition. Definition
ownedView ViewUsage [0..-1] {derived} The ViewUsages that are ownedUsages of this Definition. Definition
ownedViewpoint ViewpointUsage [0..-1] {derived} The ViewpointUsages that are ownedUsages of this Definition. Definition
owner Element [0..1] {derived} The owner of this Element, derived as the owningRelatedElement of the owningRelationship of this Element, if any. Element
owningMembership OwningMembership [0..1] {derived} The owningRelationship of this Element, if that Relationship is a Membership. Element
owningNamespace Namespace [0..1] {derived} The Namespace that owns this Element, which is the membershipOwningNamespace of the owningMembership of this Element, if any. Element
owningRelationship Relationship [0..1] The Relationship for which this Element is an ownedRelatedElement, if any. Element
parameter Feature [0..-1] {derived} The parameters of this Behavior, which are defined as its directedFeatures, whose values are passed into and/or out of a performance of the Behavior. Behavior
qualifiedName string [0..1] {derived} The full ownership-qualified name of this Element, represented in a form that is valid according to the KerML textual concrete syntax for qualified names (including use of unrestricted name notation and escaped characters, as necessary). The qualifiedName is null if this Element has no owningNamespace or if there is not a complete ownership chain of named Namespaces from a root Namespace to this Element. Element
result Feature [1..1] {derived} The result parameter of the Function, which is owned by the Function via a ReturnParameterMembership.The object or value that is the result of evaluating the Function. Function
resultExpression Expression [0..1] {derived} An Expression used to compute the result of the AnalysisCaseDefinition, owned via a ResultExpressionMembership. AnalysisCaseDefinition
shortName string [0..1] {derived} The short name to be used for this Element during name resolution within its owningNamespace. This is derived using the effectiveShortName() operation. By default, it is the same as the declaredShortName, but this is overridden for certain kinds of Elements to compute a shortName even when the declaredName is null. Element
step Step [0..-1] {derived} The Steps that make up this Behavior. Behavior
subjectParameter Usage [1..1] {derived} The parameter of this CaseDefinition that represents its subject. CaseDefinition
textualRepresentation TextualRepresentation [0..-1] {derived} The TextualRepresentations that annotate this Element. Element
unioningType Type [0..-1] {derived} The interpretations of a Type with unioningTypes are asserted to be the same as those of all the unioningTypes together, which are the Types derived from the unioningType of the ownedUnionings of this Type. For example, a Classifier for people might be the union of Classifiers for all the sexes. Similarly, a feature for people's children might be the union of features dividing them in the same ways as people in general. Type
usage Usage [0..-1] {derived} The Usages that are features of this Definition (not necessarily owned). Definition
variant Usage [0..-1] {derived} The Usages which represent the variants of this Definition as a variation point Definition, if isVariation = true. If isVariation = false, the there must be no variants. Definition
variantMembership VariantMembership [0..-1] {derived} The ownedMemberships of this Definition that are VariantMemberships. If isVariation = true, then this must be all ownedMemberships of the Definition. If isVariation = false, then variantMembershipmust be empty. Definition

AnalysisCaseUsage

Definition

An AnalysisCaseUsage is a Usage of an AnalysisCaseDefinition.analysisAction = usage->select( isComposite and specializes('AnalysisCases::AnalysisAction'))resultExpression = let results : OrderedSet(ResultExpressionMembership) = featureMembersip-> selectByKind(ResultExpressionMembership) in if results->isEmpty() then null else results->first().ownedResultExpression endifspecializesFromLibrary('AnalysisCases::analysisCases')isComposite and owningType <> null and (owningType.oclIsKindOf(AnalysisCaseDefinition) or owningType.oclIsKindOf(AnalysisCaseUsage)) implies specializesFromLibrary('AnalysisCases::AnalysisCase::subAnalysisCases')

Features

Name Description
Is Abstract FALSE
Generalizations CaseUsage

Properties

Name Type Default Description Inheritance
actionDefinition Behavior [0..-1] {derived} The Behaviors that are the types of this ActionUsage. Nominally, these would be ActionDefinitions, but other kinds of Kernel Behaviors are also allowed, to permit use of Behaviors from the Kernel Model Libraries. ActionUsage
actorParameter PartUsage [0..-1] {derived} The parameters of this CaseUsage that represent actors involved in the case. CaseUsage
aliasIds string [0..-1] Various alternative identifiers for this Element. Generally, these will be set by tools. Element
analysisAction ActionUsage [0..-1] {derived} The composite usages of the AnalysisCaseUsage that are defined as AnalysisActions. AnalysisCaseUsage
analysisCaseDefinition AnalysisCaseDefinition [0..1] {derived} The AnalysisCaseDefinition that is the definition of this AnalysisCaseUsage. AnalysisCaseUsage
behavior Behavior [0..-1] {derived} The Behaviors that type this Step. Step
calculationDefinition Function [0..1] {derived} The Function that is the type of this CalculationUsage. Nominally, this would be a CalculationDefinition, but a kernel Function is also allowed, to permit use of Functions from the Kernel Model Libraries. CalculationUsage
caseDefinition CaseDefinition [0..1] {derived} The CaseDefinition that is the type of this CaseUsage. CaseUsage
chainingFeature Feature [0..-1] {derived} The Feature that are chained together to determine the values of this Feature, derived from the chainingFeatures of the ownedFeatureChainings of this Feature, in the same order. The values of a Feature with chainingFeatures are the same as values of the last Feature in the chain, which can be found by starting with the values of the first Feature (for each instance of the domain of the original Feature), then using each of those as domain instances to find the values of the second Feature in chainingFeatures, and so on, to values of the last Feature. Feature
declaredName string [0..1] The declared name of this Element. Element
declaredShortName string [0..1] An optional alternative name for the Element that is intended to be shorter or in some way more succinct than its primary name. It may act as a modeler-specified identifier for the Element, though it is then the responsibility of the modeler to maintain the uniqueness of this identifier within a model or relative to some other context. Element
definition Classifier [0..-1] {derived} The Classifiers that are the types of this Usage. Nominally, these are Definitions, but other kinds of Kernel Classifiers are also allowed, to permit use of Classifiers from the Kernel Model Libraries. Usage
differencingType Type [0..-1] {derived} The interpretations of a Type with differencingTypes are asserted to be those of the first of those Types, but not including those of the remaining Types. For example, a Classifier might be the difference of a Classifier for people and another for people of a particular nationality, leaving people who are not of that nationality. Similarly, a feature of people might be the difference between a feature for their children and a Classifier for people of a particular sex, identifying their children not of that sex (because the interpretations of the children Feature that identify those of that sex are also interpretations of the Classifier for that sex). Type
directedFeature Feature [0..-1] {derived} The features of this Type that have a non-null direction. Type
directedUsage Usage [0..-1] {derived} The usages of this Usage that are directedFeatures. Usage
direction FeatureDirectionKind [0..1] Indicates how values of this Feature are determined or used (as specified for the FeatureDirectionKind). Feature
documentation Documentation [0..-1] {derived} The Documentation owned by this Element. Element
elementId string [1..1] The globally unique identifier for this Element. This is intended to be set by tooling, and it must not change during the lifetime of the Element. Element
endFeature Feature [0..-1] {derived} All features of this Type with isEnd = true. Type
endOwningType Type [0..1] {derived} The Type that is related to this Feature by an EndFeatureMembership in which the Feature is an ownedMemberFeature. Feature
feature Feature [0..-1] {derived} The ownedMemberFeatures of the featureMemberships of this Type. Type
featureMembership FeatureMembership [0..-1] {derived} The FeatureMemberships for features of this Type, which include all ownedFeatureMemberships and those inheritedMemberships that are FeatureMemberships (but does not include any importedMemberships). Type
featuringType Type [0..-1] {derived} Types that feature this Feature, such that any instance in the domain of the Feature must be classified by all of these Types, including at least all the featuringTypes of its typeFeaturings. If the Feature is chained, then the featuringTypes of the first Feature in the chain are also featuringTypes of the chained Feature. Feature
function Function [0..1] {derived} The Function that types this Expression.This is the Function that types the Expression. Expression
importedMembership Membership [0..-1] {derived} The Memberships in this Namespace that result from the ownedImports of this Namespace. Namespace
individualDefinition OccurrenceDefinition [0..1] {derived} The at most one occurrenceDefinition that has isIndividual = true. OccurrenceUsage
inheritedFeature Feature [0..-1] {derived} All the memberFeatures of the inheritedMemberships of this Type that are FeatureMemberships. Type
inheritedMembership Membership [0..-1] {derived} All Memberships inherited by this Type via Specialization or Conjugation. These are included in the derived union for the memberships of the Type. Type
input Feature [0..-1] {derived} All features related to this Type by FeatureMemberships that have direction in or inout. Type
intersectingType Type [0..-1] {derived} The interpretations of a Type with intersectingTypes are asserted to be those in common among the intersectingTypes, which are the Types derived from the intersectingType of the ownedIntersectings of this Type. For example, a Classifier might be an intersection of Classifiers for people of a particular sex and of a particular nationality. Similarly, a feature for people's children of a particular sex might be the intersection of a Feature for their children and a Classifier for people of that sex (because the interpretations of the children Feature that identify those of that sex are also interpretations of the Classifier for that sex). Type
isAbstract bool [1..1] false Indicates whether instances of this Type must also be instances of at least one of its specialized Types. Type
isComposite bool [1..1] false Whether the Feature is a composite feature of its featuringType. If so, the values of the Feature cannot exist after its featuring instance no longer does. Feature
isConjugated bool [1..1] {derived} Indicates whether this Type has an ownedConjugator. Type
isDerived bool [1..1] false Whether the values of this Feature can always be computed from the values of other Features. Feature
isEnd bool [1..1] false Whether or not the this Feature is an end Feature, requiring a different interpretation of the multiplicity of the Feature.An end Feature is always considered to map each domain instance to a single co-domain instance, whether or not a Multiplicity is given for it. If a Multiplicity is given for an end Feature, rather than giving the co-domain cardinality for the Feature as usual, it specifies a cardinality constraint for navigating across the endFeatures of the featuringType of the end Feature. That is, if a Type has n endFeatures, then the Multiplicity of any one of those end Features constrains the cardinality of the set of values of that Feature when the values of the other n-1 end Features are held fixed. Feature
isImpliedIncluded bool [1..1] false Whether all necessary implied Relationships have been included in the ownedRelationships of this Element. This property may be true, even if there are not actually any ownedRelationships with isImplied = true, meaning that no such Relationships are actually implied for this Element. However, if it is false, then ownedRelationships may not contain any implied Relationships. That is, either all required implied Relationships must be included, or none of them. Element
isIndividual bool [1..1] false Whether this OccurrenceUsage represents the usage of the specific individual (or portion of it) represented by its individualDefinition. OccurrenceUsage
isLibraryElement bool [1..1] {derived} Whether this Element is contained in the ownership tree of a library model. Element
isModelLevelEvaluable bool [1..1] {derived} Whether this Expression meets the constraints necessary to be evaluated at model level, that is, using metadata within the model. Expression
isNonunique bool [1..1] {derived} false Feature
isOrdered bool [1..1] false Whether an order exists for the values of this Feature or not. Feature
isPortion bool [1..1] false Whether the values of this Feature are contained in the space and time of instances of the domain of the Feature and represent the same thing as those instances. Feature
isReadOnly bool [1..1] false Whether the values of this Feature can change over the lifetime of an instance of the domain. Feature
isReference bool [1..1] {derived} Whether this Usage is a referential Usage, that is, it has isComposite = false. Usage
isSufficient bool [1..1] false Whether all things that meet the classification conditions of this Type must be classified by the Type.(A Type gives conditions that must be met by whatever it classifies, but when isSufficient is false, things may meet those conditions but still not be classified by the Type. For example, a Type Car that is not sufficient could require everything it classifies to have four wheels, but not all four wheeled things would classify as cars. However, if the Type Car were sufficient, it would classify all four-wheeled things.) Type
isUnique bool [1..1] true Whether or not values for this Feature must have no duplicates or not. Feature
isVariation bool [1..1] Whether this Usage is for a variation point or not. If true, then all the memberships of the Usage must be VariantMemberships. Usage
member Element [0..-1] {derived} The set of all member Elements of this Namespace, which are the memberElements of all memberships of the Namespace. Namespace
membership Membership [0..-1] {derived} All Memberships in this Namespace, including (at least) the union of ownedMemberships and importedMemberships. Namespace
multiplicity Multiplicity [0..1] {derived} An ownedMember of this Type that is a Multiplicity, which constraints the cardinality of the Type. If there is no such ownedMember, then the cardinality of this Type is constrained by all the Multiplicity constraints applicable to any direct supertypes.  Type
name string [0..1] {derived} The name to be used for this Element during name resolution within its owningNamespace. This is derived using the effectiveName() operation. By default, it is the same as the declaredName, but this is overridden for certain kinds of Elements to compute a name even when the declaredName is null. Element
nestedAction ActionUsage [0..-1] {derived} The ActionUsages that are nestedUsages of this Usage. Usage
nestedAllocation AllocationUsage [0..-1] {derived} The AllocationUsages that are nestedUsages of this Usage. Usage
nestedAnalysisCase AnalysisCaseUsage [0..-1] {derived} The AnalysisCaseUsages that are nestedUsages of this Usage. Usage
nestedAttribute AttributeUsage [0..-1] {derived} The code>AttributeUsages that are nestedUsages of this Usage. Usage
nestedCalculation CalculationUsage [0..-1] {derived} The CalculationUsage that are nestedUsages of this Usage. Usage
nestedCase CaseUsage [0..-1] {derived} The CaseUsages that are nestedUsages of this Usage. Usage
nestedConcern ConcernUsage [0..-1] {derived} The ConcernUsages that are nestedUsages of this Usage. Usage
nestedConnection ConnectorAsUsage [0..-1] {derived} The ConnectorAsUsages that are nestedUsages of this Usage. Note that this list includes BindingConnectorAsUsages and SuccessionAsUsages, even though these are ConnectorAsUsages but not ConnectionUsages. Usage
nestedConstraint ConstraintUsage [0..-1] {derived} The ConstraintUsages that are nestedUsages of this Usage. Usage
nestedEnumeration EnumerationUsage [0..-1] {derived} The code>EnumerationUsages that are nestedUsages of this Usage. Usage
nestedFlow FlowConnectionUsage [0..-1] {derived} The code>FlowConnectionUsages that are nestedUsages of this Usage. Usage
nestedInterface InterfaceUsage [0..-1] {derived} The InterfaceUsages that are nestedUsages of this Usage. Usage
nestedItem ItemUsage [0..-1] {derived} The ItemUsages that are nestedUsages of this Usage. Usage
nestedMetadata MetadataUsage [0..-1] {derived} The MetadataUsages that are nestedUsages of this of this Usage. Usage
nestedOccurrence OccurrenceUsage [0..-1] {derived} The OccurrenceUsages that are nestedUsages of this Usage. Usage
nestedPart PartUsage [0..-1] {derived} The PartUsages that are nestedUsages of this Usage. Usage
nestedPort PortUsage [0..-1] {derived} The PortUsages that are nestedUsages of this Usage. Usage
nestedReference ReferenceUsage [0..-1] {derived} The ReferenceUsages that are nestedUsages of this Usage. Usage
nestedRendering RenderingUsage [0..-1] {derived} The RenderingUsages that are nestedUsages of this Usage. Usage
nestedRequirement RequirementUsage [0..-1] {derived} The RequirementUsages that are nestedUsages of this Usage. Usage
nestedState StateUsage [0..-1] {derived} The StateUsages that are nestedUsages of this Usage. Usage
nestedTransition TransitionUsage [0..-1] {derived} The TransitionUsages that are nestedUsages of this Usage. Usage
nestedUsage Usage [0..-1] {derived} The Usages that are ownedFeatures of this Usage. Usage
nestedUseCase UseCaseUsage [0..-1] {derived} The UseCaseUsages that are nestedUsages of this Usage. Usage
nestedVerificationCase VerificationCaseUsage [0..-1] {derived} The VerificationCaseUsages that are nestedUsages of this Usage. Usage
nestedView ViewUsage [0..-1] {derived} The ViewUsages that are nestedUsages of this Usage. Usage
nestedViewpoint ViewpointUsage [0..-1] {derived} The ViewpointUsages that are nestedUsages of this Usage. Usage
objectiveRequirement RequirementUsage [0..1] {derived} The RequirementUsage representing the objective of this CaseUsage. CaseUsage
occurrenceDefinition Class [0..-1] {derived} The Classes that are the types of this OccurrenceUsage. Nominally, these are OccurrenceDefinitions, but other kinds of kernel Classes are also allowed, to permit use of Classes from the Kernel Model Libraries. OccurrenceUsage
output Feature [0..-1] {derived} All features related to this Type by FeatureMemberships that have direction out or inout. Type
ownedAnnotation Annotation [0..-1] {derived} The ownedRelationships of this Element that are Annotations, for which this Element is the annotatedElement. Element
ownedConjugator Conjugation [0..1] {derived} A Conjugation owned by this Type for which the Type is the originalType. Type
ownedDifferencing Differencing [0..-1] {derived} The ownedRelationships of this Type that are Differencings, having this Type as their typeDifferenced. Type
ownedDisjoining Disjoining [0..-1] {derived} The ownedRelationships of this Type that are Disjoinings, for which the Type is the typeDisjoined Type. Type
ownedElement Element [0..-1] {derived} The Elements owned by this Element, derived as the ownedRelatedElements of the ownedRelationships of this Element. Element
ownedEndFeature Feature [0..-1] {derived} All endFeatures of this Type that are ownedFeatures. Type
ownedFeature Feature [0..-1] {derived} The ownedMemberFeatures of the ownedFeatureMemberships of this Type. Type
ownedFeatureChaining FeatureChaining [0..-1] {derived} The ownedRelationships of this Feature that are FeatureChainings, for which the Feature will be the featureChained. Feature
ownedFeatureInverting FeatureInverting [0..-1] {derived} The ownedRelationships of this Feature that are FeatureInvertings and for which the Feature is the featureInverted. Feature
ownedFeatureMembership FeatureMembership [0..-1] {derived} The ownedMemberships of this Type that are FeatureMemberships, for which the Type is the owningType. Each such FeatureMembership identifies an ownedFeature of the Type. Type
ownedImport Import [0..-1] {derived} The ownedRelationships of this Namespace that are Imports, for which the Namespace is the importOwningNamespace. Namespace
ownedIntersecting Intersecting [0..-1] {derived} The ownedRelationships of this Type that are Intersectings, have the Type as their typeIntersected. Type
ownedMember Element [0..-1] {derived} The owned members of this Namespace, which are the ownedMemberElements of the ownedMemberships of the . Namespace
ownedMembership Membership [0..-1] {derived} The ownedRelationships of this Namespace that are Memberships, for which the Namespace is the membershipOwningNamespace. Namespace
ownedRedefinition Redefinition [0..-1] {derived} The ownedSubsettings of this Feature that are Redefinitions, for which the Feature is the redefiningFeature. Feature
ownedReferenceSubsetting ReferenceSubsetting [0..1] {derived} The one ownedSubsetting of this Feature, if any, that is a ReferenceSubsetting, for which the Feature is the referencingFeature. Feature
ownedRelationship Relationship [0..-1] {composite} The Relationships for which this Element is the owningRelatedElement. Element
ownedSpecialization Specialization [0..-1] {derived} The ownedRelationships of this Type that are Specializations, for which the Type is the specific Type. Type
ownedSubsetting Subsetting [0..-1] {derived} The ownedSpecializations of this Feature that are Subsettings, for which the Feature is the subsettingFeature. Feature
ownedTypeFeaturing TypeFeaturing [0..-1] {derived} The ownedRelationships of this Feature that are TypeFeaturings and for which the Feature is the featureOfType. Feature
ownedTyping FeatureTyping [0..-1] {derived} The ownedSpecializations of this Feature that are FeatureTypings, for which the Feature is the typedFeature. Feature
ownedUnioning Unioning [0..-1] {derived} The ownedRelationships of this Type that are Unionings, having the Type as their typeUnioned. Type
owner Element [0..1] {derived} The owner of this Element, derived as the owningRelatedElement of the owningRelationship of this Element, if any. Element
owningDefinition Definition [0..1] {derived} The Definition that owns this Usage (if any). Usage
owningFeatureMembership FeatureMembership [0..1] {derived} The FeatureMembership that owns this Feature as an ownedMemberFeature, determining its owningType. Feature
owningMembership OwningMembership [0..1] {derived} The owningRelationship of this Element, if that Relationship is a Membership. Element
owningNamespace Namespace [0..1] {derived} The Namespace that owns this Element, which is the membershipOwningNamespace of the owningMembership of this Element, if any. Element
owningRelationship Relationship [0..1] The Relationship for which this Element is an ownedRelatedElement, if any. Element
owningType Type [0..1] {derived} The Type that is the owningType of the owningFeatureMembership of this Feature. Feature
owningUsage Usage [0..1] {derived} The Usage in which this Usage is nested (if any). Usage
parameter Feature [0..-1] {derived} The parameters of this Step, which are defined as its directedFeatures, whose values are passed into and/or out of a performance of the Step. Step
portionKind PortionKind [0..1] The kind of (temporal) portion of the life of the occurrenceDefinition represented by this OccurrenceUsage, if it is so restricted. OccurrenceUsage
qualifiedName string [0..1] {derived} The full ownership-qualified name of this Element, represented in a form that is valid according to the KerML textual concrete syntax for qualified names (including use of unrestricted name notation and escaped characters, as necessary). The qualifiedName is null if this Element has no owningNamespace or if there is not a complete ownership chain of named Namespaces from a root Namespace to this Element. Element
result Feature [1..1] {derived} An output parameter of the Expression whose value is the result of the Expression. The result of an Expression is either inherited from its function or it is related to the Expression via a ReturnParameterMembership, in which case it redefines the result parameter of its function. Expression
resultExpression Expression [0..1] {derived} An Expression used to compute the result of the AnalysisCaseUsage, owned via a ResultExpressionMembership. AnalysisCaseUsage
shortName string [0..1] {derived} The short name to be used for this Element during name resolution within its owningNamespace. This is derived using the effectiveShortName() operation. By default, it is the same as the declaredShortName, but this is overridden for certain kinds of Elements to compute a shortName even when the declaredName is null. Element
subjectParameter Usage [1..1] {derived} The parameter of this CaseUsage that represents its subject. CaseUsage
textualRepresentation TextualRepresentation [0..-1] {derived} The TextualRepresentations that annotate this Element. Element
type Type [0..-1] {derived} Types that restrict the values of this Feature, such that the values must be instances of all the types. The types of a Feature are derived from its typings and the types of its subsettings. If the Feature is chained, then the types of the last Feature in the chain are also types of the chained Feature. Feature
unioningType Type [0..-1] {derived} The interpretations of a Type with unioningTypes are asserted to be the same as those of all the unioningTypes together, which are the Types derived from the unioningType of the ownedUnionings of this Type. For example, a Classifier for people might be the union of Classifiers for all the sexes. Similarly, a feature for people's children might be the union of features dividing them in the same ways as people in general. Type
usage Usage [0..-1] {derived} The Usages that are features of this Usage (not necessarily owned). Usage
variant Usage [0..-1] {derived} The Usages which represent the variants of this Usage as a variation point Usage, if isVariation = true. If isVariation = false, then there must be no variants. Usage
variantMembership VariantMembership [0..-1] {derived} The ownedMemberships of this Usage that are VariantMemberships. If isVariation = true, then this must be all memberships of the Usage. If isVariation = false, then variantMembershipmust be empty. Usage

AnnotatingElement

Definition

An AnnotatingElement is an Element that provides additional description of or metadata on some other Element. An AnnotatingElement is either attached to its annotatedElements by Annotation Relationships, or it implicitly annotates its owningNamespace.annotatedElement = if annotation->notEmpty() then annotation.annotatedElement else Sequence{owningNamespace} endifownedAnnotatingRelationship = ownedRelationship-> selectByKind(Annotation)-> select(a | a.annotatingElement = self)

Features

Name Description
Is Abstract FALSE
Generalizations Element

Properties

Name Type Default Description Inheritance
aliasIds string [0..-1] Various alternative identifiers for this Element. Generally, these will be set by tools. Element
annotatedElement Element [1..-1] {derived} The Elements that are annotated by this AnnotatingElement. If annotation is not empty, these are the annotatedElements of the annotations. If annotation is empty, then it is the owningNamespace of the AnnotatingElement. AnnotatingElement
annotation Annotation [0..-1] The Annotations that relate this AnnotatingElement to its annotatedElements. AnnotatingElement
declaredName string [0..1] The declared name of this Element. Element
declaredShortName string [0..1] An optional alternative name for the Element that is intended to be shorter or in some way more succinct than its primary name. It may act as a modeler-specified identifier for the Element, though it is then the responsibility of the modeler to maintain the uniqueness of this identifier within a model or relative to some other context. Element
documentation Documentation [0..-1] {derived} The Documentation owned by this Element. Element
elementId string [1..1] The globally unique identifier for this Element. This is intended to be set by tooling, and it must not change during the lifetime of the Element. Element
isImpliedIncluded bool [1..1] false Whether all necessary implied Relationships have been included in the ownedRelationships of this Element. This property may be true, even if there are not actually any ownedRelationships with isImplied = true, meaning that no such Relationships are actually implied for this Element. However, if it is false, then ownedRelationships may not contain any implied Relationships. That is, either all required implied Relationships must be included, or none of them. Element
isLibraryElement bool [1..1] {derived} Whether this Element is contained in the ownership tree of a library model. Element
name string [0..1] {derived} The name to be used for this Element during name resolution within its owningNamespace. This is derived using the effectiveName() operation. By default, it is the same as the declaredName, but this is overridden for certain kinds of Elements to compute a name even when the declaredName is null. Element
ownedAnnotatingRelationship Annotation [0..-1] {derived} The ownedRelationships of this AnnotatingElement that are Annotations, for which this AnnotatingElement is the annotatingElement. AnnotatingElement
ownedAnnotation Annotation [0..-1] {derived} The ownedRelationships of this Element that are Annotations, for which this Element is the annotatedElement. Element
ownedElement Element [0..-1] {derived} The Elements owned by this Element, derived as the ownedRelatedElements of the ownedRelationships of this Element. Element
ownedRelationship Relationship [0..-1] {composite} The Relationships for which this Element is the owningRelatedElement. Element
owner Element [0..1] {derived} The owner of this Element, derived as the owningRelatedElement of the owningRelationship of this Element, if any. Element
owningMembership OwningMembership [0..1] {derived} The owningRelationship of this Element, if that Relationship is a Membership. Element
owningNamespace Namespace [0..1] {derived} The Namespace that owns this Element, which is the membershipOwningNamespace of the owningMembership of this Element, if any. Element
owningRelationship Relationship [0..1] The Relationship for which this Element is an ownedRelatedElement, if any. Element
qualifiedName string [0..1] {derived} The full ownership-qualified name of this Element, represented in a form that is valid according to the KerML textual concrete syntax for qualified names (including use of unrestricted name notation and escaped characters, as necessary). The qualifiedName is null if this Element has no owningNamespace or if there is not a complete ownership chain of named Namespaces from a root Namespace to this Element. Element
shortName string [0..1] {derived} The short name to be used for this Element during name resolution within its owningNamespace. This is derived using the effectiveShortName() operation. By default, it is the same as the declaredShortName, but this is overridden for certain kinds of Elements to compute a shortName even when the declaredName is null. Element
textualRepresentation TextualRepresentation [0..-1] {derived} The TextualRepresentations that annotate this Element. Element

Annotation

Definition

An Annotation is a Relationship between an AnnotatingElement and the Element that is annotated by that AnnotatingElement.

Features

Name Description
Is Abstract FALSE
Generalizations Relationship

Properties

Name Type Default Description Inheritance
aliasIds string [0..-1] Various alternative identifiers for this Element. Generally, these will be set by tools. Element
annotatedElement Element [1..1] The Element that is annotated by the annotatingElement of this Annotation. Annotation
annotatingElement AnnotatingElement [1..1] The AnnotatingElement that annotates the annotatedElement of this Annotation. Annotation
declaredName string [0..1] The declared name of this Element. Element
declaredShortName string [0..1] An optional alternative name for the Element that is intended to be shorter or in some way more succinct than its primary name. It may act as a modeler-specified identifier for the Element, though it is then the responsibility of the modeler to maintain the uniqueness of this identifier within a model or relative to some other context. Element
documentation Documentation [0..-1] {derived} The Documentation owned by this Element. Element
elementId string [1..1] The globally unique identifier for this Element. This is intended to be set by tooling, and it must not change during the lifetime of the Element. Element
isImplied bool [1..1] false Whether this Relationship was generated by tooling to meet semantic rules, rather than being directly created by a modeler. Relationship
isImpliedIncluded bool [1..1] false Whether all necessary implied Relationships have been included in the ownedRelationships of this Element. This property may be true, even if there are not actually any ownedRelationships with isImplied = true, meaning that no such Relationships are actually implied for this Element. However, if it is false, then ownedRelationships may not contain any implied Relationships. That is, either all required implied Relationships must be included, or none of them. Element
isLibraryElement bool [1..1] {derived} Whether this Element is contained in the ownership tree of a library model. Element
name string [0..1] {derived} The name to be used for this Element during name resolution within its owningNamespace. This is derived using the effectiveName() operation. By default, it is the same as the declaredName, but this is overridden for certain kinds of Elements to compute a name even when the declaredName is null. Element
ownedAnnotation Annotation [0..-1] {derived} The ownedRelationships of this Element that are Annotations, for which this Element is the annotatedElement. Element
ownedElement Element [0..-1] {derived} The Elements owned by this Element, derived as the ownedRelatedElements of the ownedRelationships of this Element. Element
ownedRelatedElement Element [0..-1] {composite} The relatedElements of this Relationship that are owned by the Relationship. Relationship
ownedRelationship Relationship [0..-1] {composite} The Relationships for which this Element is the owningRelatedElement. Element
owner Element [0..1] {derived} The owner of this Element, derived as the owningRelatedElement of the owningRelationship of this Element, if any. Element
owningAnnotatedElement Element [0..1] {derived} The annotatedElement of this Annotation, when it is also its owningRelatedElement. Annotation
owningAnnotatingElement AnnotatingElement [0..1] {derived} The annotatingElement of this Annotation, when it is also its owningRelatedElement. Annotation
owningMembership OwningMembership [0..1] {derived} The owningRelationship of this Element, if that Relationship is a Membership. Element
owningNamespace Namespace [0..1] {derived} The Namespace that owns this Element, which is the membershipOwningNamespace of the owningMembership of this Element, if any. Element
owningRelatedElement Element [0..1] The relatedElement of this Relationship that owns the Relationship, if any. Relationship
owningRelationship Relationship [0..1] The Relationship for which this Element is an ownedRelatedElement, if any. Element
qualifiedName string [0..1] {derived} The full ownership-qualified name of this Element, represented in a form that is valid according to the KerML textual concrete syntax for qualified names (including use of unrestricted name notation and escaped characters, as necessary). The qualifiedName is null if this Element has no owningNamespace or if there is not a complete ownership chain of named Namespaces from a root Namespace to this Element. Element
relatedElement Element [0..-1] {derived} The Elements that are related by this Relationship, derived as the union of the source and target Elements of the Relationship. Relationship
shortName string [0..1] {derived} The short name to be used for this Element during name resolution within its owningNamespace. This is derived using the effectiveShortName() operation. By default, it is the same as the declaredShortName, but this is overridden for certain kinds of Elements to compute a shortName even when the declaredName is null. Element
source Element [0..-1] The relatedElements from which this Relationship is considered to be directed. Relationship
target Element [0..-1] The relatedElements to which this Relationship is considered to be directed. Relationship
textualRepresentation TextualRepresentation [0..-1] {derived} The TextualRepresentations that annotate this Element. Element

AssertConstraintUsage

Definition

An AssertConstraintUsage is a ConstraintUsage that is also an Invariant and, so, is asserted to be true (by default). Unless it is the AssertConstraintUsage itself, the asserted ConstraintUsage is related to the AssertConstraintUsage by a ReferenceSubsetting Relationship.assertedConstraint = if ownedReferenceSubsetting = null then self else ownedReferenceSubsetting.referencedFeature.oclAsType(ConstraintUsage) endifif isNegated then specializesFromLibrary('Constraints::negatedConstraints')else specializesFromLibrary('Constraints::assertedConstraints')endifownedReferenceSubsetting <> null implies ownedReferenceSubsetting.referencedFeature.oclIsKindOf(ConstraintUsage)

Features

Name Description
Is Abstract FALSE
Generalizations ConstraintUsage Invariant

Properties

Name Type Default Description Inheritance
aliasIds string [0..-1] Various alternative identifiers for this Element. Generally, these will be set by tools. Element
assertedConstraint ConstraintUsage [1..1] {derived} The ConstraintUsage to be performed by the AssertConstraintUsage. It is the referenceFeature of the ownedReferenceSubsetting for the AssertConstraintUsage, if there is one, and, otherwise, the AssertConstraintUsage itself. AssertConstraintUsage
behavior Behavior [0..-1] {derived} The Behaviors that type this Step. Step
chainingFeature Feature [0..-1] {derived} The Feature that are chained together to determine the values of this Feature, derived from the chainingFeatures of the ownedFeatureChainings of this Feature, in the same order. The values of a Feature with chainingFeatures are the same as values of the last Feature in the chain, which can be found by starting with the values of the first Feature (for each instance of the domain of the original Feature), then using each of those as domain instances to find the values of the second Feature in chainingFeatures, and so on, to values of the last Feature. Feature
constraintDefinition Predicate [0..1] {derived} The (single) Predicate that is the type of this ConstraintUsage. Nominally, this will be a ConstraintDefinition, but other kinds of Predicates are also allowed, to permit use of Predicates from the Kernel Model Libraries. ConstraintUsage
declaredName string [0..1] The declared name of this Element. Element
declaredShortName string [0..1] An optional alternative name for the Element that is intended to be shorter or in some way more succinct than its primary name. It may act as a modeler-specified identifier for the Element, though it is then the responsibility of the modeler to maintain the uniqueness of this identifier within a model or relative to some other context. Element
definition Classifier [0..-1] {derived} The Classifiers that are the types of this Usage. Nominally, these are Definitions, but other kinds of Kernel Classifiers are also allowed, to permit use of Classifiers from the Kernel Model Libraries. Usage
differencingType Type [0..-1] {derived} The interpretations of a Type with differencingTypes are asserted to be those of the first of those Types, but not including those of the remaining Types. For example, a Classifier might be the difference of a Classifier for people and another for people of a particular nationality, leaving people who are not of that nationality. Similarly, a feature of people might be the difference between a feature for their children and a Classifier for people of a particular sex, identifying their children not of that sex (because the interpretations of the children Feature that identify those of that sex are also interpretations of the Classifier for that sex). Type
directedFeature Feature [0..-1] {derived} The features of this Type that have a non-null direction. Type
directedUsage Usage [0..-1] {derived} The usages of this Usage that are directedFeatures. Usage
direction FeatureDirectionKind [0..1] Indicates how values of this Feature are determined or used (as specified for the FeatureDirectionKind). Feature
documentation Documentation [0..-1] {derived} The Documentation owned by this Element. Element
elementId string [1..1] The globally unique identifier for this Element. This is intended to be set by tooling, and it must not change during the lifetime of the Element. Element
endFeature Feature [0..-1] {derived} All features of this Type with isEnd = true. Type
endOwningType Type [0..1] {derived} The Type that is related to this Feature by an EndFeatureMembership in which the Feature is an ownedMemberFeature. Feature
feature Feature [0..-1] {derived} The ownedMemberFeatures of the featureMemberships of this Type. Type
featureMembership FeatureMembership [0..-1] {derived} The FeatureMemberships for features of this Type, which include all ownedFeatureMemberships and those inheritedMemberships that are FeatureMemberships (but does not include any importedMemberships). Type
featuringType Type [0..-1] {derived} Types that feature this Feature, such that any instance in the domain of the Feature must be classified by all of these Types, including at least all the featuringTypes of its typeFeaturings. If the Feature is chained, then the featuringTypes of the first Feature in the chain are also featuringTypes of the chained Feature. Feature
function Function [0..1] {derived} The Function that types this Expression.This is the Function that types the Expression. Expression
importedMembership Membership [0..-1] {derived} The Memberships in this Namespace that result from the ownedImports of this Namespace. Namespace
individualDefinition OccurrenceDefinition [0..1] {derived} The at most one occurrenceDefinition that has isIndividual = true. OccurrenceUsage
inheritedFeature Feature [0..-1] {derived} All the memberFeatures of the inheritedMemberships of this Type that are FeatureMemberships. Type
inheritedMembership Membership [0..-1] {derived} All Memberships inherited by this Type via Specialization or Conjugation. These are included in the derived union for the memberships of the Type. Type
input Feature [0..-1] {derived} All features related to this Type by FeatureMemberships that have direction in or inout. Type
intersectingType Type [0..-1] {derived} The interpretations of a Type with intersectingTypes are asserted to be those in common among the intersectingTypes, which are the Types derived from the intersectingType of the ownedIntersectings of this Type. For example, a Classifier might be an intersection of Classifiers for people of a particular sex and of a particular nationality. Similarly, a feature for people's children of a particular sex might be the intersection of a Feature for their children and a Classifier for people of that sex (because the interpretations of the children Feature that identify those of that sex are also interpretations of the Classifier for that sex). Type
isAbstract bool [1..1] false Indicates whether instances of this Type must also be instances of at least one of its specialized Types. Type
isComposite bool [1..1] false Whether the Feature is a composite feature of its featuringType. If so, the values of the Feature cannot exist after its featuring instance no longer does. Feature
isConjugated bool [1..1] {derived} Indicates whether this Type has an ownedConjugator. Type
isDerived bool [1..1] false Whether the values of this Feature can always be computed from the values of other Features. Feature
isEnd bool [1..1] false Whether or not the this Feature is an end Feature, requiring a different interpretation of the multiplicity of the Feature.An end Feature is always considered to map each domain instance to a single co-domain instance, whether or not a Multiplicity is given for it. If a Multiplicity is given for an end Feature, rather than giving the co-domain cardinality for the Feature as usual, it specifies a cardinality constraint for navigating across the endFeatures of the featuringType of the end Feature. That is, if a Type has n endFeatures, then the Multiplicity of any one of those end Features constrains the cardinality of the set of values of that Feature when the values of the other n-1 end Features are held fixed. Feature
isImpliedIncluded bool [1..1] false Whether all necessary implied Relationships have been included in the ownedRelationships of this Element. This property may be true, even if there are not actually any ownedRelationships with isImplied = true, meaning that no such Relationships are actually implied for this Element. However, if it is false, then ownedRelationships may not contain any implied Relationships. That is, either all required implied Relationships must be included, or none of them. Element
isIndividual bool [1..1] false Whether this OccurrenceUsage represents the usage of the specific individual (or portion of it) represented by its individualDefinition. OccurrenceUsage
isLibraryElement bool [1..1] {derived} Whether this Element is contained in the ownership tree of a library model. Element
isModelLevelEvaluable bool [1..1] {derived} Whether this Expression meets the constraints necessary to be evaluated at model level, that is, using metadata within the model. Expression
isNegated bool [1..1] false Whether this Invariant is asserted to be false rather than true. Invariant
isNonunique bool [1..1] {derived} false Feature
isOrdered bool [1..1] false Whether an order exists for the values of this Feature or not. Feature
isPortion bool [1..1] false Whether the values of this Feature are contained in the space and time of instances of the domain of the Feature and represent the same thing as those instances. Feature
isReadOnly bool [1..1] false Whether the values of this Feature can change over the lifetime of an instance of the domain. Feature
isReference bool [1..1] {derived} Whether this Usage is a referential Usage, that is, it has isComposite = false. Usage
isSufficient bool [1..1] false Whether all things that meet the classification conditions of this Type must be classified by the Type.(A Type gives conditions that must be met by whatever it classifies, but when isSufficient is false, things may meet those conditions but still not be classified by the Type. For example, a Type Car that is not sufficient could require everything it classifies to have four wheels, but not all four wheeled things would classify as cars. However, if the Type Car were sufficient, it would classify all four-wheeled things.) Type
isUnique bool [1..1] true Whether or not values for this Feature must have no duplicates or not. Feature
isVariation bool [1..1] Whether this Usage is for a variation point or not. If true, then all the memberships of the Usage must be VariantMemberships. Usage
member Element [0..-1] {derived} The set of all member Elements of this Namespace, which are the memberElements of all memberships of the Namespace. Namespace
membership Membership [0..-1] {derived} All Memberships in this Namespace, including (at least) the union of ownedMemberships and importedMemberships. Namespace
multiplicity Multiplicity [0..1] {derived} An ownedMember of this Type that is a Multiplicity, which constraints the cardinality of the Type. If there is no such ownedMember, then the cardinality of this Type is constrained by all the Multiplicity constraints applicable to any direct supertypes.  Type
name string [0..1] {derived} The name to be used for this Element during name resolution within its owningNamespace. This is derived using the effectiveName() operation. By default, it is the same as the declaredName, but this is overridden for certain kinds of Elements to compute a name even when the declaredName is null. Element
nestedAction ActionUsage [0..-1] {derived} The ActionUsages that are nestedUsages of this Usage. Usage
nestedAllocation AllocationUsage [0..-1] {derived} The AllocationUsages that are nestedUsages of this Usage. Usage
nestedAnalysisCase AnalysisCaseUsage [0..-1] {derived} The AnalysisCaseUsages that are nestedUsages of this Usage. Usage
nestedAttribute AttributeUsage [0..-1] {derived} The code>AttributeUsages that are nestedUsages of this Usage. Usage
nestedCalculation CalculationUsage [0..-1] {derived} The CalculationUsage that are nestedUsages of this Usage. Usage
nestedCase CaseUsage [0..-1] {derived} The CaseUsages that are nestedUsages of this Usage. Usage
nestedConcern ConcernUsage [0..-1] {derived} The ConcernUsages that are nestedUsages of this Usage. Usage
nestedConnection ConnectorAsUsage [0..-1] {derived} The ConnectorAsUsages that are nestedUsages of this Usage. Note that this list includes BindingConnectorAsUsages and SuccessionAsUsages, even though these are ConnectorAsUsages but not ConnectionUsages. Usage
nestedConstraint ConstraintUsage [0..-1] {derived} The ConstraintUsages that are nestedUsages of this Usage. Usage
nestedEnumeration EnumerationUsage [0..-1] {derived} The code>EnumerationUsages that are nestedUsages of this Usage. Usage
nestedFlow FlowConnectionUsage [0..-1] {derived} The code>FlowConnectionUsages that are nestedUsages of this Usage. Usage
nestedInterface InterfaceUsage [0..-1] {derived} The InterfaceUsages that are nestedUsages of this Usage. Usage
nestedItem ItemUsage [0..-1] {derived} The ItemUsages that are nestedUsages of this Usage. Usage
nestedMetadata MetadataUsage [0..-1] {derived} The MetadataUsages that are nestedUsages of this of this Usage. Usage
nestedOccurrence OccurrenceUsage [0..-1] {derived} The OccurrenceUsages that are nestedUsages of this Usage. Usage
nestedPart PartUsage [0..-1] {derived} The PartUsages that are nestedUsages of this Usage. Usage
nestedPort PortUsage [0..-1] {derived} The PortUsages that are nestedUsages of this Usage. Usage
nestedReference ReferenceUsage [0..-1] {derived} The ReferenceUsages that are nestedUsages of this Usage. Usage
nestedRendering RenderingUsage [0..-1] {derived} The RenderingUsages that are nestedUsages of this Usage. Usage
nestedRequirement RequirementUsage [0..-1] {derived} The RequirementUsages that are nestedUsages of this Usage. Usage
nestedState StateUsage [0..-1] {derived} The StateUsages that are nestedUsages of this Usage. Usage
nestedTransition TransitionUsage [0..-1] {derived} The TransitionUsages that are nestedUsages of this Usage. Usage
nestedUsage Usage [0..-1] {derived} The Usages that are ownedFeatures of this Usage. Usage
nestedUseCase UseCaseUsage [0..-1] {derived} The UseCaseUsages that are nestedUsages of this Usage. Usage
nestedVerificationCase VerificationCaseUsage [0..-1] {derived} The VerificationCaseUsages that are nestedUsages of this Usage. Usage
nestedView ViewUsage [0..-1] {derived} The ViewUsages that are nestedUsages of this Usage. Usage
nestedViewpoint ViewpointUsage [0..-1] {derived} The ViewpointUsages that are nestedUsages of this Usage. Usage
occurrenceDefinition Class [0..-1] {derived} The Classes that are the types of this OccurrenceUsage. Nominally, these are OccurrenceDefinitions, but other kinds of kernel Classes are also allowed, to permit use of Classes from the Kernel Model Libraries. OccurrenceUsage
output Feature [0..-1] {derived} All features related to this Type by FeatureMemberships that have direction out or inout. Type
ownedAnnotation Annotation [0..-1] {derived} The ownedRelationships of this Element that are Annotations, for which this Element is the annotatedElement. Element
ownedConjugator Conjugation [0..1] {derived} A Conjugation owned by this Type for which the Type is the originalType. Type
ownedDifferencing Differencing [0..-1] {derived} The ownedRelationships of this Type that are Differencings, having this Type as their typeDifferenced. Type
ownedDisjoining Disjoining [0..-1] {derived} The ownedRelationships of this Type that are Disjoinings, for which the Type is the typeDisjoined Type. Type
ownedElement Element [0..-1] {derived} The Elements owned by this Element, derived as the ownedRelatedElements of the ownedRelationships of this Element. Element
ownedEndFeature Feature [0..-1] {derived} All endFeatures of this Type that are ownedFeatures. Type
ownedFeature Feature [0..-1] {derived} The ownedMemberFeatures of the ownedFeatureMemberships of this Type. Type
ownedFeatureChaining FeatureChaining [0..-1] {derived} The ownedRelationships of this Feature that are FeatureChainings, for which the Feature will be the featureChained. Feature
ownedFeatureInverting FeatureInverting [0..-1] {derived} The ownedRelationships of this Feature that are FeatureInvertings and for which the Feature is the featureInverted. Feature
ownedFeatureMembership FeatureMembership [0..-1] {derived} The ownedMemberships of this Type that are FeatureMemberships, for which the Type is the owningType. Each such FeatureMembership identifies an ownedFeature of the Type. Type
ownedImport Import [0..-1] {derived} The ownedRelationships of this Namespace that are Imports, for which the Namespace is the importOwningNamespace. Namespace
ownedIntersecting Intersecting [0..-1] {derived} The ownedRelationships of this Type that are Intersectings, have the Type as their typeIntersected. Type
ownedMember Element [0..-1] {derived} The owned members of this Namespace, which are the ownedMemberElements of the ownedMemberships of the . Namespace
ownedMembership Membership [0..-1] {derived} The ownedRelationships of this Namespace that are Memberships, for which the Namespace is the membershipOwningNamespace. Namespace
ownedRedefinition Redefinition [0..-1] {derived} The ownedSubsettings of this Feature that are Redefinitions, for which the Feature is the redefiningFeature. Feature
ownedReferenceSubsetting ReferenceSubsetting [0..1] {derived} The one ownedSubsetting of this Feature, if any, that is a ReferenceSubsetting, for which the Feature is the referencingFeature. Feature
ownedRelationship Relationship [0..-1] {composite} The Relationships for which this Element is the owningRelatedElement. Element
ownedSpecialization Specialization [0..-1] {derived} The ownedRelationships of this Type that are Specializations, for which the Type is the specific Type. Type
ownedSubsetting Subsetting [0..-1] {derived} The ownedSpecializations of this Feature that are Subsettings, for which the Feature is the subsettingFeature. Feature
ownedTypeFeaturing TypeFeaturing [0..-1] {derived} The ownedRelationships of this Feature that are TypeFeaturings and for which the Feature is the featureOfType. Feature
ownedTyping FeatureTyping [0..-1] {derived} The ownedSpecializations of this Feature that are FeatureTypings, for which the Feature is the typedFeature. Feature
ownedUnioning Unioning [0..-1] {derived} The ownedRelationships of this Type that are Unionings, having the Type as their typeUnioned. Type
owner Element [0..1] {derived} The owner of this Element, derived as the owningRelatedElement of the owningRelationship of this Element, if any. Element
owningDefinition Definition [0..1] {derived} The Definition that owns this Usage (if any). Usage
owningFeatureMembership FeatureMembership [0..1] {derived} The FeatureMembership that owns this Feature as an ownedMemberFeature, determining its owningType. Feature
owningMembership OwningMembership [0..1] {derived} The owningRelationship of this Element, if that Relationship is a Membership. Element
owningNamespace Namespace [0..1] {derived} The Namespace that owns this Element, which is the membershipOwningNamespace of the owningMembership of this Element, if any. Element
owningRelationship Relationship [0..1] The Relationship for which this Element is an ownedRelatedElement, if any. Element
owningType Type [0..1] {derived} The Type that is the owningType of the owningFeatureMembership of this Feature. Feature
owningUsage Usage [0..1] {derived} The Usage in which this Usage is nested (if any). Usage
parameter Feature [0..-1] {derived} The parameters of this Step, which are defined as its directedFeatures, whose values are passed into and/or out of a performance of the Step. Step
portionKind PortionKind [0..1] The kind of (temporal) portion of the life of the occurrenceDefinition represented by this OccurrenceUsage, if it is so restricted. OccurrenceUsage
predicate Predicate [0..1] {derived} The Predicate that types this BooleanExpression.The Predicate that types the Expression. BooleanExpression
qualifiedName string [0..1] {derived} The full ownership-qualified name of this Element, represented in a form that is valid according to the KerML textual concrete syntax for qualified names (including use of unrestricted name notation and escaped characters, as necessary). The qualifiedName is null if this Element has no owningNamespace or if there is not a complete ownership chain of named Namespaces from a root Namespace to this Element. Element
result Feature [1..1] {derived} An output parameter of the Expression whose value is the result of the Expression. The result of an Expression is either inherited from its function or it is related to the Expression via a ReturnParameterMembership, in which case it redefines the result parameter of its function. Expression
shortName string [0..1] {derived} The short name to be used for this Element during name resolution within its owningNamespace. This is derived using the effectiveShortName() operation. By default, it is the same as the declaredShortName, but this is overridden for certain kinds of Elements to compute a shortName even when the declaredName is null. Element
textualRepresentation TextualRepresentation [0..-1] {derived} The TextualRepresentations that annotate this Element. Element
type Type [0..-1] {derived} Types that restrict the values of this Feature, such that the values must be instances of all the types. The types of a Feature are derived from its typings and the types of its subsettings. If the Feature is chained, then the types of the last Feature in the chain are also types of the chained Feature. Feature
unioningType Type [0..-1] {derived} The interpretations of a Type with unioningTypes are asserted to be the same as those of all the unioningTypes together, which are the Types derived from the unioningType of the ownedUnionings of this Type. For example, a Classifier for people might be the union of Classifiers for all the sexes. Similarly, a feature for people's children might be the union of features dividing them in the same ways as people in general. Type
usage Usage [0..-1] {derived} The Usages that are features of this Usage (not necessarily owned). Usage
variant Usage [0..-1] {derived} The Usages which represent the variants of this Usage as a variation point Usage, if isVariation = true. If isVariation = false, then there must be no variants. Usage
variantMembership VariantMembership [0..-1] {derived} The ownedMemberships of this Usage that are VariantMemberships. If isVariation = true, then this must be all memberships of the Usage. If isVariation = false, then variantMembershipmust be empty. Usage

AssignmentActionUsage

Definition

An AssignmentActionUsage is an ActionUsage that is defined, directly or indirectly, by the ActionDefinition AssignmentAction from the Systems Model Library. It specifies that the value of the referent Feature, relative to the target given by the result of the targetArgument Expression, should be set to the result of the valueExpression.specializesFromLibrary('Actions::assignmentActions')let targetParameter : Feature = inputParameter(1) intargetParameter <> null andtargetParameter.ownedFeature->notEmpty() andtargetParameter.ownedFeature->first(). redefines('AssignmentAction::target::startingAt')valueExpression = argument(2)targetArgument = argument(1)isSubactionUsage() implies specializesFromLibrary('Actions::Action::assignments')let targetParameter : Feature = inputParameter(1) intargetParameter <> null andtargetParameter.ownedFeature->notEmpty() andtargetParameter->first().ownedFeature->notEmpty() andtargetParameter->first().ownedFeature->first(). redefines('AssigmentAction::target::startingAt::accessedFeature')let targetParameter : Feature = inputParameter(1) intargetParameter <> null andtargetParameter.ownedFeature->notEmpty() andtargetParameter->first().ownedFeature->notEmpty() andtargetParameter->first().ownedFeature->first().redefines(referent)referent = let unownedFeatures : Sequence(Feature) = ownedMembership-> reject(oclIsKindOf(FeatureMembership)).memberElement-> selectByKind(Feature) in if unownedFeatures->isEmpty() then null else unownedFeatures->first().oclAsType(Feature) endifownedMembership->exists( not oclIsKindOf(OwningMembership) and memberElement.oclIsKindOf(Feature))

Features

Name Description
Is Abstract FALSE
Generalizations ActionUsage

Properties

Name Type Default Description Inheritance
actionDefinition Behavior [0..-1] {derived} The Behaviors that are the types of this ActionUsage. Nominally, these would be ActionDefinitions, but other kinds of Kernel Behaviors are also allowed, to permit use of Behaviors from the Kernel Model Libraries. ActionUsage
aliasIds string [0..-1] Various alternative identifiers for this Element. Generally, these will be set by tools. Element
behavior Behavior [0..-1] {derived} The Behaviors that type this Step. Step
chainingFeature Feature [0..-1] {derived} The Feature that are chained together to determine the values of this Feature, derived from the chainingFeatures of the ownedFeatureChainings of this Feature, in the same order. The values of a Feature with chainingFeatures are the same as values of the last Feature in the chain, which can be found by starting with the values of the first Feature (for each instance of the domain of the original Feature), then using each of those as domain instances to find the values of the second Feature in chainingFeatures, and so on, to values of the last Feature. Feature
declaredName string [0..1] The declared name of this Element. Element
declaredShortName string [0..1] An optional alternative name for the Element that is intended to be shorter or in some way more succinct than its primary name. It may act as a modeler-specified identifier for the Element, though it is then the responsibility of the modeler to maintain the uniqueness of this identifier within a model or relative to some other context. Element
definition Classifier [0..-1] {derived} The Classifiers that are the types of this Usage. Nominally, these are Definitions, but other kinds of Kernel Classifiers are also allowed, to permit use of Classifiers from the Kernel Model Libraries. Usage
differencingType Type [0..-1] {derived} The interpretations of a Type with differencingTypes are asserted to be those of the first of those Types, but not including those of the remaining Types. For example, a Classifier might be the difference of a Classifier for people and another for people of a particular nationality, leaving people who are not of that nationality. Similarly, a feature of people might be the difference between a feature for their children and a Classifier for people of a particular sex, identifying their children not of that sex (because the interpretations of the children Feature that identify those of that sex are also interpretations of the Classifier for that sex). Type
directedFeature Feature [0..-1] {derived} The features of this Type that have a non-null direction. Type
directedUsage Usage [0..-1] {derived} The usages of this Usage that are directedFeatures. Usage
direction FeatureDirectionKind [0..1] Indicates how values of this Feature are determined or used (as specified for the FeatureDirectionKind). Feature
documentation Documentation [0..-1] {derived} The Documentation owned by this Element. Element
elementId string [1..1] The globally unique identifier for this Element. This is intended to be set by tooling, and it must not change during the lifetime of the Element. Element
endFeature Feature [0..-1] {derived} All features of this Type with isEnd = true. Type
endOwningType Type [0..1] {derived} The Type that is related to this Feature by an EndFeatureMembership in which the Feature is an ownedMemberFeature. Feature
feature Feature [0..-1] {derived} The ownedMemberFeatures of the featureMemberships of this Type. Type
featureMembership FeatureMembership [0..-1] {derived} The FeatureMemberships for features of this Type, which include all ownedFeatureMemberships and those inheritedMemberships that are FeatureMemberships (but does not include any importedMemberships). Type
featuringType Type [0..-1] {derived} Types that feature this Feature, such that any instance in the domain of the Feature must be classified by all of these Types, including at least all the featuringTypes of its typeFeaturings. If the Feature is chained, then the featuringTypes of the first Feature in the chain are also featuringTypes of the chained Feature. Feature
importedMembership Membership [0..-1] {derived} The Memberships in this Namespace that result from the ownedImports of this Namespace. Namespace
individualDefinition OccurrenceDefinition [0..1] {derived} The at most one occurrenceDefinition that has isIndividual = true. OccurrenceUsage
inheritedFeature Feature [0..-1] {derived} All the memberFeatures of the inheritedMemberships of this Type that are FeatureMemberships. Type
inheritedMembership Membership [0..-1] {derived} All Memberships inherited by this Type via Specialization or Conjugation. These are included in the derived union for the memberships of the Type. Type
input Feature [0..-1] {derived} All features related to this Type by FeatureMemberships that have direction in or inout. Type
intersectingType Type [0..-1] {derived} The interpretations of a Type with intersectingTypes are asserted to be those in common among the intersectingTypes, which are the Types derived from the intersectingType of the ownedIntersectings of this Type. For example, a Classifier might be an intersection of Classifiers for people of a particular sex and of a particular nationality. Similarly, a feature for people's children of a particular sex might be the intersection of a Feature for their children and a Classifier for people of that sex (because the interpretations of the children Feature that identify those of that sex are also interpretations of the Classifier for that sex). Type
isAbstract bool [1..1] false Indicates whether instances of this Type must also be instances of at least one of its specialized Types. Type
isComposite bool [1..1] false Whether the Feature is a composite feature of its featuringType. If so, the values of the Feature cannot exist after its featuring instance no longer does. Feature
isConjugated bool [1..1] {derived} Indicates whether this Type has an ownedConjugator. Type
isDerived bool [1..1] false Whether the values of this Feature can always be computed from the values of other Features. Feature
isEnd bool [1..1] false Whether or not the this Feature is an end Feature, requiring a different interpretation of the multiplicity of the Feature.An end Feature is always considered to map each domain instance to a single co-domain instance, whether or not a Multiplicity is given for it. If a Multiplicity is given for an end Feature, rather than giving the co-domain cardinality for the Feature as usual, it specifies a cardinality constraint for navigating across the endFeatures of the featuringType of the end Feature. That is, if a Type has n endFeatures, then the Multiplicity of any one of those end Features constrains the cardinality of the set of values of that Feature when the values of the other n-1 end Features are held fixed. Feature
isImpliedIncluded bool [1..1] false Whether all necessary implied Relationships have been included in the ownedRelationships of this Element. This property may be true, even if there are not actually any ownedRelationships with isImplied = true, meaning that no such Relationships are actually implied for this Element. However, if it is false, then ownedRelationships may not contain any implied Relationships. That is, either all required implied Relationships must be included, or none of them. Element
isIndividual bool [1..1] false Whether this OccurrenceUsage represents the usage of the specific individual (or portion of it) represented by its individualDefinition. OccurrenceUsage
isLibraryElement bool [1..1] {derived} Whether this Element is contained in the ownership tree of a library model. Element
isNonunique bool [1..1] {derived} false Feature
isOrdered bool [1..1] false Whether an order exists for the values of this Feature or not. Feature
isPortion bool [1..1] false Whether the values of this Feature are contained in the space and time of instances of the domain of the Feature and represent the same thing as those instances. Feature
isReadOnly bool [1..1] false Whether the values of this Feature can change over the lifetime of an instance of the domain. Feature
isReference bool [1..1] {derived} Whether this Usage is a referential Usage, that is, it has isComposite = false. Usage
isSufficient bool [1..1] false Whether all things that meet the classification conditions of this Type must be classified by the Type.(A Type gives conditions that must be met by whatever it classifies, but when isSufficient is false, things may meet those conditions but still not be classified by the Type. For example, a Type Car that is not sufficient could require everything it classifies to have four wheels, but not all four wheeled things would classify as cars. However, if the Type Car were sufficient, it would classify all four-wheeled things.) Type
isUnique bool [1..1] true Whether or not values for this Feature must have no duplicates or not. Feature
isVariation bool [1..1] Whether this Usage is for a variation point or not. If true, then all the memberships of the Usage must be VariantMemberships. Usage
member Element [0..-1] {derived} The set of all member Elements of this Namespace, which are the memberElements of all memberships of the Namespace. Namespace
membership Membership [0..-1] {derived} All Memberships in this Namespace, including (at least) the union of ownedMemberships and importedMemberships. Namespace
multiplicity Multiplicity [0..1] {derived} An ownedMember of this Type that is a Multiplicity, which constraints the cardinality of the Type. If there is no such ownedMember, then the cardinality of this Type is constrained by all the Multiplicity constraints applicable to any direct supertypes.  Type
name string [0..1] {derived} The name to be used for this Element during name resolution within its owningNamespace. This is derived using the effectiveName() operation. By default, it is the same as the declaredName, but this is overridden for certain kinds of Elements to compute a name even when the declaredName is null. Element
nestedAction ActionUsage [0..-1] {derived} The ActionUsages that are nestedUsages of this Usage. Usage
nestedAllocation AllocationUsage [0..-1] {derived} The AllocationUsages that are nestedUsages of this Usage. Usage
nestedAnalysisCase AnalysisCaseUsage [0..-1] {derived} The AnalysisCaseUsages that are nestedUsages of this Usage. Usage
nestedAttribute AttributeUsage [0..-1] {derived} The code>AttributeUsages that are nestedUsages of this Usage. Usage
nestedCalculation CalculationUsage [0..-1] {derived} The CalculationUsage that are nestedUsages of this Usage. Usage
nestedCase CaseUsage [0..-1] {derived} The CaseUsages that are nestedUsages of this Usage. Usage
nestedConcern ConcernUsage [0..-1] {derived} The ConcernUsages that are nestedUsages of this Usage. Usage
nestedConnection ConnectorAsUsage [0..-1] {derived} The ConnectorAsUsages that are nestedUsages of this Usage. Note that this list includes BindingConnectorAsUsages and SuccessionAsUsages, even though these are ConnectorAsUsages but not ConnectionUsages. Usage
nestedConstraint ConstraintUsage [0..-1] {derived} The ConstraintUsages that are nestedUsages of this Usage. Usage
nestedEnumeration EnumerationUsage [0..-1] {derived} The code>EnumerationUsages that are nestedUsages of this Usage. Usage
nestedFlow FlowConnectionUsage [0..-1] {derived} The code>FlowConnectionUsages that are nestedUsages of this Usage. Usage
nestedInterface InterfaceUsage [0..-1] {derived} The InterfaceUsages that are nestedUsages of this Usage. Usage
nestedItem ItemUsage [0..-1] {derived} The ItemUsages that are nestedUsages of this Usage. Usage
nestedMetadata MetadataUsage [0..-1] {derived} The MetadataUsages that are nestedUsages of this of this Usage. Usage
nestedOccurrence OccurrenceUsage [0..-1] {derived} The OccurrenceUsages that are nestedUsages of this Usage. Usage
nestedPart PartUsage [0..-1] {derived} The PartUsages that are nestedUsages of this Usage. Usage
nestedPort PortUsage [0..-1] {derived} The PortUsages that are nestedUsages of this Usage. Usage
nestedReference ReferenceUsage [0..-1] {derived} The ReferenceUsages that are nestedUsages of this Usage. Usage
nestedRendering RenderingUsage [0..-1] {derived} The RenderingUsages that are nestedUsages of this Usage. Usage
nestedRequirement RequirementUsage [0..-1] {derived} The RequirementUsages that are nestedUsages of this Usage. Usage
nestedState StateUsage [0..-1] {derived} The StateUsages that are nestedUsages of this Usage. Usage
nestedTransition TransitionUsage [0..-1] {derived} The TransitionUsages that are nestedUsages of this Usage. Usage
nestedUsage Usage [0..-1] {derived} The Usages that are ownedFeatures of this Usage. Usage
nestedUseCase UseCaseUsage [0..-1] {derived} The UseCaseUsages that are nestedUsages of this Usage. Usage
nestedVerificationCase VerificationCaseUsage [0..-1] {derived} The VerificationCaseUsages that are nestedUsages of this Usage. Usage
nestedView ViewUsage [0..-1] {derived} The ViewUsages that are nestedUsages of this Usage. Usage
nestedViewpoint ViewpointUsage [0..-1] {derived} The ViewpointUsages that are nestedUsages of this Usage. Usage
occurrenceDefinition Class [0..-1] {derived} The Classes that are the types of this OccurrenceUsage. Nominally, these are OccurrenceDefinitions, but other kinds of kernel Classes are also allowed, to permit use of Classes from the Kernel Model Libraries. OccurrenceUsage
output Feature [0..-1] {derived} All features related to this Type by FeatureMemberships that have direction out or inout. Type
ownedAnnotation Annotation [0..-1] {derived} The ownedRelationships of this Element that are Annotations, for which this Element is the annotatedElement. Element
ownedConjugator Conjugation [0..1] {derived} A Conjugation owned by this Type for which the Type is the originalType. Type
ownedDifferencing Differencing [0..-1] {derived} The ownedRelationships of this Type that are Differencings, having this Type as their typeDifferenced. Type
ownedDisjoining Disjoining [0..-1] {derived} The ownedRelationships of this Type that are Disjoinings, for which the Type is the typeDisjoined Type. Type
ownedElement Element [0..-1] {derived} The Elements owned by this Element, derived as the ownedRelatedElements of the ownedRelationships of this Element. Element
ownedEndFeature Feature [0..-1] {derived} All endFeatures of this Type that are ownedFeatures. Type
ownedFeature Feature [0..-1] {derived} The ownedMemberFeatures of the ownedFeatureMemberships of this Type. Type
ownedFeatureChaining FeatureChaining [0..-1] {derived} The ownedRelationships of this Feature that are FeatureChainings, for which the Feature will be the featureChained. Feature
ownedFeatureInverting FeatureInverting [0..-1] {derived} The ownedRelationships of this Feature that are FeatureInvertings and for which the Feature is the featureInverted. Feature
ownedFeatureMembership FeatureMembership [0..-1] {derived} The ownedMemberships of this Type that are FeatureMemberships, for which the Type is the owningType. Each such FeatureMembership identifies an ownedFeature of the Type. Type
ownedImport Import [0..-1] {derived} The ownedRelationships of this Namespace that are Imports, for which the Namespace is the importOwningNamespace. Namespace
ownedIntersecting Intersecting [0..-1] {derived} The ownedRelationships of this Type that are Intersectings, have the Type as their typeIntersected. Type
ownedMember Element [0..-1] {derived} The owned members of this Namespace, which are the ownedMemberElements of the ownedMemberships of the . Namespace
ownedMembership Membership [0..-1] {derived} The ownedRelationships of this Namespace that are Memberships, for which the Namespace is the membershipOwningNamespace. Namespace
ownedRedefinition Redefinition [0..-1] {derived} The ownedSubsettings of this Feature that are Redefinitions, for which the Feature is the redefiningFeature. Feature
ownedReferenceSubsetting ReferenceSubsetting [0..1] {derived} The one ownedSubsetting of this Feature, if any, that is a ReferenceSubsetting, for which the Feature is the referencingFeature. Feature
ownedRelationship Relationship [0..-1] {composite} The Relationships for which this Element is the owningRelatedElement. Element
ownedSpecialization Specialization [0..-1] {derived} The ownedRelationships of this Type that are Specializations, for which the Type is the specific Type. Type
ownedSubsetting Subsetting [0..-1] {derived} The ownedSpecializations of this Feature that are Subsettings, for which the Feature is the subsettingFeature. Feature
ownedTypeFeaturing TypeFeaturing [0..-1] {derived} The ownedRelationships of this Feature that are TypeFeaturings and for which the Feature is the featureOfType. Feature
ownedTyping FeatureTyping [0..-1] {derived} The ownedSpecializations of this Feature that are FeatureTypings, for which the Feature is the typedFeature. Feature
ownedUnioning Unioning [0..-1] {derived} The ownedRelationships of this Type that are Unionings, having the Type as their typeUnioned. Type
owner Element [0..1] {derived} The owner of this Element, derived as the owningRelatedElement of the owningRelationship of this Element, if any. Element
owningDefinition Definition [0..1] {derived} The Definition that owns this Usage (if any). Usage
owningFeatureMembership FeatureMembership [0..1] {derived} The FeatureMembership that owns this Feature as an ownedMemberFeature, determining its owningType. Feature
owningMembership OwningMembership [0..1] {derived} The owningRelationship of this Element, if that Relationship is a Membership. Element
owningNamespace Namespace [0..1] {derived} The Namespace that owns this Element, which is the membershipOwningNamespace of the owningMembership of this Element, if any. Element
owningRelationship Relationship [0..1] The Relationship for which this Element is an ownedRelatedElement, if any. Element
owningType Type [0..1] {derived} The Type that is the owningType of the owningFeatureMembership of this Feature. Feature
owningUsage Usage [0..1] {derived} The Usage in which this Usage is nested (if any). Usage
parameter Feature [0..-1] {derived} The parameters of this Step, which are defined as its directedFeatures, whose values are passed into and/or out of a performance of the Step. Step
portionKind PortionKind [0..1] The kind of (temporal) portion of the life of the occurrenceDefinition represented by this OccurrenceUsage, if it is so restricted. OccurrenceUsage
qualifiedName string [0..1] {derived} The full ownership-qualified name of this Element, represented in a form that is valid according to the KerML textual concrete syntax for qualified names (including use of unrestricted name notation and escaped characters, as necessary). The qualifiedName is null if this Element has no owningNamespace or if there is not a complete ownership chain of named Namespaces from a root Namespace to this Element. Element
referent Feature [1..1] {derived} The Feature whose value is to be set. AssignmentActionUsage
shortName string [0..1] {derived} The short name to be used for this Element during name resolution within its owningNamespace. This is derived using the effectiveShortName() operation. By default, it is the same as the declaredShortName, but this is overridden for certain kinds of Elements to compute a shortName even when the declaredName is null. Element
targetArgument Expression [0..1] {derived} The Expression whose value is an occurrence in the domain of the referent Feature, for which the value of the referent will be set to the result of the valueExpression by this AssignmentActionUsage. AssignmentActionUsage
textualRepresentation TextualRepresentation [0..-1] {derived} The TextualRepresentations that annotate this Element. Element
type Type [0..-1] {derived} Types that restrict the values of this Feature, such that the values must be instances of all the types. The types of a Feature are derived from its typings and the types of its subsettings. If the Feature is chained, then the types of the last Feature in the chain are also types of the chained Feature. Feature
unioningType Type [0..-1] {derived} The interpretations of a Type with unioningTypes are asserted to be the same as those of all the unioningTypes together, which are the Types derived from the unioningType of the ownedUnionings of this Type. For example, a Classifier for people might be the union of Classifiers for all the sexes. Similarly, a feature for people's children might be the union of features dividing them in the same ways as people in general. Type
usage Usage [0..-1] {derived} The Usages that are features of this Usage (not necessarily owned). Usage
valueExpression Expression [0..1] {derived} The Expression whose result is to be assigned to the referent Feature. AssignmentActionUsage
variant Usage [0..-1] {derived} The Usages which represent the variants of this Usage as a variation point Usage, if isVariation = true. If isVariation = false, then there must be no variants. Usage
variantMembership VariantMembership [0..-1] {derived} The ownedMemberships of this Usage that are VariantMemberships. If isVariation = true, then this must be all memberships of the Usage. If isVariation = false, then variantMembershipmust be empty. Usage

Association

Definition

An Association is a Relationship and a Classifier to enable classification of links between things (in the universe). The co-domains (types) of the associationEnd Features are the relatedTypes, as co-domain and participants (linked things) of an Association identify each other.relatedType = associationEnd.typespecializesFromLibrary('Links::Link')oclIsKindOf(Structure) = oclIsKindOf(AssociationStructure)associationEnd->size() = 2 implies specializesFromLibrary('Links::BinaryLink')not isAbstract implies relatedType->size() >= 2associationEnds->size() > 2 implies not specializesFromLibrary('Links::BinaryLink')sourceType = if relatedType->isEmpty() then null else relatedType->first() endiftargetType = if relatedType->size() < 2 then OrderedSet{} else relatedType-> subSequence(2, relatedType->size())-> asOrderedSet() endif

Features

Name Description
Is Abstract FALSE
Generalizations Classifier Relationship

Properties

Name Type Default Description Inheritance
aliasIds string [0..-1] Various alternative identifiers for this Element. Generally, these will be set by tools. Element
associationEnd Feature [0..-1] {derived} The features of the Association that identify the things that can be related by it. A concrete Association must have at least two associationEnds. When it has exactly two, the Association is called a binary Association. The ends of the Association determine which elements are eligible to be related by instances of the Association. Association
declaredName string [0..1] The declared name of this Element. Element
declaredShortName string [0..1] An optional alternative name for the Element that is intended to be shorter or in some way more succinct than its primary name. It may act as a modeler-specified identifier for the Element, though it is then the responsibility of the modeler to maintain the uniqueness of this identifier within a model or relative to some other context. Element
differencingType Type [0..-1] {derived} The interpretations of a Type with differencingTypes are asserted to be those of the first of those Types, but not including those of the remaining Types. For example, a Classifier might be the difference of a Classifier for people and another for people of a particular nationality, leaving people who are not of that nationality. Similarly, a feature of people might be the difference between a feature for their children and a Classifier for people of a particular sex, identifying their children not of that sex (because the interpretations of the children Feature that identify those of that sex are also interpretations of the Classifier for that sex). Type
directedFeature Feature [0..-1] {derived} The features of this Type that have a non-null direction. Type
documentation Documentation [0..-1] {derived} The Documentation owned by this Element. Element
elementId string [1..1] The globally unique identifier for this Element. This is intended to be set by tooling, and it must not change during the lifetime of the Element. Element
endFeature Feature [0..-1] {derived} All features of this Type with isEnd = true. Type
feature Feature [0..-1] {derived} The ownedMemberFeatures of the featureMemberships of this Type. Type
featureMembership FeatureMembership [0..-1] {derived} The FeatureMemberships for features of this Type, which include all ownedFeatureMemberships and those inheritedMemberships that are FeatureMemberships (but does not include any importedMemberships). Type
importedMembership Membership [0..-1] {derived} The Memberships in this Namespace that result from the ownedImports of this Namespace. Namespace
inheritedFeature Feature [0..-1] {derived} All the memberFeatures of the inheritedMemberships of this Type that are FeatureMemberships. Type
inheritedMembership Membership [0..-1] {derived} All Memberships inherited by this Type via Specialization or Conjugation. These are included in the derived union for the memberships of the Type. Type
input Feature [0..-1] {derived} All features related to this Type by FeatureMemberships that have direction in or inout. Type
intersectingType Type [0..-1] {derived} The interpretations of a Type with intersectingTypes are asserted to be those in common among the intersectingTypes, which are the Types derived from the intersectingType of the ownedIntersectings of this Type. For example, a Classifier might be an intersection of Classifiers for people of a particular sex and of a particular nationality. Similarly, a feature for people's children of a particular sex might be the intersection of a Feature for their children and a Classifier for people of that sex (because the interpretations of the children Feature that identify those of that sex are also interpretations of the Classifier for that sex). Type
isAbstract bool [1..1] false Indicates whether instances of this Type must also be instances of at least one of its specialized Types. Type
isConjugated bool [1..1] {derived} Indicates whether this Type has an ownedConjugator. Type
isImplied bool [1..1] false Whether this Relationship was generated by tooling to meet semantic rules, rather than being directly created by a modeler. Relationship
isImpliedIncluded bool [1..1] false Whether all necessary implied Relationships have been included in the ownedRelationships of this Element. This property may be true, even if there are not actually any ownedRelationships with isImplied = true, meaning that no such Relationships are actually implied for this Element. However, if it is false, then ownedRelationships may not contain any implied Relationships. That is, either all required implied Relationships must be included, or none of them. Element
isLibraryElement bool [1..1] {derived} Whether this Element is contained in the ownership tree of a library model. Element
isSufficient bool [1..1] false Whether all things that meet the classification conditions of this Type must be classified by the Type.(A Type gives conditions that must be met by whatever it classifies, but when isSufficient is false, things may meet those conditions but still not be classified by the Type. For example, a Type Car that is not sufficient could require everything it classifies to have four wheels, but not all four wheeled things would classify as cars. However, if the Type Car were sufficient, it would classify all four-wheeled things.) Type
member Element [0..-1] {derived} The set of all member Elements of this Namespace, which are the memberElements of all memberships of the Namespace. Namespace
membership Membership [0..-1] {derived} All Memberships in this Namespace, including (at least) the union of ownedMemberships and importedMemberships. Namespace
multiplicity Multiplicity [0..1] {derived} An ownedMember of this Type that is a Multiplicity, which constraints the cardinality of the Type. If there is no such ownedMember, then the cardinality of this Type is constrained by all the Multiplicity constraints applicable to any direct supertypes.  Type
name string [0..1] {derived} The name to be used for this Element during name resolution within its owningNamespace. This is derived using the effectiveName() operation. By default, it is the same as the declaredName, but this is overridden for certain kinds of Elements to compute a name even when the declaredName is null. Element
output Feature [0..-1] {derived} All features related to this Type by FeatureMemberships that have direction out or inout. Type
ownedAnnotation Annotation [0..-1] {derived} The ownedRelationships of this Element that are Annotations, for which this Element is the annotatedElement. Element
ownedConjugator Conjugation [0..1] {derived} A Conjugation owned by this Type for which the Type is the originalType. Type
ownedDifferencing Differencing [0..-1] {derived} The ownedRelationships of this Type that are Differencings, having this Type as their typeDifferenced. Type
ownedDisjoining Disjoining [0..-1] {derived} The ownedRelationships of this Type that are Disjoinings, for which the Type is the typeDisjoined Type. Type
ownedElement Element [0..-1] {derived} The Elements owned by this Element, derived as the ownedRelatedElements of the ownedRelationships of this Element. Element
ownedEndFeature Feature [0..-1] {derived} All endFeatures of this Type that are ownedFeatures. Type
ownedFeature Feature [0..-1] {derived} The ownedMemberFeatures of the ownedFeatureMemberships of this Type. Type
ownedFeatureMembership FeatureMembership [0..-1] {derived} The ownedMemberships of this Type that are FeatureMemberships, for which the Type is the owningType. Each such FeatureMembership identifies an ownedFeature of the Type. Type
ownedImport Import [0..-1] {derived} The ownedRelationships of this Namespace that are Imports, for which the Namespace is the importOwningNamespace. Namespace
ownedIntersecting Intersecting [0..-1] {derived} The ownedRelationships of this Type that are Intersectings, have the Type as their typeIntersected. Type
ownedMember Element [0..-1] {derived} The owned members of this Namespace, which are the ownedMemberElements of the ownedMemberships of the . Namespace
ownedMembership Membership [0..-1] {derived} The ownedRelationships of this Namespace that are Memberships, for which the Namespace is the membershipOwningNamespace. Namespace
ownedRelatedElement Element [0..-1] {composite} The relatedElements of this Relationship that are owned by the Relationship. Relationship
ownedRelationship Relationship [0..-1] {composite} The Relationships for which this Element is the owningRelatedElement. Element
ownedSpecialization Specialization [0..-1] {derived} The ownedRelationships of this Type that are Specializations, for which the Type is the specific Type. Type
ownedSubclassification Subclassification [0..-1] {derived} The ownedSpecializations of this Classifier that are Subclassifications, for which this Classifier is the subclassifier. Classifier
ownedUnioning Unioning [0..-1] {derived} The ownedRelationships of this Type that are Unionings, having the Type as their typeUnioned. Type
owner Element [0..1] {derived} The owner of this Element, derived as the owningRelatedElement of the owningRelationship of this Element, if any. Element
owningMembership OwningMembership [0..1] {derived} The owningRelationship of this Element, if that Relationship is a Membership. Element
owningNamespace Namespace [0..1] {derived} The Namespace that owns this Element, which is the membershipOwningNamespace of the owningMembership of this Element, if any. Element
owningRelatedElement Element [0..1] The relatedElement of this Relationship that owns the Relationship, if any. Relationship
owningRelationship Relationship [0..1] The Relationship for which this Element is an ownedRelatedElement, if any. Element
qualifiedName string [0..1] {derived} The full ownership-qualified name of this Element, represented in a form that is valid according to the KerML textual concrete syntax for qualified names (including use of unrestricted name notation and escaped characters, as necessary). The qualifiedName is null if this Element has no owningNamespace or if there is not a complete ownership chain of named Namespaces from a root Namespace to this Element. Element
relatedElement Element [0..-1] {derived} The Elements that are related by this Relationship, derived as the union of the source and target Elements of the Relationship. Relationship
relatedType Type [0..-1] {derived} The types of the associationEnds of the Association, which are the relatedElements of the Association considered as a Relationship. Association
shortName string [0..1] {derived} The short name to be used for this Element during name resolution within its owningNamespace. This is derived using the effectiveShortName() operation. By default, it is the same as the declaredShortName, but this is overridden for certain kinds of Elements to compute a shortName even when the declaredName is null. Element
source Element [0..-1] The relatedElements from which this Relationship is considered to be directed. Relationship
sourceType Type [0..1] {derived} The source relatedType for this Association. It is the first relatedType of the Association. Association
target Element [0..-1] The relatedElements to which this Relationship is considered to be directed. Relationship
targetType Type [0..-1] {derived} The target relatedTypes for this Association. This includes all the relatedTypes other than the sourceType. Association
textualRepresentation TextualRepresentation [0..-1] {derived} The TextualRepresentations that annotate this Element. Element
unioningType Type [0..-1] {derived} The interpretations of a Type with unioningTypes are asserted to be the same as those of all the unioningTypes together, which are the Types derived from the unioningType of the ownedUnionings of this Type. For example, a Classifier for people might be the union of Classifiers for all the sexes. Similarly, a feature for people's children might be the union of features dividing them in the same ways as people in general. Type

AssociationStructure

Definition

An AssociationStructure is an Association that is also a Structure, classifying link objects that are both links and objects. As objects, link objects can be created and destroyed, and their non-end Features can change over time. However, the values of the end Features of a link object are fixed and cannot change over its lifetime.specializesFromLibrary('Objects::LinkObject')endFeature->size() = 2 implies specializesFromLibrary('Objects::BinaryLinkObject')

Features

Name Description
Is Abstract FALSE
Generalizations Association Structure

Properties

Name Type Default Description Inheritance
aliasIds string [0..-1] Various alternative identifiers for this Element. Generally, these will be set by tools. Element
associationEnd Feature [0..-1] {derived} The features of the Association that identify the things that can be related by it. A concrete Association must have at least two associationEnds. When it has exactly two, the Association is called a binary Association. The ends of the Association determine which elements are eligible to be related by instances of the Association. Association
declaredName string [0..1] The declared name of this Element. Element
declaredShortName string [0..1] An optional alternative name for the Element that is intended to be shorter or in some way more succinct than its primary name. It may act as a modeler-specified identifier for the Element, though it is then the responsibility of the modeler to maintain the uniqueness of this identifier within a model or relative to some other context. Element
differencingType Type [0..-1] {derived} The interpretations of a Type with differencingTypes are asserted to be those of the first of those Types, but not including those of the remaining Types. For example, a Classifier might be the difference of a Classifier for people and another for people of a particular nationality, leaving people who are not of that nationality. Similarly, a feature of people might be the difference between a feature for their children and a Classifier for people of a particular sex, identifying their children not of that sex (because the interpretations of the children Feature that identify those of that sex are also interpretations of the Classifier for that sex). Type
directedFeature Feature [0..-1] {derived} The features of this Type that have a non-null direction. Type
documentation Documentation [0..-1] {derived} The Documentation owned by this Element. Element
elementId string [1..1] The globally unique identifier for this Element. This is intended to be set by tooling, and it must not change during the lifetime of the Element. Element
endFeature Feature [0..-1] {derived} All features of this Type with isEnd = true. Type
feature Feature [0..-1] {derived} The ownedMemberFeatures of the featureMemberships of this Type. Type
featureMembership FeatureMembership [0..-1] {derived} The FeatureMemberships for features of this Type, which include all ownedFeatureMemberships and those inheritedMemberships that are FeatureMemberships (but does not include any importedMemberships). Type
importedMembership Membership [0..-1] {derived} The Memberships in this Namespace that result from the ownedImports of this Namespace. Namespace
inheritedFeature Feature [0..-1] {derived} All the memberFeatures of the inheritedMemberships of this Type that are FeatureMemberships. Type
inheritedMembership Membership [0..-1] {derived} All Memberships inherited by this Type via Specialization or Conjugation. These are included in the derived union for the memberships of the Type. Type
input Feature [0..-1] {derived} All features related to this Type by FeatureMemberships that have direction in or inout. Type
intersectingType Type [0..-1] {derived} The interpretations of a Type with intersectingTypes are asserted to be those in common among the intersectingTypes, which are the Types derived from the intersectingType of the ownedIntersectings of this Type. For example, a Classifier might be an intersection of Classifiers for people of a particular sex and of a particular nationality. Similarly, a feature for people's children of a particular sex might be the intersection of a Feature for their children and a Classifier for people of that sex (because the interpretations of the children Feature that identify those of that sex are also interpretations of the Classifier for that sex). Type
isAbstract bool [1..1] false Indicates whether instances of this Type must also be instances of at least one of its specialized Types. Type
isConjugated bool [1..1] {derived} Indicates whether this Type has an ownedConjugator. Type
isImplied bool [1..1] false Whether this Relationship was generated by tooling to meet semantic rules, rather than being directly created by a modeler. Relationship
isImpliedIncluded bool [1..1] false Whether all necessary implied Relationships have been included in the ownedRelationships of this Element. This property may be true, even if there are not actually any ownedRelationships with isImplied = true, meaning that no such Relationships are actually implied for this Element. However, if it is false, then ownedRelationships may not contain any implied Relationships. That is, either all required implied Relationships must be included, or none of them. Element
isLibraryElement bool [1..1] {derived} Whether this Element is contained in the ownership tree of a library model. Element
isSufficient bool [1..1] false Whether all things that meet the classification conditions of this Type must be classified by the Type.(A Type gives conditions that must be met by whatever it classifies, but when isSufficient is false, things may meet those conditions but still not be classified by the Type. For example, a Type Car that is not sufficient could require everything it classifies to have four wheels, but not all four wheeled things would classify as cars. However, if the Type Car were sufficient, it would classify all four-wheeled things.) Type
member Element [0..-1] {derived} The set of all member Elements of this Namespace, which are the memberElements of all memberships of the Namespace. Namespace
membership Membership [0..-1] {derived} All Memberships in this Namespace, including (at least) the union of ownedMemberships and importedMemberships. Namespace
multiplicity Multiplicity [0..1] {derived} An ownedMember of this Type that is a Multiplicity, which constraints the cardinality of the Type. If there is no such ownedMember, then the cardinality of this Type is constrained by all the Multiplicity constraints applicable to any direct supertypes.  Type
name string [0..1] {derived} The name to be used for this Element during name resolution within its owningNamespace. This is derived using the effectiveName() operation. By default, it is the same as the declaredName, but this is overridden for certain kinds of Elements to compute a name even when the declaredName is null. Element
output Feature [0..-1] {derived} All features related to this Type by FeatureMemberships that have direction out or inout. Type
ownedAnnotation Annotation [0..-1] {derived} The ownedRelationships of this Element that are Annotations, for which this Element is the annotatedElement. Element
ownedConjugator Conjugation [0..1] {derived} A Conjugation owned by this Type for which the Type is the originalType. Type
ownedDifferencing Differencing [0..-1] {derived} The ownedRelationships of this Type that are Differencings, having this Type as their typeDifferenced. Type
ownedDisjoining Disjoining [0..-1] {derived} The ownedRelationships of this Type that are Disjoinings, for which the Type is the typeDisjoined Type. Type
ownedElement Element [0..-1] {derived} The Elements owned by this Element, derived as the ownedRelatedElements of the ownedRelationships of this Element. Element
ownedEndFeature Feature [0..-1] {derived} All endFeatures of this Type that are ownedFeatures. Type
ownedFeature Feature [0..-1] {derived} The ownedMemberFeatures of the ownedFeatureMemberships of this Type. Type
ownedFeatureMembership FeatureMembership [0..-1] {derived} The ownedMemberships of this Type that are FeatureMemberships, for which the Type is the owningType. Each such FeatureMembership identifies an ownedFeature of the Type. Type
ownedImport Import [0..-1] {derived} The ownedRelationships of this Namespace that are Imports, for which the Namespace is the importOwningNamespace. Namespace
ownedIntersecting Intersecting [0..-1] {derived} The ownedRelationships of this Type that are Intersectings, have the Type as their typeIntersected. Type
ownedMember Element [0..-1] {derived} The owned members of this Namespace, which are the ownedMemberElements of the ownedMemberships of the . Namespace
ownedMembership Membership [0..-1] {derived} The ownedRelationships of this Namespace that are Memberships, for which the Namespace is the membershipOwningNamespace. Namespace
ownedRelatedElement Element [0..-1] {composite} The relatedElements of this Relationship that are owned by the Relationship. Relationship
ownedRelationship Relationship [0..-1] {composite} The Relationships for which this Element is the owningRelatedElement. Element
ownedSpecialization Specialization [0..-1] {derived} The ownedRelationships of this Type that are Specializations, for which the Type is the specific Type. Type
ownedSubclassification Subclassification [0..-1] {derived} The ownedSpecializations of this Classifier that are Subclassifications, for which this Classifier is the subclassifier. Classifier
ownedUnioning Unioning [0..-1] {derived} The ownedRelationships of this Type that are Unionings, having the Type as their typeUnioned. Type
owner Element [0..1] {derived} The owner of this Element, derived as the owningRelatedElement of the owningRelationship of this Element, if any. Element
owningMembership OwningMembership [0..1] {derived} The owningRelationship of this Element, if that Relationship is a Membership. Element
owningNamespace Namespace [0..1] {derived} The Namespace that owns this Element, which is the membershipOwningNamespace of the owningMembership of this Element, if any. Element
owningRelatedElement Element [0..1] The relatedElement of this Relationship that owns the Relationship, if any. Relationship
owningRelationship Relationship [0..1] The Relationship for which this Element is an ownedRelatedElement, if any. Element
qualifiedName string [0..1] {derived} The full ownership-qualified name of this Element, represented in a form that is valid according to the KerML textual concrete syntax for qualified names (including use of unrestricted name notation and escaped characters, as necessary). The qualifiedName is null if this Element has no owningNamespace or if there is not a complete ownership chain of named Namespaces from a root Namespace to this Element. Element
relatedElement Element [0..-1] {derived} The Elements that are related by this Relationship, derived as the union of the source and target Elements of the Relationship. Relationship
relatedType Type [0..-1] {derived} The types of the associationEnds of the Association, which are the relatedElements of the Association considered as a Relationship. Association
shortName string [0..1] {derived} The short name to be used for this Element during name resolution within its owningNamespace. This is derived using the effectiveShortName() operation. By default, it is the same as the declaredShortName, but this is overridden for certain kinds of Elements to compute a shortName even when the declaredName is null. Element
source Element [0..-1] The relatedElements from which this Relationship is considered to be directed. Relationship
sourceType Type [0..1] {derived} The source relatedType for this Association. It is the first relatedType of the Association. Association
target Element [0..-1] The relatedElements to which this Relationship is considered to be directed. Relationship
targetType Type [0..-1] {derived} The target relatedTypes for this Association. This includes all the relatedTypes other than the sourceType. Association
textualRepresentation TextualRepresentation [0..-1] {derived} The TextualRepresentations that annotate this Element. Element
unioningType Type [0..-1] {derived} The interpretations of a Type with unioningTypes are asserted to be the same as those of all the unioningTypes together, which are the Types derived from the unioningType of the ownedUnionings of this Type. For example, a Classifier for people might be the union of Classifiers for all the sexes. Similarly, a feature for people's children might be the union of features dividing them in the same ways as people in general. Type

AttributeDefinition

Definition

An AttributeDefinition is a Definition and a DataType of information about a quality or characteristic of a system or part of a system that has no independent identity other than its value. All features of an AttributeDefinition must be referential (non-composite).As a DataType, an AttributeDefinition must specialize, directly or indirectly, the base DataType Base::DataValue from the Kernel Semantic Library.feature->forAll(not isComposite)

Features

Name Description
Is Abstract FALSE
Generalizations Definition DataType

Properties

Name Type Default Description Inheritance
aliasIds string [0..-1] Various alternative identifiers for this Element. Generally, these will be set by tools. Element
declaredName string [0..1] The declared name of this Element. Element
declaredShortName string [0..1] An optional alternative name for the Element that is intended to be shorter or in some way more succinct than its primary name. It may act as a modeler-specified identifier for the Element, though it is then the responsibility of the modeler to maintain the uniqueness of this identifier within a model or relative to some other context. Element
differencingType Type [0..-1] {derived} The interpretations of a Type with differencingTypes are asserted to be those of the first of those Types, but not including those of the remaining Types. For example, a Classifier might be the difference of a Classifier for people and another for people of a particular nationality, leaving people who are not of that nationality. Similarly, a feature of people might be the difference between a feature for their children and a Classifier for people of a particular sex, identifying their children not of that sex (because the interpretations of the children Feature that identify those of that sex are also interpretations of the Classifier for that sex). Type
directedFeature Feature [0..-1] {derived} The features of this Type that have a non-null direction. Type
directedUsage Usage [0..-1] {derived} The usages of this Definition that are directedFeatures. Definition
documentation Documentation [0..-1] {derived} The Documentation owned by this Element. Element
elementId string [1..1] The globally unique identifier for this Element. This is intended to be set by tooling, and it must not change during the lifetime of the Element. Element
endFeature Feature [0..-1] {derived} All features of this Type with isEnd = true. Type
feature Feature [0..-1] {derived} The ownedMemberFeatures of the featureMemberships of this Type. Type
featureMembership FeatureMembership [0..-1] {derived} The FeatureMemberships for features of this Type, which include all ownedFeatureMemberships and those inheritedMemberships that are FeatureMemberships (but does not include any importedMemberships). Type
importedMembership Membership [0..-1] {derived} The Memberships in this Namespace that result from the ownedImports of this Namespace. Namespace
inheritedFeature Feature [0..-1] {derived} All the memberFeatures of the inheritedMemberships of this Type that are FeatureMemberships. Type
inheritedMembership Membership [0..-1] {derived} All Memberships inherited by this Type via Specialization or Conjugation. These are included in the derived union for the memberships of the Type. Type
input Feature [0..-1] {derived} All features related to this Type by FeatureMemberships that have direction in or inout. Type
intersectingType Type [0..-1] {derived} The interpretations of a Type with intersectingTypes are asserted to be those in common among the intersectingTypes, which are the Types derived from the intersectingType of the ownedIntersectings of this Type. For example, a Classifier might be an intersection of Classifiers for people of a particular sex and of a particular nationality. Similarly, a feature for people's children of a particular sex might be the intersection of a Feature for their children and a Classifier for people of that sex (because the interpretations of the children Feature that identify those of that sex are also interpretations of the Classifier for that sex). Type
isAbstract bool [1..1] false Indicates whether instances of this Type must also be instances of at least one of its specialized Types. Type
isConjugated bool [1..1] {derived} Indicates whether this Type has an ownedConjugator. Type
isImpliedIncluded bool [1..1] false Whether all necessary implied Relationships have been included in the ownedRelationships of this Element. This property may be true, even if there are not actually any ownedRelationships with isImplied = true, meaning that no such Relationships are actually implied for this Element. However, if it is false, then ownedRelationships may not contain any implied Relationships. That is, either all required implied Relationships must be included, or none of them. Element
isLibraryElement bool [1..1] {derived} Whether this Element is contained in the ownership tree of a library model. Element
isSufficient bool [1..1] false Whether all things that meet the classification conditions of this Type must be classified by the Type.(A Type gives conditions that must be met by whatever it classifies, but when isSufficient is false, things may meet those conditions but still not be classified by the Type. For example, a Type Car that is not sufficient could require everything it classifies to have four wheels, but not all four wheeled things would classify as cars. However, if the Type Car were sufficient, it would classify all four-wheeled things.) Type
isVariation bool [1..1] Whether this Definition is for a variation point or not. If true, then all the memberships of the Definition must be VariantMemberships. Definition
member Element [0..-1] {derived} The set of all member Elements of this Namespace, which are the memberElements of all memberships of the Namespace. Namespace
membership Membership [0..-1] {derived} All Memberships in this Namespace, including (at least) the union of ownedMemberships and importedMemberships. Namespace
multiplicity Multiplicity [0..1] {derived} An ownedMember of this Type that is a Multiplicity, which constraints the cardinality of the Type. If there is no such ownedMember, then the cardinality of this Type is constrained by all the Multiplicity constraints applicable to any direct supertypes.  Type
name string [0..1] {derived} The name to be used for this Element during name resolution within its owningNamespace. This is derived using the effectiveName() operation. By default, it is the same as the declaredName, but this is overridden for certain kinds of Elements to compute a name even when the declaredName is null. Element
output Feature [0..-1] {derived} All features related to this Type by FeatureMemberships that have direction out or inout. Type
ownedAction ActionUsage [0..-1] {derived} The ActionUsages that are ownedUsages of this Definition. Definition
ownedAllocation AllocationUsage [0..-1] {derived} The AllocationUsages that are ownedUsages of this Definition. Definition
ownedAnalysisCase AnalysisCaseUsage [0..-1] {derived} The AnalysisCaseUsages that are ownedUsages of this Definition. Definition
ownedAnnotation Annotation [0..-1] {derived} The ownedRelationships of this Element that are Annotations, for which this Element is the annotatedElement. Element
ownedAttribute AttributeUsage [0..-1] {derived} The AttributeUsages that are ownedUsages of this Definition. Definition
ownedCalculation CalculationUsage [0..-1] {derived} The CalculationUsages that are ownedUsages of this Definition. Definition
ownedCase CaseUsage [0..-1] {derived} The code>CaseUsages that are ownedUsages of this Definition. Definition
ownedConcern ConcernUsage [0..-1] {derived} The ConcernUsages that are ownedUsages of this Definition. Definition
ownedConjugator Conjugation [0..1] {derived} A Conjugation owned by this Type for which the Type is the originalType. Type
ownedConnection ConnectorAsUsage [0..-1] {derived} The ConnectorAsUsages that are ownedUsages of this Definition. Note that this list includes BindingConnectorAsUsages and SuccessionAsUsages, even though these are ConnectorAsUsages but not ConnectionUsages. Definition
ownedConstraint ConstraintUsage [0..-1] {derived} The ConstraintUsages that are ownedUsages of this Definition. Definition
ownedDifferencing Differencing [0..-1] {derived} The ownedRelationships of this Type that are Differencings, having this Type as their typeDifferenced. Type
ownedDisjoining Disjoining [0..-1] {derived} The ownedRelationships of this Type that are Disjoinings, for which the Type is the typeDisjoined Type. Type
ownedElement Element [0..-1] {derived} The Elements owned by this Element, derived as the ownedRelatedElements of the ownedRelationships of this Element. Element
ownedEndFeature Feature [0..-1] {derived} All endFeatures of this Type that are ownedFeatures. Type
ownedEnumeration EnumerationUsage [0..-1] {derived} The EnumerationUsages that are ownedUsages of this Definition. Definition
ownedFeature Feature [0..-1] {derived} The ownedMemberFeatures of the ownedFeatureMemberships of this Type. Type
ownedFeatureMembership FeatureMembership [0..-1] {derived} The ownedMemberships of this Type that are FeatureMemberships, for which the Type is the owningType. Each such FeatureMembership identifies an ownedFeature of the Type. Type
ownedFlow FlowConnectionUsage [0..-1] {derived} The FlowConnectionUsages that are ownedUsages of this Definition. Definition
ownedImport Import [0..-1] {derived} The ownedRelationships of this Namespace that are Imports, for which the Namespace is the importOwningNamespace. Namespace
ownedInterface InterfaceUsage [0..-1] {derived} The InterfaceUsages that are ownedUsages of this Definition. Definition
ownedIntersecting Intersecting [0..-1] {derived} The ownedRelationships of this Type that are Intersectings, have the Type as their typeIntersected. Type
ownedItem ItemUsage [0..-1] {derived} The ItemUsages that are ownedUsages of this Definition. Definition
ownedMember Element [0..-1] {derived} The owned members of this Namespace, which are the ownedMemberElements of the ownedMemberships of the . Namespace
ownedMembership Membership [0..-1] {derived} The ownedRelationships of this Namespace that are Memberships, for which the Namespace is the membershipOwningNamespace. Namespace
ownedMetadata MetadataUsage [0..-1] {derived} The MetadataUsages that are ownedUsages of this Definition. Definition
ownedOccurrence OccurrenceUsage [0..-1] {derived} The OccurrenceUsages that are ownedUsages of this Definition. Definition
ownedPart PartUsage [0..-1] {derived} The PartUsages that are ownedUsages of this Definition. Definition
ownedPort PortUsage [0..-1] {derived} The PortUsages that are ownedUsages of this Definition. Definition
ownedReference ReferenceUsage [0..-1] {derived} The ReferenceUsages that are ownedUsages of this Definition. Definition
ownedRelationship Relationship [0..-1] {composite} The Relationships for which this Element is the owningRelatedElement. Element
ownedRendering RenderingUsage [0..-1] {derived} The RenderingUsages that are ownedUsages of this Definition. Definition
ownedRequirement RequirementUsage [0..-1] {derived} The RequirementUsages that are ownedUsages of this Definition. Definition
ownedSpecialization Specialization [0..-1] {derived} The ownedRelationships of this Type that are Specializations, for which the Type is the specific Type. Type
ownedState StateUsage [0..-1] {derived} The StateUsages that are ownedUsages of this Definition. Definition
ownedSubclassification Subclassification [0..-1] {derived} The ownedSpecializations of this Classifier that are Subclassifications, for which this Classifier is the subclassifier. Classifier
ownedTransition TransitionUsage [0..-1] {derived} The TransitionUsages that are ownedUsages of this Definition. Definition
ownedUnioning Unioning [0..-1] {derived} The ownedRelationships of this Type that are Unionings, having the Type as their typeUnioned. Type
ownedUsage Usage [0..-1] {derived} The Usages that are ownedFeatures of this Definition. Definition
ownedUseCase UseCaseUsage [0..-1] {derived} The UseCaseUsages that are ownedUsages of this Definition. Definition
ownedVerificationCase VerificationCaseUsage [0..-1] {derived} The VerificationCaseUsages that are ownedUsages of this Definition. Definition
ownedView ViewUsage [0..-1] {derived} The ViewUsages that are ownedUsages of this Definition. Definition
ownedViewpoint ViewpointUsage [0..-1] {derived} The ViewpointUsages that are ownedUsages of this Definition. Definition
owner Element [0..1] {derived} The owner of this Element, derived as the owningRelatedElement of the owningRelationship of this Element, if any. Element
owningMembership OwningMembership [0..1] {derived} The owningRelationship of this Element, if that Relationship is a Membership. Element
owningNamespace Namespace [0..1] {derived} The Namespace that owns this Element, which is the membershipOwningNamespace of the owningMembership of this Element, if any. Element
owningRelationship Relationship [0..1] The Relationship for which this Element is an ownedRelatedElement, if any. Element
qualifiedName string [0..1] {derived} The full ownership-qualified name of this Element, represented in a form that is valid according to the KerML textual concrete syntax for qualified names (including use of unrestricted name notation and escaped characters, as necessary). The qualifiedName is null if this Element has no owningNamespace or if there is not a complete ownership chain of named Namespaces from a root Namespace to this Element. Element
shortName string [0..1] {derived} The short name to be used for this Element during name resolution within its owningNamespace. This is derived using the effectiveShortName() operation. By default, it is the same as the declaredShortName, but this is overridden for certain kinds of Elements to compute a shortName even when the declaredName is null. Element
textualRepresentation TextualRepresentation [0..-1] {derived} The TextualRepresentations that annotate this Element. Element
unioningType Type [0..-1] {derived} The interpretations of a Type with unioningTypes are asserted to be the same as those of all the unioningTypes together, which are the Types derived from the unioningType of the ownedUnionings of this Type. For example, a Classifier for people might be the union of Classifiers for all the sexes. Similarly, a feature for people's children might be the union of features dividing them in the same ways as people in general. Type
usage Usage [0..-1] {derived} The Usages that are features of this Definition (not necessarily owned). Definition
variant Usage [0..-1] {derived} The Usages which represent the variants of this Definition as a variation point Definition, if isVariation = true. If isVariation = false, the there must be no variants. Definition
variantMembership VariantMembership [0..-1] {derived} The ownedMemberships of this Definition that are VariantMemberships. If isVariation = true, then this must be all ownedMemberships of the Definition. If isVariation = false, then variantMembershipmust be empty. Definition

AttributeUsage

Definition

An AttributeUsage is a Usage whose type is a DataType. Nominally, if the type is an AttributeDefinition, an AttributeUsage is a usage of a AttributeDefinition to represent the value of some system quality or characteristic. However, other kinds of kernel DataTypes are also allowed, to permit use of DataTypes from the Kernel Model Libraries. An AttributeUsage itself as well as all its nested features must be referential (non-composite).An AttributeUsage must specialize, directly or indirectly, the base Feature Base::dataValues from the Kernel Semantic Library.isReferencefeature->forAll(not isComposite)specializesFromLibrary('Base::dataValues')

Features

Name Description
Is Abstract FALSE
Generalizations Usage

Properties

Name Type Default Description Inheritance
aliasIds string [0..-1] Various alternative identifiers for this Element. Generally, these will be set by tools. Element
attributeDefinition DataType [0..-1] {derived} The DataTypes that are the types of this AttributeUsage. Nominally, these are AttributeDefinitions, but other kinds of kernel DataTypes are also allowed, to permit use of DataTypes from the Kernel Model Libraries. AttributeUsage
chainingFeature Feature [0..-1] {derived} The Feature that are chained together to determine the values of this Feature, derived from the chainingFeatures of the ownedFeatureChainings of this Feature, in the same order. The values of a Feature with chainingFeatures are the same as values of the last Feature in the chain, which can be found by starting with the values of the first Feature (for each instance of the domain of the original Feature), then using each of those as domain instances to find the values of the second Feature in chainingFeatures, and so on, to values of the last Feature. Feature
declaredName string [0..1] The declared name of this Element. Element
declaredShortName string [0..1] An optional alternative name for the Element that is intended to be shorter or in some way more succinct than its primary name. It may act as a modeler-specified identifier for the Element, though it is then the responsibility of the modeler to maintain the uniqueness of this identifier within a model or relative to some other context. Element
definition Classifier [0..-1] {derived} The Classifiers that are the types of this Usage. Nominally, these are Definitions, but other kinds of Kernel Classifiers are also allowed, to permit use of Classifiers from the Kernel Model Libraries. Usage
differencingType Type [0..-1] {derived} The interpretations of a Type with differencingTypes are asserted to be those of the first of those Types, but not including those of the remaining Types. For example, a Classifier might be the difference of a Classifier for people and another for people of a particular nationality, leaving people who are not of that nationality. Similarly, a feature of people might be the difference between a feature for their children and a Classifier for people of a particular sex, identifying their children not of that sex (because the interpretations of the children Feature that identify those of that sex are also interpretations of the Classifier for that sex). Type
directedFeature Feature [0..-1] {derived} The features of this Type that have a non-null direction. Type
directedUsage Usage [0..-1] {derived} The usages of this Usage that are directedFeatures. Usage
direction FeatureDirectionKind [0..1] Indicates how values of this Feature are determined or used (as specified for the FeatureDirectionKind). Feature
documentation Documentation [0..-1] {derived} The Documentation owned by this Element. Element
elementId string [1..1] The globally unique identifier for this Element. This is intended to be set by tooling, and it must not change during the lifetime of the Element. Element
endFeature Feature [0..-1] {derived} All features of this Type with isEnd = true. Type
endOwningType Type [0..1] {derived} The Type that is related to this Feature by an EndFeatureMembership in which the Feature is an ownedMemberFeature. Feature
feature Feature [0..-1] {derived} The ownedMemberFeatures of the featureMemberships of this Type. Type
featureMembership FeatureMembership [0..-1] {derived} The FeatureMemberships for features of this Type, which include all ownedFeatureMemberships and those inheritedMemberships that are FeatureMemberships (but does not include any importedMemberships). Type
featuringType Type [0..-1] {derived} Types that feature this Feature, such that any instance in the domain of the Feature must be classified by all of these Types, including at least all the featuringTypes of its typeFeaturings. If the Feature is chained, then the featuringTypes of the first Feature in the chain are also featuringTypes of the chained Feature. Feature
importedMembership Membership [0..-1] {derived} The Memberships in this Namespace that result from the ownedImports of this Namespace. Namespace
inheritedFeature Feature [0..-1] {derived} All the memberFeatures of the inheritedMemberships of this Type that are FeatureMemberships. Type
inheritedMembership Membership [0..-1] {derived} All Memberships inherited by this Type via Specialization or Conjugation. These are included in the derived union for the memberships of the Type. Type
input Feature [0..-1] {derived} All features related to this Type by FeatureMemberships that have direction in or inout. Type
intersectingType Type [0..-1] {derived} The interpretations of a Type with intersectingTypes are asserted to be those in common among the intersectingTypes, which are the Types derived from the intersectingType of the ownedIntersectings of this Type. For example, a Classifier might be an intersection of Classifiers for people of a particular sex and of a particular nationality. Similarly, a feature for people's children of a particular sex might be the intersection of a Feature for their children and a Classifier for people of that sex (because the interpretations of the children Feature that identify those of that sex are also interpretations of the Classifier for that sex). Type
isAbstract bool [1..1] false Indicates whether instances of this Type must also be instances of at least one of its specialized Types. Type
isComposite bool [1..1] false Whether the Feature is a composite feature of its featuringType. If so, the values of the Feature cannot exist after its featuring instance no longer does. Feature
isConjugated bool [1..1] {derived} Indicates whether this Type has an ownedConjugator. Type
isDerived bool [1..1] false Whether the values of this Feature can always be computed from the values of other Features. Feature
isEnd bool [1..1] false Whether or not the this Feature is an end Feature, requiring a different interpretation of the multiplicity of the Feature.An end Feature is always considered to map each domain instance to a single co-domain instance, whether or not a Multiplicity is given for it. If a Multiplicity is given for an end Feature, rather than giving the co-domain cardinality for the Feature as usual, it specifies a cardinality constraint for navigating across the endFeatures of the featuringType of the end Feature. That is, if a Type has n endFeatures, then the Multiplicity of any one of those end Features constrains the cardinality of the set of values of that Feature when the values of the other n-1 end Features are held fixed. Feature
isImpliedIncluded bool [1..1] false Whether all necessary implied Relationships have been included in the ownedRelationships of this Element. This property may be true, even if there are not actually any ownedRelationships with isImplied = true, meaning that no such Relationships are actually implied for this Element. However, if it is false, then ownedRelationships may not contain any implied Relationships. That is, either all required implied Relationships must be included, or none of them. Element
isLibraryElement bool [1..1] {derived} Whether this Element is contained in the ownership tree of a library model. Element
isNonunique bool [1..1] {derived} false Feature
isOrdered bool [1..1] false Whether an order exists for the values of this Feature or not. Feature
isPortion bool [1..1] false Whether the values of this Feature are contained in the space and time of instances of the domain of the Feature and represent the same thing as those instances. Feature
isReadOnly bool [1..1] false Whether the values of this Feature can change over the lifetime of an instance of the domain. Feature
isReference bool [1..1] {derived} Whether this Usage is a referential Usage, that is, it has isComposite = false. Usage
isSufficient bool [1..1] false Whether all things that meet the classification conditions of this Type must be classified by the Type.(A Type gives conditions that must be met by whatever it classifies, but when isSufficient is false, things may meet those conditions but still not be classified by the Type. For example, a Type Car that is not sufficient could require everything it classifies to have four wheels, but not all four wheeled things would classify as cars. However, if the Type Car were sufficient, it would classify all four-wheeled things.) Type
isUnique bool [1..1] true Whether or not values for this Feature must have no duplicates or not. Feature
isVariation bool [1..1] Whether this Usage is for a variation point or not. If true, then all the memberships of the Usage must be VariantMemberships. Usage
member Element [0..-1] {derived} The set of all member Elements of this Namespace, which are the memberElements of all memberships of the Namespace. Namespace
membership Membership [0..-1] {derived} All Memberships in this Namespace, including (at least) the union of ownedMemberships and importedMemberships. Namespace
multiplicity Multiplicity [0..1] {derived} An ownedMember of this Type that is a Multiplicity, which constraints the cardinality of the Type. If there is no such ownedMember, then the cardinality of this Type is constrained by all the Multiplicity constraints applicable to any direct supertypes.  Type
name string [0..1] {derived} The name to be used for this Element during name resolution within its owningNamespace. This is derived using the effectiveName() operation. By default, it is the same as the declaredName, but this is overridden for certain kinds of Elements to compute a name even when the declaredName is null. Element
nestedAction ActionUsage [0..-1] {derived} The ActionUsages that are nestedUsages of this Usage. Usage
nestedAllocation AllocationUsage [0..-1] {derived} The AllocationUsages that are nestedUsages of this Usage. Usage
nestedAnalysisCase AnalysisCaseUsage [0..-1] {derived} The AnalysisCaseUsages that are nestedUsages of this Usage. Usage
nestedAttribute AttributeUsage [0..-1] {derived} The code>AttributeUsages that are nestedUsages of this Usage. Usage
nestedCalculation CalculationUsage [0..-1] {derived} The CalculationUsage that are nestedUsages of this Usage. Usage
nestedCase CaseUsage [0..-1] {derived} The CaseUsages that are nestedUsages of this Usage. Usage
nestedConcern ConcernUsage [0..-1] {derived} The ConcernUsages that are nestedUsages of this Usage. Usage
nestedConnection ConnectorAsUsage [0..-1] {derived} The ConnectorAsUsages that are nestedUsages of this Usage. Note that this list includes BindingConnectorAsUsages and SuccessionAsUsages, even though these are ConnectorAsUsages but not ConnectionUsages. Usage
nestedConstraint ConstraintUsage [0..-1] {derived} The ConstraintUsages that are nestedUsages of this Usage. Usage
nestedEnumeration EnumerationUsage [0..-1] {derived} The code>EnumerationUsages that are nestedUsages of this Usage. Usage
nestedFlow FlowConnectionUsage [0..-1] {derived} The code>FlowConnectionUsages that are nestedUsages of this Usage. Usage
nestedInterface InterfaceUsage [0..-1] {derived} The InterfaceUsages that are nestedUsages of this Usage. Usage
nestedItem ItemUsage [0..-1] {derived} The ItemUsages that are nestedUsages of this Usage. Usage
nestedMetadata MetadataUsage [0..-1] {derived} The MetadataUsages that are nestedUsages of this of this Usage. Usage
nestedOccurrence OccurrenceUsage [0..-1] {derived} The OccurrenceUsages that are nestedUsages of this Usage. Usage
nestedPart PartUsage [0..-1] {derived} The PartUsages that are nestedUsages of this Usage. Usage
nestedPort PortUsage [0..-1] {derived} The PortUsages that are nestedUsages of this Usage. Usage
nestedReference ReferenceUsage [0..-1] {derived} The ReferenceUsages that are nestedUsages of this Usage. Usage
nestedRendering RenderingUsage [0..-1] {derived} The RenderingUsages that are nestedUsages of this Usage. Usage
nestedRequirement RequirementUsage [0..-1] {derived} The RequirementUsages that are nestedUsages of this Usage. Usage
nestedState StateUsage [0..-1] {derived} The StateUsages that are nestedUsages of this Usage. Usage
nestedTransition TransitionUsage [0..-1] {derived} The TransitionUsages that are nestedUsages of this Usage. Usage
nestedUsage Usage [0..-1] {derived} The Usages that are ownedFeatures of this Usage. Usage
nestedUseCase UseCaseUsage [0..-1] {derived} The UseCaseUsages that are nestedUsages of this Usage. Usage
nestedVerificationCase VerificationCaseUsage [0..-1] {derived} The VerificationCaseUsages that are nestedUsages of this Usage. Usage
nestedView ViewUsage [0..-1] {derived} The ViewUsages that are nestedUsages of this Usage. Usage
nestedViewpoint ViewpointUsage [0..-1] {derived} The ViewpointUsages that are nestedUsages of this Usage. Usage
output Feature [0..-1] {derived} All features related to this Type by FeatureMemberships that have direction out or inout. Type
ownedAnnotation Annotation [0..-1] {derived} The ownedRelationships of this Element that are Annotations, for which this Element is the annotatedElement. Element
ownedConjugator Conjugation [0..1] {derived} A Conjugation owned by this Type for which the Type is the originalType. Type
ownedDifferencing Differencing [0..-1] {derived} The ownedRelationships of this Type that are Differencings, having this Type as their typeDifferenced. Type
ownedDisjoining Disjoining [0..-1] {derived} The ownedRelationships of this Type that are Disjoinings, for which the Type is the typeDisjoined Type. Type
ownedElement Element [0..-1] {derived} The Elements owned by this Element, derived as the ownedRelatedElements of the ownedRelationships of this Element. Element
ownedEndFeature Feature [0..-1] {derived} All endFeatures of this Type that are ownedFeatures. Type
ownedFeature Feature [0..-1] {derived} The ownedMemberFeatures of the ownedFeatureMemberships of this Type. Type
ownedFeatureChaining FeatureChaining [0..-1] {derived} The ownedRelationships of this Feature that are FeatureChainings, for which the Feature will be the featureChained. Feature
ownedFeatureInverting FeatureInverting [0..-1] {derived} The ownedRelationships of this Feature that are FeatureInvertings and for which the Feature is the featureInverted. Feature
ownedFeatureMembership FeatureMembership [0..-1] {derived} The ownedMemberships of this Type that are FeatureMemberships, for which the Type is the owningType. Each such FeatureMembership identifies an ownedFeature of the Type. Type
ownedImport Import [0..-1] {derived} The ownedRelationships of this Namespace that are Imports, for which the Namespace is the importOwningNamespace. Namespace
ownedIntersecting Intersecting [0..-1] {derived} The ownedRelationships of this Type that are Intersectings, have the Type as their typeIntersected. Type
ownedMember Element [0..-1] {derived} The owned members of this Namespace, which are the ownedMemberElements of the ownedMemberships of the . Namespace
ownedMembership Membership [0..-1] {derived} The ownedRelationships of this Namespace that are Memberships, for which the Namespace is the membershipOwningNamespace. Namespace
ownedRedefinition Redefinition [0..-1] {derived} The ownedSubsettings of this Feature that are Redefinitions, for which the Feature is the redefiningFeature. Feature
ownedReferenceSubsetting ReferenceSubsetting [0..1] {derived} The one ownedSubsetting of this Feature, if any, that is a ReferenceSubsetting, for which the Feature is the referencingFeature. Feature
ownedRelationship Relationship [0..-1] {composite} The Relationships for which this Element is the owningRelatedElement. Element
ownedSpecialization Specialization [0..-1] {derived} The ownedRelationships of this Type that are Specializations, for which the Type is the specific Type. Type
ownedSubsetting Subsetting [0..-1] {derived} The ownedSpecializations of this Feature that are Subsettings, for which the Feature is the subsettingFeature. Feature
ownedTypeFeaturing TypeFeaturing [0..-1] {derived} The ownedRelationships of this Feature that are TypeFeaturings and for which the Feature is the featureOfType. Feature
ownedTyping FeatureTyping [0..-1] {derived} The ownedSpecializations of this Feature that are FeatureTypings, for which the Feature is the typedFeature. Feature
ownedUnioning Unioning [0..-1] {derived} The ownedRelationships of this Type that are Unionings, having the Type as their typeUnioned. Type
owner Element [0..1] {derived} The owner of this Element, derived as the owningRelatedElement of the owningRelationship of this Element, if any. Element
owningDefinition Definition [0..1] {derived} The Definition that owns this Usage (if any). Usage
owningFeatureMembership FeatureMembership [0..1] {derived} The FeatureMembership that owns this Feature as an ownedMemberFeature, determining its owningType. Feature
owningMembership OwningMembership [0..1] {derived} The owningRelationship of this Element, if that Relationship is a Membership. Element
owningNamespace Namespace [0..1] {derived} The Namespace that owns this Element, which is the membershipOwningNamespace of the owningMembership of this Element, if any. Element
owningRelationship Relationship [0..1] The Relationship for which this Element is an ownedRelatedElement, if any. Element
owningType Type [0..1] {derived} The Type that is the owningType of the owningFeatureMembership of this Feature. Feature
owningUsage Usage [0..1] {derived} The Usage in which this Usage is nested (if any). Usage
qualifiedName string [0..1] {derived} The full ownership-qualified name of this Element, represented in a form that is valid according to the KerML textual concrete syntax for qualified names (including use of unrestricted name notation and escaped characters, as necessary). The qualifiedName is null if this Element has no owningNamespace or if there is not a complete ownership chain of named Namespaces from a root Namespace to this Element. Element
shortName string [0..1] {derived} The short name to be used for this Element during name resolution within its owningNamespace. This is derived using the effectiveShortName() operation. By default, it is the same as the declaredShortName, but this is overridden for certain kinds of Elements to compute a shortName even when the declaredName is null. Element
textualRepresentation TextualRepresentation [0..-1] {derived} The TextualRepresentations that annotate this Element. Element
type Type [0..-1] {derived} Types that restrict the values of this Feature, such that the values must be instances of all the types. The types of a Feature are derived from its typings and the types of its subsettings. If the Feature is chained, then the types of the last Feature in the chain are also types of the chained Feature. Feature
unioningType Type [0..-1] {derived} The interpretations of a Type with unioningTypes are asserted to be the same as those of all the unioningTypes together, which are the Types derived from the unioningType of the ownedUnionings of this Type. For example, a Classifier for people might be the union of Classifiers for all the sexes. Similarly, a feature for people's children might be the union of features dividing them in the same ways as people in general. Type
usage Usage [0..-1] {derived} The Usages that are features of this Usage (not necessarily owned). Usage
variant Usage [0..-1] {derived} The Usages which represent the variants of this Usage as a variation point Usage, if isVariation = true. If isVariation = false, then there must be no variants. Usage
variantMembership VariantMembership [0..-1] {derived} The ownedMemberships of this Usage that are VariantMemberships. If isVariation = true, then this must be all memberships of the Usage. If isVariation = false, then variantMembershipmust be empty. Usage

Behavior

Definition

A Behavior coordinates occurrences of other Behaviors, as well as changes in objects. Behaviors can be decomposed into Steps and be characterized by parameters.specializesFromLibrary('Performances::Performance')step = feature->selectByKind(Step)ownedSpecialization.general->forAll(not oclIsKindOf(Structure))

Features

Name Description
Is Abstract FALSE
Generalizations Class

Properties

Name Type Default Description Inheritance
aliasIds