Model Component Types

Model Component is a generic term for the following component types in BIMQ: models, elements, groups, geometry, properties, values. 


“Model” refers to a model of a certain discipline that is created by the responsible specialist planner in his BIM software. Each specialist model is used like a container for model elements. It is necessary to define the models required in the project so that each element can later be assigned to one or more specialist models.



Object” or model element is a digital representation of a real component in a model. The objects are assigned according to an element classification or an element catalog, under models. This includes element classifications such as Omniclass or DIN 276-2, and others. Elements are defined as an type "Object".



"Group" can be used to group elements, geometries or properties.



"Geometry" is the definition of the geometric level of detail of an element. The term Level of Geometry (LOG) is used to describe the level of detail.



"Property" or attribute or parameter is an indication that reflects the physical, functional or other properties of a model element.


Constraints for Properties

Displaying Constraints for Templates

The values of a property can be further restricted depending on the selected data type. Value lists (enumerations), value ranges or naming patterns can be used for this purpose. Value lists must always be created in the templates and configured in the requirements. Value ranges and naming patterns can also only be defined individually in the requirements.

To create constraints, the table configuration must be adjusted and the “Constraints” option selected under “Columns”. As these are dependent on the unit or data type of the property, the “Units” column is always displayed automatically:


Constraint Type - Enumeration

Constraints can be created in the form of a selection list (enumeration) for the individual properties, e.g. if a set with predefined values exists, for example for the concrete strength class “C20/25, C25/30, ...”.

A new value in a value list is created as follows:


Constraint Type - Pattern

As an alternative to a fixed list of values, a pattern can also be defined as a so-called regular expression. Please note that this must be a valid expression of the XML schema regular expressions. See e.g. for further information regarding this topic.

Commonly used expressions are for example:

  • \d any digit

  • \w any "word-character" (letter, digit, underscore)

  • . any character

  • Some characters are reserved characters for regular expressions. Reserved characters include:
    . + ? * [ ] ( ) \ / |
    For example, if you want to describe ABC.DEF[123] with a pattern, the characters . and [ and ] must be written preceded by a backslash \ like this: ABC\.DEF\[123\]

Patterns that are to occur at a specific position can also be created without knowledge of regular expressions. To do this, select “Sub string (simple)” and define the desired position and the required pattern. For example, if you want to define that the text can have a maximum of 15 characters and that three digits followed by a hyphen and any “word character” should appear in the fourth position, you would enter the following:


This generates the regular expression .{3}\d{3}-\w.*. The character string abc123-T would therefore match the pattern, whereas the character string abc123-% would not.

Constraint Type - Value or Range of values

It is also possible to specify a range or a fixed value for numerical data types. Both commas and periods can be used as decimal separators for input. A comma as a separator is automatically converted to a point. The regulations of the IDS standard apply with regard to the precision of floating point numbers and the units of values.

If a number is entered without a decimal separator, it is saved as a whole number. For example, the following input is saved as an interval (12.5, 15]:


Constraint Type - Boolean

For Boolean values (truth values), it is possible to determine whether they are true or false.