IFC 4.3.x development

5.1.3.25 IfcRelAssignsToGroup

Change log

IFC4

additionswhere_rulesNoSelfReference
deletionswhere_rulesWR1

5.1.3.25.1 Semantic definitions at the entity

The objectified relationship IfcRelAssignsToGroup handles the assignment of object definitions (individual object occurrences as subtypes of IfcObject, and object types as subtypes of IfcTypeObject) to a group (subtypes of IfcGroup).

The relationship handles the assignment of group members to the group object. It allows for grouping arbitrary objects within a group, including other groups. The grouping relationship can be applied in a recursive manner. The resulting group is of type IfcGroup.

NOTE  Examples of groups include zones as a grouping of spaces, distribution systems as a grouping of building service components, or structural analysis models as a grouping of structural items.

The inherited attribute RelatedObjects gives the references to the objects, which are the elements within the group. The RelatingGroup is the group that comprises all elements. The same object or object type can be included in zero, one or many groups. Grouping relationships are not hierarchical.

Informal Propositions:

  1. The group assignment relationship shall be acyclic, that is, a group shall not participate in its own grouping relationship.

HISTORY  New entity in IFC1.0. It has been renamed from IfcRelGroups in IFC2x.

5.1.3.25.1 Attributes

#Attribute Type Description
IfcRoot
1GlobalId IfcGloballyUniqueId Assignment of a globally unique identifier within the entire software world.
2OwnerHistory OPTIONAL IfcOwnerHistory Assignment of the information about the current ownership of that object, including owning actor, application, local identification and information captured about the recent changes of the object,

> NOTE  only the last modification in stored - either as addition, deletion or modification.

> IFC4 CHANGE  The attribute has been changed to be OPTIONAL.
3Name OPTIONAL IfcLabel Optional name for use by the participating software systems or users. For some subtypes of IfcRoot the insertion of the Name attribute may be required. This would be enforced by a where rule.
4Description OPTIONAL IfcText Optional description, provided for exchanging informative comments.
IfcRelationship
IfcRelAssigns
5RelatedObjects SET [1:?] OF IfcObjectDefinitionRelated objects, which are assigned to a single object. The type of the single (or relating) object is defined in the subtypes of IfcRelAssigns.
6RelatedObjectsTypeOPTIONAL IfcObjectTypeEnum Particular type of the assignment relationship. It can constrain the applicable object types, used within the role of RelatedObjects.

> IFC4 CHANGE  The attribute is deprecated and shall no longer be used. A NIL value should always be assigned.
IfcRelAssignsToGroup
7RelatingGroup IfcGroup Reference to group that contains all assigned group members.

5.1.3.25.2 Entity inheritance

dot_inheritance IfcRelAssignsToGroupByFactor IfcRelAssignsToGroupByFactor IfcRelAssignsToGroup IfcRelAssignsToGroup IfcRelAssignsToGroupByFactor->IfcRelAssignsToGroup IfcRelAssigns IfcRelAssigns IfcRelAssignsToGroup->IfcRelAssigns IfcRelAssigns_children 5 more... IfcRelAssigns_children->IfcRelAssigns IfcRelationship IfcRelationship IfcRelAssigns->IfcRelationship IfcRelationship_children 5 more... IfcRelationship_children->IfcRelationship IfcRoot IfcRoot IfcRelationship->IfcRoot IfcObjectDefinition IfcObjectDefinition IfcObjectDefinition->IfcRoot IfcPropertyDefinition IfcPropertyDefinition IfcPropertyDefinition->IfcRoot

5.1.3.25.3 Definitions applying to General Usage

5.1.3.25.3.1 Identity

IfcRoot assigns the globally unique ID. In addition it may provide for a name and a description about the concept.

5.1.3.25.3.2 Revision Control

Ownership, history, and merge state is captured using IfcOwnerHistory.

5.1.3.25.4 Formal representations

ENTITY IfcRelAssignsToGroup
 SUPERTYPE OF (ONEOF
	(IfcRelAssignsToGroupByFactor))
 SUBTYPE OF (IfcRelAssigns);
	RelatingGroup : IfcGroup;
 WHERE
	NoSelfReference : SIZEOF(QUERY(Temp <* SELF\IfcRelAssigns.RelatedObjects | RelatingGroup :=: Temp)) = 0;
END_ENTITY;