Method content variability allows elements in one content package
to modify or reuse elements in other content packages without directly modifying
the original content. Variability provides a mechanism for making changes
to the published Web site while keeping the components separate and optional.
You can use variability to customize configurations that use method content
and processes that you do not own and cannot directly modify. When content
packages are upgraded, you can import them and reapply the customization that
you made earlier in a single step without going through each element.
Variability generally affects two characteristics of a method element;
its attributes and its relationships with other content elements. If an element
supports variability, the specification is shown at the bottom of the element's
Description view.
There are three factors to be considered when using variability:
- Attributes: Element data types such as Main Description.
- Incoming associations: Associations from other elements. The associated
element may have one or more references to the subject element.
- Outgoing associations: Associations to other elements. The subject element
may have one or more references to the associated element.
For a complete list of supported associations for each type of element,
see Associations impacted by
variability.
Variability type
Variability type describes how
one element affects another through variability associations. The five types
of variability associations are:
- Not Applicable
- The element is a base element and does not affect another element through
variability. This is the default value of an element's variability type.
- Contributes
- A contributing element adds to the base element. The base appears in the
published Web site but the contributing element does not. In and out relationships
from the contributing element are added to the base. Text from
the contributing element is appended to corresponding base sections.
- Replaces
- A replacing element replaces parts of the base element. The replacer appears
in the published Web site but the base element does not. Out relationships
in the replacer are left untouched, and the base element's are ignored. In
relationships from the base are added to the replacer. Text in the replacer
is left untouched, and the base element's text is ignored.
- Extend
- An extending element inherits characteristics of the base element. Both
the extender and the base element appear in the published Web site. Out relationships
from the base are added to the extender. In relationships in the extender
are left untouched, the base element's are ignored. Text is added from the
base if the extender has no value defined for the given section.
- Extends and Replaces
- This variability relationship combines the effects of extends and replace
variability into one variability type. Whereas the replaces variability completely
replaces all attributes and outgoing association instances of the base variability
element with new values and instances, or removes all values or association
instances if the replacing element does not define any, extends and replaces
variability only replaces the values that have been redefined and leaves all
other values of the base element as is.