EXPRESS Definition for IfcKernel

Link to Documentation

Documentation

Link to EXPRESS-G Diagram

EXPRESS-G Diagram



SCHEMA IfcKernel;


REFERENCE FROM IfcActorResource (
    IfcActorSelect
   ,IfcPerson
   ,IfcOrganization
   ,IfcPersonAndOrganization
   ,IfcActorRole );

REFERENCE FROM IfcUtilityResource (
    IfcGloballyUniqueId
   ,IfcOwnerHistory );

REFERENCE FROM IfcMeasureResource (
    IfcUnitAssignment
   ,IfcUnit
   ,IfcDerivedUnit
   ,IfcNamedUnit
   ,IfcSiUnit
   ,IfcConversionBasedUnit
   ,IfcContextDependentUnit
   ,IfcMeasureWithUnit
   ,IfcTimeMeasure );

REFERENCE FROM IfcGeometryResource (
    IfcAxis2Placement
   ,IfcAxis2Placement2D
   ,IfcAxis2Placement3D );

REFERENCE FROM IfcPropertyResource (
    IfcProperty
   ,IfcSimpleProperty
   ,IfcSimplePropertyWithUnit
   ,IfcEnumeratedProperty
   ,IfcLibraryReference
   ,IfcObjectReference );

REFERENCE FROM IfcClassificationResource (
    IfcClassificationList );

REFERENCE FROM IfcDocumentResource (
    IfcDocumentReference );

REFERENCE FROM IfcRepresentationResource (
    IfcProductRepresentation
   ,IfcProductDefinitionTopology
   ,IfcProductDefinitionShape );


IfcObjectWithPlacementSelect

Link to Documentation

Documentation


TYPE IfcObjectWithPlacementSelect = SELECT (
    IfcProduct
   ,IfcModelingAid
   ,IfcProject);
END_TYPE;


IfcContainedOrReferencedEnum

Link to Documentation

Documentation


TYPE IfcContainedOrReferencedEnum = ENUMERATION OF (
    Contained
   ,Referenced);
END_TYPE;


IfcContainmentEnum

Link to Documentation

Documentation


TYPE IfcContainmentEnum = ENUMERATION OF (
    ProjectContainer
   ,SiteContainer
   ,BuildingContainer
   ,BuildingStoreyContainer
   ,SpaceContainer
   ,ZoneContainer
   ,NotDefined);
END_TYPE;


IfcProxyEnum

Link to Documentation

Documentation


TYPE IfcProxyEnum = ENUMERATION OF (
    Product
   ,Process
   ,Control
   ,Document
   ,Resource
   ,NotDefined);
END_TYPE;


IfcResourceConsumptionEnum

Link to Documentation

Documentation


TYPE IfcResourceConsumptionEnum = ENUMERATION OF (
    Consumed
   ,PartiallyConsumed
   ,Occupied
   ,PartiallyOccupied
   ,NotOccupied
   ,UserDefined
   ,NotDefined);
END_TYPE;


IfcSequenceEnum

Link to Documentation

Documentation


TYPE IfcSequenceEnum = ENUMERATION OF (
    Start_Start
   ,Start_Finish
   ,Finish_Start
   ,Finish_Finish
   ,NotDefined);
END_TYPE;


IfcActor

Link to Documentation

Documentation

Link to the Fully Attributed View

Fully Attributed View


ENTITY IfcActor
  SUBTYPE OF (IfcObject);
    TheActor : IfcActorSelect;
  INVERSE
    IsActingUpon : SET [0:?] OF IfcRelActsUpon
                   FOR RelatingActor;
END_ENTITY;


IfcControl

Link to Documentation

Documentation


ENTITY IfcControl
  ABSTRACT SUPERTYPE
  SUBTYPE OF (IfcObject);
    Classification : OPTIONAL IfcClassificationList;
  INVERSE
    Controls : SET [0:?] OF IfcRelControls
               FOR RelatingControl;
END_ENTITY;


IfcExtensionPropertySet

Link to Documentation

Documentation

Link to the Fully Attributed View

Fully Attributed View


ENTITY IfcExtensionPropertySet
  SUBTYPE OF (IfcPropertySet);
    DefinitionSource : STRING;
