IfcProxy

Definition from IAI: The IfcProxy is intended to be a kind of a container for wrapping objects which are defined by associated properties, which may or may not have a geometric representation and placement in space. A proxy may have a semantic meaning, defined by the Name attribute, and property definitions, attached through the property assignment relationship, which definition may be outside of the definitions given by the current release of IFC.

The ProxyType may give an indication to which high level semantic breakdown of object the semantic definition of the proxy relates to. the Tag attribute may be used to assign a human or system interpretable identifier (such as a serial number or bar code).

> NOTE 1 Given that only a limited number of semantic constructs can be formally defined within IFC (and it will never be possible to define all), there has to be a mechanism for capturing those constructs that are not (yet) defined by IFC.
> NOTE 2 Product proxies are a mechanism that allows to exchange data that is part of the project but not necessarily part of the IFC model. Those proxies may have geometric representations assigned.

> HISTORY New entity in IFC Release 1.5.

EXPRESS specification:

ENTITY IfcProxy
SUBTYPE OF ( | IfcProduct);
ProxyType | : | IfcObjectTypeEnum;
Tag | : | OPTIONAL IfcLabel;
WHERE
WR1 | : | EXISTS(SELF\IfcRoot.Name);
END_ENTITY;

Attribute definitions:

ProxyType | : | High level (and only) semantic meaning attached to the IfcProxy, defining the basic construct type behind the Proxy, e.g. Product or Process.
Tag | : | The tag (or label) identifier at the particular instance of a product, e.g. the serial number, or the position number. It is the identifier at the occurrence level.

Formal Propositions:

WR1 | : | The Name attribute has to be provided for a proxy.

Inheritance graph

ENTITY IfcProxy;
ENTITY IfcRoot;
GlobalId | : | IfcGloballyUniqueId;
OwnerHistory | : | IfcOwnerHistory;
Name | : | OPTIONAL IfcLabel;
Description | : | OPTIONAL IfcText;
ENTITY IfcObjectDefinition;
INVERSE
HasAssignments | : | SET OF IfcRelAssigns FOR RelatedObjects;
IsDecomposedBy | : | SET OF IfcRelDecomposes FOR RelatingObject;
Decomposes | : | SET [0:1] OF IfcRelDecomposes FOR RelatedObjects;
HasAssociations | : | SET OF IfcRelAssociates FOR RelatedObjects;
ENTITY IfcObject;
ObjectType | : | OPTIONAL IfcLabel;
INVERSE
IsDefinedBy | : | SET OF IfcRelDefines FOR RelatedObjects;
ENTITY IfcProduct;
ObjectPlacement | : | OPTIONAL IfcObjectPlacement;
Representation | : | OPTIONAL IfcProductRepresentation;
INVERSE
ReferencedBy | : | SET OF IfcRelAssignsToProduct FOR RelatingProduct;
ENTITY IfcProxy;
ProxyType | : | IfcObjectTypeEnum;
Tag | : | OPTIONAL IfcLabel;
END_ENTITY;