
IfcObject
Defintion from IAI: An IfcObject is the generalization of
any semantically treated thing or process. Objects are things as they appear -
i.e. occurences.
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, for actors, such as persons involved in the design process,
etc.
Objects can be named, using the inherited Name attribute, the
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:
- to store the user defined value for all subtypes of IfcObject,
where a PredefinedType attribute is given, and its value is set to
USERDEFINED.
- to provide a type information (could be seen as a very lightweight
classifier) of the subtype of IfcObject, if no PredefinedType
attribute is given. This is often the case, if no comprehensive list of
predefined types is available.
Objects are independent pieces of information that might contain or
reference other pieces of information. There are four essential kind of
relationships in which objects can be involved:
- Assignment of other objects - an assignment relationship
(IfcRelAssigns) refers to other types of objects and creates a
bi-directional association. The semantic of the assignment is established at
the level of the subtypes of the general IfcRelAssigns relationship.
There is no dependency implied a priori by the assignment.
- Association to external resources - an association
relationship (IfcRelAssociates) refer to external sources of information
(most notably a classification or document) and creates a uni-directional
association. There is no dependency implied by the association.
- Aggregation of other objects - an aggregation relationship
(IfcRelDecomposes) that establishes a whole/part relation and creates a
bi-directional relation. There is an implied dependency established.
- Refinement by type and properties - a refinement relationship
(IfcRelDefines) that uses a type definition or (partial) property set
definition to define the properties of the object instance. It is a specific -
occurrence relationship with implied dependencies (as the occurrence properties
depend on the specific properties).
HISTORY New Entity in IFC
Release 1.0
EXPRESS specification:
|
|
|
|
|
|
| WR1
|
:
|
SIZEOF(QUERY(temp <* IsDefinedBy | 'IFCKERNEL.IFCRELDEFINESBYTYPE' IN TYPEOF(temp))) <= 1;
|
|
|
|
Attribute definitions:
| ObjectType
|
:
|
The type denotes a particular type that indicates the object futher. 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.
|
| IsDefinedBy
|
:
|
Set of Relationships to type or property (statically or dynamically defined) information that further
define the object. In case of type information, the associated IfcObjectType contains the specific information
(or type, or style), that is common to all instances of IfcObject refering to the same type.
|
| HasAssociations
|
:
|
Reference to the relationship objects, that associates external references or other resource definitions
to the object.. Examples are the association to library, documentation or classification.
|
| HasAssignments
|
:
|
Reference to the relationship objects, that assign (by an association relationship) other subtypes of
IfcObject to this object instance. Examples are the association to products, processes, controls, resources
or groups.
|
| Decomposes
|
:
|
References to the decomposition relationship, that allows this object to be a part of the decomposition.
An object can only be part of a single decomposition (to allow hierarchical strutures only).
|
| IsDecomposedBy
|
:
|
Reference to the decomposition relationship, that allows this object to be the composition of other objects.
An object can be decomposed by several other objects.
|
Formal Propositions:
| WR1
|
:
|
Only maximum of one relationship to an underlying type (by an IfcRelDefinesByType relationship) should
be given for an object instance.
|
Inheritance graph