Knowledge

Industry Foundation Classes

Source 📝

195:
Initially named the Industry Alliance for Interoperability, the Alliance opened membership to all interested parties in September, 1995 and changed its name in 1997 to the International Alliance for Interoperability. The new Alliance was reconstituted as a non-profit industry-led organization, with the goal of publishing the Industry Foundation Class (IFC) as a neutral AEC product model responding to the AEC building lifecycle. A further name change occurred in 2005, and the IFC specification is now developed and maintained by
25: 176:
Defense client organisations require use of IFC BIM in all projects as well as many municipalities, private clients, contractors and designers have integrated IFC BIM in their business.. The popularity of the IFC data schema in construction has continued to grow, primarily for the purpose of exchanging geometry.
381:), along with attributes for name, description, and revision control. Non-rooted entities do not have identity and instances only exist if referenced from a rooted instance directly or indirectly. IfcRoot is subdivided into three abstract concepts: object definitions, relationships, and property sets: 582:
In addition to project-specific information, an IfcProject may also reference external projects from which shared definitions may be imported such as product types. Each external project is encapsulated using IfcProjectLibrary along with IfcRelAssociatesLibrary and IfcLibraryInformation to identify
400:
IfcObjectDefinition is split into object occurrences and object types. IfcObject captures object occurrences such as a product installation having serial number and physical placement. IfcTypeObject captures type definitions (or templates) such as a product type having a particular model number and
347:
format which, while human-readable, suffers from common ASCII file issues, in that file-sizes are bloated, files must be read sequentially from start to finish, mid-file extraction is not possible, files are slow to parse, and definitions are non-hierarchical. In addition to ifcXML and ifcZIP, modern
569:
IfcResource is the base class for resources and is subdivided into materials, labor, equipment, subcontracts, crews, and more. Resources may have various costs and calendars of availability. Resources may be nested into sub-resources for granular allocation. Resources may be assigned to processes
578:
IfcProject encapsulates an overall project and indicates the project name, description, default units, currency, coordinate system, and other contextual information. A valid IFC file must always include exactly one IfcProject instance, from which all other objects relate directly or indirectly. A
194:
formed an industry consortium to advise the company on the development of a set of C++ classes that could support integrated application development. Twelve US companies joined the consortium. These companies included AT&T, HOK Architects, Honeywell, Carrier, Tishman and Butler Manufacturing.
175:
government in 2010 made the use of IFC format(s) compulsory for publicly aided building projects. In 2017 the Finnish state-owned facility management company Senate Properties started to demand use of IFC compatible software and BIM in all their projects. Also the Norwegian Government, Health and
471:
IfcProduct is the base class for all physical objects and is subdivided into spatial elements, physical elements, structural analysis items, and other concepts. Products may have associated materials, shape representations, and placement in space. Spatial elements include IfcSite, IfcBuilding,
454:
IfcPropertyDefinition captures dynamically extensible property sets. A property set contains one or more properties which may be a single value (e.g. string, number, unit measurement), a bounded value (having minimum and maximum), an enumeration, a list of values, a table of values, or a data
556:
IfcProcess is the base class for processes and is subdivided into tasks, events, and procedures. Processes may have durations and be scheduled to occur at specific time periods. Processes may be sequenced such that a successor task may start after a predecessor task finishes, following the
484:) have a concept of ports where elements may have specific connections for various services, and connected together using cables, pipes, or ducts to form a system. Various connectivity relationships are used for building elements such as walls having openings filled by doors or windows. 590:
where any IfcRoot-based entity has a unique identifier and may be marked as added, modified, deleted, or having no change. Such capability allows multiple IFC files to be merged deterministically, ensuring data integrity without human intervention.
547:
Quantities may be defined for take-off purposes such as Gross Area, Gross Volume, Gross Weight, Net Weight, etc. IFC defines various quantities specific to each element type and the method of calculation according to geometry and relationships.
373:
consisting of several hundred entities organized into an object-based inheritance hierarchy. Examples of entities include building elements such as IfcWall, geometry such as IfcExtrudedAreaSolid, and basic constructs such as IfcCartesianPoint.
296:("STEP-XML"), having file extension ".ifcXML". This format is suitable for interoperability with XML tools and exchanging partial building models. Due to the large size of typical building models, this format is less common in practice. 356:
v5, binary). In 2020, buildingSmart had two JSON projects underway: ifcJSON v4 (a direct mapping from EXPRESS-based IFC v4) and ifcJSON v5, plus a research project experimenting with turning IFC into a binary format.
285:("STEP-File"), where each line typically consists of a single object record, and having file extension ".ifc". This is the most widely used IFC format, having the advantage of compact size yet readable text. 401:
common shape. Occurrences and types are further subdivided into six fundamental concepts: actors ("who"), controls ("why"), groups ("what"), products ("where"), processes ("when"), and resources ("how").
436:
IfcRelAssigns captures assignment relationships where one object consumes the services of another object, such as a labor resource assigned to a task, or a task assigned to a building element.
504:
Representations may be defined for explicit 3D shape, and optionally as parametric constraints. Each representation is identified by IfcShapeRepresentation with a well-known name.
876: 429:
IfcRelationship captures relationships among objects. There are five fundamental relationship types: composition, assignment, connectivity, association, and definition.
433:
IfcRelDecomposes captures a whole-part relationship having exclusive containment such as subdividing a building into floors and rooms or a wall into studs and sheathing.
377:
At the most abstract level, IFC divides all entities into rooted and non-rooted entities. Rooted entities derive from IfcRoot and have a concept of identity (having a
925: 136:
It is a platform-neutral, open data schema specification that is not controlled by a single vendor or group of vendors. It is an object-based data schema with a
561:. Processes may be nested into sub-processes for summary roll-up. Processes may be assigned to products indicating the output produced by the work performed. 455:
structure. While IFC defines several hundred property sets for specific types, custom property sets may be defined by application vendors or end users.
46: 39: 472:
IfcBuildingStorey, and IfcSpace. Physical building elements include IfcWall, IfcBeam, IfcDoor, IfcWindow, IfcStair, etc. Distribution elements (
336: 751: 89: 918: 659: 676: 61: 873: 832: 68: 491:
IfcMaterial indicates a specific material, with optional properties (e.g. mechanical, thermal) and styles (e.g. colors, textures).
1276: 911: 442:
IfcRelAssociates indicates external references for an object such as an external IFC library file where an object is defined.
439:
IfcRelConnects indicates connectivity between objects such as a floor slab connected to a beam or a pipe connected to a sink.
75: 520:(CSG), or swept profiles. It may be defined directly or derived by applying material definitions to other representations. 706: 529:'Profile' indicates a side profile for opening elements (e.g. door, window) for which material constituents are bounded. 57: 605: 579:
project may include multiple buildings, multiple participants, and/or multiple phases according to the particular use.
523:'Axis' indicates a path for linear elements (e.g. wall, beam, pipe) for which material profiles or layers are aligned. 1170: 1160: 638: 108: 164:(BIM) based projects. The IFC model specification is open and available. It is registered by ISO and is an official 1215: 500:
IfcMaterialConstituentSet captures a set of constituents, each indicating a material used at a named shape aspect.
366: 526:'FootPrint' indicates a boundary for planar elements (e.g. slab, staircase) for which material layers are bounded. 730: 487:
Materials may be defined for products as a whole, or as layers, profiles, or constituents for specified parts.
318: 311: 277:
IFC defines multiple file formats that may be used, supporting various encodings of the same underlying data.
1266: 934: 303:
compressed format consisting of an embedded IFC-SPF file or IFC-XML file and having file extension ".ifcZIP".
161: 420:
IfcResource represents usage of something with limited availability such as materials, labor, and equipment.
497:
IfcMaterialProfileSet captures a set of profiles, each indicating a material of a specified cross-section.
517: 82: 892: 349: 445:
IfcRelDefines indicates an instance-of relationship such as a pipe segment being of a particular type.
1230: 897: 370: 414:
IfcProduct represents occurrences in space such as physical building elements and spatial locations.
1240: 610: 494:
IfcMaterialLayerSet captures a list of layers, each indicating a material of a specified thickness.
353: 332: 759: 532:'SurveyPoints' indicates a set of points for surface elements (e.g. site) for describing contours. 780: 35: 864: 133:
data schema intended for description of architectural, building and construction industry data.
1245: 165: 663: 459:
IfcPropertySet represents a set of properties attached to an object occurrence or object type.
411:
IfcGroup represents collections of objects for particular purpose such as electrical circuits.
1220: 964: 684: 995: 558: 8: 840: 1079: 1000: 981: 615: 903: 1271: 807: 300: 130: 1129: 1124: 587: 145: 1084: 954: 880: 540:
IfcLocalPlacement indicates placement relative to an enclosing element hierarchy.
408:
IfcControl represents rules controlling time, cost, or scope such as work orders.
307: 462:
IfcPropertySetTemplate captures definitions of properties and their data types.
417:
IfcProcess represents occurrences in time such as tasks, events, and procedures.
1210: 1059: 543:
IfcGridPlacement indicates placement relative to a grid with user-defined axes.
391:
IfcPropertyDefinition captures dynamically extensible properties about objects.
144:(formerly the International Alliance for Interoperability, IAI) to facilitate 1260: 959: 348:
data formats include RDF/XML or Turtle (using the ifcOWL ontology), ifcJSON (
196: 185: 141: 1099: 293: 282: 157: 149: 1190: 1134: 989: 153: 1109: 1104: 1044: 985: 977: 808:"The Future of IFC: Enabling Partial BIM Model Exchange (June 8, 2020)" 536:
Placement may indicate position, vertical angle, and horizontal angle.
477: 137: 889: 865:
Sharing Your Model with IFC: An Introduction for Vectorworks Architect
1155: 1139: 707:"BIM, Construction and NBS: The End Of Babel - IFC promotional video" 24: 1089: 1074: 1064: 1049: 949: 481: 191: 385:
IfcObjectDefinition captures tangible object occurrences and types
1094: 1069: 1054: 1021: 972: 172: 1205: 1200: 1195: 1165: 600: 160:(AEC) industry, and is a commonly used collaboration format in 1225: 1119: 1004: 513: 509: 344: 1114: 473: 378: 325: 583:
the particular revision of the imported project library.
289: 508:'Body' indicates a 3D shape which may be represented by 933: 207:
The following IFC Specification versions are available
317:
IFC-RDF is a XML-based semantic data format that uses
570:
indicating tasks performed on behalf of a resource.
388:
IfcRelationship captures relationships among objects
633: 631: 869: 328:, a modern format often used by web applications. 1258: 628: 310:) is a textual semantic data format that uses 919: 704: 339:standard for STEP data representation in HDF. 171:Because of its focus on interoperability the 405:IfcActor represents people or organizations. 801: 799: 797: 926: 912: 833:"Start Page of IFC2x3 Final Documentation" 900:- Generate a spreadsheet from an IFC file 109:Learn how and when to remove this message 794: 449: 321:and is expressed in the ifcOWL ontology. 314:and is expressed in the ifcOWL ontology. 190:The IFC initiative began in 1994, when 1259: 395: 253:ifcXML1 for IFC2x and IFC2x Addendum 1 45:Please improve this article by adding 907: 202: 805: 281:IFC-SPF is a text format defined by 18: 885: 639:"Industry Foundation Classes (IFC)" 13: 606:Information Delivery Specification 424: 352:, broadly available) and ifcHDF5 ( 14: 1288: 858: 658:"Digital client demands scheme", 1216:Centre for Digital Built Britain 23: 711:Constructioncode.blogspot.co.uk 360: 272: 825: 773: 744: 723: 698: 669: 652: 1: 1277:Building information modeling 935:Building information modeling 731:"IFC Specifications Database" 621: 241:IFC2x2 Addendum 1 (July 2004) 238:ifcXML2 for IFC2x2 add1 (RC2) 162:Building information modeling 58:"Industry Foundation Classes" 47:secondary or tertiary sources 16:CAD data exchange file format 874:Bentley's IFC Position Paper 705:Stephen Hamil (2012-07-02). 683:. 2015-10-23. Archived from 564: 551: 7: 1236:Industry Foundation Classes 594: 573: 518:Constructive Solid Geometry 466: 217:IFC4.1 (2018-86): withdrawn 214:IFC4.2 (2019-04): withdrawn 123:Industry Foundation Classes 10: 1293: 898:IFC File Analyzer software 616:Green Building XML (gbXML) 350:JavaScript Object Notation 262:IFC 1.5.1 (September 1998) 183: 179: 1231:Geometric modeling kernel 1183: 1148: 1037: 1030: 1014: 942: 371:entity-relationship model 308:Terse RDF Triple Language 1241:BIM Collaboration Format 611:BIM Collaboration Format 354:Hierarchical Data Format 244:ifcXML2 for IFC2x2 (RC1) 265:IFC 1.5 (November 1997) 1246:Raster image processor 756:Buildingsmart-tech.org 235:IFC2x3 (February 2006) 166:International Standard 34:relies excessively on 1221:Computer-aided design 965:Cadwork informatik AG 890:DDS IFC Certification 450:IfcPropertyDefinition 232:ifcXML2x3 (June 2007) 1267:Industrial computing 996:Open Design Alliance 559:Critical Path Method 335:and is based on the 259:IFC 2.0 (March 1999) 220:IFC4 Add2 TC1 (2017) 396:IfcObjectDefinition 268:IFC 1.0 (June 1996) 982:Data Design System 879:2016-03-04 at the 292:format defined by 211:IFC4.3 Add2 (2024) 203:IFC Specifications 168:ISO 16739-1:2018. 1254: 1253: 1179: 1178: 586:Projects support 250:IFC 2x Addendum 1 229:IFC4 (March 2013) 131:CAD data exchange 119: 118: 111: 93: 1284: 1130:Trimble SketchUp 1125:Tekla Structures 1035: 1034: 1015:Free open-source 928: 921: 914: 905: 904: 888: 872: 852: 851: 849: 848: 839:. Archived from 829: 823: 822: 820: 818: 806:Grabowki, Ralf. 803: 792: 791: 789: 788: 777: 771: 770: 768: 767: 758:. Archived from 748: 742: 741: 739: 738: 727: 721: 720: 718: 717: 702: 696: 695: 693: 692: 677:"Sivua ei löydy" 673: 667: 656: 650: 649: 647: 646: 635: 588:revision control 226:IFC4 Add1 (2015) 223:IFC4 Add2 (2016) 146:interoperability 114: 107: 103: 100: 94: 92: 51: 27: 19: 1292: 1291: 1287: 1286: 1285: 1283: 1282: 1281: 1257: 1256: 1255: 1250: 1175: 1144: 1085:Digital Project 1026: 1010: 955:Bentley Systems 938: 932: 881:Wayback Machine 861: 856: 855: 846: 844: 831: 830: 826: 816: 814: 804: 795: 786: 784: 783:. buildingSMART 779: 778: 774: 765: 763: 750: 749: 745: 736: 734: 733:. buildingSMART 729: 728: 724: 715: 713: 703: 699: 690: 688: 675: 674: 670: 657: 653: 644: 642: 641:. buildingSMART 637: 636: 629: 624: 597: 576: 567: 554: 469: 452: 427: 425:IfcRelationship 398: 365:IFC defines an 363: 275: 205: 188: 182: 115: 104: 98: 95: 52: 50: 44: 40:primary sources 28: 17: 12: 11: 5: 1290: 1280: 1279: 1274: 1269: 1252: 1251: 1249: 1248: 1243: 1238: 1233: 1228: 1223: 1218: 1213: 1211:BIM Task Group 1208: 1203: 1198: 1193: 1187: 1185: 1184:Related topics 1181: 1180: 1177: 1176: 1174: 1173: 1168: 1163: 1158: 1152: 1150: 1146: 1145: 1143: 1142: 1137: 1132: 1127: 1122: 1120:Tekla BIMsight 1117: 1112: 1107: 1102: 1097: 1092: 1087: 1082: 1077: 1072: 1067: 1062: 1060:Autodesk Revit 1057: 1052: 1047: 1041: 1039: 1032: 1028: 1027: 1025: 1024: 1018: 1016: 1012: 1011: 1009: 1008: 998: 993: 975: 970: 967: 962: 957: 952: 946: 944: 940: 939: 931: 930: 923: 916: 908: 902: 901: 895: 883: 867: 860: 859:External links 857: 854: 853: 824: 812:Upfront E-zine 793: 772: 743: 722: 697: 668: 651: 626: 625: 623: 620: 619: 618: 613: 608: 603: 596: 593: 575: 572: 566: 563: 553: 550: 545: 544: 541: 534: 533: 530: 527: 524: 521: 502: 501: 498: 495: 492: 468: 465: 464: 463: 460: 451: 448: 447: 446: 443: 440: 437: 434: 426: 423: 422: 421: 418: 415: 412: 409: 406: 397: 394: 393: 392: 389: 386: 362: 359: 343:IFC-SPF is in 341: 340: 329: 322: 315: 304: 297: 288:IFC-XML is an 286: 274: 271: 270: 269: 266: 263: 260: 257: 254: 251: 248: 245: 242: 239: 236: 233: 230: 227: 224: 221: 218: 215: 212: 204: 201: 184:Main article: 181: 178: 117: 116: 31: 29: 22: 15: 9: 6: 4: 3: 2: 1289: 1278: 1275: 1273: 1270: 1268: 1265: 1264: 1262: 1247: 1244: 1242: 1239: 1237: 1234: 1232: 1229: 1227: 1224: 1222: 1219: 1217: 1214: 1212: 1209: 1207: 1204: 1202: 1199: 1197: 1194: 1192: 1189: 1188: 1186: 1182: 1172: 1169: 1167: 1164: 1162: 1159: 1157: 1154: 1153: 1151: 1147: 1141: 1138: 1136: 1133: 1131: 1128: 1126: 1123: 1121: 1118: 1116: 1113: 1111: 1108: 1106: 1103: 1101: 1098: 1096: 1093: 1091: 1088: 1086: 1083: 1081: 1078: 1076: 1073: 1071: 1068: 1066: 1063: 1061: 1058: 1056: 1053: 1051: 1048: 1046: 1043: 1042: 1040: 1036: 1033: 1029: 1023: 1020: 1019: 1017: 1013: 1006: 1002: 999: 997: 994: 991: 987: 983: 979: 976: 974: 971: 968: 966: 963: 961: 960:BuildingSMART 958: 956: 953: 951: 948: 947: 945: 941: 936: 929: 924: 922: 917: 915: 910: 909: 906: 899: 896: 894: 891: 887: 884: 882: 878: 875: 871: 868: 866: 863: 862: 843:on 2011-03-24 842: 838: 834: 828: 813: 809: 802: 800: 798: 782: 781:"IFC Formats" 776: 762:on 2013-03-17 761: 757: 753: 747: 732: 726: 712: 708: 701: 687:on 2012-02-26 686: 682: 678: 672: 665: 661: 655: 640: 634: 632: 627: 617: 614: 612: 609: 607: 604: 602: 599: 598: 592: 589: 584: 580: 571: 562: 560: 549: 542: 539: 538: 537: 531: 528: 525: 522: 519: 515: 511: 507: 506: 505: 499: 496: 493: 490: 489: 488: 485: 483: 479: 475: 461: 458: 457: 456: 444: 441: 438: 435: 432: 431: 430: 419: 416: 413: 410: 407: 404: 403: 402: 390: 387: 384: 383: 382: 380: 375: 372: 368: 358: 355: 351: 346: 338: 334: 330: 327: 324:ifcJSON uses 323: 320: 316: 313: 309: 305: 302: 299:IFC-ZIP is a 298: 295: 291: 287: 284: 280: 279: 278: 267: 264: 261: 258: 255: 252: 249: 246: 243: 240: 237: 234: 231: 228: 225: 222: 219: 216: 213: 210: 209: 208: 200: 198: 197:buildingSMART 193: 187: 186:buildingSMART 177: 174: 169: 167: 163: 159: 155: 151: 147: 143: 142:buildingSMART 140:developed by 139: 134: 132: 128: 124: 113: 110: 102: 91: 88: 84: 81: 77: 74: 70: 67: 63: 60: –  59: 55: 54:Find sources: 48: 42: 41: 37: 32:This article 30: 26: 21: 20: 1235: 1100:MicroStation 886: 870: 845:. Retrieved 841:the original 837:Iai-tech.org 836: 827: 815:. Retrieved 811: 785:. Retrieved 775: 764:. Retrieved 760:the original 755: 752:"Welcome to" 746: 735:. Retrieved 725: 714:. Retrieved 710: 700: 689:. Retrieved 685:the original 680: 671: 654: 643:. Retrieved 585: 581: 577: 568: 555: 546: 535: 503: 486: 470: 453: 428: 399: 376: 364: 361:Architecture 342: 337:ISO 10303-26 331:ifcHDF uses 306:IFC-Turtle ( 294:ISO 10303-28 283:ISO 10303-21 276: 273:File Formats 206: 189: 170: 158:construction 150:architecture 135: 126: 122: 120: 105: 96: 86: 79: 72: 65: 53: 33: 1135:Vectorworks 990:Vectorworks 893:IFC for DDS 681:Senaatti.fi 154:engineering 1261:Categories 1110:OpenStudio 1105:Navisworks 986:Graphisoft 978:Nemetschek 847:2017-03-19 787:2021-12-21 766:2017-03-19 737:2021-12-21 716:2017-03-19 691:2017-03-19 645:2021-12-21 622:References 478:electrical 138:data model 99:March 2017 69:newspapers 36:references 1156:Gable CAD 1140:VisualARQ 943:Companies 662:from the 565:Resources 552:Processes 1272:Building 1149:historic 1090:FINE MEP 1075:CodeBook 1065:BricsCAD 1050:ArchiCAD 1031:Software 950:Autodesk 877:Archived 664:original 660:Archived 595:See also 574:Contexts 482:plumbing 467:Products 192:Autodesk 1095:FreeCAD 1080:DDS-CAD 1070:cadwork 1055:AutoCAD 1045:Allplan 1038:current 1022:FreeCAD 1001:Trimble 973:GRAITEC 367:EXPRESS 247:IFC 2x2 180:History 148:in the 129:) is a 83:scholar 1206:6D BIM 1201:5D BIM 1196:4D BIM 1191:3D BIM 1171:Sonata 1166:RUCAPS 1161:Reflex 969:Glodon 817:8 June 601:aecXML 369:based 256:IFC 2x 173:Danish 85:  78:  71:  64:  56:  1226:COBie 1005:Tekla 937:(BIM) 514:NURBS 510:B-rep 345:ASCII 90:JSTOR 76:books 1115:RFEM 819:2020 474:HVAC 379:GUID 326:JSON 156:and 121:The 62:news 1003:(* 980:(* 333:HDF 319:RDF 312:RDF 301:ZIP 290:XML 127:IFC 38:to 1263:: 988:* 984:* 835:. 810:. 796:^ 754:. 709:. 679:. 630:^ 516:, 512:, 480:, 476:, 199:. 152:, 49:. 1007:) 992:) 927:e 920:t 913:v 850:. 821:. 790:. 769:. 740:. 719:. 694:. 666:. 648:. 125:( 112:) 106:( 101:) 97:( 87:· 80:· 73:· 66:· 43:.

Index


references
primary sources
secondary or tertiary sources
"Industry Foundation Classes"
news
newspapers
books
scholar
JSTOR
Learn how and when to remove this message
CAD data exchange
data model
buildingSMART
interoperability
architecture
engineering
construction
Building information modeling
International Standard
Danish
buildingSMART
Autodesk
buildingSMART
ISO 10303-21
XML
ISO 10303-28
ZIP
Terse RDF Triple Language
RDF

Text is available under the Creative Commons Attribution-ShareAlike License. Additional terms may apply.