Arquitectura archivo IFC (parte 3): IfcPropertyDefinition
IfcPropertyDefinition, una estructura de datos IFC: veamos cómo leer, modificar y añadir propiedades a objetos en un modelo IFC
En este artículo, hablaremos del tercer pilar del esquema datos IFC (Industry Foundation Classes), el IfcPropertyDefinition
, es decir, el concepto de propiedades IFC concebidas como información compartida entre varias instancias de objetos. En artículos anteriores, hemos ya hablado de IfcObjectDefinition
e IfcRelationship.
A continuación, los 3 contenidos sobre la arquitectura del archivo IFC:
Arquitectura de un modelo IFC
El esquema IFC, representa un sistema de archivado para organizar, de forma orgánica, la información referente a un objeto y garantizar el acceso al contenido informativo a lo largo del tiempo, sin vínculos. El IFC configura un modelo constituido por una gran cantidad de entidades organizadas según una determinada jerarquía.
La estructura del IFC se basa sobre 3 conceptos fundamentales que definen:
IfcObjectDefinition:
las entidadesIfcRelationship:
la relación entre entidadesIfcPropertyDefinition:
las propiedades asociadas a las entidades.

Diagrama esquema datos IFC
IfcPropertyDefinition
IfcPropertyDefinition
permite generalizar todas las propiedades que es posible asignar a los objetos. Este tipo de generalización, permite definir un set de propiedades IFC o tipología de objetos (type object). Estas propiedades definen la información compartida entre varias instancias de objetos.
A partir de esta propiedad, se ramifican las sucesivas:
IfcPropertySetDefinition
: permite la generalización del set de propiedades;IfcPropertySet
: representa el contenedor en el cual están todas las propiedades. Estas propiedades están definidas y clasificadas a través del nombre. Los set de propiedades se relacionan a los objetos(IfcObject)
a través de la relaciónIfcRelDefinedByProperties
;IfcProperty
: define la generalización de los tipos se propiedades que pueden ser asociados a los objetos IFC y depende de un set de propiedad.

Arquitectura archivo IFC | Diagrama de árbol IfcPropertyDefinition
Las IfcProperty
se dividen ulteriormente en:
IfcComplexProperty
, que se utiliza para definir las propiedades complejas a gestionar dentro de un set de propiedades;IfcSimpleProperty
que califica las propiedades asignadas a un objeto individual. Los distintos sub-tipos deIfcSimpleProperty
, establecen los distintos modos a través de los cuales podemos configurar un valor de propiedad.

Arquitectura archivo IFC | Diagrama descripción IfcSimpleProperty
IfcSimpleProperty
La IfcSimpleProperty
se detalla en 6 sucesivos sub-tipos que reportamos a continuación.
El IfcPropertySingleValue
Es una propiedad a la que podemos asignar un solo valor. Está compuesta por los siguientes elementos:
- Name
- Nominal Value
- Type (through IfcValue)
- Unit.
Por ejemplo, si queremos describir las propiedades de una puerta fabricada por el «fabricante A», con espesor de 4 cm, con valor de transmitancia de 2,6 w/(m² K) obtenemos:

Esquema de ejemplo IfcPropertySingleValue
El IfcPropertyEnumeratedValue
Define una propiedad a la que se asigna un valor elegido desde una numeración. Entonces, el IfcPropertyEnumeratedValue
define una propiedad cuyo valor está seleccionado desde un listado pre configurado. Este listado se especifica dentro la clase IfcPropertyEnumerated
, que representa el sub-tipo IfcPropertyEnumeratedValue.
Está compuesta por los siguientes elementos:
- Name
- Value (EnumerationValue)
- Type
- IfcPropertyEnumeratio;
tal como descrito en la siguiente imagen.

Esquema de ejemplo de IfcPropertyEnumeratedValue
El IfcPropertyBoundedValue
Define una propiedad a la cual se asignan dos valores límites: el primer valor que especifica el límite superior y el segundo que especifica el límite inferior.
Está compuesta por los siguientes elementos:
- Name
- UpperBoundValue
- LowerBoundValue
- Type
- Unit
A través de dicha propiedad, podemos indicar, por ejemplo, los límites de volumetría y peso de un objeto a transportar en un determinado punto de la obra.

Esquema de ejemplo IfcPropertyBoundedValue
El IfcPropertyTableValue
Define una propiedad a la cual se asignan dos valores que constituyen una tabla con dos columnas. Los valores reportados en la primera columna definen al ámbito de aplicación de los valores de la segunda columna.
Está compuesta por los siguiente elementos:
- DefiningValues
- DefiningValueType
- DefingUnit
Por ejemplo, a través de una tabla podemos indicar los valores de pérdida de la transmisión del sonido, en un determinado intervalo.

Esquema de ejemplo IfcPropertyTableValue
El IfcPropertyReferenceValue
Asigna un valor a las propiedades a través un enlace con propiedades complejas predefinidas dentro del esquema IFC.
El IfcPropertyListValue
Define una propiedad a la cual se asignan múltiples valores; estos valores están definidos en un determinado listado preciso y ordenado (el orden con el cual se visualizan los valores es significativo). Cada valor del listado es unívoco y no se admiten valores duplicados.
Está compuesta por los siguientes elementos:
- Name
- ListValue
- Type
- Unit
A través de dicha propiedad podemos indicar, por ejemplo, las dimensiones aplicables (comprendidas en un listado definido) en la realización de un determinado artefacto.

Esquema de ejemplo IfcPropertyListValue
Ejemplos de propiedades IFC asociadas a las entidades
A continuación, proponemos algunas imágenes (capturas de pantallas de usBIM.viewer+ ) que reportan algunos ejemplos de propiedades IFC asociadas a las entidades.
En la primera imagen (Imagen 1), mostramos la selección de una puerta en la caja de herramientas de la izquierda; en la caja de herramientas de la derecha, es posible leer las propiedades enlazadas a la entidad seleccionada.

Imagen 1: lectura de las propiedades de la entidad | usBIM.viewer+
En la segunda imagen (Imagen 2), mostramos cómo añadir una propiedad a un conjunto de entidades. Después de abrir en editor de modificación del modelo IFC, seleccionando dos entidades desde la dialogbox propiedades, puedes insertar una nueva propiedad (de tipo pintura) asociada a los dos WallCommon
.

Imagen 2: inserción de una propiedad a una entidad envolvente | usBIM.viewer+
Por otro lado, la tercera imagen (Imagen 3), muestra cómo modificar las propiedades de la entidad envolvente incrustadas en el IfcWallStandardCase
, pasando de «Revoque blanco» a «Revoque Blanco Abujardado».

Imagen 3: modificación de una propiedad de la entidad envolvente | usBIM.viewer+
Finalizando, la cuarta imagen (Imagen 4), muestra cómo comprobar las propiedades IFC insertadas: seleccionar el nodo IfcWallStandardCase
la entidad wall, leer en el toolbox derecho, los cambios insertado en sus propiedades; la inserción de la pintura con el atributo «color» y el cambio de atributo «revoque».

Imagen 4: lectura de las propiedades insertadas y asignadas a la entidad envolvente | usBIM.viewer+
Descarga el visor IFC
Si quieres analizar las propiedades IFC asignadas que debes insertar y/o modificar con respecto a las entidades de construcción, como por ejemplo, muro, forjado, ventana y puerta, puedes descargar gratuitamente y sin algún límite el software usBIM.viewer+, o utilizar un IFC editor en línea. Ambos permiten permiten abrir, analizar y editar archivos IFC.
Si quieres descubrir más sobre la arquitectura del formato IFC, te proponemos los 3 siguientes artículos: