Index Page
Documentation |
EXPRESS-G Diagram |
IDL Definition |
SCHEMA IfcProductExtension;
REFERENCE FROM IfcMeasureResource (
IfcCountMeasure
,IfcMassMeasure
,IfcLengthMeasure
,IfcPositiveLengthMeasure
,IfcAreaMeasure
,IfcVolumeMeasure
,IfcCompoundPlaneAngleMeasure
,IfcUnit
,IfcDerivedUnit
,IfcNamedUnit
,IfcContextDependentUnit
,IfcConversionBasedUnit
,IfcSiUnit );
REFERENCE FROM IfcGeometryResource (
IfcGeometricRepresentationItem
,IfcBoundingBox
,IfcAxis2Placement
,IfcAxis2Placement2D
,IfcAxis2Placement3D
,IfcCartesianPoint
,IfcPolyline
,IfcTrimmedCurve
,IfcCompositeCurve);
REFERENCE FROM IfcPropertyResource (
IfcMaterialSelect
,IfcMaterial
,IfcMaterialComposite
,IfcMaterialLayerSet
,IfcDateTimeSelect
,IfcCalendarDate
,IfcDateAndTime
,IfcLocalTime
,IfcActorSelect
,IfcPerson
,IfcOrganization
,IfcPersonAndOrganization);
USE FROM IfcKernel (
IfcGroup
,IfcRelGroups
,IfcProxy
,IfcRelContains );
REFERENCE FROM IfcKernel (
IfcObject
,IfcProduct
,IfcControl
,IfcRelationship );
Documentation
TYPE IfcBuildingTypeEnum = ENUMERATION OF (
Building );
END_TYPE;
Documentation
TYPE IfcBuildingStoreyTypeEnum = ENUMERATION OF (
BuildingStorey );
END_TYPE;
Documentation
TYPE IfcConnectionTypeEnum = ENUMERATION OF (
AtPath
,Start
,AtEnd
,NotKnown );
END_TYPE;
Documentation
TYPE IfcOpeningTypeEnum = ENUMERATION OF (
Opening
,Passage
,Recess
,Chase );
END_TYPE;
Documentation
TYPE IfcSiteTypeEnum = ENUMERATION OF (
BuildingSite );
END_TYPE;
Documentation
TYPE IfcSpaceTypeEnum = ENUMERATION OF (
Occupied
,Technical
,Circulation );
END_TYPE;
Documentation
TYPE IfcSystemTypeEnum = ENUMERATION OF (
ElectricalSystem
,HvacSystem
,LightingSystem
,PlumbingSystem
,StructuralSystem);
END_TYPE;
Documentation
TYPE IfcZoneTypeEnum = ENUMERATION OF (
Thermal
,Daylighting
,Equipment);
END_TYPE;
Documentation
ENTITY IfcBuilding
SUBTYPE OF (IfcProduct);
GenericType : IfcBuildingTypeEnum;
calcTotalHeight : OPTIONAL IfcLengthMeasure;
calcSiteCoverage : OPTIONAL IfcAreaMeasure;
calcTotalVolume : OPTIONAL IfcVolumeMeasure;
INVERSE
ServicedBySystems: SET [0:?] OF IfcRelServicesBuildings
FOR RelatedBuildings;
WHERE
WR41: SIZEOF(QUERY(Temp <* SELF\IfcObject.IsContainedBy |
(Temp.RelationshipType = ProjectContainer)
AND (Temp.ContainedOrReferenced = FALSE))) = 1;
WR42: SIZEOF(QUERY(Temp <* SELF\IfcObject.IsContainedBy |
(Temp.RelationshipType = SiteContainer)
AND (Temp.ContainedOrReferenced = TRUE))) <= 1;
END_ENTITY;
Documentation
ENTITY IfcBuildingElement
ABSTRACT SUPERTYPE
SUBTYPE OF (IfcElement);
HasMaterial : OPTIONAL IfcMaterialSelect;
INVERSE
ProvidesBoundaries : SET [0:?] OF IfcRelSeparatesSpaces
FOR RelatingBuildingElement;
HasOpenings : SET [0:?] OF IfcRelVoidsElement FOR RelatingBuildingElement;
FillsVoids : SET [0:?] OF IfcRelFillsElement FOR RelatedBuildingElement;
END_ENTITY;
Documentation
ENTITY IfcBuildingStorey
SUBTYPE OF (IfcProduct);
GenericType : IfcBuildingStoreyTypeEnum;
Elevation : IfcLengthMeasure;
calcTotalHeight : OPTIONAL IfcLengthMeasure;
calcTotalArea : OPTIONAL IfcAreaMeasure;
calcTotalVolume : OPTIONAL IfcVolumeMeasure;
WHERE
WR41: SIZEOF(QUERY(Temp <* SELF\IfcObject.IsContainedBy |
(Temp.RelationshipType = ProjectContainer)
AND (Temp.ContainedOrReferenced = FALSE))) = 1;
WR42: SIZEOF(QUERY(Temp <* SELF\IfcObject.IsContainedBy |
(Temp.RelationshipType = BuildingContainer)
AND (Temp.ContainedOrReferenced = TRUE))) <= 1;
END_ENTITY;
Documentation
ENTITY IfcConnectionGeometry
ABSTRACT SUPERTYPE OF (ONEOF(
IfcPointConnectionGeometry
,IfcLineConnectionGeometry))
SUBTYPE OF (IfcControl);
END_ENTITY;
Documentation
ENTITY IfcElement
ABSTRACT SUPERTYPE OF (ONEOF(
IfcOpeningElement
,IfcBuildingElement))
SUBTYPE OF (IfcProduct);
INVERSE
ConnectedTo : SET [0:?] OF IfcRelConnectsElements FOR RelatingElement;
ConnectedFrom : SET [0:?] OF IfcRelConnectsElements FOR RelatedElement;
IsAssemblyThrough : SET [0:1] OF IfcRelAssemblesElements FOR RelatingElement;
PartOfAssembly : SET [0:1] OF IfcRelAssemblesElements FOR RelatedElements;
WHERE
WR41: SIZEOF(QUERY(Temp <* SELF\IfcObject.IsContainedBy |
(Temp.RelationshipType = ProjectContainer)
AND (Temp.ContainedOrReferenced = FALSE))) = 1;
WR42: SIZEOF(QUERY(Temp <* SELF\IfcObject.IsContainedBy |
(((Temp.RelationshipType = SiteContainer)
OR (Temp.RelationshipType = BuildingContainer)
OR (Temp.RelationshipType = BuildingStoreyContainer)
OR (Temp.RelationshipType = SpaceContainer))
AND (Temp.ContainedOrReferenced = TRUE )))) <= 1;
END_ENTITY;
Documentation
ENTITY IfcLineConnectionGeometry
SUBTYPE OF (IfcConnectionGeometry);
LineOnRelatingElement : IfcPolyline;
LineOnRelatedElement : OPTIONAL IfcPolyline;
END_ENTITY;
Documentation
ENTITY IfcOpeningElement
SUBTYPE OF (IfcElement);
GenericType : IfcOpeningTypeEnum;
calcOpeningArea : OPTIONAL IfcAreaMeasure;
INVERSE
VoidsElements : SET [0:1] OF IfcRelVoidsElement
FOR RelatedOpeningElement;
HasFillings : SET [0:?] OF IfcRelFillsElement
FOR RelatingOpeningElement;
WHERE
WR51: SIZEOF(QUERY( Temp <* SELF\IfcObject.TypeDefinitions |
NOT(Temp.TypedClass = 'IfcOpeningElement'))) = 0;
END_ENTITY;
Documentation
ENTITY IfcPointConnectionGeometry
SUBTYPE OF (IfcConnectionGeometry);
PointOnRelatingElement : IfcCartesianPoint;
PointOnRelatedElement : OPTIONAL IfcCartesianPoint;
END_ENTITY;
Documentation
ENTITY IfcRelAssemblesElements
SUBTYPE OF (IfcRelationship);
RelatingElement : IfcElement;
RelatedElements : LIST [1:?] OF IfcElement;
WHERE
WR31: SIZEOF(QUERY(Temp <* RelatedElements |
RelatingElement :=: Temp)) = 0;
END_ENTITY;
Documentation
ENTITY IfcRelAssemblesSpaces
SUBTYPE OF (IfcRelationship);
RelatingSpace : IfcSpace;
RelatedSpaces : LIST [1:?] OF IfcSpace;
WHERE
WR31: SIZEOF(QUERY(Temp <* RelatedSpaces |
RelatingSpace :=: Temp)) = 0;
END_ENTITY;
Documentation
ENTITY IfcRelConnectsElements
SUPERTYPE OF (ONEOF(
IfcRelConnectsPathElements))
SUBTYPE OF (IfcRelationship);
ConnectionGeometry : OPTIONAL IfcConnectionGeometry;
RelatingElement : IfcElement;
RelatedElement : IfcElement;
END_ENTITY;
Documentation
ENTITY IfcRelConnectsPathElements
SUBTYPE OF (IfcRelConnectsElements);
RelatingPriorities : LIST [0:RelatingLayerCount] OF INTEGER;
RelatedPriorities : LIST [0:RelatedLayerCount] OF INTEGER;
RelatingConnectionType : IfcConnectionTypeEnum;
RelatedConnectionType : IfcConnectionTypeEnum;
DERIVE
RelatingLayerCount : INTEGER
:= IfcNoOfLayers(SELF\IfcRelConnectsElements.RelatingElement);
RelatedLayerCount : INTEGER
:= IfcNoOfLayers(SELF\IfcRelConnectsElements.RelatedElement);
END_ENTITY;
Documentation
ENTITY IfcRelFillsElement
SUBTYPE OF (IfcRelationship);
RelatingOpeningElement : IfcOpeningElement;
RelatedBuildingElement : IfcBuildingElement;
END_ENTITY;
Documentation
ENTITY IfcRelSeparatesSpaces
SUBTYPE OF (IfcRelationship);
RelatingBuildingElement : IfcBuildingElement;
RelatedSpaceBoundaries : LIST [1:?] OF IfcSpaceBoundary;
END_ENTITY;
Documentation
ENTITY IfcRelServicesBuildings
SUBTYPE OF (IfcRelationship);
RelatingSystem : IfcSystem;
RelatedBuildings : LIST [1:?] OF IfcBuilding;
END_ENTITY;
Documentation
ENTITY IfcRelVoidsElement
SUBTYPE OF (IfcRelationship);
RelatingBuildingElement : IfcBuildingElement;
RelatedOpeningElement : IfcOpeningElement;
END_ENTITY;
Documentation
ENTITY IfcSite
SUBTYPE OF (IfcProduct);
GenericType : IfcSiteTypeEnum;
RefLatitude : IfcCompoundPlaneAngleMeasure;
RefLongitude : IfcCompoundPlaneAngleMeasure;
RefElevation : IfcLengthMeasure;
calcSitePerimeter : OPTIONAL IfcPositiveLengthMeasure;
calcSiteArea : OPTIONAL IfcAreaMeasure;
WHERE
WR41: SIZEOF(QUERY(Temp <* SELF\IfcObject.IsContainedBy |
(Temp.RelationshipType = ProjectContainer)
AND (Temp.ContainedOrReferenced = FALSE))) = 1;
END_ENTITY;
Documentation
ENTITY IfcSpace
SUBTYPE OF (IfcSpatialElement);
GenericType : IfcSpaceTypeEnum;
BoundedBy : LIST [1:?] OF IfcSpaceBoundary;
calcTotalPerimeter : OPTIONAL IfcPositiveLengthMeasure;
calcTotalArea : OPTIONAL IfcAreaMeasure;
calcTotalVolume : OPTIONAL IfcVolumeMeasure;
calcAverageHeight : OPTIONAL IfcPositiveLengthMeasure;
INVERSE
IsAssemblyThrough : SET [0:1] OF IfcRelAssemblesSpaces FOR RelatingSpace;
PartOfAssembly : SET [0:1] OF IfcRelAssemblesSpaces FOR RelatedSpaces;
WHERE
WR51: SIZEOF(QUERY( temp <* SELF\IfcObject.TypeDefinitions |
NOT(temp.TypedClass = 'IfcSpace'))) = 0;
WR52: SIZEOF(QUERY(Temp <* SELF\IfcObject.IsContainedBy |
(Temp.RelationshipType = ProjectContainer)
AND (Temp.ContainedOrReferenced = FALSE))) = 1;
WR53: SIZEOF(QUERY(Temp <* SELF\IfcObject.IsContainedBy |
(((Temp.RelationshipType = SiteContainer)
OR (Temp.RelationshipType = BuildingStoreyContainer))
AND (Temp.ContainedOrReferenced = TRUE )))) <= 1;
END_ENTITY;
Documentation
ENTITY IfcSpaceBoundary
SUBTYPE OF (IfcSpatialElement);
PhysicalOrVirtual : BOOLEAN;
calcBoundarySurfaceArea : OPTIONAL IfcAreaMeasure;
INVERSE
Bounds : SET[1:2] OF IfcSpace FOR BoundedBy;
ProvidedBy : SET[0:1] OF IfcRelSeparatesSpaces
FOR RelatedSpaceBoundaries;
WHERE
WR51: ((PhysicalOrVirtual = TRUE) AND (HIINDEX(ProvidedBy) = 1))
OR
((PhysicalOrVirtual = FALSE) AND (HIINDEX(ProvidedBy) = 0));
END_ENTITY;
Documentation
ENTITY IfcSpatialElement
ABSTRACT SUPERTYPE OF (ONEOF(
IfcSpace
,IfcSpaceBoundary))
SUBTYPE OF (IfcProduct);
END_ENTITY;
Documentation
ENTITY IfcSystem
SUBTYPE OF (IfcGroup);
GenericType : IfcSystemTypeEnum;
INVERSE
ServicesBuildings : SET [0:1] OF IfcRelServicesBuildings
FOR RelatingSystem;
WHERE
WR41: SIZEOF(QUERY( temp <* SELF\IfcObject.TypeDefinitions |
NOT(temp.TypedClass = 'IfcSystem'))) = 0;
END_ENTITY;
Documentation
ENTITY IfcZone
SUBTYPE OF (IfcGroup);
GenericType : IfcZoneTypeEnum;
WHERE
WR41: SIZEOF (QUERY (temp <* SELF\IfcGroup.GroupedBy.RelatedObjects |
('IFCPRODUCTEXTENSION.IFCZONE' IN TYPEOF(temp)) OR
('IFCPRODUCTEXTENSION.IFCSPACE' IN TYPEOF(temp))
)) = HIINDEX(SELF\IfcGroup.GroupedBy.RelatedObjects);
WR42: SIZEOF(QUERY( temp <* SELF\IfcObject.TypeDefinitions |
NOT(temp.TypedClass = 'IfcZone'))) = 0;
END_ENTITY;
Documentation
FUNCTION IfcNoOfLayers (
Element : IfcElement )
: INTEGER;
IF NOT(EXISTS(Element.HasMaterial)) THEN
RETURN (?);
END_IF;
IF 'IFCPROPERTYRESOURCE.IFCMATERIAL' IN TYPEOF(Element.HasMaterial) THEN
RETURN (1);
END_IF;
IF 'IFCPROPERTYRESOURCE.IFCMATERIALLAYERSET' IN TYPEOF(Element.HasMaterial) THEN
RETURN (HIINDEX(Element.HasMaterial.HasMaterialLayers));
END_IF;
RETURN (?);
END_FUNCTION;
END_SCHEMA; -- IfcProductExtension