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.
Variability allows you to customize configurations which 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 customizations you
made earlier in a single step without having to go 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 many have one or more references to the associated element.
See Associations Impacted
by Variability for a complete list of supported associations for each
type of element.
Variability Type
Variability type describes how
one element affects another through variability associations. The five types
of variability associations are listed here:
- 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, the base's are ignored.
In relationships from the base are added to the replacer. Text in the replacer
is left untouched, the base's text is ignored.
- Extend - An extending element inherits characteristics of the
base element. Both the extender and the base 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's are ignored. Text is added
from the base if the extender has not 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.