5.1.3.48 IfcTypeProduct
5.1.3.48.1 Semantic definition
IfcTypeProduct defines a type definition of a product without being already inserted into a project structure (without having a placement), and not being included in the geometric representation context of the project. It is used to define a product specification, that is, the specific product information that is common to all occurrences of that product type.
An IfcTypeProduct may have a list of property set attached and an optional set of product representations. Values of these properties and the representation maps are common to all occurrences of that product type. The type-occurrence relationship is realized using the objectified relationship IfcRelDefinesByType.
The representations at the occurrence level (represented by subtypes of IfcProduct) can override the specific representations at the type level:
- for geometric representations, a Cartesian transformation operator can be applied at the occurrence level.
- for property sets, a property within an occurrence property set, assigned at the product occurrence, overrides the same property assigned to the product type.
An IfcTypeProduct may be exchanged without being already assigned to subtypes of IfcProduct.
5.1.3.48.2 Entity inheritance
5.1.3.48.3 Attributes
# | Attribute | Type | Description |
---|---|---|---|
IfcRoot (4) | |||
1 | GlobalId | IfcGloballyUniqueId |
Assignment of a globally unique identifier within the entire software world. |
2 | OwnerHistory | OPTIONAL IfcOwnerHistory |
Assignment of the information about the current ownership of that object, including owning actor, application, local identification and information captured about the recent changes of the object, |
3 | Name | OPTIONAL IfcLabel |
Optional name for use by the participating software systems or users. For some subtypes of IfcRoot the insertion of the Name attribute may be required. This would be enforced by a where rule. |
4 | Description | OPTIONAL IfcText |
Optional description, provided for exchanging informative comments. |
IfcObjectDefinition (7) | |||
HasAssignments | SET [0:?] OF IfcRelAssigns FOR RelatedObjects |
Reference to the relationship objects, that assign (by an association relationship) other subtypes of IfcObject to this object instance. Examples are the association to products, processes, controls, resources or groups. |
|
Nests | SET [0:1] OF IfcRelNests FOR RelatedObjects |
References to the decomposition relationship being a nesting. It determines that this object definition is a part within an ordered whole/part decomposition relationship. An object occurrence or type can only be part of a single decomposition (to allow hierarchical strutures only). |
|
IsNestedBy | SET [0:?] OF IfcRelNests FOR RelatingObject |
References to the decomposition relationship being a nesting. It determines that this object definition is the whole within an ordered whole/part decomposition relationship. An object or object type can be nested by several other objects (occurrences or types). |
|
HasContext | SET [0:1] OF IfcRelDeclares FOR RelatedDefinitions |
References to the context providing context information such as project unit or representation context. It should only be asserted for the uppermost non-spatial object. |
|
IsDecomposedBy | SET [0:?] OF IfcRelAggregates FOR RelatingObject |
References to the decomposition relationship being an aggregation. It determines that this object definition is whole within an unordered whole/part decomposition relationship. An object definitions can be aggregated by several other objects (occurrences or parts). |
|
Decomposes | SET [0:1] OF IfcRelAggregates FOR RelatedObjects |
References to the decomposition relationship being an aggregation. It determines that this object definition is a part within an unordered whole/part decomposition relationship. An object definitions can only be part of a single decomposition (to allow hierarchical strutures only). |
|
HasAssociations | SET [0:?] OF IfcRelAssociates FOR RelatedObjects |
Reference to the relationship objects, that associates external references or other resource definitions to the object.. Examples are the association to library, documentation or classification. |
|
IfcTypeObject (3) | |||
5 | ApplicableOccurrence | OPTIONAL IfcIdentifier |
The attribute optionally defines the data type of the occurrence object, to which the assigned type object can relate. If not present, no instruction is given to which occurrence object the type object is applicable. The following conventions are used: * The IFC entity name of the applicable occurrence using the IFC naming convention, CamelCase with IFC prefix * It can be optionally followed by the predefined type after the separator "/" (forward slash), using uppercase * If one type object is applicable to many occurrence objects, then those occurrence object names should be separate by comma "," forming a comma separated string. |
6 | HasPropertySets | OPTIONAL SET [1:?] OF IfcPropertySetDefinition |
Set ~~list~~ of unique property sets, that are associated with the object type and are common to all object occurrences referring to this object type. |
Types | SET [0:1] OF IfcRelDefinesByType FOR RelatingType |
Reference to the relationship IfcRelDefinedByType and thus to those occurrence objects, which are defined by this type. |
|
Click to show 14 hidden inherited attributes Click to hide 14 inherited attributes | |||
IfcTypeProduct (3) | |||
7 | RepresentationMaps | OPTIONAL LIST [1:?] OF UNIQUE IfcRepresentationMap |
List of unique representation maps. Each representation map describes a block definition of the shape of the product style. By providing more than one representation map, a multi-view block definition can be given. |
8 | Tag | OPTIONAL IfcLabel |
The tag (or label) identifier at the particular type of a product, e.g. the article number (like the EAN). It is the identifier at the specific level. |
ReferencedBy | SET [0:?] OF IfcRelAssignsToProduct FOR RelatingProduct |
Reference to the IfcRelAssignsToProduct relationship, by which other products, processes, controls, resources or actors (as subtypes of IfcObjectDefinition) can be related to this product type. |
5.1.3.48.4 Formal propositions
Name | Description |
---|---|
ApplicableOccurrence |
The product type (or style), if assigned to an object, shall only be assigned to object being a sub type of IfcProduct. |
|
5.1.3.48.5 Property sets
-
Pset_Risk
- RiskName
- RiskType
- NatureOfRisk
- RiskAssessmentMethodology
- UnmitigatedRiskLikelihood
- UnmitigatedRiskConsequence
- UnmitigatedRiskSignificance
- MitigationPlanned
- MitigatedRiskLikelihood
- MitigatedRiskConsequence
- MitigatedRiskSignificance
- MitigationProposed
- AssociatedProduct
- AssociatedActivity
- AssociatedLocation
-
Pset_Tolerance
- ToleranceDescription
- ToleranceBasis
- OverallTolerance
- HorizontalTolerance
- OrthogonalTolerance
- VerticalTolerance
- PlanarFlatness
- HorizontalFlatness
- ElevationalFlatness
- SideFlatness
- OverallOrthogonality
- HorizontalOrthogonality
- OrthogonalOrthogonality
- VerticalOrthogonality
- OverallStraightness
- HorizontalStraightness
- OrthogonalStraightness
- VerticalStraightness
-
Pset_Uncertainty
- UncertaintyBasis
- UncertaintyDescription
- HorizontalUncertainty
- LinearUncertainty
- OrthogonalUncertainty
- VerticalUncertainty
5.1.3.48.6 Concept usage
Concept | Usage | Description | |
---|---|---|---|
IfcRoot (2) | |||
Revision Control | General |
Ownership, history, and merge state is captured using IfcOwnerHistory. |
|
Software Identity | General |
IfcRoot assigns the globally unique ID. In addition it may provide for a name and a description about the concept. |
|
IfcObjectDefinition (9) | |||
Aggregation | General |
No description available. |
|
Approval Association | General |
No description available. |
|
Classification Association | General |
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. |
|
Constraint Association | General |
No description available. |
|
Document Association | General |
No description available. |
|
Library Association | General |
No description available. |
|
Material Association | General |
No description available. |
|
Material Single | General |
No description available. |
|
Nesting | General |
No description available. |
|
IfcTypeObject (1) | |||
Property Sets for Types | General |
No description available. |
|
Click to show 12 hidden inherited concepts Click to hide 12 inherited concepts | |||
IfcTypeProduct (7) | |||
Product Type Geometric Representation | General |
No description available. |
|
Product Type Shape | General |
The RepresentationMaps define the type product shape and multiple geometric representations can be assigned. If a product occurrence is assigned to the type by using the IfcRelDefinesByType relationship, then these occurrences have to reference the representation maps. The reference is created by one or multiple IfcShapeRepresentation's having an IfcMappedItem as Items, that places the IfcRepresentationMap of the type product into the spatial contexts, i.e. by using an Cartesian transformation operator to transform the IfcRepresentationMap into the object coordinate system of the product occurrence. Figure 1 illustrates an example of referencing a representation map by the shape representation of a product occurrence. Here the Cartesian transformation operator only uses translation, but no rotation, mirroring, or scaling. |
|
Property Sets for Objects | General |
This concept can be applied to the following resources: |
|
Type Body AdvancedBrep Geometry | General |
No description available. |
|
Type Body Brep Geometry | General |
No description available. |
|
Type Body CSG Geometry | General |
No description available. |
|
Type Body Geometry | General |
No description available. |
5.1.3.48.7 Formal representation
ENTITY IfcTypeProduct
SUPERTYPE OF (ONEOF
(IfcElementType
,IfcSpatialElementType))
SUBTYPE OF (IfcTypeObject);
RepresentationMaps : OPTIONAL LIST [1:?] OF UNIQUE IfcRepresentationMap;
Tag : OPTIONAL IfcLabel;
INVERSE
ReferencedBy : SET [0:?] OF IfcRelAssignsToProduct FOR RelatingProduct;
WHERE
ApplicableOccurrence : NOT(EXISTS(SELF\IfcTypeObject.Types[1])) OR
(SIZEOF(QUERY(temp <* SELF\IfcTypeObject.Types[1].RelatedObjects |
NOT('IFC4X3.IFCPRODUCT' IN TYPEOF(temp)))
) = 0);
END_ENTITY;