END_ENTITY;


IfcGroup

Link to Documentation

Documentation

Link to the Fully Attributed View

Fully Attributed View


ENTITY IfcGroup
  SUBTYPE OF (IfcObject);
    GroupPurpose : OPTIONAL STRING;
  INVERSE
    IsGroupedBy : IfcRelGroups
                  FOR RelatingGroup;
END_ENTITY;


IfcLocalPlacement

Link to Documentation

Documentation

Link to the Fully Attributed View

Fully Attributed View


ENTITY IfcLocalPlacement
  SUBTYPE OF (IfcModelingAid);
    PlacementRelTo    : OPTIONAL IfcObjectWithPlacementSelect;
    RelativePlacement : IfcAxis2Placement;
  WHERE
    WR31: (NOT(EXISTS(PlacementRelTo))) OR (NOT('IFCKERNEL.IFCLOCALPLACEMENT' IN TYPEOF(PlacementRelTo)));
END_ENTITY;


IfcModelingAid

Link to Documentation

Documentation


ENTITY IfcModelingAid
  ABSTRACT SUPERTYPE OF (ONEOF(
    IfcLocalPlacement))
  SUBTYPE OF (IfcRoot);
END_ENTITY;


IfcObject

Link to Documentation

Documentation


ENTITY IfcObject
  ABSTRACT SUPERTYPE OF (ONEOF(
    IfcActor
   ,IfcControl
   ,IfcGroup
   ,IfcProcess
   ,IfcProduct
   ,IfcProject
   ,IfcProxy
   ,IfcResource))
  SUBTYPE OF (IfcRoot);
    UserDefinedType    : OPTIONAL STRING;
    DocumentReferences : SET [0:?] OF IfcDocumentReference;
  INVERSE
    PartOfGroups        : SET [0:?] OF IfcRelGroups
                          FOR RelatedObjects;
    Nests               : SET [0:1] OF IfcRelNests
                          FOR RelatingObject;
    IsNestedBy          : SET [0:?] OF IfcRelNests
                          FOR RelatedObjects;
    Contains            : SET [0:2] OF IfcRelContains
                          FOR RelatingObject;
    IsContainedBy       : SET [0:?] OF IfcRelContains
                          FOR RelatedObjects;
    OperatedInProcesses : SET [0:?] OF IfcRelProcessOperatesOn
                          FOR RelatedObject;
    IsDefinedBy         : SET [0:?] OF IfcRelAssignsProperties
                          FOR RelatedObjects;
    IsActedUpon         : SET [0:?] OF IfcRelActsUpon
                          FOR RelatedObjects;
    IsControlledBy      : SET [0:?] OF IfcRelControls
                          FOR RelatedObjects;
END_ENTITY;


IfcProcess

Link to Documentation

Documentation


ENTITY IfcProcess
  ABSTRACT SUPERTYPE
  SUBTYPE OF (IfcObject);
    Productivity   : OPTIONAL IfcMeasureWithUnit;
    Classification : OPTIONAL IfcClassificationList;
  INVERSE
    IsSuccessorFrom : SET [0:?] OF IfcRelSequence
                      FOR RelatedProcess;
    IsPredecessorTo : SET [0:?] OF IfcRelSequence
                      FOR RelatedProcess;
    OperatesOn      : SET [0:?] OF IfcRelProcessOperatesOn
                      FOR RelatingProcess;
END_ENTITY;


IfcProduct

Link to Documentation

Documentation


ENTITY IfcProduct
  ABSTRACT SUPERTYPE
  SUBTYPE OF (IfcObject);
    LocalPlacement  : IfcLocalPlacement;
    Representations : SET [0:2] OF IfcProductRepresentation;
    Classification  : OPTIONAL IfcClassificationList;
END_ENTITY;


IfcProject

Link to Documentation

Documentation

Link to the Fully Attributed View

Fully Attributed View


ENTITY IfcProject
  SUBTYPE OF (IfcObject);
    ReferenceName     : OPTIONAL STRING;
    Name              : OPTIONAL STRING;
    Phase             : OPTIONAL STRING;
    UnitsInContext    : IfcUnitAssignment;
    Classification    : OPTIONAL IfcClassificationList;
    AbsolutePlacement : IfcAxis2Placement;
