COOM Profile: CORE¶
Synopsis¶
The COOM Core profile offers the language elements needed to define the most basic configuration knowledge base. A product can be defined by structures and enumerations of predefined choice values. Dependencies between the choice values of the enumeration elements are introduced by using constraints (bidirectional). These constraints define either allowed or forbidden combinations of choice values.
Building Blocks¶
Example: Kids Bike¶
The product KidsBike
offers the configurable elements color
, wheelSize
, and a supportWheels
.
It is important, that supportWheels
is only possible for the small wheel sizes W14
and W16
.
Also, the color Yellow
is only allowed for the larger wheel sizes W18
and W20
.
product {
KidsBike kidsBike
}
structure KidsBike {
Color color
bool supportWheels
Wheel wheelSize
}
enumeration Wheel { W14 W16 W18 W20 }
enumeration Color { Red Yellow }
behavior KidsBike {
combinations ( supportWheels wheelSize )
allow ( true (W14,W16) )
allow ( false (W18,W20) )
}
behavior KidsBike {
condition color = Yellow
require wheelSize = W18 || wheelSize = W20
}