IfcTypeResource defines a specific (or type) definition of a resource. It is used to define a resource specification (the specific resource, that is common to all occurrences that are defined for that resource) and could act as a resource template.
An IfcTypeResource may have a list of property sets attached. Values of these properties are common to all occurrences of that resource type. The type occurrence relationship is realized using the objectified relationship IfcRelDefinesByType.
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,
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.
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.
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 structures only).
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).
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.
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 definition can be aggregated by several other objects (occurrences or parts).
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 definition can only be part of a single decomposition (to allow hierarchical structures only).
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.
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.
The type denotes a particular type that indicates the resource further. The use has to be established at the level of instantiable subtypes. In particular it holds the user defined type, if the enumeration of the attribute PredefinedType is set to USERDEFINED.
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.