ARCHITECTURE LAYER New            
  Schema   Changed   affects P21 file -->  
  Entity / Function   Deleted     not upward compatible
      Attribute / WR       Usage Change description    
         
  IfcGeometricConstraintResource        
  IfcPointOrVertexPoint x   New select type to enable connection between geometry and topology    
  IfcCurveOrEdgeCurve x   New select type to enable connection between geometry and topology    
  IfcSurfaceOrFaceSurface x   New select type to enable connection between geometry and topology    
  IfcConnectionPointEccentricity x   New entity to support eccentricity between structural items x  
  EccentricityInX x   New attribute    
  EccentricityInY x   New attribute    
  EccentricityInZ x   New attribute    
  IfcConnectionPointGeometry     x  
  PointOnRelatedElement   x   attribute type changed to IfcPointOrVertexPoint    
  PointOnRelatingElement   x   attribute type changed to IfcPointOrVertexPoint    
  IfcConnectionCurveGeometry     x  
  PointOnRelatedElement   x   attribute type changed to IfcCurveOrEdgeCurve    
  PointOnRelatingElement   x   attribute type changed to IfcCurveOrEdgeCurve    
  IfcConnectionSurfaceGeometry     x  
  PointOnRelatedElement   x   attribute type changed to IfcSurfaceOrFaceSurface    
  PointOnRelatingElement   x   attribute type changed to IfcSurfaceOrFaceSurface    
  IfcGridAxis        
  (INV)PartOfU x   new inverse relationship to IfcGrid    
  (INV)PartOfV x   new inverse relationship to IfcGrid    
  (INV)PartOfW x   new inverse relationship to IfcGrid    
  (INV)HasIntersections x   new inverse relationship to IfcVirtualGridIntersection    
  IfcObjectPlacement        
  (INV) PlacesObjects x   new inverse relationship to IfcProduct    
         
  IfcGeometricModelResource        
  IfcBlock x   new entity to describe CSG primitives x  
  XLength x   new attribute    
  YLength x   new attribute    
  ZLength x   new attribute    
  IfcBooleanOperand   x   select enhanced to include IfcCsgPrimitive3D    
  IfcCsgSelect   x   select enhanced to include IfcCsgPrimitive3D    
  IfcCsgPrimitive3D x   new entity to describe CSG primitives x  
  Position x   new attribute    
  IfcPolygonalBoundedHalfSpace        
  PolygonalBoundary   x   attribute type changed to IfcBoundedCurve x  
  IfcRectangularPyramid x   new entity to describe CSG primitives x  
  XLength x   new attribute    
  YLength x   new attribute    
  Height x   new attribute    
  IfcRightCircularCylinder x   new entity to describe CSG primitives x  
  Height x   new attribute    
  Radius x   new attribute    
  IfcRightCircularCone x   new entity to describe CSG primitives x  
  Height x   new attribute    
  BottomRadius x   new attribute    
  IfcSphere x   new entity to describe CSG primitives x  
  Radius x   new attribute    
  IfcSweptAreaSolid        
  WR1   x   rule deleted, derived profile can be used    
         
  IfcGeometryResource        
  IfcRepresentationItem        
  (INV) StyledByItem x   Inverse attribute added to access the presentation from geometry    
  (INV) LayerAssignments x   Inverse attribute added to access the layer from geometry    
  IfcVectorDifference   x   function corrected    
         
  IfcMaterialResource        
  IfcMaterial        
  (INV) HasRepresentation x   Inverse attribute added to access the presentation from material    
         
  IfcMeasureResource        
  IfcUnitAssignment        
  WR01 x   WR added to prevent duplicated units definitions    
  IfcCorrectUnitAssignment x   new function to secure non-duplicated unit assignments    
         
  IfcPresentationAppearanceResource        
  IfcBlobTexture x   New entity to have a pixel file included as a blob x x
  IfcCharacterSpacingSelect   x   deleted, funtionality moved to IfcSizeSelect   x
  IfcCharacterStyleSelect   x   select item changed from IfcColour to IfcTextStyleForDefinedFont x x
  IfcCurveStyle   x only global units are used and measures are given in target plot scale    
  Name   x   deleted, now moved to supertype IfcPresentationStyle x x
  WR11 x   WR added to enforce a positive length measure or 'by layer'    
  IfcCurveStyleFontPattern        
  VisibleSegmentLength   x   attribute type changed to IfcLengthMeasure    
  WR01 x   WR added to ensure a value >= 0.    
  IfcExternallyDefinedSurfaceStyle   x   correction of misspellt name IfcExternallyDefinedSufaceStyle x x
  IfcFillAreaStyle        
  Name   x   deleted, now moved to supertype IfcPresentationStyle x  
  WR12 x   rule added to restrict externally defined hatch styles to one instance    
  WR13 x   rule added to allow either external defined or internal defined hatch styles    
  IfcFillAreaStyleHatching        
  PatternStart   x   attribute has been made optional x  
  PointOfReferenceHatchLine   x   attribute has been made optional x  
  WR21 x   rule added to control hatch line distance    
  WR22 x   rule added to enforce 2D point    
  WR23 x   rule added to enforce 2D point    
  IfcHatchLineDistanceSelect x   new SELECT item added x x
  IfcPixelTexture        
  Pixel   x   Datatype changed to Binary for better encoding of the hex values x  
  IfcPresentationStyle x   New abstract supertype    
  Name x   New attribute, promoted from subtypes    
  IfcSizeSelect   x   SELECT item IfcMeasureWithUnit removed, IfcDescriptiveMeasure added x x
  IfcStyledItem        
  Item   x   attribute made optional x  
  WR12 x   rule added to prevent an IfcStyledItem to style another IfcStyledItem    
  IfcSurfaceStyle        
  Name   x   deleted, now moved to supertype IfcPresentationStyle x x
  WR11 x   rule added    
  WR12 x   rule added    
  WR13 x   rule added    
  WR14 x   rule added    
  WR15 x   rule added    
  IfcSurfaceStyleWithTextures        
  Textures   x   aggregate changed to LIST    
  HasTextureCoordinates   x   inverse attribute deleted    
  IfcSymbolStyle        
  Name   x   deleted, now moved to supertype IfcPresentationStyle    
  IfcTextAlignment   x   definition and where rule changed at the defined type    
  IfcTextDecoration x   new defined type    
  IfcTextTransformation x   new defined type    
  IfcTextStyle   x   x x
  Name   x   deleted, now moved to supertype IfcPresentationStyle x  
  TextFontStyle x   new attribute type:TextFontSelect added for reusable font definiton    
  TextStyle   x   attribute TextStyles renamed intoTextStyle, now optional 0:1    
  TextCharacterAppearance   x   attribute CharacterGlypphArearance renamed    
  IfcTextStyleSelect   x   removing IfcTextStyleWithMirror, adding IfcTextStyleModel    
  IfcTextStyleForDefinedFont x   new entity combining text color and background color x x
  IfcTextStyleTextModel x   new entity to allow for text box and spacing definitions following CSS model x  
  IfcTextStyleWithBoxCharacteristics   x   x x
  CharacterSpacing x   new attribute     
  IfcTextStyleWithMirror   x   deleted, no occurrence specific information in reusable font definition   x
  IfcTextStyleWithSpacing   x   deleted, functionality moved to IfcTextStyleWithBoxCharacteristics.   x
  IfcTextureCoordinate     moved to IfcPresentationDefinitionResource schema    
  Texture   x   attribute Texture deleted x x
         
  IfcPresentationDefinitionResource        
  IfcAnnotationCurveOccurrence        
  WR31 x   WR added (compliance with P46 original)    
  IfcAnnotationFillArea         
  Boundaries   x   attribute replaced by a differentiation of inner and outer boundaries x x
  OuterBoundary x   new attribute    
  InnerBoundaries x   new attribute    
  IfcAnnotationFillAreaOccurrence        
  FillStyleTarget   x   attribute made optional x  
  GlobalOrLocal x   new attribute to determine global or local origin for hatching x x
  WR31 x   WR added (compliance with P46 original)    
  IfcAnnotationSurface x   New entity for solids and surfaces with texture coordinates x  
  TextureCoordinates x   New attribute to assign texture coordinates    
  IfcAnnotationSurfaceOccurrence        
  WR31 x   WR added (compliance with P46 original)    
  IfcAnnotationSymbolOccurrence        
  WR31 x   WR added (compliance with P46 original)    
  IfcAnnotationTextOccurrence        
  WR31 x   WR added (compliance with P46 original)    
  IfcBoxAlignment x   new defined type    
  IfcTextFontSelect   x   renamed from IfcFontSelect    
  IfcTextLiteral       x
  Font   x   attribute Font deleted, now handled at IfcTextStyle    
  Alignment   x   deleted, moved down to subtype IfcTextliteralWithExtent    
  IfcTextLiteralWithExtent       x
  Alignment x   new attribute, demoted from supertype IfcTextLiteral    
  WR31 x   WR added (disallow IfcPlanarBox for extent)    
  IfcTextureMap        
  TextureMaps x   New attribute to assign texture mapping    
  VertexBasedTextures   x   Attribute deleted    
  IfcVertexBasedTextureMap        
  VertexBasedGeometry   x   attribute deleted (moved to IfcTextureMap) x x
  TexturePoints x   attribute added x x
  TextureVertices   x   list changed from 1:? to 3:?    
         
  IfcPresentationDimensioningResource        
  IfcDimensionPair x   new entity x  
         
  IfcPresentationOrganisationResource        
  IfcAnnotationFillAreaOccurrence        
  FillStyleTarget   x   attribute made optional x  
  GlobalOrLocal x   attribute added   x
  IfcPresentationLayerAssignment        
  Identifier x   added and promoted from subtype, was LayerNumber    
  IfcPresentationLayerWithStyle   x   remaned from IfcPresentationLayerAssignmentWithStyle x x
  LayerNumber   x   promoted to supertype    
  LayerOnInAllViews   x   deleted, since IFC does not define paper space    
  LayerFrozenInAllViews   x   deleted, since IFC does not define paper space    
  LayerColour   x   changed into a more general LayerStyle    
  LayerCurveWidth   x   deleted, covered by LayerStyle    
  LayerCurveFont   x   deleted, covered by LayerStyle    
         
  IfcPresentationResource        
  IfcFontStyle x   new defined type    
  IfcFontVariant x   new defined type    
  IfcFontWeight x   new defined type    
  IfcPreDefinedTextFont   x   subtype IfcTextStyeFontModel added x  
  IfcTextFontName x   new defined type    
  IfcTextFontSelect   x   SELECT type renamed from IfcFontSelect    
  IfcTextStyleFontModel x   new entity to allow for text font definitions following CSS model x  
         
  IfcProfilePropertyResource        
  IfcStructuralProfileProperties        
  CentreOfGravityInX x   new attribute, moved from various profile definitions x x
  CentreOfGravityInY x   new attribute, moved from various profile definitions x x
         
  IfcProfileResource        
  IfcParameterizedProfileDef   x all profiles now used as being centric to the bounding box    
  IfcArbitraryOpenProfileDef     new subtype IfcCenterLineProfileDef added    
  WR11   x   WR to allow area profile type for subtype    
  IfcAsymmetricIShapeProfileDef        
  CentreOfGravityInY   x   attribute made optional, profile inserted now at centre of bounding box x  
  IfcCenterLineProfileDef x   new profile for thin metal plates x  
  Thickness x   new attribute    
  IfcCraneRailAShapeProfileDef        
  CentreOfGravityInY    x   attribute made optional, profile inserted now at centre of bounding box x  
  IfcCraneRailFShapeProfileDef         
  CentreOfGravityInY    x   attribute made optional, profile inserted now at centre of bounding box x  
  IfcCShapeProfileDef        
  CentreOfGravityInX    x   attribute made optional, profile inserted now at centre of bounding box x  
  IfcLShapeProfileDef        
  CentreOfGravityInX    x   attribute made optional, profile inserted now at centre of bounding box x  
  WR3   x   WR deleted    
  IfcTShapeProfileDef        
  CentreOfGravityInY   x   attribute made optional, profile inserted now at centre of bounding box x  
  IfcUShapeProfileDef        
  CentreOfGravityInX    x   attribute made optional, profile inserted now at centre of bounding box x  
         
  IfcPropertyResource        
  IfcPropertySingleValue