IFC 4.3.0.1 (IFC4X3) development

4.1.8 Product Type Assignment

Product types may have assignments indicating re-usable process types for which occurrences may operate on occurrences of the product type. An example of such assignment is a task type for placing concrete in slabs on grade.

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 tables below shows a recommended list of general usage patterns that users may adopt.

G IfcTypeProduct IfcTypeProduct 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. ApplicableOccurrence [0:1] 6. HasPropertySets [1:?]      Types [0:1] 7. RepresentationMaps [1:?] 8. Tag [0:1]      ReferencedBy [0:?] IfcRelAssignsToProduct IfcRelAssignsToProduct 1. GlobalId [1:1] 2. OwnerHistory [0:1] 3. Name [0:1] 4. Description [0:1] Type 5. RelatedObjects [1:?] 6. RelatedObjectsType [0:1] 7. RelatingProduct [1:1] IfcTypeProduct:ReferencedBy1->IfcRelAssignsToProduct:RelatingProduct0 IfcTypeProcess IfcTypeProcess 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. ApplicableOccurrence [0:1] 6. HasPropertySets [1:?]      Types [0:1] 7. Identification [0:1] 8. LongDescription [0:1] 9. ProcessType [0:1]      OperatesOn [0:?] IfcRelAssignsToProduct:RelatedObjects1->IfcTypeProcess:HasAssignments0
Figure 4.1.8.A

General Usage

ApplicableEntity
Type
IfcRelAssignsToProduct.RelatedObjects
IfcDistributionControlElementTypeIfcTaskType
IfcDistributionControlElementTypeIfcProcedureType
IfcDistributionControlElementTypeIfcEventType
Table 4.1.8.B

Edit on Github


Is this page difficult to understand? Let us know!