IfcContext

Natural language names
Kontextinformation
Context
Contexte
Change log
ItemSPFXMLChangeDescription
IFC2x3 to IFC4
    IfcContextADDED
Semantic definitions at the entity
Entity definition

IfcContext is the generalization of a project context in which objects, type objects, property sets, and properties are defined. The IfcProject as subtype of IfcContext provides the context for all information on a construction project, it may include one or several IfcProjectLibrary's as subtype of IfcContext to register the included libraries for the project. A library of products that is referenced is declared within the IfcProjectLibrary as the context of that library.

Context definitions can be named, using the inherited Name attribute, which should be a user recognizable key or number for the context. The LongName can add a full name. Further explanations to the context can be given using the inherited Description attribute.

A Context is declared by the relationship object IfcRelDeclares that refers to the corresponding objects within the context. More specific relationships are introduced at the level of subtypes.

HISTORY  New abstract entity in IFC4.

Attribute definitions
#AttributeTypeCardinalityDescription C
5ObjectType- This attribute is out of scope for this model view definition and shall not be set.
6LongName- This attribute is out of scope for this model view definition and shall not be set.
7PhaseIfcLabel? Current project phase, or life-cycle phase of this project. Applicable values have to be agreed upon by view definitions or implementer agreements. X
8RepresentationContexts- This attribute is out of scope for this model view definition and shall not be set.
9UnitsInContext- This attribute is out of scope for this model view definition and shall not be set.
IsDefinedByIfcRelDefinesByProperties
@RelatedObjects
S[0:?]Set of relationships to property set definitions attached to this context. Those statically or dynamically defined properties contain alphanumeric information content that further defines the context.
IFC4 CHANGE  The data type has been changed from IfcRelDefines to IfcRelDefinesByProperties with upward compatibility for file based exchange.
X
Inherited definitions from supertypes
Entity inheritance IfcProject IfcProjectLibrary IfcObjectDefinition IfcRoot
Attribute inheritance
#AttributeTypeCardinalityDescriptionC
IfcRoot
1GlobalIdIfcGloballyUniqueId Assignment of a globally unique identifier within the entire software world. X
2OwnerHistoryIfcOwnerHistory? 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,
NOTE  only the last modification in stored - either as addition, deletion or modification.
IFC4 CHANGE  The attribute has been changed to be OPTIONAL.
X
3NameIfcLabel? 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. X
4DescriptionIfcText? Optional description, provided for exchanging informative comments. X
IfcObjectDefinition
HasAssociationsIfcRelAssociates
@RelatedObjects
S[0:?]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. X
IfcContext
5ObjectType- This attribute is out of scope for this model view definition and shall not be set.
6LongName- This attribute is out of scope for this model view definition and shall not be set.
7PhaseIfcLabel? Current project phase, or life-cycle phase of this project. Applicable values have to be agreed upon by view definitions or implementer agreements. X
8RepresentationContexts- This attribute is out of scope for this model view definition and shall not be set.
9UnitsInContext- This attribute is out of scope for this model view definition and shall not be set.
IsDefinedByIfcRelDefinesByProperties
@RelatedObjects
S[0:?]Set of relationships to property set definitions attached to this context. Those statically or dynamically defined properties contain alphanumeric information content that further defines the context.
IFC4 CHANGE  The data type has been changed from IfcRelDefines to IfcRelDefinesByProperties with upward compatibility for file based exchange.
X
Formal representations
XML Specification
 <xs:element name="IfcContext" type="ifc:IfcContext" abstract="true" substitutionGroup="ifc:IfcObjectDefinition" nillable="true"/>
 <xs:complexType name="IfcContext" abstract="true">
  <xs:complexContent>
   <xs:extension base="ifc:IfcObjectDefinition">
    <xs:sequence>
     <xs:element name="IsDefinedBy" nillable="true" minOccurs="0">
      <xs:complexType>
       <xs:sequence>
        <xs:element ref="ifc:IfcRelDefinesByProperties" minOccurs="0" maxOccurs="unbounded"/>
       </xs:sequence>
       <xs:attribute ref="ifc:itemType" fixed="ifc:IfcRelDefinesByProperties"/>
       <xs:attribute ref="ifc:cType" fixed="set"/>
       <xs:attribute ref="ifc:arraySize" use="optional"/>
      </xs:complexType>
     </xs:element>
    </xs:sequence>
    <xs:attribute name="Phase" type="ifc:IfcLabel" use="optional"/>
   </xs:extension>
  </xs:complexContent>
 </xs:complexType>
EXPRESS Specification
ENTITY IfcContext
 ABSTRACT SUPERTYPE OF(ONEOF(IfcProject, IfcProjectLibrary))
 SUBTYPE OF (IfcObjectDefinition);
  ObjectType : OPTIONAL IfcStrippedOptional;
  LongName : OPTIONAL IfcStrippedOptional;
  Phase : OPTIONAL IfcLabel;
  RepresentationContexts : OPTIONAL SET [1:?] OF IfcStrippedOptional;
  UnitsInContext : OPTIONAL IfcStrippedOptional;
 INVERSE
  IsDefinedBy : SET [0:?] OF IfcRelDefinesByProperties FOR RelatedObjects;
END_ENTITY;

Link to EXPRESS-G diagram EXPRESS-G diagram

JSON Specification
public class IfcContext extends IfcObjectDefinition
{
 private string ObjectType;
 private string LongName;
 private string Phase;
 private IfcStrippedOptional[] RepresentationContexts;
 private IfcStrippedOptional UnitsInContext;
 private IfcRelDefinesByProperties[] IsDefinedBy;
 private IfcStrippedOptional[] Declares;
}

Link to this page  Link to this page