From 1f080fb35982e2cb584e8c56538f936aafc480c9 Mon Sep 17 00:00:00 2001 From: larswik Date: Tue, 23 Apr 2024 11:51:44 +0200 Subject: [PATCH] GeoScience usages Handles (not yet fixes) #791, #725, #704 --- .../ModelViews/General Usage/DocModelView.xml | 283 +++++++++--------- .../IfcGeoScienceFeature/DocEntity.xml | 2 +- .../Entities/IfcGeoScienceModel/DocEntity.xml | 2 +- .../DocTemplateDefinition.xml | 27 ++ .../Documentation.md | 15 + .../DocTemplateDefinition.xml | 27 ++ .../Documentation.md | 11 + .../Body Voxel Geometry/Documentation.md | 7 - .../DocTemplateDefinition.xml | 16 +- 9 files changed, 232 insertions(+), 158 deletions(-) create mode 100644 IFC4x3/Templates/Object Composition/Aggregation/Complementary Data Composition/DocTemplateDefinition.xml create mode 100644 IFC4x3/Templates/Object Composition/Aggregation/Complementary Data Composition/Documentation.md create mode 100644 IFC4x3/Templates/Object Composition/Aggregation/Complementary Data Decomposition/DocTemplateDefinition.xml create mode 100644 IFC4x3/Templates/Object Composition/Aggregation/Complementary Data Decomposition/Documentation.md delete mode 100644 IFC4x3/Templates/Product Shape/Product Geometric Representation/Body Geometry/Body Voxel Geometry/Documentation.md rename IFC4x3/Templates/Product Shape/Product Geometric Representation/{Body Geometry/Body Voxel Geometry => Voxel Geometry}/DocTemplateDefinition.xml (80%) diff --git a/IFC4x3/ModelViews/General Usage/DocModelView.xml b/IFC4x3/ModelViews/General Usage/DocModelView.xml index 5b90d779b..f1d138b1e 100644 --- a/IFC4x3/ModelViews/General Usage/DocModelView.xml +++ b/IFC4x3/ModelViews/General Usage/DocModelView.xml @@ -189,82 +189,6 @@ The **IfcActionRequest** may have assignments of its own using the [IfcRelAssign - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - Material from which the casing is constructed. - - - - - - - - Incoming air. - - - Outgoing regulated air. - - - - - - @@ -371,6 +295,82 @@ The **IfcActionRequest** may have assignments of its own using the [IfcRelAssign + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Material from which the casing is constructed. + + + + + + + + Incoming air. + + + Outgoing regulated air. + + + + + + @@ -7954,13 +7954,6 @@ The material is attached by the _RelatingMaterial_ attribute on the [IfcRelAssoc Datasets may be associated with any type of _IfcGeoScienceElement_. - - Body Voxel Geometry may be associated to any _IfcGeoScienceElement_. - - - - - Body Brep Geometry may be associated to any _IfcGeoScienceElement_. @@ -7978,26 +7971,30 @@ The material is attached by the _RelatingMaterial_ attribute on the [IfcRelAssoc - - - - - - - - + + + + + + An _IfcGeoScienceObservation_ can be decomposed by other _IFcGeoScienceObservation_. - + + + + An _IfcGeoScienceObservation_ may be assigned to _IfcBorehole_, _IfcSpatialZone_ or _IfcSensor_. - + + + + @@ -8009,7 +8006,10 @@ The material is attached by the _RelatingMaterial_ attribute on the [IfcRelAssoc An _IfcGeoScienceObservation_ may be represented by an IfcVoxelGrid_. - + + + + @@ -9207,22 +9207,6 @@ The shared profile definition is defined by assigning an _IfcMaterialProfileSet_ - - - - - Any object occurrence or object type can have a reference to a specific classification reference, i.e. to a particular facet within a classification system. - - - - - - - - - - - @@ -9248,6 +9232,22 @@ The shared profile definition is defined by assigning an _IfcMaterialProfileSet_ + + + + + Any object occurrence or object type can have a reference to a specific classification reference, i.e. to a particular facet within a classification system. + + + + + + + + + + + @@ -14351,37 +14351,6 @@ A top-level task is declared within the _IfcProject_ using the _IfcRelDeclares_ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - @@ -14420,6 +14389,37 @@ A top-level task is declared within the _IfcProject_ using the _IfcRelDeclares_ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + @@ -15119,6 +15119,7 @@ shown above.</li> + diff --git a/IFC4x3/Sections/Shared element data schemas/Schemas/IfcSharedInfrastructureElements/Entities/IfcGeoScienceFeature/DocEntity.xml b/IFC4x3/Sections/Shared element data schemas/Schemas/IfcSharedInfrastructureElements/Entities/IfcGeoScienceFeature/DocEntity.xml index 52ad3a013..af17dc198 100644 --- a/IFC4x3/Sections/Shared element data schemas/Schemas/IfcSharedInfrastructureElements/Entities/IfcGeoScienceFeature/DocEntity.xml +++ b/IFC4x3/Sections/Shared element data schemas/Schemas/IfcSharedInfrastructureElements/Entities/IfcGeoScienceFeature/DocEntity.xml @@ -1,5 +1,5 @@ - + Specifies the type for which the value is selected from a predefined type enumeration. This type may associate additional specific property sets. diff --git a/IFC4x3/Sections/Shared element data schemas/Schemas/IfcSharedInfrastructureElements/Entities/IfcGeoScienceModel/DocEntity.xml b/IFC4x3/Sections/Shared element data schemas/Schemas/IfcSharedInfrastructureElements/Entities/IfcGeoScienceModel/DocEntity.xml index 46f099161..9b04dd4c3 100644 --- a/IFC4x3/Sections/Shared element data schemas/Schemas/IfcSharedInfrastructureElements/Entities/IfcGeoScienceModel/DocEntity.xml +++ b/IFC4x3/Sections/Shared element data schemas/Schemas/IfcSharedInfrastructureElements/Entities/IfcGeoScienceModel/DocEntity.xml @@ -1,5 +1,5 @@ - + Specifies the type for which the value is selected from a predefined type enumeration. This type may associate additional specific property sets. diff --git a/IFC4x3/Templates/Object Composition/Aggregation/Complementary Data Composition/DocTemplateDefinition.xml b/IFC4x3/Templates/Object Composition/Aggregation/Complementary Data Composition/DocTemplateDefinition.xml new file mode 100644 index 000000000..a5de1ece2 --- /dev/null +++ b/IFC4x3/Templates/Object Composition/Aggregation/Complementary Data Composition/DocTemplateDefinition.xml @@ -0,0 +1,27 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/IFC4x3/Templates/Object Composition/Aggregation/Complementary Data Composition/Documentation.md b/IFC4x3/Templates/Object Composition/Aggregation/Complementary Data Composition/Documentation.md new file mode 100644 index 000000000..74c70b96e --- /dev/null +++ b/IFC4x3/Templates/Object Composition/Aggregation/Complementary Data Composition/Documentation.md @@ -0,0 +1,15 @@ +Provision of an aggregation structure where the complementary data is part of another complementary data representing the composite. The part then provides, if such concepts are in scope of the Model View Definition, exclusively the following: + +* _Body Geometry_ — The partial body shape representation and its placement; +* _Material_ — The material information for the part. + +The part may also provide, in addition to the aggregate, more specifically the following: + +* _Property Sets_ — The parts may have individual property sets assigned, solely or in addition to the composite; +* _Quantity Sets_ — The parts may have individual quantity sets assigned, solely or in addition to the composite. + +The part should not be contained in the spatial hierarchy, i.e. the concept _Spatial Containment_ shall not be used at the level of parts. The part is contained in the spatial structure by the spatial containment of its composite. + +The part should not be assigned to an _IfcProduct_, i.e. the concept _Product Assignment_ shall not be used at the level of parts. + +> EXAMPLE  An _IfcComplementaryData_ may be aggregated into a composite _IfcComplementaryData_ using the objectified relationship _IfcRelAggregates_, refering to it by its inverse attribute SELF\IfcObjectDefinition.Decomposes. Any subtype of _IfcComplementaryData_ can be an element assembly. In this case it should not be additionally contained in the spatial hierarchy, i.e. _SELF\IfcElement.ContainedInStructure_ should be NIL. diff --git a/IFC4x3/Templates/Object Composition/Aggregation/Complementary Data Decomposition/DocTemplateDefinition.xml b/IFC4x3/Templates/Object Composition/Aggregation/Complementary Data Decomposition/DocTemplateDefinition.xml new file mode 100644 index 000000000..64ea3def2 --- /dev/null +++ b/IFC4x3/Templates/Object Composition/Aggregation/Complementary Data Decomposition/DocTemplateDefinition.xml @@ -0,0 +1,27 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/IFC4x3/Templates/Object Composition/Aggregation/Complementary Data Decomposition/Documentation.md b/IFC4x3/Templates/Object Composition/Aggregation/Complementary Data Decomposition/Documentation.md new file mode 100644 index 000000000..54db34e57 --- /dev/null +++ b/IFC4x3/Templates/Object Composition/Aggregation/Complementary Data Decomposition/Documentation.md @@ -0,0 +1,11 @@ +Provision of an aggregation structure where the complementary data, representing the composite, is decomposed into parts represented by other complementary data instances. + +The composite then provides, if such concepts are in scope of the Model View Definition, exclusively the following: + +* _Product Placement_ — the common object coordinate system to which the parts are placed relative + +By default the following constraints apply to an element being decomposed by _Element Decomposition_: + +* _Body Geometry_ — composite is constructed from the sum of the _Body Geometry_ of the parts; +* the composite shall not have an own _Body Geometry_, body geometry is provided at the parts; +* the composite shall not have an own _Material_ assignment, material is assigned to the parts. diff --git a/IFC4x3/Templates/Product Shape/Product Geometric Representation/Body Geometry/Body Voxel Geometry/Documentation.md b/IFC4x3/Templates/Product Shape/Product Geometric Representation/Body Geometry/Body Voxel Geometry/Documentation.md deleted file mode 100644 index 3ca218a14..000000000 --- a/IFC4x3/Templates/Product Shape/Product Geometric Representation/Body Geometry/Body Voxel Geometry/Documentation.md +++ /dev/null @@ -1,7 +0,0 @@ -The _Body Voxel Geometry_ is the representation of the 3D shape of a product by voxel representation models. - -The following attribute values for the _IfcShapeRepresentation_ holding this geometric representation shall be used: - -* _IfcShapeRepresentation_._RepresentationIdentifier_ = 'Body' -* _IfcShapeRepresentation_._RepresentationType_ = 'Voxel' -* _IfcShapeRepresentation_._Items_ = _IfcVoxelGrid_ diff --git a/IFC4x3/Templates/Product Shape/Product Geometric Representation/Body Geometry/Body Voxel Geometry/DocTemplateDefinition.xml b/IFC4x3/Templates/Product Shape/Product Geometric Representation/Voxel Geometry/DocTemplateDefinition.xml similarity index 80% rename from IFC4x3/Templates/Product Shape/Product Geometric Representation/Body Geometry/Body Voxel Geometry/DocTemplateDefinition.xml rename to IFC4x3/Templates/Product Shape/Product Geometric Representation/Voxel Geometry/DocTemplateDefinition.xml index 12a3450b7..a1176488f 100644 --- a/IFC4x3/Templates/Product Shape/Product Geometric Representation/Body Geometry/Body Voxel Geometry/DocTemplateDefinition.xml +++ b/IFC4x3/Templates/Product Shape/Product Geometric Representation/Voxel Geometry/DocTemplateDefinition.xml @@ -1,10 +1,12 @@ - + + + @@ -16,12 +18,12 @@ - + - + @@ -32,12 +34,12 @@ - + - + @@ -46,7 +48,7 @@ - + @@ -55,8 +57,6 @@ - -