Add inverse attribute availability to schema definition macros

This commit is contained in:
Thomas Krijnen
2020-02-10 16:36:38 +01:00
parent 861dab0d9e
commit 56e3353879
5 changed files with 589 additions and 0 deletions
+159
View File
@@ -440,12 +440,14 @@
#define SCHEMA_IfcActionRequest_LongDescription_IS_OPTIONAL
#define SCHEMA_HAS_IfcActor
#define SCHEMA_IfcActor_HAS_TheActor
#define SCHEMA_IfcActor_HAS_IsActingUpon
#define SCHEMA_HAS_IfcActorRole
#define SCHEMA_IfcActorRole_HAS_Role
#define SCHEMA_IfcActorRole_HAS_UserDefinedRole
#define SCHEMA_IfcActorRole_UserDefinedRole_IS_OPTIONAL
#define SCHEMA_IfcActorRole_HAS_Description
#define SCHEMA_IfcActorRole_Description_IS_OPTIONAL
#define SCHEMA_IfcActorRole_HAS_HasExternalReference
#define SCHEMA_HAS_IfcActuator
#define SCHEMA_IfcActuator_HAS_PredefinedType
#define SCHEMA_IfcActuator_PredefinedType_IS_OPTIONAL
@@ -458,6 +460,8 @@
#define SCHEMA_IfcAddress_Description_IS_OPTIONAL
#define SCHEMA_IfcAddress_HAS_UserDefinedPurpose
#define SCHEMA_IfcAddress_UserDefinedPurpose_IS_OPTIONAL
#define SCHEMA_IfcAddress_HAS_OfPerson
#define SCHEMA_IfcAddress_HAS_OfOrganization
#define SCHEMA_HAS_IfcAdvancedBrep
#define SCHEMA_HAS_IfcAdvancedBrepWithVoids
#define SCHEMA_IfcAdvancedBrepWithVoids_HAS_Voids
@@ -489,8 +493,10 @@
#define SCHEMA_IfcAlignment2DHorizontal_HAS_StartDistAlong
#define SCHEMA_IfcAlignment2DHorizontal_StartDistAlong_IS_OPTIONAL
#define SCHEMA_IfcAlignment2DHorizontal_HAS_Segments
#define SCHEMA_IfcAlignment2DHorizontal_HAS_ToAlignmentCurve
#define SCHEMA_HAS_IfcAlignment2DHorizontalSegment
#define SCHEMA_IfcAlignment2DHorizontalSegment_HAS_CurveGeometry
#define SCHEMA_IfcAlignment2DHorizontalSegment_HAS_ToHorizontal
#define SCHEMA_HAS_IfcAlignment2DSegment
#define SCHEMA_IfcAlignment2DSegment_HAS_TangentialContinuity
#define SCHEMA_IfcAlignment2DSegment_TangentialContinuity_IS_OPTIONAL
@@ -507,11 +513,13 @@
#define SCHEMA_IfcAlignment2DVerSegParabolicArc_HAS_IsConvex
#define SCHEMA_HAS_IfcAlignment2DVertical
#define SCHEMA_IfcAlignment2DVertical_HAS_Segments
#define SCHEMA_IfcAlignment2DVertical_HAS_ToAlignmentCurve
#define SCHEMA_HAS_IfcAlignment2DVerticalSegment
#define SCHEMA_IfcAlignment2DVerticalSegment_HAS_StartDistAlong
#define SCHEMA_IfcAlignment2DVerticalSegment_HAS_HorizontalLength
#define SCHEMA_IfcAlignment2DVerticalSegment_HAS_StartHeight
#define SCHEMA_IfcAlignment2DVerticalSegment_HAS_StartGradient
#define SCHEMA_IfcAlignment2DVerticalSegment_HAS_ToVertical
#define SCHEMA_HAS_IfcAlignmentCurve
#define SCHEMA_IfcAlignmentCurve_HAS_Horizontal
#define SCHEMA_IfcAlignmentCurve_HAS_Vertical
@@ -519,6 +527,7 @@
#define SCHEMA_IfcAlignmentCurve_HAS_Tag
#define SCHEMA_IfcAlignmentCurve_Tag_IS_OPTIONAL
#define SCHEMA_HAS_IfcAnnotation
#define SCHEMA_IfcAnnotation_HAS_ContainedInStructure
#define SCHEMA_HAS_IfcAnnotationFillArea
#define SCHEMA_IfcAnnotationFillArea_HAS_OuterBoundary
#define SCHEMA_IfcAnnotationFillArea_HAS_InnerBoundaries
@@ -549,6 +558,7 @@
#define SCHEMA_IfcAppliedValue_ArithmeticOperator_IS_OPTIONAL
#define SCHEMA_IfcAppliedValue_HAS_Components
#define SCHEMA_IfcAppliedValue_Components_IS_OPTIONAL
#define SCHEMA_IfcAppliedValue_HAS_HasExternalReference
#define SCHEMA_HAS_IfcApproval
#define SCHEMA_IfcApproval_HAS_Identifier
#define SCHEMA_IfcApproval_Identifier_IS_OPTIONAL
@@ -568,6 +578,11 @@
#define SCHEMA_IfcApproval_RequestingApproval_IS_OPTIONAL
#define SCHEMA_IfcApproval_HAS_GivingApproval
#define SCHEMA_IfcApproval_GivingApproval_IS_OPTIONAL
#define SCHEMA_IfcApproval_HAS_HasExternalReferences
#define SCHEMA_IfcApproval_HAS_ApprovedObjects
#define SCHEMA_IfcApproval_HAS_ApprovedResources
#define SCHEMA_IfcApproval_HAS_IsRelatedWith
#define SCHEMA_IfcApproval_HAS_Relates
#define SCHEMA_HAS_IfcApprovalRelationship
#define SCHEMA_IfcApprovalRelationship_HAS_RelatingApproval
#define SCHEMA_IfcApprovalRelationship_HAS_RelatedApprovals
@@ -871,6 +886,8 @@
#define SCHEMA_IfcClassification_Location_IS_OPTIONAL
#define SCHEMA_IfcClassification_HAS_ReferenceTokens
#define SCHEMA_IfcClassification_ReferenceTokens_IS_OPTIONAL
#define SCHEMA_IfcClassification_HAS_ClassificationForObjects
#define SCHEMA_IfcClassification_HAS_HasReferences
#define SCHEMA_HAS_IfcClassificationReference
#define SCHEMA_IfcClassificationReference_HAS_ReferencedSource
#define SCHEMA_IfcClassificationReference_ReferencedSource_IS_OPTIONAL
@@ -878,6 +895,8 @@
#define SCHEMA_IfcClassificationReference_Description_IS_OPTIONAL
#define SCHEMA_IfcClassificationReference_HAS_Sort
#define SCHEMA_IfcClassificationReference_Sort_IS_OPTIONAL
#define SCHEMA_IfcClassificationReference_HAS_ClassificationRefForObjects
#define SCHEMA_IfcClassificationReference_HAS_HasReferences
#define SCHEMA_HAS_IfcClosedShell
#define SCHEMA_HAS_IfcCoil
#define SCHEMA_IfcCoil_HAS_PredefinedType
@@ -922,6 +941,7 @@
#define SCHEMA_IfcCompositeCurveSegment_HAS_Transition
#define SCHEMA_IfcCompositeCurveSegment_HAS_SameSense
#define SCHEMA_IfcCompositeCurveSegment_HAS_ParentCurve
#define SCHEMA_IfcCompositeCurveSegment_HAS_UsingCurves
#define SCHEMA_HAS_IfcCompositeProfileDef
#define SCHEMA_IfcCompositeProfileDef_HAS_Profiles
#define SCHEMA_IfcCompositeProfileDef_HAS_Label
@@ -977,6 +997,8 @@
#define SCHEMA_IfcConstraint_CreationTime_IS_OPTIONAL
#define SCHEMA_IfcConstraint_HAS_UserDefinedGrade
#define SCHEMA_IfcConstraint_UserDefinedGrade_IS_OPTIONAL
#define SCHEMA_IfcConstraint_HAS_HasExternalReferences
#define SCHEMA_IfcConstraint_HAS_PropertiesForConstraint
#define SCHEMA_HAS_IfcConstructionEquipmentResource
#define SCHEMA_IfcConstructionEquipmentResource_HAS_PredefinedType
#define SCHEMA_IfcConstructionEquipmentResource_PredefinedType_IS_OPTIONAL
@@ -1015,11 +1037,15 @@
#define SCHEMA_IfcContext_RepresentationContexts_IS_OPTIONAL
#define SCHEMA_IfcContext_HAS_UnitsInContext
#define SCHEMA_IfcContext_UnitsInContext_IS_OPTIONAL
#define SCHEMA_IfcContext_HAS_IsDefinedBy
#define SCHEMA_IfcContext_HAS_Declares
#define SCHEMA_HAS_IfcContextDependentUnit
#define SCHEMA_IfcContextDependentUnit_HAS_Name
#define SCHEMA_IfcContextDependentUnit_HAS_HasExternalReference
#define SCHEMA_HAS_IfcControl
#define SCHEMA_IfcControl_HAS_Identification
#define SCHEMA_IfcControl_Identification_IS_OPTIONAL
#define SCHEMA_IfcControl_HAS_Controls
#define SCHEMA_HAS_IfcController
#define SCHEMA_IfcController_HAS_PredefinedType
#define SCHEMA_IfcController_PredefinedType_IS_OPTIONAL
@@ -1028,6 +1054,7 @@
#define SCHEMA_HAS_IfcConversionBasedUnit
#define SCHEMA_IfcConversionBasedUnit_HAS_Name
#define SCHEMA_IfcConversionBasedUnit_HAS_ConversionFactor
#define SCHEMA_IfcConversionBasedUnit_HAS_HasExternalReference
#define SCHEMA_HAS_IfcConversionBasedUnitWithOffset
#define SCHEMA_IfcConversionBasedUnitWithOffset_HAS_ConversionOffset
#define SCHEMA_HAS_IfcCooledBeam
@@ -1051,6 +1078,7 @@
#define SCHEMA_IfcCoordinateReferenceSystem_GeodeticDatum_IS_OPTIONAL
#define SCHEMA_IfcCoordinateReferenceSystem_HAS_VerticalDatum
#define SCHEMA_IfcCoordinateReferenceSystem_VerticalDatum_IS_OPTIONAL
#define SCHEMA_IfcCoordinateReferenceSystem_HAS_HasCoordinateOperation
#define SCHEMA_HAS_IfcCostItem
#define SCHEMA_IfcCostItem_HAS_PredefinedType
#define SCHEMA_IfcCostItem_PredefinedType_IS_OPTIONAL
@@ -1071,6 +1099,8 @@
#define SCHEMA_HAS_IfcCovering
#define SCHEMA_IfcCovering_HAS_PredefinedType
#define SCHEMA_IfcCovering_PredefinedType_IS_OPTIONAL
#define SCHEMA_IfcCovering_HAS_CoversSpaces
#define SCHEMA_IfcCovering_HAS_CoversElements
#define SCHEMA_HAS_IfcCoveringType
#define SCHEMA_IfcCoveringType_HAS_PredefinedType
#define SCHEMA_HAS_IfcCrewResource
@@ -1183,10 +1213,13 @@
#define SCHEMA_IfcDistributionChamberElementType_HAS_PredefinedType
#define SCHEMA_HAS_IfcDistributionCircuit
#define SCHEMA_HAS_IfcDistributionControlElement
#define SCHEMA_IfcDistributionControlElement_HAS_AssignedToFlowElement
#define SCHEMA_HAS_IfcDistributionControlElementType
#define SCHEMA_HAS_IfcDistributionElement
#define SCHEMA_IfcDistributionElement_HAS_HasPorts
#define SCHEMA_HAS_IfcDistributionElementType
#define SCHEMA_HAS_IfcDistributionFlowElement
#define SCHEMA_IfcDistributionFlowElement_HAS_HasControlElements
#define SCHEMA_HAS_IfcDistributionFlowElementType
#define SCHEMA_HAS_IfcDistributionPort
#define SCHEMA_IfcDistributionPort_HAS_FlowDirection
@@ -1233,6 +1266,10 @@
#define SCHEMA_IfcDocumentInformation_Confidentiality_IS_OPTIONAL
#define SCHEMA_IfcDocumentInformation_HAS_Status
#define SCHEMA_IfcDocumentInformation_Status_IS_OPTIONAL
#define SCHEMA_IfcDocumentInformation_HAS_DocumentInfoForObjects
#define SCHEMA_IfcDocumentInformation_HAS_HasDocumentReferences
#define SCHEMA_IfcDocumentInformation_HAS_IsPointedTo
#define SCHEMA_IfcDocumentInformation_HAS_IsPointer
#define SCHEMA_HAS_IfcDocumentInformationRelationship
#define SCHEMA_IfcDocumentInformationRelationship_HAS_RelatingDocument
#define SCHEMA_IfcDocumentInformationRelationship_HAS_RelatedDocuments
@@ -1243,6 +1280,7 @@
#define SCHEMA_IfcDocumentReference_Description_IS_OPTIONAL
#define SCHEMA_IfcDocumentReference_HAS_ReferencedDocument
#define SCHEMA_IfcDocumentReference_ReferencedDocument_IS_OPTIONAL
#define SCHEMA_IfcDocumentReference_HAS_DocumentRefForObjects
#define SCHEMA_HAS_IfcDoor
#define SCHEMA_IfcDoor_HAS_OverallHeight
#define SCHEMA_IfcDoor_OverallHeight_IS_OPTIONAL
@@ -1361,6 +1399,18 @@
#define SCHEMA_HAS_IfcElement
#define SCHEMA_IfcElement_HAS_Tag
#define SCHEMA_IfcElement_Tag_IS_OPTIONAL
#define SCHEMA_IfcElement_HAS_FillsVoids
#define SCHEMA_IfcElement_HAS_ConnectedTo
#define SCHEMA_IfcElement_HAS_IsInterferedByElements
#define SCHEMA_IfcElement_HAS_InterferesElements
#define SCHEMA_IfcElement_HAS_HasProjections
#define SCHEMA_IfcElement_HAS_ReferencedInStructures
#define SCHEMA_IfcElement_HAS_HasOpenings
#define SCHEMA_IfcElement_HAS_IsConnectionRealization
#define SCHEMA_IfcElement_HAS_ProvidesBoundaries
#define SCHEMA_IfcElement_HAS_ConnectedFrom
#define SCHEMA_IfcElement_HAS_ContainedInStructure
#define SCHEMA_IfcElement_HAS_HasCoverings
#define SCHEMA_HAS_IfcElementAssembly
#define SCHEMA_IfcElementAssembly_HAS_AssemblyPlace
#define SCHEMA_IfcElementAssembly_AssemblyPlace_IS_OPTIONAL
@@ -1439,12 +1489,14 @@
#define SCHEMA_IfcExternalReference_Identification_IS_OPTIONAL
#define SCHEMA_IfcExternalReference_HAS_Name
#define SCHEMA_IfcExternalReference_Name_IS_OPTIONAL
#define SCHEMA_IfcExternalReference_HAS_ExternalReferenceForResources
#define SCHEMA_HAS_IfcExternalReferenceRelationship
#define SCHEMA_IfcExternalReferenceRelationship_HAS_RelatingReference
#define SCHEMA_IfcExternalReferenceRelationship_HAS_RelatedResourceObjects
#define SCHEMA_HAS_IfcExternalSpatialElement
#define SCHEMA_IfcExternalSpatialElement_HAS_PredefinedType
#define SCHEMA_IfcExternalSpatialElement_PredefinedType_IS_OPTIONAL
#define SCHEMA_IfcExternalSpatialElement_HAS_BoundedBy
#define SCHEMA_HAS_IfcExternalSpatialStructureElement
#define SCHEMA_HAS_IfcExternallyDefinedHatchStyle
#define SCHEMA_HAS_IfcExternallyDefinedSurfaceStyle
@@ -1456,6 +1508,7 @@
#define SCHEMA_IfcExtrudedAreaSolidTapered_HAS_EndSweptArea
#define SCHEMA_HAS_IfcFace
#define SCHEMA_IfcFace_HAS_Bounds
#define SCHEMA_IfcFace_HAS_HasTextureMaps
#define SCHEMA_HAS_IfcFaceBasedSurfaceModel
#define SCHEMA_IfcFaceBasedSurfaceModel_HAS_FbsmFaces
#define SCHEMA_HAS_IfcFaceBound
@@ -1495,7 +1548,9 @@
#define SCHEMA_IfcFastenerType_HAS_PredefinedType
#define SCHEMA_HAS_IfcFeatureElement
#define SCHEMA_HAS_IfcFeatureElementAddition
#define SCHEMA_IfcFeatureElementAddition_HAS_ProjectsElements
#define SCHEMA_HAS_IfcFeatureElementSubtraction
#define SCHEMA_IfcFeatureElementSubtraction_HAS_VoidsElements
#define SCHEMA_HAS_IfcFillAreaStyle
#define SCHEMA_IfcFillAreaStyle_HAS_FillStyles
#define SCHEMA_IfcFillAreaStyle_HAS_ModelorDraughting
@@ -1580,6 +1635,8 @@
#define SCHEMA_IfcGeometricRepresentationContext_HAS_WorldCoordinateSystem
#define SCHEMA_IfcGeometricRepresentationContext_HAS_TrueNorth
#define SCHEMA_IfcGeometricRepresentationContext_TrueNorth_IS_OPTIONAL
#define SCHEMA_IfcGeometricRepresentationContext_HAS_HasSubContexts
#define SCHEMA_IfcGeometricRepresentationContext_HAS_HasCoordinateOperation
#define SCHEMA_HAS_IfcGeometricRepresentationItem
#define SCHEMA_HAS_IfcGeometricRepresentationSubContext
#define SCHEMA_IfcGeometricRepresentationSubContext_HAS_ParentContext
@@ -1602,11 +1659,16 @@
#define SCHEMA_IfcGridAxis_AxisTag_IS_OPTIONAL
#define SCHEMA_IfcGridAxis_HAS_AxisCurve
#define SCHEMA_IfcGridAxis_HAS_SameSense
#define SCHEMA_IfcGridAxis_HAS_PartOfW
#define SCHEMA_IfcGridAxis_HAS_PartOfV
#define SCHEMA_IfcGridAxis_HAS_PartOfU
#define SCHEMA_IfcGridAxis_HAS_HasIntersections
#define SCHEMA_HAS_IfcGridPlacement
#define SCHEMA_IfcGridPlacement_HAS_PlacementLocation
#define SCHEMA_IfcGridPlacement_HAS_PlacementRefDirection
#define SCHEMA_IfcGridPlacement_PlacementRefDirection_IS_OPTIONAL
#define SCHEMA_HAS_IfcGroup
#define SCHEMA_IfcGroup_HAS_IsGroupedBy
#define SCHEMA_HAS_IfcHalfSpaceSolid
#define SCHEMA_IfcHalfSpaceSolid_HAS_BaseSurface
#define SCHEMA_IfcHalfSpaceSolid_HAS_AgreementFlag
@@ -1647,6 +1709,7 @@
#define SCHEMA_IfcIndexedPolyCurve_SelfIntersect_IS_OPTIONAL
#define SCHEMA_HAS_IfcIndexedPolygonalFace
#define SCHEMA_IfcIndexedPolygonalFace_HAS_CoordIndex
#define SCHEMA_IfcIndexedPolygonalFace_HAS_ToFaceSet
#define SCHEMA_HAS_IfcIndexedPolygonalFaceWithVoids
#define SCHEMA_IfcIndexedPolygonalFaceWithVoids_HAS_InnerCoordIndices
#define SCHEMA_HAS_IfcIndexedTextureMap
@@ -1720,6 +1783,8 @@
#define SCHEMA_IfcLibraryInformation_Location_IS_OPTIONAL
#define SCHEMA_IfcLibraryInformation_HAS_Description
#define SCHEMA_IfcLibraryInformation_Description_IS_OPTIONAL
#define SCHEMA_IfcLibraryInformation_HAS_LibraryInfoForObjects
#define SCHEMA_IfcLibraryInformation_HAS_HasLibraryReferences
#define SCHEMA_HAS_IfcLibraryReference
#define SCHEMA_IfcLibraryReference_HAS_Description
#define SCHEMA_IfcLibraryReference_Description_IS_OPTIONAL
@@ -1727,6 +1792,7 @@
#define SCHEMA_IfcLibraryReference_Language_IS_OPTIONAL
#define SCHEMA_IfcLibraryReference_HAS_ReferencedLibrary
#define SCHEMA_IfcLibraryReference_ReferencedLibrary_IS_OPTIONAL
#define SCHEMA_IfcLibraryReference_HAS_LibraryRefForObjects
#define SCHEMA_HAS_IfcLightDistributionData
#define SCHEMA_IfcLightDistributionData_HAS_MainPlaneAngle
#define SCHEMA_IfcLightDistributionData_HAS_SecondaryPlaneAngle
@@ -1807,6 +1873,9 @@
#define SCHEMA_IfcMaterial_Description_IS_OPTIONAL
#define SCHEMA_IfcMaterial_HAS_Category
#define SCHEMA_IfcMaterial_Category_IS_OPTIONAL
#define SCHEMA_IfcMaterial_HAS_HasRepresentation
#define SCHEMA_IfcMaterial_HAS_IsRelatedWith
#define SCHEMA_IfcMaterial_HAS_RelatesTo
#define SCHEMA_HAS_IfcMaterialClassificationRelationship
#define SCHEMA_IfcMaterialClassificationRelationship_HAS_MaterialClassifications
#define SCHEMA_IfcMaterialClassificationRelationship_HAS_ClassifiedMaterial
@@ -1820,6 +1889,7 @@
#define SCHEMA_IfcMaterialConstituent_Fraction_IS_OPTIONAL
#define SCHEMA_IfcMaterialConstituent_HAS_Category
#define SCHEMA_IfcMaterialConstituent_Category_IS_OPTIONAL
#define SCHEMA_IfcMaterialConstituent_HAS_ToMaterialConstituentSet
#define SCHEMA_HAS_IfcMaterialConstituentSet
#define SCHEMA_IfcMaterialConstituentSet_HAS_Name
#define SCHEMA_IfcMaterialConstituentSet_Name_IS_OPTIONAL
@@ -1828,6 +1898,9 @@
#define SCHEMA_IfcMaterialConstituentSet_HAS_MaterialConstituents
#define SCHEMA_IfcMaterialConstituentSet_MaterialConstituents_IS_OPTIONAL
#define SCHEMA_HAS_IfcMaterialDefinition
#define SCHEMA_IfcMaterialDefinition_HAS_AssociatedTo
#define SCHEMA_IfcMaterialDefinition_HAS_HasExternalReferences
#define SCHEMA_IfcMaterialDefinition_HAS_HasProperties
#define SCHEMA_HAS_IfcMaterialDefinitionRepresentation
#define SCHEMA_IfcMaterialDefinitionRepresentation_HAS_RepresentedMaterial
#define SCHEMA_HAS_IfcMaterialLayer
@@ -1844,6 +1917,7 @@
#define SCHEMA_IfcMaterialLayer_Category_IS_OPTIONAL
#define SCHEMA_IfcMaterialLayer_HAS_Priority
#define SCHEMA_IfcMaterialLayer_Priority_IS_OPTIONAL
#define SCHEMA_IfcMaterialLayer_HAS_ToMaterialLayerSet
#define SCHEMA_HAS_IfcMaterialLayerSet
#define SCHEMA_IfcMaterialLayerSet_HAS_MaterialLayers
#define SCHEMA_IfcMaterialLayerSet_HAS_LayerSetName
@@ -1874,6 +1948,7 @@
#define SCHEMA_IfcMaterialProfile_Priority_IS_OPTIONAL
#define SCHEMA_IfcMaterialProfile_HAS_Category
#define SCHEMA_IfcMaterialProfile_Category_IS_OPTIONAL
#define SCHEMA_IfcMaterialProfile_HAS_ToMaterialProfileSet
#define SCHEMA_HAS_IfcMaterialProfileSet
#define SCHEMA_IfcMaterialProfileSet_HAS_Name
#define SCHEMA_IfcMaterialProfileSet_Name_IS_OPTIONAL
@@ -1902,6 +1977,7 @@
#define SCHEMA_IfcMaterialRelationship_HAS_Expression
#define SCHEMA_IfcMaterialRelationship_Expression_IS_OPTIONAL
#define SCHEMA_HAS_IfcMaterialUsageDefinition
#define SCHEMA_IfcMaterialUsageDefinition_HAS_AssociatedTo
#define SCHEMA_HAS_IfcMeasureWithUnit
#define SCHEMA_IfcMeasureWithUnit_HAS_ValueComponent
#define SCHEMA_IfcMeasureWithUnit_HAS_UnitComponent
@@ -1951,10 +2027,22 @@
#define SCHEMA_HAS_IfcObject
#define SCHEMA_IfcObject_HAS_ObjectType
#define SCHEMA_IfcObject_ObjectType_IS_OPTIONAL
#define SCHEMA_IfcObject_HAS_IsDeclaredBy
#define SCHEMA_IfcObject_HAS_Declares
#define SCHEMA_IfcObject_HAS_IsTypedBy
#define SCHEMA_IfcObject_HAS_IsDefinedBy
#define SCHEMA_HAS_IfcObjectDefinition
#define SCHEMA_IfcObjectDefinition_HAS_HasAssignments
#define SCHEMA_IfcObjectDefinition_HAS_Nests
#define SCHEMA_IfcObjectDefinition_HAS_IsNestedBy
#define SCHEMA_IfcObjectDefinition_HAS_HasContext
#define SCHEMA_IfcObjectDefinition_HAS_IsDecomposedBy
#define SCHEMA_IfcObjectDefinition_HAS_Decomposes
#define SCHEMA_IfcObjectDefinition_HAS_HasAssociations
#define SCHEMA_HAS_IfcObjectPlacement
#define SCHEMA_IfcObjectPlacement_HAS_PlacementRelTo
#define SCHEMA_IfcObjectPlacement_PlacementRelTo_IS_OPTIONAL
#define SCHEMA_IfcObjectPlacement_HAS_PlacesObject
#define SCHEMA_HAS_IfcObjective
#define SCHEMA_IfcObjective_HAS_BenchmarkValues
#define SCHEMA_IfcObjective_BenchmarkValues_IS_OPTIONAL
@@ -1983,6 +2071,7 @@
#define SCHEMA_HAS_IfcOpeningElement
#define SCHEMA_IfcOpeningElement_HAS_PredefinedType
#define SCHEMA_IfcOpeningElement_PredefinedType_IS_OPTIONAL
#define SCHEMA_IfcOpeningElement_HAS_HasFillings
#define SCHEMA_HAS_IfcOpeningStandardCase
#define SCHEMA_HAS_IfcOrganization
#define SCHEMA_IfcOrganization_HAS_Identification
@@ -1994,6 +2083,9 @@
#define SCHEMA_IfcOrganization_Roles_IS_OPTIONAL
#define SCHEMA_IfcOrganization_HAS_Addresses
#define SCHEMA_IfcOrganization_Addresses_IS_OPTIONAL
#define SCHEMA_IfcOrganization_HAS_IsRelatedBy
#define SCHEMA_IfcOrganization_HAS_Relates
#define SCHEMA_IfcOrganization_HAS_Engages
#define SCHEMA_HAS_IfcOrganizationRelationship
#define SCHEMA_IfcOrganizationRelationship_HAS_RelatingOrganization
#define SCHEMA_IfcOrganizationRelationship_HAS_RelatedOrganizations
@@ -2068,6 +2160,7 @@
#define SCHEMA_IfcPerson_Roles_IS_OPTIONAL
#define SCHEMA_IfcPerson_HAS_Addresses
#define SCHEMA_IfcPerson_Addresses_IS_OPTIONAL
#define SCHEMA_IfcPerson_HAS_EngagedIn
#define SCHEMA_HAS_IfcPersonAndOrganization
#define SCHEMA_IfcPersonAndOrganization_HAS_ThePerson
#define SCHEMA_IfcPersonAndOrganization_HAS_TheOrganization
@@ -2084,6 +2177,8 @@
#define SCHEMA_IfcPhysicalQuantity_HAS_Name
#define SCHEMA_IfcPhysicalQuantity_HAS_Description
#define SCHEMA_IfcPhysicalQuantity_Description_IS_OPTIONAL
#define SCHEMA_IfcPhysicalQuantity_HAS_HasExternalReferences
#define SCHEMA_IfcPhysicalQuantity_HAS_PartOfComplex
#define SCHEMA_HAS_IfcPhysicalSimpleQuantity
#define SCHEMA_IfcPhysicalSimpleQuantity_HAS_Unit
#define SCHEMA_IfcPhysicalSimpleQuantity_Unit_IS_OPTIONAL
@@ -2145,7 +2240,12 @@
#define SCHEMA_HAS_IfcPolyline
#define SCHEMA_IfcPolyline_HAS_Points
#define SCHEMA_HAS_IfcPort
#define SCHEMA_IfcPort_HAS_ContainedIn
#define SCHEMA_IfcPort_HAS_ConnectedFrom
#define SCHEMA_IfcPort_HAS_ConnectedTo
#define SCHEMA_HAS_IfcPositioningElement
#define SCHEMA_IfcPositioningElement_HAS_ContainedInStructure
#define SCHEMA_IfcPositioningElement_HAS_Positions
#define SCHEMA_HAS_IfcPostalAddress
#define SCHEMA_IfcPostalAddress_HAS_InternalLocation
#define SCHEMA_IfcPostalAddress_InternalLocation_IS_OPTIONAL
@@ -2196,12 +2296,19 @@
#define SCHEMA_IfcProcess_Identification_IS_OPTIONAL
#define SCHEMA_IfcProcess_HAS_LongDescription
#define SCHEMA_IfcProcess_LongDescription_IS_OPTIONAL
#define SCHEMA_IfcProcess_HAS_IsPredecessorTo
#define SCHEMA_IfcProcess_HAS_IsSuccessorFrom
#define SCHEMA_IfcProcess_HAS_OperatesOn
#define SCHEMA_HAS_IfcProduct
#define SCHEMA_IfcProduct_HAS_ObjectPlacement
#define SCHEMA_IfcProduct_ObjectPlacement_IS_OPTIONAL
#define SCHEMA_IfcProduct_HAS_Representation
#define SCHEMA_IfcProduct_Representation_IS_OPTIONAL
#define SCHEMA_IfcProduct_HAS_ReferencedBy
#define SCHEMA_IfcProduct_HAS_PositionedRelativeTo
#define SCHEMA_HAS_IfcProductDefinitionShape
#define SCHEMA_IfcProductDefinitionShape_HAS_ShapeOfProduct
#define SCHEMA_IfcProductDefinitionShape_HAS_HasShapeAspects
#define SCHEMA_HAS_IfcProductRepresentation
#define SCHEMA_IfcProductRepresentation_HAS_Name
#define SCHEMA_IfcProductRepresentation_Name_IS_OPTIONAL
@@ -2212,6 +2319,8 @@
#define SCHEMA_IfcProfileDef_HAS_ProfileType
#define SCHEMA_IfcProfileDef_HAS_ProfileName
#define SCHEMA_IfcProfileDef_ProfileName_IS_OPTIONAL
#define SCHEMA_IfcProfileDef_HAS_HasExternalReference
#define SCHEMA_IfcProfileDef_HAS_HasProperties
#define SCHEMA_HAS_IfcProfileProperties
#define SCHEMA_IfcProfileProperties_HAS_ProfileDefinition
#define SCHEMA_HAS_IfcProject
@@ -2237,7 +2346,14 @@
#define SCHEMA_IfcProperty_HAS_Name
#define SCHEMA_IfcProperty_HAS_Description
#define SCHEMA_IfcProperty_Description_IS_OPTIONAL
#define SCHEMA_IfcProperty_HAS_PartOfPset
#define SCHEMA_IfcProperty_HAS_PropertyForDependance
#define SCHEMA_IfcProperty_HAS_PropertyDependsOn
#define SCHEMA_IfcProperty_HAS_PartOfComplex
#define SCHEMA_IfcProperty_HAS_HasConstraints
#define SCHEMA_IfcProperty_HAS_HasApprovals
#define SCHEMA_HAS_IfcPropertyAbstraction
#define SCHEMA_IfcPropertyAbstraction_HAS_HasExternalReferences
#define SCHEMA_HAS_IfcPropertyBoundedValue
#define SCHEMA_IfcPropertyBoundedValue_HAS_UpperBoundValue
#define SCHEMA_IfcPropertyBoundedValue_UpperBoundValue_IS_OPTIONAL
@@ -2248,6 +2364,8 @@
#define SCHEMA_IfcPropertyBoundedValue_HAS_SetPointValue
#define SCHEMA_IfcPropertyBoundedValue_SetPointValue_IS_OPTIONAL
#define SCHEMA_HAS_IfcPropertyDefinition
#define SCHEMA_IfcPropertyDefinition_HAS_HasContext
#define SCHEMA_IfcPropertyDefinition_HAS_HasAssociations
#define SCHEMA_HAS_IfcPropertyDependencyRelationship
#define SCHEMA_IfcPropertyDependencyRelationship_HAS_DependingProperty
#define SCHEMA_IfcPropertyDependencyRelationship_HAS_DependantProperty
@@ -2276,12 +2394,16 @@
#define SCHEMA_HAS_IfcPropertySet
#define SCHEMA_IfcPropertySet_HAS_HasProperties
#define SCHEMA_HAS_IfcPropertySetDefinition
#define SCHEMA_IfcPropertySetDefinition_HAS_DefinesType
#define SCHEMA_IfcPropertySetDefinition_HAS_IsDefinedBy
#define SCHEMA_IfcPropertySetDefinition_HAS_DefinesOccurrence
#define SCHEMA_HAS_IfcPropertySetTemplate
#define SCHEMA_IfcPropertySetTemplate_HAS_TemplateType
#define SCHEMA_IfcPropertySetTemplate_TemplateType_IS_OPTIONAL
#define SCHEMA_IfcPropertySetTemplate_HAS_ApplicableEntity
#define SCHEMA_IfcPropertySetTemplate_ApplicableEntity_IS_OPTIONAL
#define SCHEMA_IfcPropertySetTemplate_HAS_HasPropertyTemplates
#define SCHEMA_IfcPropertySetTemplate_HAS_Defines
#define SCHEMA_HAS_IfcPropertySingleValue
#define SCHEMA_IfcPropertySingleValue_HAS_NominalValue
#define SCHEMA_IfcPropertySingleValue_NominalValue_IS_OPTIONAL
@@ -2301,6 +2423,8 @@
#define SCHEMA_IfcPropertyTableValue_HAS_CurveInterpolation
#define SCHEMA_IfcPropertyTableValue_CurveInterpolation_IS_OPTIONAL
#define SCHEMA_HAS_IfcPropertyTemplate
#define SCHEMA_IfcPropertyTemplate_HAS_PartOfComplexTemplate
#define SCHEMA_IfcPropertyTemplate_HAS_PartOfPsetTemplate
#define SCHEMA_HAS_IfcPropertyTemplateDefinition
#define SCHEMA_HAS_IfcProtectiveDevice
#define SCHEMA_IfcProtectiveDevice_HAS_PredefinedType
@@ -2660,9 +2784,11 @@
#define SCHEMA_HAS_IfcRelSpaceBoundary1stLevel
#define SCHEMA_IfcRelSpaceBoundary1stLevel_HAS_ParentBoundary
#define SCHEMA_IfcRelSpaceBoundary1stLevel_ParentBoundary_IS_OPTIONAL
#define SCHEMA_IfcRelSpaceBoundary1stLevel_HAS_InnerBoundaries
#define SCHEMA_HAS_IfcRelSpaceBoundary2ndLevel
#define SCHEMA_IfcRelSpaceBoundary2ndLevel_HAS_CorrespondingBoundary
#define SCHEMA_IfcRelSpaceBoundary2ndLevel_CorrespondingBoundary_IS_OPTIONAL
#define SCHEMA_IfcRelSpaceBoundary2ndLevel_HAS_Corresponds
#define SCHEMA_HAS_IfcRelVoidsElement
#define SCHEMA_IfcRelVoidsElement_HAS_RelatingBuildingElement
#define SCHEMA_IfcRelVoidsElement_HAS_RelatedOpeningElement
@@ -2676,20 +2802,29 @@
#define SCHEMA_IfcRepresentation_HAS_RepresentationType
#define SCHEMA_IfcRepresentation_RepresentationType_IS_OPTIONAL
#define SCHEMA_IfcRepresentation_HAS_Items
#define SCHEMA_IfcRepresentation_HAS_RepresentationMap
#define SCHEMA_IfcRepresentation_HAS_LayerAssignments
#define SCHEMA_IfcRepresentation_HAS_OfProductRepresentation
#define SCHEMA_HAS_IfcRepresentationContext
#define SCHEMA_IfcRepresentationContext_HAS_ContextIdentifier
#define SCHEMA_IfcRepresentationContext_ContextIdentifier_IS_OPTIONAL
#define SCHEMA_IfcRepresentationContext_HAS_ContextType
#define SCHEMA_IfcRepresentationContext_ContextType_IS_OPTIONAL
#define SCHEMA_IfcRepresentationContext_HAS_RepresentationsInContext
#define SCHEMA_HAS_IfcRepresentationItem
#define SCHEMA_IfcRepresentationItem_HAS_LayerAssignment
#define SCHEMA_IfcRepresentationItem_HAS_StyledByItem
#define SCHEMA_HAS_IfcRepresentationMap
#define SCHEMA_IfcRepresentationMap_HAS_MappingOrigin
#define SCHEMA_IfcRepresentationMap_HAS_MappedRepresentation
#define SCHEMA_IfcRepresentationMap_HAS_HasShapeAspects
#define SCHEMA_IfcRepresentationMap_HAS_MapUsage
#define SCHEMA_HAS_IfcResource
#define SCHEMA_IfcResource_HAS_Identification
#define SCHEMA_IfcResource_Identification_IS_OPTIONAL
#define SCHEMA_IfcResource_HAS_LongDescription
#define SCHEMA_IfcResource_LongDescription_IS_OPTIONAL
#define SCHEMA_IfcResource_HAS_ResourceOf
#define SCHEMA_HAS_IfcResourceApprovalRelationship
#define SCHEMA_IfcResourceApprovalRelationship_HAS_RelatedResourceObjects
#define SCHEMA_IfcResourceApprovalRelationship_HAS_RelatingApproval
@@ -2817,7 +2952,9 @@
#define SCHEMA_IfcShapeAspect_HAS_ProductDefinitional
#define SCHEMA_IfcShapeAspect_HAS_PartOfProductDefinitionShape
#define SCHEMA_IfcShapeAspect_PartOfProductDefinitionShape_IS_OPTIONAL
#define SCHEMA_IfcShapeAspect_HAS_HasExternalReferences
#define SCHEMA_HAS_IfcShapeModel
#define SCHEMA_IfcShapeModel_HAS_OfShapeAspect
#define SCHEMA_HAS_IfcShapeRepresentation
#define SCHEMA_HAS_IfcShellBasedSurfaceModel
#define SCHEMA_IfcShellBasedSurfaceModel_HAS_SbsmBoundary
@@ -2875,6 +3012,8 @@
#define SCHEMA_IfcSpace_PredefinedType_IS_OPTIONAL
#define SCHEMA_IfcSpace_HAS_ElevationWithFlooring
#define SCHEMA_IfcSpace_ElevationWithFlooring_IS_OPTIONAL
#define SCHEMA_IfcSpace_HAS_HasCoverings
#define SCHEMA_IfcSpace_HAS_BoundedBy
#define SCHEMA_HAS_IfcSpaceHeater
#define SCHEMA_IfcSpaceHeater_HAS_PredefinedType
#define SCHEMA_IfcSpaceHeater_PredefinedType_IS_OPTIONAL
@@ -2887,6 +3026,9 @@
#define SCHEMA_HAS_IfcSpatialElement
#define SCHEMA_IfcSpatialElement_HAS_LongName
#define SCHEMA_IfcSpatialElement_LongName_IS_OPTIONAL
#define SCHEMA_IfcSpatialElement_HAS_ContainsElements
#define SCHEMA_IfcSpatialElement_HAS_ServicedBySystems
#define SCHEMA_IfcSpatialElement_HAS_ReferencesElements
#define SCHEMA_HAS_IfcSpatialElementType
#define SCHEMA_IfcSpatialElementType_HAS_ElementType
#define SCHEMA_IfcSpatialElementType_ElementType_IS_OPTIONAL
@@ -2934,6 +3076,7 @@
#define SCHEMA_HAS_IfcStructuralActivity
#define SCHEMA_IfcStructuralActivity_HAS_AppliedLoad
#define SCHEMA_IfcStructuralActivity_HAS_GlobalOrLocal
#define SCHEMA_IfcStructuralActivity_HAS_AssignedToStructuralItem
#define SCHEMA_HAS_IfcStructuralAnalysisModel
#define SCHEMA_IfcStructuralAnalysisModel_HAS_PredefinedType
#define SCHEMA_IfcStructuralAnalysisModel_HAS_OrientationOf2DPlane
@@ -2947,6 +3090,7 @@
#define SCHEMA_HAS_IfcStructuralConnection
#define SCHEMA_IfcStructuralConnection_HAS_AppliedCondition
#define SCHEMA_IfcStructuralConnection_AppliedCondition_IS_OPTIONAL
#define SCHEMA_IfcStructuralConnection_HAS_ConnectsStructuralMembers
#define SCHEMA_HAS_IfcStructuralConnectionCondition
#define SCHEMA_IfcStructuralConnectionCondition_HAS_Name
#define SCHEMA_IfcStructuralConnectionCondition_Name_IS_OPTIONAL
@@ -2963,6 +3107,7 @@
#define SCHEMA_HAS_IfcStructuralCurveReaction
#define SCHEMA_IfcStructuralCurveReaction_HAS_PredefinedType
#define SCHEMA_HAS_IfcStructuralItem
#define SCHEMA_IfcStructuralItem_HAS_AssignedStructuralActivity
#define SCHEMA_HAS_IfcStructuralLinearAction
#define SCHEMA_HAS_IfcStructuralLoad
#define SCHEMA_IfcStructuralLoad_HAS_Name
@@ -2982,6 +3127,8 @@
#define SCHEMA_IfcStructuralLoadGroup_Coefficient_IS_OPTIONAL
#define SCHEMA_IfcStructuralLoadGroup_HAS_Purpose
#define SCHEMA_IfcStructuralLoadGroup_Purpose_IS_OPTIONAL
#define SCHEMA_IfcStructuralLoadGroup_HAS_SourceOfResultGroup
#define SCHEMA_IfcStructuralLoadGroup_HAS_LoadGroupFor
#define SCHEMA_HAS_IfcStructuralLoadLinearForce
#define SCHEMA_IfcStructuralLoadLinearForce_HAS_LinearForceX
#define SCHEMA_IfcStructuralLoadLinearForce_LinearForceX_IS_OPTIONAL
@@ -3044,6 +3191,7 @@
#define SCHEMA_IfcStructuralLoadTemperature_HAS_DeltaTZ
#define SCHEMA_IfcStructuralLoadTemperature_DeltaTZ_IS_OPTIONAL
#define SCHEMA_HAS_IfcStructuralMember
#define SCHEMA_IfcStructuralMember_HAS_ConnectedBy
#define SCHEMA_HAS_IfcStructuralPlanarAction
#define SCHEMA_HAS_IfcStructuralPointAction
#define SCHEMA_HAS_IfcStructuralPointConnection
@@ -3056,6 +3204,7 @@
#define SCHEMA_IfcStructuralResultGroup_HAS_ResultForLoadGroup
#define SCHEMA_IfcStructuralResultGroup_ResultForLoadGroup_IS_OPTIONAL
#define SCHEMA_IfcStructuralResultGroup_HAS_IsLinear
#define SCHEMA_IfcStructuralResultGroup_HAS_ResultGroupFor
#define SCHEMA_HAS_IfcStructuralSurfaceAction
#define SCHEMA_IfcStructuralSurfaceAction_HAS_ProjectedOrTrue
#define SCHEMA_IfcStructuralSurfaceAction_ProjectedOrTrue_IS_OPTIONAL
@@ -3152,6 +3301,8 @@
#define SCHEMA_IfcSurfaceTexture_TextureTransform_IS_OPTIONAL
#define SCHEMA_IfcSurfaceTexture_HAS_Parameter
#define SCHEMA_IfcSurfaceTexture_Parameter_IS_OPTIONAL
#define SCHEMA_IfcSurfaceTexture_HAS_IsMappedBy
#define SCHEMA_IfcSurfaceTexture_HAS_UsedInStyles
#define SCHEMA_HAS_IfcSweptAreaSolid
#define SCHEMA_IfcSweptAreaSolid_HAS_SweptArea
#define SCHEMA_IfcSweptAreaSolid_HAS_Position
@@ -3178,6 +3329,7 @@
#define SCHEMA_HAS_IfcSwitchingDeviceType
#define SCHEMA_IfcSwitchingDeviceType_HAS_PredefinedType
#define SCHEMA_HAS_IfcSystem
#define SCHEMA_IfcSystem_HAS_ServicesBuildings
#define SCHEMA_HAS_IfcSystemFurnitureElement
#define SCHEMA_IfcSystemFurnitureElement_HAS_PredefinedType
#define SCHEMA_IfcSystemFurnitureElement_PredefinedType_IS_OPTIONAL
@@ -3329,6 +3481,8 @@
#define SCHEMA_IfcTendonType_SheathDiameter_IS_OPTIONAL
#define SCHEMA_HAS_IfcTessellatedFaceSet
#define SCHEMA_IfcTessellatedFaceSet_HAS_Coordinates
#define SCHEMA_IfcTessellatedFaceSet_HAS_HasColours
#define SCHEMA_IfcTessellatedFaceSet_HAS_HasTextures
#define SCHEMA_HAS_IfcTessellatedItem
#define SCHEMA_HAS_IfcTextLiteral
#define SCHEMA_IfcTextLiteral_HAS_Literal
@@ -3401,6 +3555,7 @@
#define SCHEMA_IfcTimeSeries_UserDefinedDataOrigin_IS_OPTIONAL
#define SCHEMA_IfcTimeSeries_HAS_Unit
#define SCHEMA_IfcTimeSeries_Unit_IS_OPTIONAL
#define SCHEMA_IfcTimeSeries_HAS_HasExternalReference
#define SCHEMA_HAS_IfcTimeSeriesValue
#define SCHEMA_IfcTimeSeriesValue_HAS_ListValues
#define SCHEMA_HAS_IfcTopologicalRepresentationItem
@@ -3457,6 +3612,7 @@
#define SCHEMA_IfcTypeObject_ApplicableOccurrence_IS_OPTIONAL
#define SCHEMA_IfcTypeObject_HAS_HasPropertySets
#define SCHEMA_IfcTypeObject_HasPropertySets_IS_OPTIONAL
#define SCHEMA_IfcTypeObject_HAS_Types
#define SCHEMA_HAS_IfcTypeProcess
#define SCHEMA_IfcTypeProcess_HAS_Identification
#define SCHEMA_IfcTypeProcess_Identification_IS_OPTIONAL
@@ -3464,11 +3620,13 @@
#define SCHEMA_IfcTypeProcess_LongDescription_IS_OPTIONAL
#define SCHEMA_IfcTypeProcess_HAS_ProcessType
#define SCHEMA_IfcTypeProcess_ProcessType_IS_OPTIONAL
#define SCHEMA_IfcTypeProcess_HAS_OperatesOn
#define SCHEMA_HAS_IfcTypeProduct
#define SCHEMA_IfcTypeProduct_HAS_RepresentationMaps
#define SCHEMA_IfcTypeProduct_RepresentationMaps_IS_OPTIONAL
#define SCHEMA_IfcTypeProduct_HAS_Tag
#define SCHEMA_IfcTypeProduct_Tag_IS_OPTIONAL
#define SCHEMA_IfcTypeProduct_HAS_ReferencedBy
#define SCHEMA_HAS_IfcTypeResource
#define SCHEMA_IfcTypeResource_HAS_Identification
#define SCHEMA_IfcTypeResource_Identification_IS_OPTIONAL
@@ -3476,6 +3634,7 @@
#define SCHEMA_IfcTypeResource_LongDescription_IS_OPTIONAL
#define SCHEMA_IfcTypeResource_HAS_ResourceType
#define SCHEMA_IfcTypeResource_ResourceType_IS_OPTIONAL
#define SCHEMA_IfcTypeResource_HAS_ResourceOf
#define SCHEMA_HAS_IfcUShapeProfileDef
#define SCHEMA_IfcUShapeProfileDef_HAS_Depth
#define SCHEMA_IfcUShapeProfileDef_HAS_FlangeWidth