4.1.3.1.2 Grid Attributes 
Grids may be used to provide a layout reference for building elements.
    The following diagram shows the generic classes and relationships used when applying this concept.
    
    In addition, concepts may have particular importance to common or standardised industry practices and scenarios. For these specific usage scenarios, the table below shows a recommended list of general usage patterns that users may adopt.
    
G 
 
IfcGrid  
 
 
IfcGrid  
 
 
 
 
1. GlobalId 
 
 
[1:1] 
 
 
2. OwnerHistory 
 
 
[0:1] 
 
 
3. Name 
 
 
[0:1] 
 
 
4. Description 
 
 
[0:1] 
 
 
      HasAssignments 
 
 
[0:?] 
 
 
      Nests 
 
 
[0:1] 
 
 
      IsNestedBy 
 
 
[0:?] 
 
 
      HasContext 
 
 
[0:1] 
 
 
      IsDecomposedBy 
 
 
[0:?] 
 
 
      Decomposes 
 
 
[0:1] 
 
 
      HasAssociations 
 
 
[0:?] 
 
 
5. ObjectType 
 
 
[0:1] 
 
 
      IsDeclaredBy 
 
 
[0:1] 
 
 
      Declares 
 
 
[0:?] 
 
 
      IsTypedBy 
 
 
[0:1] 
 
 
      IsDefinedBy 
 
 
[0:?] 
 
 
6. ObjectPlacement 
 
 
[0:1] 
 
 
7. Representation 
 
 
[0:1] 
 
 
      ReferencedBy 
 
 
[0:?] 
 
 
      PositionedRelativeTo 
 
 
[0:?] 
 
 
      ReferencedInStructures 
 
 
[0:?] 
 
 
      ContainedInStructure 
 
 
[0:1] 
 
 
      Positions 
 
 
[0:?] 
 
 
UAxes 
 
 
 
 
8. UAxes 
 
 
[1:?] 
 
 
VAxes 
 
 
 
 
9. VAxes 
 
 
[1:?] 
 
 
WAxes 
 
 
 
 
10. WAxes 
 
 
[1:?] 
 
 
11. PredefinedType 
 
 
[0:1] 
 
IfcGridTypeEnum  
 
 
IfcGridTypeEnum  
 
 
 
IfcGrid :PredefinedType1->IfcGridTypeEnum :IfcGridTypeEnum0 
 
 
 
IfcGridAxis_0 
 
 
IfcGridAxis  
 
 
 
 
1. AxisTag 
 
 
[0:1] 
 
 
2. AxisCurve 
 
 
[1:1] 
 
 
3. SameSense 
 
 
[1:1] 
 
 
      PartOfW 
 
 
[0:1] 
 
 
      PartOfV 
 
 
[0:1] 
 
 
      PartOfU 
 
 
[0:1] 
 
 
      HasIntersections 
 
 
[0:?] 
 
IfcGrid :UAxes1->IfcGridAxis_0:IfcGridAxis0 
 
 
 
IfcGridAxis_1 
 
 
IfcGridAxis  
 
 
 
 
1. AxisTag 
 
 
[0:1] 
 
 
2. AxisCurve 
 
 
[1:1] 
 
 
3. SameSense 
 
 
[1:1] 
 
 
      PartOfW 
 
 
[0:1] 
 
 
      PartOfV 
 
 
[0:1] 
 
 
      PartOfU 
 
 
[0:1] 
 
 
      HasIntersections 
 
 
[0:?] 
 
IfcGrid :VAxes1->IfcGridAxis_1:IfcGridAxis0 
 
 
 
IfcGridAxis_2 
 
 
IfcGridAxis  
 
 
 
 
1. AxisTag 
 
 
[0:1] 
 
 
2. AxisCurve 
 
 
[1:1] 
 
 
3. SameSense 
 
 
[1:1] 
 
 
      PartOfW 
 
 
[0:1] 
 
 
      PartOfV 
 
 
[0:1] 
 
 
      PartOfU 
 
 
[0:1] 
 
 
      HasIntersections 
 
 
[0:?] 
 
IfcGrid :WAxes1->IfcGridAxis_2:IfcGridAxis0 
 
 
 
IfcLabel_0 
 
 
IfcLabel  
 
 
 
IfcGridAxis_0:AxisTag1->IfcLabel_0:IfcLabel0 
 
 
 
IfcIndexedPolyCurve_0 
 
 
IfcIndexedPolyCurve  
 
 
 
 
      LayerAssignment 
 
 
[0:1] 
 
 
      StyledByItem 
 
 
[0:1] 
 
 
1. Points 
 
 
[1:1] 
 
 
2. Segments 
 
 
[1:?] 
 
 
3. SelfIntersect 
 
 
[0:1] 
 
IfcGridAxis_0:AxisCurve1->IfcIndexedPolyCurve_0:IfcIndexedPolyCurve0 
 
 
 
IfcCircle_0 
 
 
IfcCircle  
 
 
 
 
      LayerAssignment 
 
 
[0:1] 
 
 
      StyledByItem 
 
 
[0:1] 
 
 
1. Position 
 
 
[1:1] 
 
 
2. Radius 
 
 
[1:1] 
 
IfcGridAxis_0:AxisCurve1->IfcCircle_0:IfcCircle0 
 
 
 
IfcBoolean_0 
 
 
IfcBoolean  
 
 
 
IfcGridAxis_0:SameSense1->IfcBoolean_0:IfcBoolean0 
 
 
 
IfcLabel_1 
 
 
IfcLabel  
 
 
 
IfcGridAxis_1:AxisTag1->IfcLabel_1:IfcLabel0 
 
 
 
IfcIndexedPolyCurve_1 
 
 
IfcIndexedPolyCurve  
 
 
 
 
      LayerAssignment 
 
 
[0:1] 
 
 
      StyledByItem 
 
 
[0:1] 
 
 
1. Points 
 
 
[1:1] 
 
 
2. Segments 
 
 
[1:?] 
 
 
3. SelfIntersect 
 
 
[0:1] 
 
IfcGridAxis_1:AxisCurve1->IfcIndexedPolyCurve_1:IfcIndexedPolyCurve0 
 
 
 
IfcCircle_1 
 
 
IfcCircle  
 
 
 
 
      LayerAssignment 
 
 
[0:1] 
 
 
      StyledByItem 
 
 
[0:1] 
 
 
1. Position 
 
 
[1:1] 
 
 
2. Radius 
 
 
[1:1] 
 
IfcGridAxis_1:AxisCurve1->IfcCircle_1:IfcCircle0 
 
 
 
IfcBoolean_1 
 
 
IfcBoolean  
 
 
 
IfcGridAxis_1:SameSense1->IfcBoolean_1:IfcBoolean0 
 
 
 
 
 Figure 4.1.3.1.2.A  
 General UsageTable 4.1.3.1.2.B