Log In   View a printable version of the current page.
Assigns To Group (FP)
Added by Brendan McFarlane, last edited by Brendan McFarlane on Sep 27, 2006  (view change)
Labels: 
(None)


Assigns To Group (FP)

Overview

Describes a grouping relationship in which the parent object (the group) is made from the assignment of a set of other objects.

Grouping allows for any arbitrary collection of objects to be brought together into a designated, named group. Objects can still act independently of the group or can be operated upon within the context of the whole group.

An object can belong to more than one group concurrently. For instance, it may belong to one group that is a system, to a second group for cost scheduling purposes, and to a third group for scheduling purposes.

Certain specific types of group are defined within the IFC model. These include:

  • Asset
  • Condition
  • Inventory
  • Structural load group
  • Structural result group
  • System
    • Electrical Circuit (type of system)
  • Zone

In a group assignment relationship, the group is referred to as the 'relating group' whilst the assigned objects are referred to as the 'related objects'. There is always exactly one relating group and there may be one or many related objects. An object may be assigned only once to each group in which it participates.

The group assignment relationship is described at a high level in the IFC model as between an occurrence of IfcGroup and occurrences of IfcObject. Practically, the relationship will be between instances of subtypes of IfcObject and these inherit the relationship.

With exchange requirements that call upon the use of this functional part, reference to the type of group to which objects are assigned may be defined using a parameter as:

fp_assigns_to_group ()       -> describes an arbitrary collection of objects into a named group
fp_assigns_to_group (system) -> describes the assignment of objects to a system group
fp_assigns_to_group (asset)  -> describes the assignment of objects to an identified asset group
etc.

Use of the parameter recognizes that certain rules may apply to the collection of objects into particular group types.

Results

Declares the assignment of a collection of objects into a group

Description Entity/Pset/Functional Part MAN REC OPT
Create the group to which entities will be related and the entities.
Note that groups are modeled explicitly elsewhere.
       
Set the occurrence of the group in the relationship IfcGroup    
Set the occurrences of the child entities in the relationship IfcObject <child subtypes>    
         
Assert the attributes of the relationship        
Assert the parent relationship IfcRelAssignsToGroup.RelatingGroup -> IfcGroup    
Assert the child relationship IfcRelAssignsToGroup.RelatedObjects -> IfcObject    
Assert the type of related objects from the predefined list if required
This value can be used to identify the parent supertype of related objects as e.g. product, group, process, control etc. If the related objects have mixed supertypes, then the value .NOTDEFINED. should be used.
IfcRelAssignsToGroup.RelatedObjectsType -> IfcObjectTypeEnum    
Assert the identity of the relationship IfcRelAssignsToGroup.GlobalId -> IfcGloballyUniqueId    
Assert the owner history of the relationship IfcRelAssignsToGroup.OwnerHistory -> fp_apply_owner_history    
Specify a name of the relationship IfcRelAssignsToGroup.Name    
Specify a description of the relationship IfcRelAssignsToGroup.Description    
  • IFC Entities Required
    • IfcGroup
    • IfcObject
    • IfcRelationsip
    • IfcRelAssigns
    • IfcRelAssignsToGroup
    • IfcRoot
  • IFC Datatypes Required
    • IfcGloballyUniqueId
    • IfcLabel
    • IfcObjectTypeEnum
    • IfcText
  • IFC Functions Required
    • -
  • IFC Property Sets Required
    • -
  • IDM Functional Parts Required
    • fp_apply_owner_history

EXPRESS-G

EXPRESS Schema

 SCHEMA FP_ASSIGNS_TO_GROUP;

  TYPE IfcGloballyUniqueId = STRING (22) FIXED;
  END_TYPE;

  TYPE IfcLabel = STRING;
  END_TYPE;

  TYPE IfcText = STRING;
  END_TYPE;

  TYPE IfcObjectTypeEnum = ENUMERATION OF
    (PRODUCT,
     PROCESS,
     CONTROL,
     RESOURCE,
     ACTOR,
     GROUP,
     PROJECT,
     NOTDEFINED);
  END_TYPE;

  ENTITY IfcObject
    ABSTRACT SUPERTYPE
    SUBTYPE OF(IfcRoot);
      ObjectType     : OPTIONAL IfcLabel;
    INVERSE
      HasAssignments : SET OF IfcRelAssigns FOR RelatedObjects;
    WHERE
      WR1 : SIZEOF(QUERY(temp <* IsDefinedBy | 'IFC2X2_FINAL.IFCRELDEFINESBYTYPE' IN TYPEOF(temp))) <= 1;
  END_ENTITY;

  ENTITY IfcRoot
    ABSTRACT SUPERTYPE OF (ONEOF(IfcObject, IfcRelationship));
      GlobalId     : IfcGloballyUniqueId;
      Name         : OPTIONAL IfcLabel;
      Description  : OPTIONAL IfcText;
      OwnerHistory : fp_apply_owner_history;
    UNIQUE
      UR1 : GlobalId;
  END_ENTITY;

  ENTITY IfcRelAssigns
    ABSTRACT SUPERTYPE
    SUBTYPE OF(IfcRelationship);
      RelatedObjects     : SET [1:?] OF IfcObject;
      RelatedObjectsType : OPTIONAL IfcObjectTypeEnum;
    WHERE
      WR1 : IfcCorrectObjectAssignment(RelatedObjectsType, RelatedObjects);
  END_ENTITY;

  ENTITY IfcGroup
    SUBTYPE OF(IfcObject);
    INVERSE
      IsGroupedBy : IfcRelAssignsToGroup FOR RelatingGroup;
  END_ENTITY;

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

  ENTITY IfcRelationship
    SUBTYPE OF(IfcRoot);
  END_ENTITY;

  ENTITY fp_apply_owner_history;
  END_ENTITY;

END_SCHEMA;


Powered by Atlassian Confluence, the Enterprise Wiki. (Version: 2.1.3 Build:#408 Jan 23, 2006) - Bug/feature request - Contact Administrators