END_ENTITY;


IfcPropertyDefinition

Link to Documentation

Documentation


ENTITY IfcPropertyDefinition
  ABSTRACT SUPERTYPE OF (ONEOF(
    IfcPropertySet))
  SUBTYPE OF (IfcRoot);
  INVERSE
    DefinitionOf : IfcRelAssignsProperties
                   FOR RelatingPropertyDefinition;
END_ENTITY;


IfcPropertySet

Link to Documentation

Documentation

Link to the Fully Attributed View

Fully Attributed View


ENTITY IfcPropertySet
  SUPERTYPE OF (ONEOF(
    IfcExtensionPropertySet))
  SUBTYPE OF (IfcPropertyDefinition);
    Name          : STRING;
    HasProperties : LIST [1:?] OF IfcProperty;
END_ENTITY;


IfcProxy

Link to Documentation

Documentation

Link to the Fully Attributed View

Fully Attributed View


ENTITY IfcProxy
  SUBTYPE OF (IfcObject);
    ProxyType       : IfcProxyEnum;
    LocalPlacement  : OPTIONAL IfcLocalPlacement;
    Representations : SET [0:2] OF IfcProductRepresentation;
  WHERE
    WR2: (ProxyType = Product) XOR 
((ProxyType <> Product) AND (SIZEOF(Representations)=0));
    WR33: ((ProxyType = Product) AND (EXISTS(LocalPlacement))) XOR ((ProxyType <> Product) AND NOT(EXISTS(LocalPlacement)));
END_ENTITY;


IfcRelActsUpon

Link to Documentation

Documentation

Link to the Fully Attributed View

Fully Attributed View


ENTITY IfcRelActsUpon
  SUBTYPE OF (IfcRelationship);
    RelatingActor  : IfcActor;
    RelatedObjects : LIST [1:?] OF IfcObject;
    ActingRole     : OPTIONAL IfcActorRole;
  WHERE
    WR32: SIZEOF(QUERY(Temp <* RelatedObjects | 'IFCKERNEL.IFCACTOR' IN TYPEOF(Temp))) = 0;
END_ENTITY;


IfcRelAssignsProperties

Link to Documentation

Documentation

Link to the Fully Attributed View

Fully Attributed View


ENTITY IfcRelAssignsProperties
  SUPERTYPE OF (ONEOF(
    IfcRelAssignsTypedProperties))
  SUBTYPE OF (IfcRelationship);
    RelatingPropertyDefinition : IfcPropertyDefinition;
    RelatedObjects             : LIST [1:?] OF IfcObject;
    DomainView                 : OPTIONAL STRING;
  DERIVE
    IsShared : LOGICAL
             := HIINDEX(RelatedObjects) > 1;
END_ENTITY;


IfcRelAssignsTypedProperties

Link to Documentation

Documentation

Link to the Fully Attributed View

Fully Attributed View


ENTITY IfcRelAssignsTypedProperties
  SUBTYPE OF (IfcRelAssignsProperties);
    Name       : STRING;
    TypedClass : OPTIONAL STRING;
END_ENTITY;


IfcRelContains

Link to Documentation

Documentation

Link to the Fully Attributed View

Fully Attributed View


ENTITY IfcRelContains
  SUBTYPE OF (IfcRelationship);
    RelatingObject        : IfcObject;
    RelatedObjects        : LIST [1:?] OF IfcObject;
    RelationshipType      : IfcContainmentEnum;
    ContainedOrReferenced : IfcContainedOrReferencedEnum;
  WHERE
    WR31: SIZEOF(QUERY(Temp <* RelatedObjects | RelatingObject :=: Temp)) = 0;
END_ENTITY;


IfcRelControls

Link to Documentation

Documentation

Link to the Fully Attributed View

Fully Attributed View


ENTITY IfcRelControls
  SUBTYPE OF (IfcRelationship);
    RelatingControl : IfcControl;
    RelatedObjects  : LIST [1:?] OF IfcObject;
  WHERE
    WR31: SIZEOF (QUERY (temp <* RelatedObjects | 'IFCKERNEL.IFCCONTROL' IN TYPEOF(temp))) = 0;
