Note: There is a newer version of this specification see VEC 2.0.2
The classes displayed in this diagram can be used to describe meta information about the elements used to described variance properties. The description of the variance information of a concrete element (ConfigurableElement) is done with a VariantConfiguration and the contained logisticControlString. These strings are normally created from VariantCodes and a proprietary boolean syntax.
A VariantCodeSpecification is a container for various VariantCodes. Each VariantCode describes an elementary literal which can be used as part of a VariantConfiguration.logisticControlString or VariantConfiguration.logisticControlExpression.
A VariantGroupSpecification is a container for various VariantGroups. A VariantGroup describes a grouping for VariantCodes. There can be a wide variety of reasons to group VariantCodes. However, the most common is to mark VariantCodes that belong to the same family (mutually exclusive) variant codes.
A VariantStructureSpecification with its VariantStructureSpecificationNode can be used to define any kind of hierarchical structure upon the VariantGroups.
Note: The VEC does not constrain a VariantCodeSpecification or a VariantGroupSpecification to a precondition for use in VariantConfigurations. VariantCodeSpecification and VariantGroupsSpecification are intended as an optional means to exchange information independently about the “vocabulary” which is possible to express VariantConfigurations.