ALS005 Alignment shape representation - v3

001 | @implementer-agreement
002 | @ALS
003 | @version3
004 | Feature: ALS005 - Alignment shape representation
005 | The rule verifies that each IfcAlignment uses correct representation.
006 | Checks for entity types are based upon the supported shape representations of IfcAlignment listed in 5.4.3.1.
007 |
008 |   Background:
009 |     Given A model with Schema 'IFC4.3'
010 |     Given An .IfcAlignment.
011 |     Given Its attribute .Representation.
012 |     Given Its attribute .Representations.
013 |
014 |
015 |   Scenario: Agreement on each IfcAlignment using correct representation - Value
016 |
017 |     Then .RepresentationIdentifier. ^is^ 'FootPrint' or 'Axis'
018 |
019 |
020 |   Scenario: Agreement on each IfcAlignment using correct representation - horizontal only
021 |
022 |     Given .RepresentationIdentifier. ^is^ 'Axis'
023 |     Given .RepresentationType. ^is^ 'Curve2D'
024 |     Given Its attribute .Items.
025 |     Then [Its entity type] ^is^ 'IfcCompositeCurve' or 'IfcIndexedPolycurve' or 'IfcPolyline' or 'IfcOffsetCurveByDistances'
026 |
027 |
028 |   Scenario: Agreement on each IfcAlignment using correct representation - vertical or cant
029 |
030 |     Given .RepresentationIdentifier. ^is^ 'Axis'
031 |     Given .RepresentationType. ^is^ 'Curve3D'
032 |     Given Its attribute .Items.
033 |     Then [Its entity type] ^is^ 'IfcGradientCurve' or 'IfcSegmentedReferenceCurve' or 'IfcIndexedPolycurve' or 'IfcPolyline' or 'IfcOffsetCurveByDistances'
034 |
035 |
036 |   Scenario: Agreement on each IfcAlignment using correct representation - identifier = 'FootPrint'
037 |
038 |     Given .RepresentationIdentifier. ^is^ 'FootPrint'
039 |     Then .RepresentationType. ^is^ 'Curve2D'
040 |
041 |
042 |   Scenario: Agreement on each IfcAlignment using correct representation items - Type
043 |
044 |     Given Its attribute .Items.
045 |     Then [Its entity type] ^is^ 'IfcGradientCurve' or 'IfcSegmentedReferenceCurve' or 'IfcCompositeCurve' or 'IfcIndexedPolycurve' or 'IfcPolyline' or 'IfcOffsetCurveByDistances'

Version history

Version

Tag

Date

Commit

Rule link

v1

v0.6.6

2023-09-24

20a7d571

view

v2

v0.7.1

2025-03-08

2a11948e

view

v3

v0.7.9

2025-08-25

376220aa

view