5.1.3.6 IfcObject

Objet
Objekt

An IfcObject is the generalization of any semantically treated thing or process. Objects are things as they appear - i.e. occurrences.

NOTE  Examples of IfcObject include physically tangible items such as wall, beam or covering, physically existing items such as spaces, or conceptual items such as grids or virtual boundaries. It also stands for processes such as work tasks, for controls such as cost items, or for actors such as persons involved in the design process.

Objects can be named, using the inherited Name attribute, which should be a user recognizable label for the object occurrance. Further explanations to the object can be given using the inherited Description attribute. The ObjectType attribute is used:

Objects are independent pieces of information that might contain or reference other pieces of information. There are several relationships in which objects can be involved:

HISTORY  New entity in IFC1.0
IFC4 CHANGE  The inverse relationships Declares, IsDeclaredBy, and IsTypedBy have been added, types are not longer included in the IsDefinesBy relationship. IfcProject has been promoted to be a subtype of IfcObjectDefinition -> IfcContext.

Informal Propositions:

  1. A partial type assignment, i.e. the inverse attribute IsDeclaredBy, or Declares shall only be used, if the object is part of a decomposition, i.e. if either IsDecomposedBy, or Decomposes is exerted.

XSD Specification:

 <xs:element name="IfcObject" type="ifc:IfcObject" abstract="true" substitutionGroup="ifc:IfcObjectDefinition" nillable="true"/>
 <xs:complexType name="IfcObject" abstract="true">
  <xs:complexContent>
   <xs:extension base="ifc:IfcObjectDefinition">
    <xs:attribute name="ObjectType" type="ifc:IfcLabel" use="optional"/>
   </xs:extension>
  </xs:complexContent>
 </xs:complexType>

EXPRESS Specification:

ENTITY IfcObject
ABSTRACT SUPERTYPE OF(ONEOF(IfcActor, IfcControl, IfcGroup, IfcProcess, IfcProduct, IfcResource))
SUBTYPE OF IfcObjectDefinition;
ObjectType : OPTIONAL IfcLabel;
INVERSE
IsDeclaredBy : SET [0:1] OF IfcRelDefinesByObject FOR RelatedObjects;
Declares : SET OF IfcRelDefinesByObject FOR RelatingObject;
IsTypedBy : SET [0:1] OF IfcRelDefinesByType FOR RelatedObjects;
IsDefinedBy : SET OF IfcRelDefinesByProperties FOR RelatedObjects;
END_ENTITY;

Link to EXPRESS-G diagram EXPRESS-G diagram

Attribute Definitions:

ObjectType : The type denotes a particular type that indicates the object further. The use has to be established at the level of instantiable subtypes. In particular it holds the user defined type, if the enumeration of the attribute PredefinedType is set to USERDEFINED.
IsDeclaredBy : Link to the relationship object pointing to the declaring object that provides the object definitions for this object occurrence. The declaring object has to be part of an object type decomposition. The associated IfcObject, or its subtypes, contains the specific information (as part of a type, or style, definition), that is common to all reflected instances of the declaring IfcObject, or its subtypes.
IFC4 CHANGE  New inverse relationship, change made with upward compatibility for file based exchange.
Declares : Link to the relationship object pointing to the reflected object(s) that receives the object definitions. The reflected object has to be part of an object occurrence decomposition. The associated IfcObject, or its subtypes, provides the specific information (as part of a type, or style, definition), that is common to all reflected instances of the declaring IfcObject, or its subtypes.
IFC4 CHANGE  New inverse relationship, change made with upward compatibility for file based exchange.
IsTypedBy : Set of relationships to the object type that provides the type definitions for this object occurrence. The then associated IfcTypeObject, or its subtypes, contains the specific information (or type, or style), that is common to all instances of IfcObject, or its subtypes, referring to the same type.
IFC4 CHANGE  New inverse relationship, the link to IfcRelDefinesByType had previously be included in the inverse relationship IfcRelDefines. Change made with upward compatibility for file based exchange.
IsDefinedBy : Set of relationships to property set definitions attached to this object. Those statically or dynamically defined properties contain alphanumeric information content that further defines the object.
IFC4 CHANGE  The data type has been changed from IfcRelDefines to IfcRelDefinesByProperties with upward compatibility for file based exchange.

Inheritance Graph:

ENTITY IfcObject
ENTITY IfcRoot
GlobalId : IfcGloballyUniqueId;
OwnerHistory : OPTIONAL IfcOwnerHistory;
Name : OPTIONAL IfcLabel;
Description : OPTIONAL IfcText;
ENTITY IfcObjectDefinition
INVERSE
HasAssignments : SET OF IfcRelAssigns FOR RelatedObjects;
Nests : SET [0:1] OF IfcRelNests FOR RelatedObjects;
IsNestedBy : SET OF IfcRelNests FOR RelatingObject;
HasContext : SET [0:1] OF IfcRelDeclares FOR RelatedDefinitions;
IsDecomposedBy : SET OF IfcRelAggregates FOR RelatingObject;
Decomposes : SET [0:1] OF IfcRelAggregates FOR RelatedObjects;
HasAssociations : SET OF IfcRelAssociates FOR RelatedObjects;
ENTITY IfcObject
ObjectType : OPTIONAL IfcLabel;
INVERSE
IsDeclaredBy : SET [0:1] OF IfcRelDefinesByObject FOR RelatedObjects;
Declares : SET OF IfcRelDefinesByObject FOR RelatingObject;
IsTypedBy : SET [0:1] OF IfcRelDefinesByType FOR RelatedObjects;
IsDefinedBy : SET OF IfcRelDefinesByProperties FOR RelatedObjects;
END_ENTITY;

Link to this page  Link to this page