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.
Veamos ahora qué es IfcPropertyDefinition
y cómo añadir, eliminar y editar las propiedades de un modelo de información en formato IFC con un Editor IFC avanzado y en línea.
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
A continuación, los 3 contenidos sobre la arquitectura del archivo IFC:
IfcObjectDefinition(arquitectura IFC parte 1)
;IfcRelationship (arquitectura IFC parte 2)
;IfcPropertyDefinition (arquitectura IFC parte 3)
.
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
Te recuerdo que, para ver las propiedades de una entidad en un modelo 3D, puedes utilizar un sencillo visor BIM en línea y gratuito. Sólo tienes que:
- cargar el archivo IFC a la nube usBIM;
- abrir el archivo IFC haciendo clic en el icono de la pantalla en la parte derecha;
- seleccionar la entidad de interés;
- leer las propiedades de esa entidad en la caja de herramientas a la derecha.
Ejemplos de propiedades IFC asociadas a las entidades
A continuación, proponemos algunas imágenes que reportan algunos ejemplos de propiedades IFC asociadas a las entidades.
En la primera imagen, mostramos la selección de un elemento del modelo. A continuación, en la caja de herramientas de la derecha, es posible leer las propiedades enlazadas a la entidad seleccionada.

Imagen 1 | Lectura de las propiedades generales de un elemento
Por otro lado, la segunda imagen, muestra cómo editar, eliminar o añadir las propiedades de la entidad como, por ejemplo, aquellas de la envolvente comprendidas en el IfcWallStandardCase
.

Imagen 2 | Editar, insertar, eliminar propiedades de un elemento
Por último, la tercera imagen, muestra cómo comprobar las propiedades IFC insertadas en la caja de herramientas Propiedades en la parte derecha de la pantalla.

Imagen 3 | Visualización de las propiedades insertadas y/o editadas