Values Constraint

NOTE: All relations between properties and values have to be documented in the table properties_values (see 9.). They are global changes, i.e. the relation is valid in whichever context the property is used. The Constraint-function gives you the possibility to make a local change. Global change means that a value is assigned to or withdrawn from a property in any context, i.e. class where the property is used. Local change (constraint) means that a value is only assigned to or withdrawn from a property in the context of a certain class.

Example 1: A BOOLEAN property always has the same value list in any context {true; false} for every property assigned to any class. A constraint cannot be applied to a BOOLEAN property, as the value list cannot be limited.

Example 2: A value list of {red, green, yellow} might be valid for a property “color of traffic lights” for a class “car traffic light”. But maybe it should be limited (“constrained”) for the property “color of traffic light” in the context of the class “pedestrian traffic light” to only {red, green}.

Each line is the relationship of one property to one value for one class. If you would like to limit values of a property in a specific class, you have to fill out x lines for each value with the same property identifier and the same class identifier. If you would like to activate a value that was once constrained, you have to fill out x lines for each value with the same property identifier and the same class identifier. The connection is related by either the id_cc_internal (if CC is new) or id_cc_existing (if CC is existing) of the class and either the id_pr_internal (if PR is new) or id_pr_existing (if PR is existing) of the property and either the id_va_internal (if VA is new) or id_va_existing (if VA is existing) of the value.

NOTE: All relations between properties and values have to be documented in the table properties_values (see 9.) first. If a relation was not defined in that table, then no constraint can be defined either. In this case every value of the used existing property will be shown. A constraint can only be placed on an existing relation that is documented in table properties_values.

ENABLE VA

ENABLE VA = A VA (new or existing) shall be related to a PR (new or existing) in the context of a certain CC (new or existing).

Mandatory fields:

CR type EENABLE VA
id_cc_internal or

id_cc_existing

in case of a new CC, insert the unique internal ID mentioned in table <classes>,

in case of an existing CC, it is the 6-digit identifier

class coded name 8-digit ECLASS identifier
preferred name cc the CC’s name
id_pr_internal or

id_pr_existing

in case of a new PR, insert the unique internal ID mentioned in table <properties>,

in case of an existing PR, it is the 6-digit identifier

preferred name PR the PR’s name
id_va_internal or

id_va_existing

in case of a new VA, insert the unique internal ID mentioned in table <values>,

in case of an existing VA, it is the 6-digit identifier

preferred name VA the VA’s name
CR Proposer Your name
Reason for request Your reason for the change

DISABLE VA

DISABLE VA = The existing relation between a CC, a PR and a VA shall be deleted

Mandatory fields:

CR type DISABLE VA
id_cc_existing the 6-digit identifier mentioned in table <classes>
class coded name 8-digit ECLASS identifier
preferred name cc the CC’s name
id_pr_existing the 6-digit identifier mentioned in table <properties>
preferred name PR the PR’s name
id_va_existing the 6-digit identifier mentioned in table <values>
preferred name VA the VA’s name
CR Proposer Your name
Reason for request Your reason for the change

NOTE: The EXCEL Sheet provides the possibility to choose between ENABLE and DISABLE VA. In case only a few values of a long value list are valid for a certain class, then it is easier to name only those values that shall be valid, i.e. ENABLED. Then please fill out one line ENABLE VA for each value that is valid. This is the preferred change request type as you most certainly know better the valid values.


Example 1: ENABLE VA

Class “pedestrian traffic light” (CC01)

Property “colour” (PR01)

Value list {red (VA01), yellow (VA02), green (VA03), blue (VA04), pink (VA05), white (VA06), brown (VA07)}


Red and green shall be the only valid values.

Two ENABLE VA change requests are necessary:

ENABLE VA CC01 PR01 VA01

ENABLE VA CC01 PR01 VA03


In case most of the values of a long value list are valid for a certain class, then it might be easier to name only those that shall be invalid, i.e. DISABLED. Then please fill out one line DISABLE VA for each value that is invalid. The database knows only ENABLE VA and will automatically create ENABLE VA for all values that are not listed with a DISABLE VA line.


Example 2: DISABLE VA

Class “light bulb” (CC02)

Property “colour” (PR01)

Value list {red (VA01), yellow (VA02), green (VA03), blue (VA04), pink (VA05), white (VA06), brown (VA07)}


Brown shall be the only invalid values

One DISABLE VA change request is necessary:

DISABLE VA CC02 PR01 VA07


(The database will automatically create ENABLE VA-change requests for all other values.)