Product
product all physical objects (e g wall, floor, window) and spatial objects (e g space, building, building storey) in a ifc data model are represented as ifcproduct ifcproduct is represented as product in catenda a product contains most of the explicit attributes of ifcproduct and the most commonly used related entities; such as property sets, quantity sets and types other product relations (e g group, layer) can be requested separately attributes for owner history, product representation (e g 3d geometry) and product placement are ommitted from the product json object the following sections describe the structure of the product json object a full example of how a product may be presented is provided at the end of this page overview below is an overview of the product json object that includes all the top level keys each key is described in detail in their respective sections example { "objectid" 25028483530, "revisionid" "2364bf81107e4b0da346740bb03cea96", "ifcschema" "ifc2x3", "ifctype" "ifcwall", "attributes" {}, "propertysets" {}, "quantitysets" {}, "materials" \[], "type" {} } parameters true left unhandled content type left unhandled content type left unhandled content type left unhandled content type left unhandled content type left unhandled content type left unhandled content type left unhandled content type left unhandled content type left unhandled content type left unhandled content type left unhandled content type left unhandled content type left unhandled content type left unhandled content type left unhandled content type left unhandled content type left unhandled content type left unhandled content type left unhandled content type left unhandled content type left unhandled content type left unhandled content type left unhandled content type left unhandled content type left unhandled content type left unhandled content type left unhandled content type left unhandled content type left unhandled content type attributes map of attributes of the product the key is the name of the attribute example { "globalid" { "ifctype" "ifcgloballyuniqueid", "type" "string", "value" "01z4sauevcmvwku5r3bkl1" }, "name" { "ifctype" "ifclabel", "type" "string", "value" "wall 123" } } parameters true left unhandled content type left unhandled content type left unhandled content type left unhandled content type left unhandled content type left unhandled content type left unhandled content type left unhandled content type left unhandled content type left unhandled content type left unhandled content type left unhandled content type left unhandled content type left unhandled content type left unhandled content type property sets map of property sets of the product the key is the name of the property set example { "dimensions" { "objectid" 25028483531, "revisionid" "2364bf811d7e4b0da346740bb03cea96", "ifcschema" "ifc2x3", "ifctype" "ifcpropertyset", "attributes" {}, "properties" {} } } parameters true left unhandled content type left unhandled content type left unhandled content type left unhandled content type left unhandled content type left unhandled content type left unhandled content type left unhandled content type left unhandled content type left unhandled content type left unhandled content type left unhandled content type left unhandled content type left unhandled content type left unhandled content type left unhandled content type left unhandled content type left unhandled content type left unhandled content type left unhandled content type left unhandled content type properties map of properties of the property set the key is the name of the property example { "width" { "ifctype" "ifcpropertysinglevalue", "nominalvalue" { "ifctype" "ifclengthmeasure", "type" "number", "value" "5", "unit" "m" } } } property parameters true left unhandled content type left unhandled content type left unhandled content type left unhandled content type left unhandled content type left unhandled content type left unhandled content type left unhandled content type left unhandled content type the key and shape of the value object depends on the ifctype of the property true 278left unhandled content type left unhandled content type left unhandled content type left unhandled content type left unhandled content type left unhandled content type left unhandled content type left unhandled content type left unhandled content type left unhandled content type left unhandled content type left unhandled content type left unhandled content type left unhandled content type left unhandled content type left unhandled content type left unhandled content type left unhandled content type left unhandled content type left unhandled content type left unhandled content type value the value of the property true left unhandled content type left unhandled content type left unhandled content type left unhandled content type left unhandled content type left unhandled content type left unhandled content type left unhandled content type left unhandled content type left unhandled content type left unhandled content type left unhandled content type ifcpropertyboundedvalue example { "depth range" { "ifctype" "ifcpropertyboundedvalue", "lowerboundvalue" { "type" "number", "ifctype" "ifclengthmeasure", "value" 0 13, "unit" "m" }, "upperboundvalue" { "type" "number", "ifctype" "ifclengthmeasure", "value" 0 18, "unit" "m" } } } ifccomplexproperty example { "color" { "ifctype" "ifccomplexproperty", "properties" { "red" { "type" "integer", "ifctype" "ifcinteger", "value" 31 }, "green" { "type" "integer", "ifctype" "ifcinteger", "value" 31 }, "blue" { "type" "integer", "ifctype" "ifcinteger", "value" 31 } } } } quantity sets map of quantity sets of the product the key is the name of the quantity set example { "area" { "objectid" 35024486532, "revisionid" "2364bf811d7e4b0da346740bb03cea96", "ifcschema" "ifc2x3", "ifctype" "ifcelementquantity", "attributes" {}, "quantities" {} } } parameters true left unhandled content type left unhandled content type left unhandled content type left unhandled content type left unhandled content type left unhandled content type left unhandled content type left unhandled content type left unhandled content type left unhandled content type left unhandled content type left unhandled content type left unhandled content type left unhandled content type left unhandled content type left unhandled content type left unhandled content type left unhandled content type left unhandled content type left unhandled content type left unhandled content type quantities map of quantities of the quantity set the key is the name of the quantity example { "grossarea" { "ifctype" "ifcquantityarea", "value" { "type" "number", "ifctype" "ifcareameasure", "value" 15, "unit" "m²" } } } quantity parameters true left unhandled content type left unhandled content type left unhandled content type left unhandled content type left unhandled content type left unhandled content type left unhandled content type left unhandled content type left unhandled content type value is one of the following the key will be value and the value will be a single value object materials the materials of the product the ifc data model has a wide range of material entities and it is not possible to cover all of them here the materials are represented as an array of material objects example \[ { "objectid" 427168953156, "ifcschema" "ifc2x3", "ifctype" "ifcmaterial", "attributes" { "name" { "type" "string", "ifctype" "ifclabel", "value" "plaster" } } } ] material parameters true left unhandled content type left unhandled content type left unhandled content type left unhandled content type left unhandled content type left unhandled content type left unhandled content type left unhandled content type left unhandled content type left unhandled content type left unhandled content type left unhandled content type left unhandled content type left unhandled content type left unhandled content type type the type defines a list of commonly shared property sets, quantity sets and materials for all occurrences of the type example { "objectid" 14993093688, "revisionid" "2364bf81107e4b0da346740bb03cea96", "ifcschema" "ifc2x3", "ifctype" "ifcwalltype", "attributes" {}, "propertysets" {}, "quantitysets" {}, "materials" \[] } parameters true 154left unhandled content type left unhandled content type left unhandled content type left unhandled content type left unhandled content type left unhandled content type left unhandled content type left unhandled content type left unhandled content type left unhandled content type left unhandled content type left unhandled content type left unhandled content type left unhandled content type left unhandled content type left unhandled content type left unhandled content type left unhandled content type left unhandled content type left unhandled content type left unhandled content type left unhandled content type left unhandled content type left unhandled content type left unhandled content type left unhandled content type left unhandled content type the shape of attributes , propertysets , quantitysets and materials is the same as described in the previous sections usage example below is an example of how a product is provided through the catenda apis and then how it could be presented after combining the base type data with the product instance data product json object { "objectid" 74999093683, "revisionid" "2364bf81107e4b0da346740bb03cea96", "ifcschema" "ifc2x3", "ifctype" "ifcwall", "attributes" { "globalid" { "type" "string", "ifctype" "ifcgloballyuniqueid", "value" "01z4sauevcmvwku5r3bkl1" }, "name" { "type" "string", "ifctype" "ifclabel", "value" "wall 123" } }, "propertysets" { "dimensions" { "objectid" 74999093684, "revisionid" "2364bf81107e4b0da346740bb03cea96", "ifcschema" "ifc2x3", "ifctype" "ifcpropertyset", "attributes" {}, "properties" { "height" { "ifctype" "ifcpropertysinglevalue", "nominalvalue" { "type" "number", "ifctype" "ifclengthmeasure", "value" 3, "unit" "m" } }, "width" { "ifctype" "ifcpropertysinglevalue", "nominalvalue" { "type" "number", "ifctype" "ifclengthmeasure", "value" 5, "unit" "m" } } } } }, "quantitysets" { "area" { "objectid" 74999093685, "revisionid" "2364bf81107e4b0da346740bb03cea96", "ifcschema" "ifc2x3", "ifctype" "ifcelementquantity", "attributes" {}, "quantities" { "grossarea" { "ifctype" "ifcquantityarea", "value" { "type" "number", "ifctype" "ifcareameasure", "value" 15, "unit" "m²" } } } } }, "materials" \[ { "objectid" 74999093686, "attributes" { "name" { "type" "string", "ifctype" "ifclabel", "value" "plaster" } }, "ifcschema" "ifc2x3", "ifctype" "ifcmaterial" } ], "type" { "objectid" 74999093687, "revisionid" "2364bf81107e4b0da346740bb03cea96", "ifcschema" "ifc2x3", "ifctype" "ifcwalltype", "attributes" { "globalid" { "type" "string", "ifctype" "ifcgloballyuniqueid", "value" "0emfkqq8t43winuwj0a6po" }, "name" { "type" "string", "ifctype" "ifclabel", "value" "ba13" }, "predefinedtype" { "type" "enum", "ifctype" "ifcwalltypeenum", "value" "notdefined" } }, "propertysets" { "dimensions" { "objectid" 74999093688, "revisionid" "2364bf81107e4b0da346740bb03cea96", "ifcschema" "ifc2x3", "ifctype" "ifcpropertyset", "attributes" {}, "properties" { "depth" { "ifctype" "ifcpropertysinglevalue", "nominalvalue" { "type" "number", "ifctype" "ifclengthmeasure", "value" 0 13, "unit" "m" } }, "height" { "ifctype" "ifcpropertysinglevalue", "nominalvalue" { "type" "number", "ifctype" "ifclengthmeasure", "value" 3, "unit" "m" } }, "width" { "ifctype" "ifcpropertysinglevalue", "nominalvalue" { "type" "number", "ifctype" "ifclengthmeasure", "value" 3, "unit" "m" } } } } }, "quantitysets" null, "materials" null } } product technical sheet product identification \ name wall 123 \ entity wall \ guid 01z4sauevcmvwku5r3bkl1 \ objectid 74999093683 \ type ba13 \ predefinedtype notdefined properties \ dimensions \ depth 0 13m \ height 3 00m \ width 5 00m quantities \ area \ grossarea 15m² materials \ name plaster