END_ENTITY;


IfcRelGroups

Link to Documentation

Documentation

Link to the Fully Attributed View

Fully Attributed View


ENTITY IfcRelGroups
  SUBTYPE OF (IfcRelationship);
    RelatingGroup  : IfcGroup;
    RelatedObjects : LIST [1:?] OF IfcObject;
  WHERE
    WR31: SIZEOF(QUERY(Temp <* RelatedObjects | RelatingGroup :=: Temp)) = 0;
    WR32: (SELF\IfcRelationship.RelatedIsDependent = TRUE) AND (SELF\IfcRelationship.RelatingIsDependent = FALSE);
END_ENTITY;


IfcRelNests

Link to Documentation

Documentation

Link to the Fully Attributed View

Fully Attributed View


ENTITY IfcRelNests
  SUBTYPE OF (IfcRelationship);
    RelatingObject : IfcObject;
    RelatedObjects : LIST [1:?] OF IfcObject;
    NestingPurpose : OPTIONAL STRING;
  WHERE
    WR31: SIZEOF(QUERY(Temp <* RelatedObjects | RelatingObject :=: Temp)) = 0;
    WR32: SIZEOF(QUERY(Temp <* RelatedObjects | NOT(TYPEOF(RelatingObject) <= TYPEOF(Temp)))) = 0;
    WR33: (SELF\IfcRelationship.RelatedIsDependent = TRUE) AND (SELF\IfcRelationship.RelatingIsDependent = FALSE);
    WR34: NOT('IFCKERNEL.IFCPRODUCT'IN TYPEOF(RelatingObject));
END_ENTITY;


IfcRelProcessOperatesOn

Link to Documentation

Documentation

Link to the Fully Attributed View

Fully Attributed View


ENTITY IfcRelProcessOperatesOn
  SUBTYPE OF (IfcRelationship);
    RelatingProcess   : IfcProcess;
    RelatedObject     : IfcObject;
    OperationType     : STRING;
    OperationQuantity : IfcMeasureWithUnit;
END_ENTITY;


IfcRelSequence

Link to Documentation

Documentation

Link to the Fully Attributed View

Fully Attributed View


ENTITY IfcRelSequence
  SUBTYPE OF (IfcRelationship);
    RelatingProcess : IfcProcess;
    RelatedProcess  : IfcProcess;
    TimeLag         : IfcTimeMeasure;
    SequenceType    : IfcSequenceEnum;
  WHERE
    WR31: RelatingProcess :<>: RelatedProcess;
END_ENTITY;


IfcRelationship

Link to Documentation

Documentation


ENTITY IfcRelationship
  ABSTRACT SUPERTYPE OF (ONEOF(
    IfcRelActsUpon
   ,IfcRelAssignsProperties
   ,IfcRelContains
   ,IfcRelControls
   ,IfcRelGroups
   ,IfcRelNests
   ,IfcRelProcessOperatesOn
   ,IfcRelSequence))
  SUBTYPE OF (IfcRoot);
    RelatedIsDependent  : BOOLEAN;
    RelatingIsDependent : BOOLEAN;
END_ENTITY;


IfcResource

Link to Documentation

Documentation

Link to the Fully Attributed View

Fully Attributed View


ENTITY IfcResource
  SUBTYPE OF (IfcObject);
    Description         : OPTIONAL STRING;
    TypeReference       : STRING;
    TypeName            : STRING;
    Classification      : OPTIONAL IfcClassificationList;
    ResourceConsumption : OPTIONAL IfcResourceConsumptionEnum;
    BaseUnit            : OPTIONAL IfcMeasureWithUnit;
END_ENTITY;


IfcRoot

Link to Documentation

Documentation


ENTITY IfcRoot
  ABSTRACT SUPERTYPE OF (ONEOF(
    IfcModelingAid
   ,IfcObject
   ,IfcPropertyDefinition
   ,IfcRelationship));
    GlobalId     : IfcGloballyUniqueId;
    OwnerHistory : IfcOwnerHistory;
    Label        : OPTIONAL STRING;
  UNIQUE
    UR1: GlobalId;
END_ENTITY;



END_SCHEMA;