Let's take a look at our Window example.
This lines follows this encoding template:
Instance Name
Entity Name
Attributes
We can express this template in two different ways:
1. Instance Name
=2. Entity name
(3. Attributes
)
We have, in this example:
Name
Value
Instance Name
#13067
Entity Name
IFCWINDOW
Attributes
'2cXV28XOjE6f6irgi0CO$D', #42,'M_Fixed:0915 x 1830mm:353953',
$,
'M_Fixed:0915 x 1830mm',
#35337,
#13061,
'353953',
1830.,
914.999999999999
Here are some basic encoding rules
Name
Description
Instance Name
The instance name must consist of a positive integer. The instance name is only valid locally within the STEP-file.
If the same content is exported again, the instance names may be different.
The instance name is also used to reference other entity instances through attribute values or aggregate members.
The referenced instance may be defined before or after the current instance.
Entity Name
Instances are represented by writing the name of the entity in capital letters and then followed by the attribute values in the defined order within parentheses.
Attributes
Only explicit attributes get mapped
Inverse, Derived and re-declared attributes are not listed since their values can be deduced from the other ones.
Unset attribute values are given as "$".
Multuple values are comma separated
Again, this can be visualized as:
#
Instance Name
=Entity name
(Attributes
)
Or, as our example:
#13067
=IFCWINDOW
('2cXV28X...
)
Or, as a single line:
Mapping of other data types
Example
Enumeration, boolean and logical values are given in capital letters with a leading and trailing do
.TRUE.
Integers and real values are used identical to typical programming languages
123
String values are given in quotes.
"My string"
For characters with a code greater than 126 a special encoding is used. The character sets as defined in ISO 8859 and 10646 are supported.
N/A
The elements of aggregates (SET, BAG, LIST, ARRAY) are given in parentheses, separated by ",".
(1,2,3)
Each entity instance is ended with a semi-colon
;
Editor's note:
I know that this can hard to understand. Please, take a good look at this article. Read it agian, think and reflect about the content.
Work in progress...