Variability::VariationGroup

Header Image
Content:
VariationGroup : Public Class ArtifactLevelVariationManagement
A VariationGroup defines a relation between an arbitrary number of VariableElements. It is primarily intended for defining how these VariableElements may be combined (e.g. one requires the other, alternative, etc.).<br/><br/><br/>Semantics:<br/>Defines a dependency or constraint between the variable elements denoted by association variableElement. The actual constraint is specified by attribute kind, with meanings:<br/>needs: assuming the ordered association variableElement in meta-class VariationGroup refers to elements VE1, VE2, ..., VEn, this kind states that VE1 requires (i.e. may not appear without) all other elements VE2, VE3, ..., VEn.<br/>excludes: assuming the ordered association variableElement in meta-class VariationGroup refers to elements VE1, VE2, ..., VEn, this kind states that VE1 excludes (i.e. may not appear with) any of the other elements VE2, VE3, ..., VEn.<br/>OptionalAlternative: this kind states that at most(!) one element of the elements denoted by association variableElement of the VariationGroup must be selected in any valid final system configuration.<br/>MandatoryAlternative: this kind states that exactly(!) one element of the elements denoted by association variableElement of the VariationGroup must be selected in any valid final system configuration.<br/>suggests: if the FeatureLink's start feature S is selected, then usually(!) also its end feature E must be selected. You can select S without E but you should have a good reason to do so. Always unidirectional.<br/>impedes: the FeatureLink's start feature S and its end feature E must usually(!) not be selected in a single configuration. You can select S together with E but you should have a good reason to do so. Always bidirectional.<br/>Custom: this kind states that the dependency between the elements denoted by association variableElement of the VariationGroup will be defined by a logical expression in attribute 'constraint' of the VariationGroup.<br/><br/><br/><br/><br/>Extension:<br/>Class<br/>
  • Attributes
  • Associations
  • Associations From
  • Advanced
  • Other Links
Attribute Scope Type
constraint Public String
Notes: Only defined iff kind=="custom". A constraint specifying how the VariableElements in the variation group can be combined. This attribute adheres to the syntax and semantics of the VSL language.<br/>
kind Public VariabilityDependencyKind
Notes: The kind of the variation group (see enumeration VariationGroupKind).<br/>
Element Source Role Target Role
VariableElement
Class  
Name:  
 
Name: variableElement
Associated variable elements.
Details:
 
Element Source Role Target Role
ConfigurableContainer
Class  
Name:  
 
Name: variationGroup
The variation groups that define certain dependencies and constraints between this ConfigurableContainer's variable elements.
Details:
 
Property Value
isFinalSpecialization: 0
Object Type Connection Direction Notes
EAElement Class Generalization To  
ConfigurableContainer Class Weak From