IDM-MVD Development Guide v4
IDM-MVD Development Guide v4
By Chuck Eastman Ivan Panushev Rafael Sacks Manu Venugopal Shiva Aram Richard See Elif Yagmur
Table of Contents
PREFACE ................................................................................................................................................. 4 0. 1. OVERVIEW ..................................................................................................................................... 7 PHASE 1: STANDARDS REQUIREMENTS ............................................................................. 11 1.1. BIM STANDARD SCOPING .............................................................................................................. 11 1.2. WORKGROUP FORMATION ............................................................................................................. 12 1.3. SCOPE OF NATIONAL BIM STANDARD ........................................................................................... 14 1.4. EXTERNAL REPORTING TO BUILDINGSMART ............................................................................... 15 1.5. PROCESS MAP ................................................................................................................................ 15 1.6. DEFINING THE PROCESS MAP ......................................................................................................... 20 1.7. DEFINING EXCHANGE REQUIREMENTS AND BUSINESS RULES ....................................................... 21 Exchange Descriptions .................................................................................................................... 21 Exchange Requirements: ................................................................................................................. 23 Business Rules: ................................................................................................................................ 26 1.8. THE INFORMATION DELIVERY MANUAL ........................................................................................ 29 1.9. GENERIC BIM USER GUIDE ........................................................................................................... 29 1.10. IDM SUBMISSION OF BUILDINGSMART NORTH AMERICA.......................................................... 30 2. PHASE 2: DESIGN ....................................................................................................................... 31 2.1. MODULARIZATION OF MODEL VIEWS ............................................................................................ 31 2.2. EXCHANGE REQUIREMENT MODEL ................................................................................................ 32 2.3. A GUIDE TO IFC SOLUTIONS FACTORY .......................................................................................... 35 2.4. DEFINITION OF CONCEPTS FOR UPLOADING ................................................................................... 43 Defining the IFC Bindings in Static Concepts ................................................................................. 43 Defining the Adapter Concepts ........................................................................................................ 46 Review of Draft MVDs ..................................................................................................................... 47 Relating the Developed Concepts to IDM Exchange Requirements ................................................ 47 2.5. UPLOADING THE MVD AND CONCEPTS ......................................................................................... 48 3. PHASE 3: CONSTRUCT ............................................................................................................. 51 3.1. FACILITATE SOFTWARE PRODUCT IMPLEMENTATION .................................................................... 51
3.2. UNIT TESTING AND GENERAL TESTING .......................................................................................... 52 Development of Test Files................................................................................................................ 53 Concept Level Testing ...................................................................................................................... 54 Aggregated testing: .......................................................................................................................... 61 Implementers Conference Calls: .................................................................................................... 62 3.3. SW CERTIFICATION TESTING AND REPORTING .............................................................................. 62 3.4. SUBMISSION OF A DRAFT MVD FOR REVIEW................................................................................. 63 PHASE 4: DEPLOY ............................................................................................................................... 64 3.5. PRODUCT SPECIFIC BIM GUIDES ................................................................................................... 64 3.6. BIM EXCHANGE AND DATA VALIDATION ..................................................................................... 64 4. 5. 6. POST SCRIPT ............................................................................................................................... 65 GLOSSARY ................................................................................................................................... 66 BIBLIOGRAPHY .......................................................................................................................... 67
APPENDIX A: SAMPLE IFC BINDING DOCUMENT .................................................................... 68 APPENDIX B: PRECAST JOINT MODEL EXCHANGE VALIDATION ..................................... 72 APPENDIX C: SAMPLE PART-21TEST FILE ................................................................................. 76 APPENDIX D: LIST OF SUPPORTING DOCUMENTS FOR MVD DEVELOPMENT .............. 84 APPENDIX E .......................................................................................................................................... 85
Preface
This "How To" manual is a guide for those planning to develop Information Delivery Manuals and/or Model View Definitions generally following the processes defined in the US National BIM Standard. An Information Delivery Manual (IDM) defines one or more Exchanges of BIM information in the context of reference industry processes. IDMs are defined by end users and practicing professionals and serve as the Requirements Definition for such BIM exchanges. A Model View Definition (MVD) is defined by the buildingSMART organization as "a subset of the IFC schema that is needed to satisfy one or many Exchange Requirements of the AEC industry." (see http://www.iai-tech.org/products/ifc_specification/ifc-view-definition). In fact, an
MVD can be configured to enable the information exchange using any product model schema, not only for the IFC product model. A more generic definition of an MVD is therefore "a subset of a building product model schema that provides a complete representation of the information concepts needed for a particular information exchange in an AEC workflow." The process of defining standardized BIM information exchanges has evolved and been refined over the last 4 years. Until 2008, there were two separate development teams developing IDM and MVD separately. At that time IDM developers mapped functional specifications directly to the IFC schema and the MVD developers began their process by developing a Generic MVD (similar to the Exchange Requirements Model (ERM) defined in the next section). In late 2007, the IDM and MVD teams agreed to integrate their processes in the manner described in this document. Primarily the agreement meant that IDM is focused on end-user requirements definition and MVD is focused on the translation of those requirements into exchange representations that can be implemented in software products for use in AEC industry projects. IDMs are defined in the form of Process Maps and exchange requirements. MVDs are documented in the form of an Exchange Requirements Model and Model View 4
Definitions with associated implementation guidance documents one per MVD Concept. This document reports current best practices and provides a step-by-step guide. The development of one or more IDMs and MVDs is a major undertaking, usually requiring inputs from dozens of people and taking multiple calendar years to complete. The purpose of the MVD is to automate the exchanges within the current set of workflows in some AEC industry processes. It is important to recognize that the greatest benefits of Building Information Modeling and interoperability arise out of developing improved workflows. Thus MVDs automating current workflows change the context of workflows and uncovers new workflow options, leading to MVD revisions. MVDs are live, and will evolve over time. The examples presented here come from the experience gained by the authors through preparation of an information delivery manual (IDM) and a set of MVDs for the precast concrete domain. It also incorporates and builds upon the experience and guidelines for defining Information Delivery Manuals and Model View Definitions developed by the BLIS Consortium, buildingSMART, and Digital Alchemy. The MVDs addressed here are those that might be encountered throughout the building lifecycle, although most of our experience to date addresses mostly design, engineering and construction aspects of the full lifecycle. Our experience has emphasized the madeto-order aspects of construction, such as structural systems and cladding. Other
examples for exchanges ranging from Spatial Program Validation, to Energy Analysis, to Quantity Takeoff, and Information Handover to Facilities Management can be reviewed on the IFC Solutions Factory web site at: http://www.blis-project.org/IAIMVD/. The document is organized roughly in an outline structure, with major topic headings of the high-level parts of the process, then within those sections are elaborated the details for realizing them.
For the sake of continuous improvement, we invite comments on this report and suggestions on how to improve it, as others gain experience in compiling IDMs and MVDs.
0. Overview
The purpose for developing a national BIM standard is to provide a layer of specificity over the top of an IFC or other exchange schema. In the case of IFC, and possibly other schemas, the schema is highly redundant, offering multiple ways in which a concept can be exchanged between applications. The purpose of a BIM standard is to select and specify the appropriate information entities from a schema for particular use cases (or data exchange scenarios). The selected entities that comprise a model view definition are a subset of all those in the schema. A BIM standard is organized around one or more Use Cases. A Use Case addresses the exchange needs of two actors (say architect and fabricator) at a given stage in the building life-cycle. A Use Case identifies at least one information exchange. Quite often, it defines a dialogue, involving multiple exchanges. An information exchange defines the data that must be specified to support one exchange from the end-users perspective. It identifies the entities, relations, properties and other data needed by an information user and supplied by an information provider. The process presented here generally follows the procedures set forth in The National BIM Standard Version 1 Part 1. (The Standard is downloadable from http://www.buildingsmartalliance.org/projects/products.php.) Section 5 of the National BIM Standard outlines the procedural steps to be followed. This document presents a draft process, as it was published before the process had been extensively tested and before the supporting organizational structures were put in place. Thus it is only an initial guide. This document, on the other hand, offers a practical set of guidelines that have been tested and followed, with known outcomes in various projects in buildingSMART and by other organizations mandating or encouraging IFC data exchange (e.g. the US General Services Administration, the Charles Pankow Foundation, and the Precast Concrete Institute). The NBIMS process is shown in Figure 1. It outlines thirteen steps in four major phases. These steps will be referenced and in some cases elaborated (or modified) 7
throughout this document. Here we provide a three page overview of its structure and steps: (1) Forming a workgroup and identifying the scope and context for one or more use case exchanges. The workgroup is composed of experts in information technology applications and information exchange for AEC and also experts in the construction domain being considered. The context is defined through compilation of one or more process maps that identify where the exchanges take place in the project lifecycle and the actors and applications that are the senders and recipients of the exchange(s). For each exchange, the functional requirements of the
information to be exchanged are defined, called Exchange Requirements. Exchange Requirements are typically defined in a table or spreadsheet. These two things (process maps and exchange requirements) are combined to form an Information Delivery Manual (IDM). The IDM serves as the overall requirements specification for one or more exchange(s). (2) The data elements defined in the Exchange Requirements Model diagrams are next structured into a set of information modules. These information units of the exchange are called Concepts. A Model View is defined as a collection of such Concepts, which will later be mapped to the implementation schema (IFC most commonly) and is called a Model View Definition (MVD). The input of software developers, representing the major vendors in the domain, is highly desirable in this point in the development process. MVD Concepts are modular and intended to be reused across 8 ]
Figure 1: An overview of the NBIMS process.
multiple MVDs. In this way, there can be a single definition, implementation (per product), and test configuration for the concept which is used in many exchanges. Concepts are shared through an open website, IFC Solutions Factory, at http://www.blis-project.org/IAI-MVD/. Developers of new MVDs are encouraged to use any Concept which already exists, rather than creating new Concepts. The
advantage is the documentation and testing has already been developed and it is simply used in the new MVD. In exchange for this open reuse, the new MVD developer must agree that new Concepts they document will be added to the open collection of Concepts available for reuse in other MVDs. A well-structured set of templates has been developed for documenting Concepts and their aggregation into higher-level Concepts, then into an MVD which supports one or more exchanges. When the templates are filled out, the resulting online documentation serves as the specification for the MVD, which is the second major document in developing a BIM standard. Tools have also been developed to validate an MVD relative to the requirements in the IDM for which it has been developed. (3) The third phase addresses the implementation of MVDs by software companies and certification of those applications for correct implementation, as defined in the MVD. Certification is assessed through a detailed and exhaustive testing and reporting process. This testing is done MVD Concept by Concept. The Concept based approach to testing has benefits over previous test approaches in the following ways: (a) test software and test case development is made efficient, as they can be reused for certification of all MVDs that include the same concept; (b) software implemention is made efficient because a single implementation can be used in multiple exchanges and the vendor is assured that, if it passes for one exchange, it should pass for the other exchanges. Administration of software implementation and certification testing will vary by MVD project (generally funded directly by the MVD development team or sponsors), but these principles should be observed in all cases. Test sites, developed to support 9
certification, are being readied. High confidence in reliable exchange of design and engineering data is the target outcome. (4) The last stage of the NBIMS process is deployment of certified applications and use of those applications in AECO projects. This starts with the development of product specific BIM Guides which tell the user how to implement the industry processes and exchanges defined in the IDM using the particular software product.. This will allow the users of applications to prepare models suitable for the needed exchanges. This phase also includes the development of building models requirements that will enable the target IDM exchanges in industry projects. Case studies are expected, with assessment of the outcomes resulting from previous stages. The overall process is meant to incorporate best software engineering practices. Another important aspect of success in the deployment phase is the availability of third party BIM Data Validation services. These will enable end users to upload building models and validate conformance to requirements in a selected IDM/MVD. This capability will support the application of contractual requirements specifying standard BIM exchanges; this capability will allow both sending and receiving parties in an exchange to validate if all data exchange requirements have been satisfied. Throughout this process, support is provided by meetings (physical or online) that communicate and review the issues arising at each step. The following sections provide detail to each of the phases and steps.
10
An important consideration is that the targeted Use Cases can be implemented within current IFC schema capabilities. Use Cases that require extensions to the IFC model schema are not uncommon, but should not be initiated without full disclosure of the time scale implications. The cycle time for update of the IFC schema to incorporate new entities, properties and relationship is three to four years. The most recent upgrade was published in November 2010. Use Cases, especially early ones, should therefore rely on the current production release of the IFC schema. Requirements for a schema extension will dramatically change the schedule and focus of work. If extensions are required as part of an NBIMS specification,, the extensions should be undertaken in parallel to other NBIMS activity, keeping their capabilities separate from Workgroup IDM and MVD activities until the extensions have been adopted and built into an IFC release.
12
group that has a common interest can also become a workgroup; especially if they are a part of a larger umbrella organization. One or more technical advisors support the process. Typically these advisors have been through the IDM/MVD development process previously. They will have familiarity with the software tools used to develop the specifications, and should be effective in working with the other groups in the process. They should also have experience working with the technical organizations dealing with validation, testing and certification. A partial listing of potential technical advisor contacts is given in Appendix E. This group typically is comprised of consultants or university faculty, etc. and takes the lead in organizing meetings, providing leadership regarding the process. These activities can be paid for by an industry group or member contributions for this activity. Some BIM standard groups are currently attempting to use user group company staff for this support. Beside employee time contributions, the hiring of technical advisors is the major expense of the IDM/MVD development process. Undertaking an NBIMS IDM/MVD development project requires careful
consideration. It involves significant commitments of time and expertise. Applications that are envisaged to exchange information must already be in practical use. The user community should already be at the point of using BIM, so that there is a recognized problem regarding data exchange. If the initiative is started too early, motivation will be lacking and the effort will be harder to realize. Guidelines for workgroup formation: 1. The workgroup should consist of between 5 and 15 industry technical members. The members need to know the business well, its procedures and daily practice. Members should represent a cross section of the industry it represents. 2. Members are expected to make in-kind contributions for their efforts, paid for by their employer. If the work is not to drag over several years, the expected range of commitment is 5-10 hours per week. The members will be expected to 13
discuss, organize process model information, identify information needs of the different process exchanges they identify, and provide discriminating detail about the information needed. 3. The workgroup needs to elect or appoint a chair. The chair is the leader of the working group, organizing meetings, serving as a spokesperson for the project, encouraging company executives in the domain of the importance of the workgroup's activities and promoting company support for the activity through assignment of their often most valuable staff. The in-kind costs of developing a BIM standard are easily in the tens of thousands of dollars per company. 4. Representatives from both sides of the information exchange(s) must be included and active in the team. The NBIMS workgroup, its chair, technical advisors, domain advisors and software company representatives should outline a general schedule of physical meetings, at least two per year, with in-between conference calls. A website for the NBIMS facilitate communication and report and file distribution is very desirable. A typical NBIMS project will typically require two to three years, if we include implementation by software developers and testing. The forming of an NBIMS Workgroup is reported to the National BIM Standard Planning Committee. It identifies the general scope, its members, chair and technical advisors. A template for this information is available from the NBIMS website.
and software implementers, can develop a consistent and efficient approach to deal with the issues within the domain. But even in this situation, the implementation should be broken down into phases, so that the Workgroup and outside members of the domain user community will see quick and visible progress.
http://www.bpmn.org/documents.htm), was used to prepare the process maps shown in Figure Two. Alternatives are listed on the BPMN website and Visio based stencil and template are also provided in the NBIMS Team Briefing Kit. The BPMN naming conventions followed are explained in Figure 2 and an example process map for structural precast is shown in Figure 3. The horizontal and vertical rows in a BPMN diagram, called swim-lanes, are used to categorize activities with different functional objectives or capabilities. .The horizontal 15
swim lanes identify the actors and the context of the activities through the chronological progression through the lifecycle of a business process. The vertical swim lanes delineate the process into distinctly named stages. Referring to Figure 3, the conventions for defining the phases of a building construction business process map are categorized using the CSI Omniclass, Table 31, Phase, classification. The Omniclass definitions are available from: http://www.omniclass.org/. These are defined in the column headers across the top of the sheet and are meant to identify when in the project lifecycle the Use cases are targeting.
Project Phases with Omniclass Coding Start Event Exchange Models Information Exchange Swimlane Project Disciplines Sequence Flow
Message Flow
The rows of the process map are the relevant actors or roles involved in the exchanges. These are also defined in OmniClass categories, using Table 33, Disciplines, classification. The Domain group may have to approximate the disciplines or roles, as the OmniClass categories do not yet cover all construction industry related roles. In between the Discipline rows there are Exchange rows. These organize and group exchanges between Disciplines. At the Process Map level, white rectangles with rounded corners signify Activities, located within the appropriate Disciplines row and project phase column. Each has an identifier, linking it to a more extensive description 16
of the task. Within an Activity box, there may be several symbols across the bottom; a directed arc designates the Activity may be iterated. A plus box indicates the Activity is a high level description made up of a set of design Activities described separately and hierarchically BPMN provides hyperlinks between high-level and detail Activities. (The full graphic syntax of BPMN is available from http://www.bpmn.org/). The corner folded blocks in the Exchange lanes designate an information exchange. The green information exchanges are building model exchanges, while the yellow ones represent all non-building model exchanges (such as tables of data, documents, or verbal communication). The exchanges also have IDs for cross referencing. The
building information model exchanges, represented by the green symbols, are the focus of our interest. The dotted lines denote information flows from an Activity to a Use Case exchange (export) and hence to the receiving Activity (import). Branching within a flow implies two or more targets of the flow. By definition, a Use Case is an exchange between different Disciplines and thus cannot be between two tasks in the same Discipline swimlane. (If a Discipline uses multiple software, then these should be broken out as separate swimlanes.) Solid lines show flow-of-control relations between Activities within a single Discipline swimlane; they should not cross between Disciplines. Figure 3: shows an example of the process maps developed following the methodology mentioned in the previous paragraphs.
17
18
Activities and Use Cases in the Process Map are not meant to describe ALL the Activities within the processes of interest; many will not require data exchanges, and some exchanges may be made between users employing the same software application. Only exchanges between heterogeneous applications are of interest for the NBIMS. Thus the Discipline and Phase swim-lanes are meant to contextualize in a general way the purpose and place in time of a significant exchange.
Table 1: Activity definitions for an IDM Process map-[EM.1] Concept Design of Precast Facade Type Name Omniclass Code Documentation Activity Concept Design of Architectural Precast 31-20-10-21 Preliminary design stage Architects or designers use an approved or certified BIM authoring application to develop a Building Model that will include non-structural precast faade panels. They define the panel layout, fenestration, and surface patterning. They place structural elements needed to support the precast pieces. They identify elements that are embedded within the precast or are attached to it. The proposed layout may be made available for review in sketch and drawings or as a model
Table 2: Activity definitions for an IDM Process map: [EM.2] Design Review and Concept Modeling Type Name Omniclass Code Documentation Activity Design Review and Concurrent Modeling 31-20-10-21 Preliminary design stage A precast vendor may be consulted in reviewing candidate layouts of architectural precast facades. The fabricator may comment on manufacturing, shipping, fragility, lifting and erection and other issues that may affect the design. These may be passed as verbal or written comments to the architect.
19
express a general understanding of what is required, depending on what the exchange is to support, in common English. We use the term information items to refer to the things about which we need to transfer information. These may represent physical objects (such as 'gravity retaining wall', 'precast double tee beam') or abstract ideas (such as 'wind loads', 'surface treatment'). These will be more formally defined in the next section.
Table 3: Exchange Model Descriptions for [A_EM.1] Architectural Concept Model Project Stage Exchange Disciplines 31-20-10-00 Preliminary Project Description (33-21-11-00) Architecture (33-21 31 00) Engineering (33-25 41 11 11) Building Product Manufacturing Architectural concept model consists of concept layout of precast pieces into simple assemblies, without surface or structural detailing. Building model includes massing models, structural and other grid controls, building program and space layout and use, expected thermal and acoustic functions, if known, It might involve major architectural finishes, structural system selection, structural grid and site analysis. Exchange A_EM.1, P_EM.1, S_EM.1
Description
Related Models
What we need to accomplish in the full Exchange Description task is to specify these information items and their attributes in sufficient detail that the exchanges will be fully understood regarding their intention by later readers.. They are initially identified in the process maps and are then defined in generic text in the Exchange Descriptions. These are short paragraphs that identify the purpose of an exchange and the general 21
content, level of detail and expected use of the data in the exchange, defined for later reference. Examples of these Exchange Descriptions are presented in Tables 3, 4 and 5.
Table 4: Exchange Model Descriptions for [P_EM.11] Precast Coordination Model Project Stage Exchange Disciplines 31-25-00-00 Construction Documentation (33-21-11-00) Architecture (33-21 31 00) Engineering (33-25 41 11 11) Building Product Manufacturing The precast coordination model is an early stage of the precast detail model and is used for coordination of all precast components. It includes detailed model descriptions of all precast structural elements. It is being reviewed by the engineer for structural and logistical consistency. Exchange A_EM.10, P_EM.12, S_EM.9
Description
Related Models
Table 5: Exchange Model Descriptions for [EM.56] Precast Design Model Project Stage Exchange Disciplines Description 31-40-40-14-24 Fabrication Phase (33-25 41 11 11) Building Product Manufacturing (33-21-11-00) Architecture Following EM55, the precast fabricator sends the precast design model to the architect for further review/approval. So in the high level, general information about project site and site buildings are included. Important common categories of information include layout, shape, material types, and information about geometry and materials of finishes, that are covered both in the piece and assembly level. Plus assembly and connection relations of pieces and connections are specified. The piece marks for identification are included. Openings and opening frames are defined. Also, detailed information for some types of products is included. Layout and grid geometry of facades are designated and slab topping thickness, material and surface treatment are determined. The specifications of joints are defined. Nested and assembly relations of both field applied and plant applied connections are specified. Related specifications of other building parts and systems are indicated.
Related Models
Exchange
22
Exchange Requirements:
Finally, Exchange Requirements are specified in terms of the information items they must carry, fully detailing those outlined in the Exchange Descriptions. They provide clear guidance from the domain experts defining all functional aspects of each exchange. To accomplish this, the Technical Team should develop a specification template that identifies all the functional information of expected relevance in the exchanges. This specification template is meant to provide guidance to the domain experts, allowing them to define the functional aspects of each exchange. This should be based on a review of the following documents and information: The applications that are in use in the domain and the capabilities and details of the applications functionality The current IFC capabilities dealing with geometry, materials, and features in the domain Discussions with the domain experts regarding features, attributes and nomenclature regarding information in exchanges The possible variations that may be important for a given exchange are identified from the above mentioned documents and information. The variations are organized as an enhanced checklist of possible functional requirements. Often, special concerns need to be taken for geometry, the largest and most complex type of project data in most exchanges. For example, in the domain of precast concrete, the geometry deformation of precast concrete pieces (camber, twisting, deflection, foreshortening), and the accuracy, editability, articulation of features such as connections, blockouts, or surface features and level of detail, need to be identified as possible requirements for exchanges. Embedded parts, including reinforcing and tendons, for connections and seams, and also finishes, especially for architectural panels, need to be recognized if needed for exchanges. Properties and relations between parts may also need to be 23
specified. Issues of dealing with user-selected subsets of objects and what are minimal subsets for effective exchange should also be considered. The nesting of physical objects, for example, in case of a precast concrete doubletee (DT) needs to be considered. Within the doubletee are reinforcing meshes, prestressed tendons, and also embedded steel plates for connections. A collection of DTs may also be aggregated into a higher level object (a doubletee slab, which is likely to have its own shape) and have a cast-in-place concrete topping, so that the slab as a whole functions structurally as a diaphragm . In this case, we have the following entities: steel embeds, mesh, tendons, embedded into doubletees, which are aggregated further into a slab. All levels of such aggregations are usually needed in different parts of the design/construction process. Analysis models may be part of some exchanges and the requirements for these include an analytical geometry model, say nodes and members, loading conditions, maximum allowed stresses and deflections, associations between the analytic model and the physical one, and so forth. The full set of information entities needs to be identified if they are required for any of the Use Cases to be developed. Subsets of a broad, inclusive list of entities are easier to review, in comparison to remembering and adding new ones later in the process. All involved should keep in mind that an application may have certain functionality and data usage that are unique and will not be needed by other applications. In such scenarios only the exchanged information needs to specified, and not the information carried in a single application. An exchange model specification consists of a listing of all of the information groups and all of the possible attributes that are needed when making a targeted exchange. We have organized these potential requirements into the following hierarchical levels (also shown in Figure 4): Information Groups represent the major classes of objects in a building model such as site, buildings, assemblies, pieces, openings, reinforcing, spaces,
24
analysis models, connections, processes, etc. These groups should cover the information object classes addressed in the MVD. Information Items are specific examples of the members of each information group. They are defined on the assumption that some information items have different attributes from other information items. The information items should cover all aspects of the information group, in broad categories that have similar requirements. As can be seen in the sample exchange specification table shown in Figure 4, the information group Foundations has information items Grade Beam, Pier Cap, Spread Footing, etc. Attribute Sets are groups of properties that are used to describe an information item. The attributes are grouped in this way because sets occur in identical form across multiple information groups. Attributes identify the properties that are needed to fully define the information item. In application, each exchange model specification must first identify whether a class of object is required, the set of attributes needed if the object is required, and whether each different attribute is required, optional or not needed for its use case. In Figure 4, the attributes are listed in the rows of the table. Each column on the right hand side specifies one Exchange Requirement (i.e. P_EM.1, P_EM.2 and P_EM.3). The cells in that column identify the needs for each information item, at a level that its proper implementation can be defined.
25
Required/Optional/Not needed Property In the PCI precast project, we classified properties as to whether they are Required (R), Optional (O) or Not needed (blank). In Excel, these can be defined in a pop-up menu for each cell, specifying the allowed alternatives and limiting data entry. Required means that if these objects or properties exist in a given building model, the exchange is only valid if the properties have been populated with values and they are included in the exchange. Optional means that the exchange is valid whether they are available or not, but indicates that they should be translated if available. In this way, when an exchange model definition is specified for implementation by a software company, a validation check is made whether the exchange file contains the minimum set of objects and their attributes required according to the exchange model specification.
Business Rules:
The level of detail in the provided and exchanged models for each information unit can vary based on the project stage, purpose of model exchange, model recipient and local practices. Further, different project delivery methods impose changes in roles and 26
responsibilities of project parties, which considerably change project deliverables at each stage for each discipline involved in the project. Hence, a finer level of adjustments in exchange objects needs to be provided to make them applicable in different exchange models and localities. Business rules identify these restrictions on the data structures and/or on the attribute values that may be applied in some of the Use Case contexts considered in the MVD. Objects are often grouped in different ways, for example, in the context of an erection sequence, fabrication runs, purchasing, etc. While often these can be addressed within a single application, they occasionally are broadly applied. In steel and precast concrete, for example, the piecemark identifier groups similar pieces because they are made in the same production run and may be interchangeable in erection. The drawing they are produced from is called a piece ticket. They are potentially different from type and instance, in that they may be the same from a production standpoint, but are modified slightly for a particular project location. These piecemarks must be managed like GUIDs, serving as an important identifier in made-to-order products. Approvals: Some exchanges are for the purpose of review, revision or approval. For effective processing and review, the parts of the design being reviewed need to be grouped, then assessed and acted upon. The business practices for such actions can be quicker, and more reliable because of 3D geometry and management of their associated properties. All of this should be identified in the business rules, as the Workgroup begins to get a handle on these issues.
27
are points of discussion to have with BIM tool application developers. Round trips are hard to support and not widely used in IFC exchanges, but they really facilitate how people can work together. Most people are familiar with sharing development of a marketing presentation, or similar report. This same level of smooth exchange is supported by IFC, but requires effective transaction support to be associated with Model View Definition.
30
2. PHASE 2: DESIGN
2.1. Translating Exchange Requirements into an MVD
Phase 2 Overview: The Design Phase of NBIMS creates the Model View Definition (MVD) binding and specification needed to implement the exchanges defined in the IDM. This task is largely a technical one carried out by the Technical Advisory team.
A Note: When defining new Concepts, there is no precise or rigorous method for partitioning a model into Concepts. At this time, different groups define them in somewhat different ways. Some generate a concept for each attribute; others define concepts that incorporate attribute sets, or even represent full information items. An important requirement, which was identified during the current model view work, is the need to avoid redundancy and rework in terms of development and testing of Concepts. Hence, concepts should be generated following strict/formal rules so that they are testable and standalone. For new MVD development, the requirements should be specified in a modular form using such concepts. Redevelopment of Concept hierarchies, and the subsequent reworking of MVD definitions is expensive and time consuming. Where possible, this should be avoided. From a semantic point of view, there should be no broken links or references and semantic relationships among terms should be explicitly defined. Your judgment in these issues will be required. .
structure for the to-be-developed Concept structure. It is essentially a high-level graph of objects which composes the information defined in the Exchange Requirements in the IDM into diagrams showing the extent and relationships between the data for each high level concept (e.g. Wall, Door, Window). Generally speaking, there should be a 1:1 correspondence between the items defined in the tabular Exchange Requirements and the items in an ERM. An example is shown in figure Five
32
Figure 5: ERM Diagram for Building Design to Spatial Program Validation IDM/MVD
aggregated into higher level Adapter Concepts, allowing the higher level Concepts to be re-used as a group where needed. Finally, at the top of the hierarchy of concepts is a Variable Concept. Variable Concepts are so named because their definition (through the tree of Adapter and Static Concepts in the hierarchy) will vary between MVDs. That is: the data about (e.g.) a Wall will incorporate different base and Static Concepts (in response to the IDMs that define exchange requirements for those MVDs). Each diagram in the MVD is focused on a single Variable Concept. Examples include: Wall, Door, and Window. The scope of an MVD can vary greatly, because an MVD can address the exchange requirements of one or many related IDMs. If the MVD addresses a broad AEC domain, such as precast, reinforced concrete or steel structures, the MVD Concepts and associated binding to an information model will be numerous and span a broad range of exchange requirements. For the precast concrete example above, this will include all the Static Concepts needed for exchange regarding precast concrete design, production planning and fabrication. These are then selectively grouped to address the information coverage in multiple exchanges defined in multiple Exchange Requirements. Almost certainly, this will be a mixture of new Concepts and also the re-use of existing ones listed on IFC Solutions Factory. As the number of NBIMS projects grows, the number of available 'off-the-shelf' Concepts will also grow. Eventually, a new Use Case may require only a few or even no new Static Concepts, being composed entirely out of existing ones. That is the goal of the collaborative Solutions Factory Site to develop a rich set of MVD concepts that are shared across many MVDs, ensuring efficiency, consistency, and predictable interoperability experiences for the AEC industry. On the other hand, if the MVD addresses one or a small number of Exchange Models, then the Exchange Requirements can be directly defined in terms of largely Concepts, without needing to define first the intermediate ones in the domain.
34
Table 6: List of MVD development activities making use of IFC Solutions Factory
1.1 Exchange Model 1. Architectural design to circulation/security/analysis 2. Architectural design to landscape design 3. Architectural design to quantity take-off level 1,2,3 4. Architectural design to spatial program validation 5. Architectural design to struct. design and to structural analysis 6. Architectural design to thermal insulation 7. Architectural programming to architectural design 8. Basic handover to facility management 9. Concept design BIM 2010 10.Design to code compliance checking 11.Design to energy performance analysis 12.Design to quantity take-off 13.Extended coordination view 14.Extensibility 15.Indoor climate simulation to HVAC design 16.Landscape design to road design 17.Precast Concrete Exchanges 18.Road design to landscape design 19.Space requirements and targets to thermal insulation 20.Structural design to structural detailing Virtual Building Laboratory @ TUT BuildingSmart International German Speaking Chapter US General Services Administration International Code Council Building Smart Alliance, North America Building Smart Alliance, North America IAI Implementers Support Group Virtual Building Laboratory @ TUT Helsinki University of Technology HVAC Lab CRC for construction innovation Precast Concrete Institute CRC for construction innovation Helsinki University of Technology HVAC Lab Applied Technology Council 1.2 Organization US General Services Administration CRC for construction innovation Virtual Building Laboratory; German Speaking Ch. US General Services Administration
36
The list of Concept can be accessed by clicking on the Concepts button in the upper left menu in IFC Solutions Factory webpage. A filter for different types of Concepts is presented, shown in the top of Figure 7. It allows selection of Concepts by: 37 IFC binding - which version of IFC are the Concepts based on Author - group that defined the Concepts Status:
o o o o o o o
all - all Concepts Placeholder - named but not filled in, Draft - complete but not implemented Proposal - in review for implementation by software companies Candidate - implemented and awaiting certification Official - implemented and certified. Deprecated - earlier version Concept, no longer used.
Partial name - string within the Concept name Partial summary - string within Concept summary
By selecting an authoring group, the Concepts authored by the group are listed. An example is shown at the bottom of Figure 7. By clicking on the left arrow of a listed MVD, the information about the selected MVD is expanded. In the expanded tableau, clicking on Exchange Requirements the IDM report is opened for review. This is the document providing the functional specifications for the information provided in the MVD. Clicking on Definition Overview the scope of the MVD and its objectives are defined in a template set up for this purpose. The bindings are recorded as being for IFC Release 2.x3 or 2.x4. By clicking on Bindings Overview the range of exchanges are identified. By clicking on Binding Diagram, the Concepts that are in the MVD are laid out in a table, as shown in Figure 8. The left side brighter orange colored Concepts are the Variable ones.
38
39
Figure 8: The list of Variable Concepts (left row) and set of Static (leaf) Concepts with IFC bindings for the precast Concrete Domain Model Views.
40
By clicking on any of the Variable Concept boxes in this table, the Adapter Concepts are opened and described. The Variable Concept for Precast Piece is shown in Figure 8. By clicking on a Static (leaf) Concept, the implementation of that Concept is defined in a right side overlapping window, as shown in Figure 9.
Figure 9: A Variable Concept, showing the more detailed Adapter Concepts for the Precast Piece Variable Concept.
An example for Precast Connection Component Assignment is shown in Figure 10. The static binding diagrams identify the IFC Entities and their references to each other for different uses. They are still abstracted, in that these diagrams omit IFC Types, including Enumerated Types and Select Types, all important low-level Entities in IFC. However, they are easily resolved in implementation. At the bottom part of each 41
Binding diagram page is a list of the attributes for each entity. They indicate the assignments and any restrictions that might apply in the implementation (also called business rules). These are also used to resolve any ambiguities in the range of attribute assignments or types. Last, a segment of the IFC Part-21 instance file is provided for
42
most Concepts to provide a specific example of how they are to be defined, in the format of an IFC text file (used in most exchanges). This structure is readily available to software companies, for PCI-related work, or to other projects needing to exchange the same or similar information. The Technical team of the Precast Concrete NBIMS project invested multiple person years to define the broad set of Concepts needed to address the range of information about precast concrete over its design/fabrication/erection lifecycle. It involves learning the IFC schema and its conventions intimately. The documentation dealing with IFC is improving significantly with 2x4, which should facilitate understanding of good use of the entities for composing new Concepts.
The Visio Shapes of IFC Entities for the current IFC Release. These will soon be downloadable from the IFC Solutions Factory website1. The Visio MVD shapes, for links and INVERSE references, as shown in Figure 9. These are accessed the same as for the IFC Shapes. In undertaking these mappings from functional requirements in the IDM to Concepts, we proceeded by grouping similar functional requirements together and assigning them to different members of the Technical Committee. A particular functional requirement from the IDM could be mapped and implemented with multiple alternative structures within IFC. These require review of other similar Concepts and occasionally, advice from IFC implementation advisors. In parallel, we composed and aggregated these Static Concepts into higher level Adapter and Variable Concepts that were effective for our own re-use. Each individually developed Concept was reviewed by the full Technical team for correctness and consistency. The following are step-by-step instructions for filling in the Binding template page (an example of the page is shown in Appendix A). First, the fields in the template page for bindings should be filled in. These are data fields and have associated macros. They must be assigned as values to fields within Word, using the Insert pull-down menu and Field operation. The assignments should be as follows: <IFC Release Field> -- assigned the IFC Release that the Concept is using. <Title field> -- assigned the name of the concept that uniquely distinguishes it from other Concepts. This name is used to reference this Static Concept for
Currently, one can obtain them by writing directly to the IFC Solutions Factory site manager (as of
writing, [email protected]).
44
incorporation into higher level Adapter and Variable Concepts, and for global indexing in IFC Solutions Factory. <Reference field>, <Version field> and <Status field> -- all managed centrally by the uploading service. <Company field> -- also a field, with company prefix and number automatically assigned. The other fields are manually defined, using simple text. These should have the following contents: Relationship: should indicate how this Concept is related to others, sometimes left blank History: The version date should be provided here; revisions should be noted and dated Authors: The Author of the Concept and their web access information should be provided, in case there are questions regarding the Concept. The Usage in View diagrams should show which Adapter Concepts use this Static Concept. An example is shown in Figure 9. These are hyperlinked as pdf files. The Visio binding diagram, showing the shapes that represent IFC Entities and the structure that connects them, should be pasted from Visio into the template. It should not be a jpeg image, but a hyperlinked Visio file, such that it supports editing. For each of the attributes in the IFC Entities in the Concept, the values to be assigned are identified in the business rules. Are the attributes Required or Optional? Is the attribute referencing a Select or Enumerated type? In the latter case, what values are allowed? If the attribute is a Description or Name, are there conventions to be followed? These types of issues are to be captured in the Business Rules (also called Implementation Agreements). 45
An example of a Part P-21 instance file with the Concept IFC entities is presented, showing an example of how the attribute values are to be populated. It should include all the Entities defined in this Concept and the links between them. For a reasonable overview of the P-21 file format for reading/writing IFC files, see:
http://en.wikipedia.org/wiki/ISO_10303-21. Documents in this format are ready for depicting the leaf Concepts on the IFC Solutions Factory website. These are available for the software developers that will implement the MVD your Workgroup has specified. They are also available for other Model View Definition Workgroups that can re-use your binding specifications.
46
Figure 10: An IFC binding, defined as a Static Concept (Aram et al. 2010). Figure 11: Relating the Developed Concepts to IDM Exchange Requirements
An important consideration is to define Concepts so they may be directly addressed by the Exchange Requirements of the IDM. That is, it seems possible that in the future, 47
the requirements generated in the IDM can be identified by selecting already defined Concepts, eliminating the current technical problem of mapping between them. This capability is diagrammed in Figure 11. This will only occur when a large set of Concepts enough to address most mapping issues have been defined. It also will require the definition of Concepts to be undertaken in a more rigorous and consistent manner, so they are defined by information concepts, aggregated to userunderstandable needs.
48
Figure 12: MVD Coordinator tool to create and check consistency of Concepts listed in an MVD.
49
It is important to ensure that the MVD file uploaded and the Concept document refers to the same unique Concept numbers. Otherwise, the link will be broken. The MVD coordinator tool shown in Figure 13 is used to ensure that all the Concepts are correctly numbered and linked. The Concepts present in the MVD under review are copied onto the clipboard from the Coordinator tool and then by right clicking on the MVD page in Visio, we get an option to Validate the Concept. This helps the reviewer to get a listing of Concepts that are missing or referenced incorrectly. If all the listed Concepts are validated in this manner then we are ready to upload to the server. If the MVD and the Concept are linked correctly in this manner then by clicking on the Concept in MVD page will open the binding document side-by-side on the IFC Solutions Factory webpage. For example, these two entities; the Precast MVD and the Concept document for Precast Connection Attribute are shown in Figure 13. The Concept is given an identifying number of PCI-134 and the MVD is embedded with the following link http://www.blis-project.org/IAI-MVD/reporting/showConcept.php?CREF=PCI-134.
50
3. PHASE 3: CONSTRUCT
Phase 3 Overview: The purpose behind developing model views for a particular domain is that they will be implemented by software developers in a robust way and then utilized by project teams. Without effective implementation, all the previous work will remain academic. The effectiveness of the IDM and then the MVD is determined according to whether they define an effective set of interfaces for building model and related information exchange. Thus it is critical to bring into the process the relevant software development companies so they are engaged in the MVD definition process. This Construct phase addresses this engagement with software companies and the development of the information they need to implement the specified software. We have already gotten far down the road, by determining what information should be included in an exchange, aggregating a market segment with a vested interest in a set of exchanges. Here is where we close the loop and make it happen.
models (or building model parts) that conform to the MVD specifications of the new capabilities, to test whether they can import the data correctly into their systems. Website support of test models needs to be provided. The website needs to allow downloading of IFC P-21 files (the project instance file format for IFC) allowing software companies to use the test file for reading purposes. Also needed are simple graphics representations, such as DXF or 2D drawings, and associated text, of project segments that incorporate model parts that require one or more Concepts for their representation in an IFC P-21 file. These project segments are to be modeled within the particular vendor's software application, then exported, to see if the system will export an IFC model with the required structure for the targeted Concepts. A set of test files and documentation of model segments should be developed to cover every Concept, and for any variations within Concepts. How will these Concept tests be undertaken? Lets back up a little to articulate what we are trying to do.
Testing of new versions of a software package supporting IFC involves both testing of previously
supported exchanges and also any new functionality supported by the release. Here we only focus on the
52
A current effort by the buildingSMART organization is the development of rigorous methods for testing and certification of translators, especially those that are Model Views. Different but similar test sites are being developed. The first was developed by the Institute for Advanced Building Informatics (IABI), Germany, led by Rasso Steinmann, http://87.106.252.103/apex/f?p=101:1:2778425439471030. This service is currently focused on testing for the Coordination View, as defined by buildingSMART international. IABI also anticipates future testing of MVDs. The second testing service, also called a BIM Validation Service, was developed by Digital Alchemy, led by Richard See, at http://digitalalchemypro.com/html/services/IfcBimValidationService.html. This service is focused on MVD Concept based testing. This means that a suite of unit tests are run for each Concept in the MVD, on every object instance in the file being tested. Once a user is registered, they simply select the MVD against which their building model should be validated (tested) and upload the BIM file. Detailed test results are returned to the user via email. Both tools are accessed through application server sites avia the Web. Both are expected to improve test results reporting over time. Both sites have stated their intent to provide BIM validation for MVDs as defined in NBIMS.
testing of new functionality and assume that the software companys internal testing will deal with the previously tested and validated import and export functionality.
53
a) Checking the syntax and structure of project exchange files for conformance to the IFC standard (IFC 2x3, or 2x4 etc.) this validation only applies to the export functionality of any given BIM software tool. It is not useful to test import routines this way, as import does not generate data that can be externally tested. b) Checking the objects in a project exchange file, as well as their properties and relationships for conformance to the bindings stipulated for them in the relevant MVD document. This test validates that the tested application can generate an exchange file with the required objects, and that these satisfy the rules of the bindings in terms of relations and attributes. The bindings for a set of Concepts are aggregated into different ways for different MVD exchanges. Thus conformance testing is performed separately for each exchange. This too is an export functionality test. c) Checking the import functionality of a BIM software tool for its ability to properly import the full set of concepts defined in an MVD. This can be done using a predetermined set of IFC test files that aggregate sample instances of all the Concept sets defined in the MVD. Since each possible exchange exploits a certain subset of Concepts, any given BIM software tool export function can be tested for a given exchange by testing its import of a subset of the IFC test files. This test applies to unit testing. d) Checking the completeness of the contents of a project exchange file (objects, parameters, and their values) between two applications, to ensure that the exchange contains all of the information required for the given exchange by the definitions of the Information Delivery Manual (IDM). This check can only be performed within the context of a precast construction project, as it check content within project context. It is an export and import test.
shown in Figure 14. It must include the required IFC Entities and satisfy at least one set of business rules to be used for import testing. To facilitate initial implementation and testing, the Technical team developed fifteen test case models. These required careful definition of the IFC files, often including manual coding of multiple lines of Part-21 files, to represent the new target output being specified. The test models need to be developed with reference to the implementation priorities received from the Advisory Committee and their software counterparts.
55
Figure 14: The P-21 file segment dealing with precast joints.
Figure 15 shows the set of test files and the list of Concepts tested in each file in a tabular form. The columns outline the functionality covered in a particular test case; the rows identify the Concepts that the test file includes and will address for testing. The
56
important observation is that the fifteen test cases cover all the Concepts that have been defined and provide an initial base for software implementation. Using the methods described above, test files are being developed and debugged according to the following process: Create initial test file from a BIM application by exporting relevant elements to IFC 2x3 Modify manually the Part21 to reflect the Concept requirements from Figure 14 and the IFC 2x4 binding documents developed by the technical committee Iterate between making changes and verifying the files integrity with any Part21 file checker, after changes for Concept Validate the resulting file against the IFC coordination view schema, correcting any syntax and structural errors discovered Verify the test file is importable without error into any IFC file viewer Modify the IFC 2x4 binding documents if necessary based on results and analysis from the test file development process
57
Figure 15: A coverage table identifying for each test file (columns) and the Concepts that the file incorporates (rows).
58
The testing for export is quite different. In order to export an MVD that satisfies the EM requirements, the test determines whether a user can define a model that, when exported, will satisfy the requirements defined for the MVD. A model description that is to be built within the authoring tool needs to be defined, in a manner that represents the intentions of the design. An example is shown in Figure 16. The test models should be as simple as possible, in the sense of not carrying additional design information that will need to be filtered out in the testing. A second level of testing, which is much stronger, is whether an application can, first read a file into its native structure that satisfied the requirements of the exchange model, and then export that model in IFC, in a form that matches the requirements that were embedded in the import file. This is worth considering only after the import test has been passed. The business cases that Concept(s) must satisfy also need to be carefully documented. The business rules consist of: The correct types of object entities, for shapes, finishes, properties, processes, assemblies, and these are structured according to the specification Relations that are structured according to the schema, with proper entities connected by the relations Uses the specified ENUMERATED and SELECT types The correct values of all the attributes as specified in the MVD
An example is shown in Appendix B, at the end of this report. As the test cases are defined, they must cover all the Concepts that need testing and all the different business rules that may be applied. We recorded these in a table, as shown in Figure 16. Every concept must be tested at least once, and the various possible alternatives business rules need also to be covered; many are tested multiple times. The complete part-21 test file used to generate Figures 15 and 16 are provided for reference in Appendix C.
59
Figure 16: The specification for a wall panel design incorporating a set of Concepts.
60
The procedures for unit testing are stringent and detailed, requiring careful composition of test files. The export file can be checked: does it include the expected entities within the Concept? Do the Entity fields carry the correct relation information? These conditions are checked on the two validation websites by automated routines, set up for the different Concepts. The technical team is responsible for defining these tests. The tests that are not satisfied are reported for correction by the software implementers. The tests are iterated until all the checks pass. The import test that reads the P-21 test file is harder to validate. Are the intended objects represented correctly in the importing application as native objects? Did it correctly import the attributes? Most importantly, did the translator read in the GUID and other management data? The only way currently to make these checks is human inspection. It is often proposed that an effective test for import is to export a model into IFC, then import it again, and check whether the project data for the two files are logically the same. The difficulty of the test is that such round trips in practice are rare. An architectural design application cannot carry all the information that a fabrication application carries, and vice versa, because they have quite different internal representations for the same information. In most cases, then, the Read and Write MVDs have different target Concepts.
Aggregated testing:
Most test cases developed for unit testing incorporate multiple Concepts. Thus they also identify if there are interaction effects between the rules associated for one Concept and other ones in the same test file. For example, it could happen that two different Concepts have a rule that require a Description field be filled in, but in different ways. The test file with the two Concepts will make this conflict apparent (and lead to revision of the Concepts).
61
It is important to review all the Concepts carefully to verify there are no interaction effects. For each pair of Concepts that may interact in any way, a test case should be developed. It is best to do this at the time that test cases are being programmed. Adjusting the set of test cases so they address different business conditions in combination can allow the initially defined test files to also address all, or at least most, pairwise Concept interactions. After successful pairwise testing of Concept interactions, the next level of testing is pairwise exchanges. As testing proceeds, software companies are encouraged to exchange files and test them. This is the last stage before field testing.
62
"self-certification", in that it is carried out by the software companies, with public oversight.
63
PHASE 4: DEPLOY
The last stage of the National BIM Standard is deployment by the software companies and field testing by users. The support for deployment is ongoing and support transfers to the responsibility of the software companies.
standard exchanges. Each software vendor is responsible for their user guides, which are ultimately an extension of the company's application user guide. The user guides themselves are increasingly on-line and accessible directly from within the application. An outline for the functionality addressed in the user guide should be produced in Phase 2. It is this functionality that each vendor needs to show how to support. Examples are such details as: assigning properties to the bolts in a connection, to define whether a beam is represented as manufactured or as placed in a building with pre- or post-tensioning and deflections; how to assign various specialized properties. Only with this level of documentation will users be able to utilize the exchanges.
64
efforts of participants and the supporting industry group. This is part of the public announcement about the capabilities realized through the NBIMS effort.
5. Post Script
Workflows evolve. What was a manually undertaken task, such as copying work orders, or doing a space comparison for clash checking, are automated and the workflow changes. This process of change will accelerate as the potential for automation is applied to all aspects of the design and building process. Thus exchange requirements will evolve and the process of updating them will be a new (but easier) undertaking. After this major effort, it is hard to accept that workflow analysis is not a one-time effort, but rather an incremental one. "The path has been plowed and the trip has been initiated. It is unclear where the path ends.
65
GLOSSARY
exchange model: An exchange model is made up of a use case embedded in a process model and a set of exchange requirements for the use case. It lays out the user specifications for a use case.
data object: Data is organized into groups, called data objects. All the information in a data object refers to the same thing. Thus a process object may have a name, start time, duration, resource requirements, which are all attributes of the data object.
schema:
the equivalent of a schema is a form, with content boxes. Attributes such a first name, or nationality distinguishes what the text in a box means. There are also relations between the data, such as the relation between the name of a respondent and the names of next-of-kin, with separate addresses for each. Possibly the relation is asked for- son, granddaughter, etc. A product model schema is the specific structure by which a computer can read and interpret the data it is carrying.
use case:
workgroup: A team of people that in this case are brought together to address a domain of workflow exchanges.
workflow:
the communication and coordination required to accomplish some tasks that also involves BIM data exchange.
66
6. BIBLIOGRAPHY
Aram, V., Eastman, C.M., Sacks, R., Panushev, I., and Venugopal, M., (2010). 'Introducing a New Methodology to Develop the Information Delivery Manual for AEC Projects', Applications of IT in the AEC Industry, CIB W78 Workshop Proceedings, Cairo, Egypt, November 2010, Virginia Tech, 10 pps. Hietanen, J., (v1: 2005/v2: 2008). IFC Model View Definition Format,
buildingSMART International Technical Management (ITM) meeting #38, Amsterdam, NV, February 2008, buildingSMART, 29 pps. See, R., Karshoej, J., (2011). Integration of IDM and MVD, buildingSMART International Technical Management (ITM) meeting #47, Abu Dhabi, UAE, March 2011, buildingSMART, 53 pps.
67
Precast Piece
PCI-026 - IFC2x3
PCI-075
Precast Feature
Instantiation diagram
Feature Assignment
IfcRelProjectsElement + GlobalId + OwnerHistory > Name Description + RelatingElement > + RelatedFeatureElement > IfcBuildingElement + GlobalId + OwnerHistory > Name Description ObjectType ObjectPlacement > Representation > Tag (INV) HasOpenings IfcProjectionElement + GlobalId + OwnerHistory > Name Description ObjectType ObjectPlacement > Representation > Tag (INV) ProjectsElements
Implementation agreements
IfcRelProjectsElement
Attribute GlobalId OwnerHistory Name Implementation agreements Must be provided Must be provided, but may contain dummy data <Open>
68
<Open> The hosting precast piece (subtype of precast IfcBuildingElement). The feature element (IfcProjectionElement) (corbels, shelves, etc.)
69
#338= IFCAXIS2PLACEMENT2D(#108,#112); #341= IFCRECTANGLEPROFILEDEF(.AREA.,'400*400',#338,400.,400.); #342= IFCCARTESIANPOINT((0.,0.,4000.)); #346= IFCAXIS2PLACEMENT3D(#342,#224,#124); #349= IFCEXTRUDEDAREASOLID(#341,#346,#33,4000.); #352= IFCSTYLEDITEM(#349,(#336),'Name'); #356= IFCSHAPEREPRESENTATION(#40,'Body','SweptSolid',(#349)); #362= IFCPRODUCTDEFINITIONSHAPE('','',(#356)); #366= IFCCOLUMN('1AH9bc00000p4oD3OmC3at',#20,'COLUMN','400*400','400*400',#329,#362,'TS_1635'); #385= IFCCOLUMNTYPE('2JpEbDHDD3URR4xlAGV2A9',#20,'400*400',$,$,$,$,$,$,.NOTDEFINED.); Precast Feature Corbel #508= IFCCARTESIANPOINT((0.,590.)); #512= IFCCARTESIANPOINT((300.,290.)); #516= IFCCARTESIANPOINT((300.,0.)); #520= IFCCARTESIANPOINT((0.,0.)); #524= IFCPOLYLINE((#508,#512,#516,#520,#508)); #528= IFCARBITRARYCLOSEDPROFILEDEF(.AREA.,'PLT400*300',#524); #529= IFCCARTESIANPOINT((0.,0.,-200.)); #533= IFCAXIS2PLACEMENT3D(#529,#33,#25); #536= IFCEXTRUDEDAREASOLID(#528,#533,#33,400.); #543= IFCSHAPEREPRESENTATION(#40,'Body','SweptSolid',(#536)); #549= IFCPRODUCTDEFINITIONSHAPE('','',(#543)); #553= IFCPROJECTIONELEMENT('1AH9bc00005p4oD3OmC3at',#20,'Corbel','Corbel cast with column','Precast Feature',#99,#549,'TS_2331',.CORBEL.); #555= IFCRELPROJECTSELEMENT('2D89NMFVzDoeR6bcf1DEQ9',#20,'Feature 1', 'Precast Feature Relationship',#366,#553); Connection Geometry and Relationship #699= IFCCARTESIANPOINT((0.,210.,4000.)); #701= IFCAXIS2PLACEMENT3D(#699,#25,#29); #703= IFCPLANE(#701); #799= IFCCARTESIANPOINT((0.,200.,4000.)); #801= IFCAXIS2PLACEMENT3D(#799,#33,#25); #803= IFCPLANE(#701); #901= IFCCONNECTIONSURFACEGEOMETRY(#703,#803); #903= IFCRELCONNECTSWITHREALIZINGELEMENTS('2t99EIvvjCSfoOA4jQczRu',#20,$,$,#901,#152,#366,(#553),'Corbel');
70
Precast Feature Example - Corbel on Column This document uses the official IFC Model View Definition Format version 1.1.0. of the IAI (www.iaiinternational.org) The content of this document has to be certified by the IAI before becoming part of an official IFC Model View Definition.
71
B. List of IFC entities required for the model exchange Entities: IfcFastener, IfcFastenerType, Valid subtypes of IfcBuildingElement, IfcMaterial, 72
IfcElementQuantity, IfcConnectionCurveGeometry, IfcLine( IfcPolyline or IfcCompositeCurve), IfcRepresentationMap (depending on the IfcFastenerType. See rules),
C. Business Rules Condition 1: At least one instance of IfcFastener, which satisfies the following attribute values. Should have 8 attributes First 2 attributes should compulsorily point to GUID and Owner History Third and fourth attributes are optional Fifth attribute should be ObjectType and contain string Precast Joint and there should be a reference linked to IfcFastenerType using IfcRelDefinesByType Also, in IfcRelConnectsWithRealizingElements the Connectingtype attribute should match the ObjectType. i.e Precast Joint Sixth attribute is object placement and should point to a valid placement concept Seventh attribute is representation and should point to a valid geometry concept Eighth is tag optional 73
Condition 2: Should attach an IfcMaterial to the IfcFastener (joint) through IfcRelAssociatesMaterial, for example, bituminous rubber for compression seal. Condition 3: Area, Volume, and Weight should be attached to the IfcFastener using IfcElementQuantity through IfcRelDefinesbyProperties Additional property sets (Optional) if existing should be attached through IfcRelDefinesbyProperties Condition 4: IfcFastener should be assigned to subtypes of IfcBuildingElement through IfcRelConnectsWithRealizingElements. The following checks should be satisfied There should be at least one instance of IfcRelConnectsWithRealizingElements such that it connects IfcFastener to 2 different building elements. The RelatingElement attribute should point to a physical piece which is a precast element and should not be a piece type The RelatedElement attribute should point to any physical piece, precast or non-precast or members of other structural system The connection geometry should define the line of joint and point to IfcConnectionCurveGeometry The connecting type should be precast joint Condition 5: there should be at least one instance of IfcConnectionCurveGeometry The curve on relating element attribute should be used to limit the location and extent of the joint and should point to a valid IfcLine or IfcPolyline or IfcCompositeCurve Curve on related element should be null? the curve is identical on both elements Condition 6: Check for the existence of IfcFastenerType. If present it should satisfy the following rules. The IfcFastenerType should be linked to IfcFastener through IfcRelDefinesByType GUID, OwnerHistory mandatory Elementtype should be provided. 74
Possible values include: Vertical open-drained (Slotted neoprene baffle plus vertical air-seal) Horizontal open-drained (profiled with flashing and horizontal air-seal) Face Sealed Compression Seal with gasket Compression Seal with flexible material Other
The applicable occurrence can have three values namely, based on which the representation maps attribute also changes. Refer following table. Value of applicable occurrence None RelatingOnly RelatedOnly Both Corresponding value of representation maps Null neither element is profiled Point to a single representation map (first element is profiled) Point to a single representation map (second element is profiled) Point to two representation maps
Condition 7: If FastenerType is present, then there should be corresponding instance of IfcRelDefinesByType relationship The relatedobjects should point to instances of IfcFasteners only The relating type should point to instances of IFcFastenerType only Condition 8: Based on the value of Applicable Occurrences in FastenerType there should be 0,1, or 2 instances of valid IfcRepresentationMap Should point to a valid IfcRepresentationMap (as an initial test case). In reality this should map to a geometric set of 2D curves that define the cross-section profiling of the pieces on either side of the joint. D. Sample Part 21 File A sample Part-21 test file is given in Appendix C
75
76
#103= IFCSURFACESTYLERENDERING(#102,0.,$,$,$,$,IFCNORMALISEDRATIOMEASURE(0.00390625 ),IFCSPECULAREXPONENT(10.),.NOTDEFINED.); #104= IFCSURFACESTYLE('',.POSITIVE.,(#103)); #106= IFCPRESENTATIONSTYLEASSIGNMENT((#104)); #108= IFCCARTESIANPOINT((1828.8,0.)); #112= IFCDIRECTION((1.,0.)); #116= IFCAXIS2PLACEMENT2D(#108,#112); #119= IFCRECTANGLEPROFILEDEF(.AREA.,'12"X144"',#116,3657.6,304.8); #120= IFCAXIS2PLACEMENT3D(#21,#33,#25); #123= IFCEXTRUDEDAREASOLID(#119,#120,#33,6337.3); #126= IFCSTYLEDITEM(#123,(#106),'Name'); #130= IFCSHAPEREPRESENTATION(#40,'Body','SweptSolid',(#123)); #136= IFCCARTESIANPOINT((0.,0.)); #140= IFCCARTESIANPOINT((3657.6,0.)); #144= IFCPOLYLINE((#136,#140)); #148= IFCSHAPEREPRESENTATION(#40,'Axis','Curve2D',(#144)); #154= IFCPRODUCTDEFINITIONSHAPE('','',(#130,#148)); #158= IFCWALLSTANDARDCASE('18sLIo000AeJ4oCZ8oDZWm',#20,'140012','12"X144"','12"X144 "',#99,#154,'Piece_Mark_Test'); #177= IFCWALLTYPE('21As$GxTv9P96JaIOCStup',#20,'12"X144"',$,$,$,$,$,$,.NOTDEFINED.) ; #183= IFCPROPERTYSINGLEVALUE('Class','Class',IFCIDENTIFIER('3'),$); #187= IFCPROPERTYSINGLEVALUE('Finish','Finish',IFCIDENTIFIER(''),$); #191= IFCPROPERTYSINGLEVALUE('AssemblyId','AssemblyId',IFCIDENTIFIER('SW8(?)'),$); #195= IFCPROPERTYSINGLEVALUE('Part_Position','Part_Position',IFCIDENTIFIER('Concret e109(?)'),$); #199= IFCPROPERTYSET('0Ba8gjct92zOaL7cMWNn3y',#20,'Pset_Tekla_General','Pset_Tekla_ General',(#183,#187,#191,#195)); #204= IFCQUANTITYLENGTH('Width',$,$,304.8); #206= IFCQUANTITYAREA('GrossFootprintArea',$,$,0.90580464); #208= IFCQUANTITYLENGTH('Length',$,$,6337.3); #210= IFCQUANTITYVOLUME('NetVolume',$,$,6.7957094); #212= IFCQUANTITYLENGTH('Height',$,$,6337.3); #214= IFCQUANTITYWEIGHT('NetWeight',$,$,16328.513); #216= IFCELEMENTQUANTITY('2W6G0$iA133e5W67uULoe_',#20,'BaseQuantities',$,$,(#204,#2 06,#208,#210,#212,#214)); #221= IFCMATERIAL('CONCRETE/5000'); #224= IFCMATERIALLAYER(#221,304.8,$); #226= IFCMATERIALLAYERSET((#224),'Wall: Insitu CONCRETE/5000 304.800000'); #228= IFCMATERIALLAYERSETUSAGE(#226,.AXIS2.,.POSITIVE.,-152.4); #229= IFCAXIS2PLACEMENT3D(#92,#33,#29); #232= IFCLOCALPLACEMENT(#79,#229); #235= IFCAXIS2PLACEMENT2D(#136,#112); #238= IFCRECTANGLEPROFILEDEF(.AREA.,'',#235,685.8,1130.3); #239= IFCDIRECTION((-1.,0.,0.)); #243= IFCDIRECTION((0.,0.9999446,-0.0105257)); #247= IFCCARTESIANPOINT((1828.8,-183.21248,5938.3479)); #251= IFCAXIS2PLACEMENT3D(#247,#243,#239); #254= IFCEXTRUDEDAREASOLID(#238,#251,#33,355.61688); #257= IFCSHAPEREPRESENTATION(#40,'Body','SweptSolid',(#254)); #263= IFCPRODUCTDEFINITIONSHAPE('','',(#257));
77
#267= IFCOPENINGELEMENT('19OqxW0017Rp4oCp4oDp8s',#20,'','','Recess',#232,#263,''); #288= IFCRELVOIDSELEMENT('1Ytr4py25E$gCf50pmDdYc',#20,'','',#158,#267); #289= IFCAXIS2PLACEMENT3D(#92,#33,#29); #292= IFCLOCALPLACEMENT(#79,#289); #295= IFCAXIS2PLACEMENT2D(#136,#112); #298= IFCRECTANGLEPROFILEDEF(.AREA.,'',#295,152.4,304.8); #299= IFCDIRECTION((0.,0.0105257,0.9999446)); #303= IFCDIRECTION((0.,-0.9999446,0.0105257)); #307= IFCCARTESIANPOINT((2603.5,177.79858,3248.5292)); #311= IFCAXIS2PLACEMENT3D(#307,#303,#299); #314= IFCEXTRUDEDAREASOLID(#298,#311,#33,355.61688); #317= IFCSHAPEREPRESENTATION(#40,'Body','SweptSolid',(#314)); #323= IFCPRODUCTDEFINITIONSHAPE('','',(#317)); #327= IFCOPENINGELEMENT('19OqxW001AP34oCp4oDpSm',#20,'','','Recess',#292,#323,''); #348= IFCRELVOIDSELEMENT('3KkRwzUO93DRZ385K5OR_o',#20,'','',#158,#327); #349= IFCAXIS2PLACEMENT3D(#92,#33,#29); #352= IFCLOCALPLACEMENT(#79,#349); #355= IFCAXIS2PLACEMENT2D(#136,#112); #358= IFCRECTANGLEPROFILEDEF(.AREA.,'',#355,152.4,304.8); #359= IFCCARTESIANPOINT((1054.1,177.79859,3248.5292)); #363= IFCAXIS2PLACEMENT3D(#359,#303,#299); #366= IFCEXTRUDEDAREASOLID(#358,#363,#33,355.61688); #369= IFCSHAPEREPRESENTATION(#40,'Body','SweptSolid',(#366)); #375= IFCPRODUCTDEFINITIONSHAPE('','',(#369)); #379= IFCOPENINGELEMENT('19OqxW001APp4oCp4oDpSm',#20,'','','Recess',#352,#375,''); #400= IFCRELVOIDSELEMENT('33Bx$6Erv6LP1Kpdu1haYh',#20,'','',#158,#379); #401= IFCAXIS2PLACEMENT3D(#92,#33,#29); #404= IFCLOCALPLACEMENT(#79,#401); #407= IFCAXIS2PLACEMENT2D(#136,#112); #410= IFCCIRCLEPROFILEDEF(.AREA.,'',#407,101.6); #411= IFCDIRECTION((0.,-1.,0.)); #415= IFCCARTESIANPOINT((1054.1,177.8,5524.501)); #419= IFCAXIS2PLACEMENT3D(#415,#411,#25); #422= IFCEXTRUDEDAREASOLID(#410,#419,#33,355.6); #425= IFCSHAPEREPRESENTATION(#40,'Body','SweptSolid',(#422)); #431= IFCPRODUCTDEFINITIONSHAPE('','',(#425)); #435= IFCOPENINGELEMENT('19ahHb0007_J4oCpGpDJCn',#20,'','','Recess',#404,#431,''); #456= IFCRELVOIDSELEMENT('0Eytq4za90gQ5wGKPjvFIQ',#20,'','',#158,#435); #457= IFCAXIS2PLACEMENT3D(#92,#33,#29); #460= IFCLOCALPLACEMENT(#79,#457); #463= IFCAXIS2PLACEMENT2D(#136,#112); #466= IFCCIRCLEPROFILEDEF(.AREA.,'',#463,101.6); #467= IFCCARTESIANPOINT((2603.5,177.8,5524.501)); #471= IFCAXIS2PLACEMENT3D(#467,#411,#25); #474= IFCEXTRUDEDAREASOLID(#466,#471,#33,355.6); #477= IFCSHAPEREPRESENTATION(#40,'Body','SweptSolid',(#474)); #483= IFCPRODUCTDEFINITIONSHAPE('','',(#477)); #487= IFCOPENINGELEMENT('19ahHb0007$34oCpGpDJCn',#20,'','','Recess',#460,#483,''); #508= IFCRELVOIDSELEMENT('3armAliFf5AvKns7DAk91o',#20,'','',#158,#487); #509= IFCAXIS2PLACEMENT3D(#92,#33,#29); #512= IFCLOCALPLACEMENT(#79,#509); #515= IFCAXIS2PLACEMENT2D(#136,#112); #518= IFCCIRCLEPROFILEDEF(.AREA.,'',#515,101.6); #519= IFCCARTESIANPOINT((1054.1,177.8,2273.301)); #523= IFCAXIS2PLACEMENT3D(#519,#411,#25);
78
#526= IFCEXTRUDEDAREASOLID(#518,#523,#33,355.6); #529= IFCSHAPEREPRESENTATION(#40,'Body','SweptSolid',(#526)); #535= IFCPRODUCTDEFINITIONSHAPE('','',(#529)); #539= IFCOPENINGELEMENT('19ahHb0007$p4oCpGpDJCo',#20,'','','Recess',#512,#535,''); #560= IFCRELVOIDSELEMENT('2onnZrcCn8196ig2MnVzbc',#20,'','',#158,#539); #561= IFCAXIS2PLACEMENT3D(#92,#33,#29); #564= IFCLOCALPLACEMENT(#79,#561); #567= IFCAXIS2PLACEMENT2D(#136,#112); #570= IFCCIRCLEPROFILEDEF(.AREA.,'',#567,101.6); #571= IFCCARTESIANPOINT((2603.5,177.8,2273.301)); #575= IFCAXIS2PLACEMENT3D(#571,#411,#25); #578= IFCEXTRUDEDAREASOLID(#570,#575,#33,355.6); #581= IFCSHAPEREPRESENTATION(#40,'Body','SweptSolid',(#578)); #587= IFCPRODUCTDEFINITIONSHAPE('','',(#581)); #591= IFCOPENINGELEMENT('19ahHb00080Z4oCpGpDJCo',#20,'','','Recess',#564,#587,''); #612= IFCRELVOIDSELEMENT('0_CmABIS95eu3OjIFEvAxz',#20,'','',#158,#591); #613= IFCCARTESIANPOINT((152.4,-1828.8,965.2)); #617= IFCAXIS2PLACEMENT3D(#613,#33,#29); #620= IFCLOCALPLACEMENT(#79,#617); #623= IFCAXIS2PLACEMENT2D(#108,#112); #626= IFCRECTANGLEPROFILEDEF(.AREA.,'12"X144"',#623,3657.6,304.8); #627= IFCAXIS2PLACEMENT3D(#21,#33,#25); #630= IFCEXTRUDEDAREASOLID(#626,#627,#33,7442.2); #633= IFCSTYLEDITEM(#630,(#106),'Name'); #637= IFCSHAPEREPRESENTATION(#40,'Body','SweptSolid',(#630)); #643= IFCPOLYLINE((#136,#140)); #647= IFCSHAPEREPRESENTATION(#40,'Axis','Curve2D',(#643)); #653= IFCPRODUCTDEFINITIONSHAPE('','',(#637,#647)); #657= IFCWALLSTANDARDCASE('18sLIo000AdJ4oCZ8oDZWm',#20,'140012','12"X144"','12"X144 "',#620,#653,'Piece_Mark_Test'); #676= IFCPROPERTYSINGLEVALUE('AssemblyId','AssemblyId',IFCIDENTIFIER('SW6(?)'),$); #680= IFCPROPERTYSINGLEVALUE('Part_Position','Part_Position',IFCIDENTIFIER('Concret e107(?)'),$); #684= IFCPROPERTYSET('0F7Dsf9Hn0gQQE98z7l5lC',#20,'Pset_Tekla_General','Pset_Tekla_ General',(#183,#187,#676,#680)); #689= IFCQUANTITYAREA('GrossFootprintArea',$,$,0.9290304); #691= IFCQUANTITYLENGTH('Length',$,$,7442.2); #693= IFCQUANTITYVOLUME('NetVolume',$,$,8.1915233); #695= IFCQUANTITYLENGTH('Height',$,$,7442.2); #697= IFCQUANTITYWEIGHT('NetWeight',$,$,19682.33); #699= IFCMATERIALLAYERSETUSAGE(#226,.AXIS2.,.POSITIVE.,-152.4); #700= IFCAXIS2PLACEMENT3D(#613,#33,#29); #703= IFCLOCALPLACEMENT(#79,#700); #706= IFCAXIS2PLACEMENT2D(#136,#112); #709= IFCRECTANGLEPROFILEDEF(.AREA.,'',#706,152.4,304.8); #710= IFCCARTESIANPOINT((2603.5,177.79858,4213.7292)); #714= IFCAXIS2PLACEMENT3D(#710,#303,#299); #717= IFCEXTRUDEDAREASOLID(#709,#714,#33,355.61688); #720= IFCSHAPEREPRESENTATION(#40,'Body','SweptSolid',(#717)); #726= IFCPRODUCTDEFINITIONSHAPE('','',(#720)); #730= IFCOPENINGELEMENT('19OqxW001AM34oCp4oDpSm',#20,'','','Recess',#703,#726,''); #751= IFCRELVOIDSELEMENT('3pKQrXnazFXOi3x5DBgF63',#20,'','',#657,#730); #752= IFCAXIS2PLACEMENT3D(#613,#33,#29);
79
#755= IFCLOCALPLACEMENT(#79,#752); #758= IFCAXIS2PLACEMENT2D(#136,#112); #761= IFCRECTANGLEPROFILEDEF(.AREA.,'',#758,152.4,304.8); #762= IFCCARTESIANPOINT((1054.1,177.79859,4213.7292)); #766= IFCAXIS2PLACEMENT3D(#762,#303,#299); #769= IFCEXTRUDEDAREASOLID(#761,#766,#33,355.61688); #772= IFCSHAPEREPRESENTATION(#40,'Body','SweptSolid',(#769)); #778= IFCPRODUCTDEFINITIONSHAPE('','',(#772)); #782= IFCOPENINGELEMENT('19OqxW001AMp4oCp4oDpSm',#20,'','','Recess',#755,#778,''); #803= IFCRELVOIDSELEMENT('0QzPgp$WfDoPDVP58jIlfX',#20,'','',#657,#782); #804= IFCAXIS2PLACEMENT3D(#613,#33,#29); #807= IFCLOCALPLACEMENT(#79,#804); #810= IFCAXIS2PLACEMENT2D(#136,#112); #813= IFCRECTANGLEPROFILEDEF(.AREA.,'',#810,152.4,304.8); #814= IFCCARTESIANPOINT((2603.5,177.79859,7464.9292)); #818= IFCAXIS2PLACEMENT3D(#814,#303,#299); #821= IFCEXTRUDEDAREASOLID(#813,#818,#33,355.61688); #824= IFCSHAPEREPRESENTATION(#40,'Body','SweptSolid',(#821)); #830= IFCPRODUCTDEFINITIONSHAPE('','',(#824)); #834= IFCOPENINGELEMENT('19OqxW001ANZ4oCp4oDpSm',#20,'','','Recess',#807,#830,''); #855= IFCRELVOIDSELEMENT('0FNyNLn8b0fPt0R9JimWCN',#20,'','',#657,#834); #856= IFCAXIS2PLACEMENT3D(#613,#33,#29); #859= IFCLOCALPLACEMENT(#79,#856); #862= IFCAXIS2PLACEMENT2D(#136,#112); #865= IFCRECTANGLEPROFILEDEF(.AREA.,'',#862,152.4,304.8); #866= IFCCARTESIANPOINT((1054.1,177.79859,7464.9292)); #870= IFCAXIS2PLACEMENT3D(#866,#303,#299); #873= IFCEXTRUDEDAREASOLID(#865,#870,#33,355.61688); #876= IFCSHAPEREPRESENTATION(#40,'Body','SweptSolid',(#873)); #882= IFCPRODUCTDEFINITIONSHAPE('','',(#876)); #886= IFCOPENINGELEMENT('19OqxW001AOJ4oCp4oDpSm',#20,'','','Recess',#859,#882,''); #907= IFCRELVOIDSELEMENT('1OZtw7H1b818GBe_qDPfjq',#20,'','',#657,#886); #908= IFCAXIS2PLACEMENT3D(#613,#33,#29); #911= IFCLOCALPLACEMENT(#79,#908); #914= IFCAXIS2PLACEMENT2D(#136,#112); #917= IFCRECTANGLEPROFILEDEF(.AREA.,'',#914,152.4,304.8); #918= IFCCARTESIANPOINT((2603.5,177.79858,784.72915)); #922= IFCAXIS2PLACEMENT3D(#918,#303,#299); #925= IFCEXTRUDEDAREASOLID(#917,#922,#33,355.61688); #928= IFCSHAPEREPRESENTATION(#40,'Body','SweptSolid',(#925)); #934= IFCPRODUCTDEFINITIONSHAPE('','',(#928)); #938= IFCOPENINGELEMENT('19T7xa0006JZ4oCp8pDpat',#20,'','','Recess',#911,#934,''); #959= IFCRELVOIDSELEMENT('2olDd$JNf5Lg0bCG8BwaRm',#20,'','',#657,#938); #960= IFCAXIS2PLACEMENT3D(#613,#33,#29); #963= IFCLOCALPLACEMENT(#79,#960); #966= IFCAXIS2PLACEMENT2D(#136,#112); #969= IFCRECTANGLEPROFILEDEF(.AREA.,'',#966,152.4,304.8); #970= IFCCARTESIANPOINT((1054.1,177.79858,784.72915)); #974= IFCAXIS2PLACEMENT3D(#970,#303,#299); #977= IFCEXTRUDEDAREASOLID(#969,#974,#33,355.61688); #980= IFCSHAPEREPRESENTATION(#40,'Body','SweptSolid',(#977)); #986= IFCPRODUCTDEFINITIONSHAPE('','',(#980)); #990= IFCOPENINGELEMENT('19T7xa0006KJ4oCp8pDpat',#20,'','','Recess',#963,#986,''); #1011= IFCRELVOIDSELEMENT('1VyJbtGEn0UfHijsQtECy8',#20,'','',#657,#990); #1012= IFCAXIS2PLACEMENT3D(#613,#33,#29);
80
#1015= IFCLOCALPLACEMENT(#79,#1012); #1018= IFCAXIS2PLACEMENT2D(#136,#112); #1021= IFCCIRCLEPROFILEDEF(.AREA.,'',#1018,101.6); #1022= IFCCARTESIANPOINT((1054.1,177.8,6489.701)); #1026= IFCAXIS2PLACEMENT3D(#1022,#411,#25); #1029= IFCEXTRUDEDAREASOLID(#1021,#1026,#33,355.6); #1032= IFCSHAPEREPRESENTATION(#40,'Body','SweptSolid',(#1029)); #1038= IFCPRODUCTDEFINITIONSHAPE('','',(#1032)); #1042= IFCOPENINGELEMENT('19ahHb00081J4oCpGpDJCo',#20,'','','Recess',#1015,#1038,'') ; #1063= IFCRELVOIDSELEMENT('3mQaHf$MjAgPu1mrOO5_2F',#20,'','',#657,#1042); #1064= IFCAXIS2PLACEMENT3D(#613,#33,#29); #1067= IFCLOCALPLACEMENT(#79,#1064); #1070= IFCAXIS2PLACEMENT2D(#136,#112); #1073= IFCCIRCLEPROFILEDEF(.AREA.,'',#1070,101.6); #1074= IFCCARTESIANPOINT((2603.5,177.8,6489.701)); #1078= IFCAXIS2PLACEMENT3D(#1074,#411,#25); #1081= IFCEXTRUDEDAREASOLID(#1073,#1078,#33,355.6); #1084= IFCSHAPEREPRESENTATION(#40,'Body','SweptSolid',(#1081)); #1090= IFCPRODUCTDEFINITIONSHAPE('','',(#1084)); #1094= IFCOPENINGELEMENT('19ahHb0008234oCpGpDJCo',#20,'','','Recess',#1067,#1090,'') ; #1115= IFCRELVOIDSELEMENT('0Cd00NP7P9f9qbzwi7EAOo',#20,'','',#657,#1094); #1116= IFCAXIS2PLACEMENT3D(#613,#33,#29); #1119= IFCLOCALPLACEMENT(#79,#1116); #1122= IFCAXIS2PLACEMENT2D(#136,#112); #1125= IFCCIRCLEPROFILEDEF(.AREA.,'',#1122,101.6); #1126= IFCCARTESIANPOINT((1054.1,177.8,3238.501)); #1130= IFCAXIS2PLACEMENT3D(#1126,#411,#25); #1133= IFCEXTRUDEDAREASOLID(#1125,#1130,#33,355.6); #1136= IFCSHAPEREPRESENTATION(#40,'Body','SweptSolid',(#1133)); #1142= IFCPRODUCTDEFINITIONSHAPE('','',(#1136)); #1146= IFCOPENINGELEMENT('19ahHb00082p4oCpGpDJCo',#20,'','','Recess',#1119,#1142,'') ; #1167= IFCRELVOIDSELEMENT('1L0nm2rDv5GBAZHrn0Lh3O',#20,'','',#657,#1146); #1168= IFCAXIS2PLACEMENT3D(#613,#33,#29); #1171= IFCLOCALPLACEMENT(#79,#1168); #1174= IFCAXIS2PLACEMENT2D(#136,#112); #1177= IFCCIRCLEPROFILEDEF(.AREA.,'',#1174,101.6); #1178= IFCCARTESIANPOINT((2603.5,177.8,3238.501)); #1182= IFCAXIS2PLACEMENT3D(#1178,#411,#25); #1185= IFCEXTRUDEDAREASOLID(#1177,#1182,#33,355.6); #1188= IFCSHAPEREPRESENTATION(#40,'Body','SweptSolid',(#1185)); #1194= IFCPRODUCTDEFINITIONSHAPE('','',(#1188)); #1198= IFCOPENINGELEMENT('19ahHb00083Z4oCpGpDJCo',#20,'','','Recess',#1171,#1194,'') ; #1219= IFCRELVOIDSELEMENT('0vr1RjqJv1YxBoiAONSn2W',#20,'','',#657,#1198); #1220= IFCCARTESIANPOINT((8.6401997E-12,1828.8,8420.1)); #1224= IFCAXIS2PLACEMENT3D(#1220,#33,#411); #1227= IFCLOCALPLACEMENT(#79,#1224); #1230= IFCCOLOURRGB('Light Yellow',0.89803922,0.89803922,0.2); #1231= IFCSURFACESTYLERENDERING(#1230,0.,$,$,$,$,IFCNORMALISEDRATIOMEASURE(0.0039062 5),IFCSPECULAREXPONENT(10.),.NOTDEFINED.); #1232= IFCSURFACESTYLE('',.POSITIVE.,(#1231)); #1234= IFCPRESENTATIONSTYLEASSIGNMENT((#1232));
81
/*Precast Joint Type Profiling Geometry*/ #1247= IFCEXTRUDEDAREASOLID(#1239,#1244,#33,3657.6); #1250= IFCSTYLEDITEM(#1247,(#1234),'Name'); #1254= IFCSHAPEREPRESENTATION(#40,'Body','SweptSolid',(#1247)); #1260= IFCPRODUCTDEFINITIONSHAPE('','',(#1254)); /*Precast Joint Attributes*/ #1264= IFCFASTENER('1BAW8f000PQ34oDZ4mD3am',#20,'JOINT','D1"','D1"',#1227,#1260,'TS_ 27669868'); #1283= IFCFASTENERTYPE('1jSk3Iq6H5gQkqkOc$f$YR',#20,'D1"',$,$,$,$,$,$); /*Joint Quantities*/ #1306= IFCQUANTITYLENGTH('Length',$,$,3657.6); #1308= IFCQUANTITYAREA('OuterSurfaceArea',$,$,0.28950865); #1310= IFCQUANTITYVOLUME('NetVolume',$,$,0.0017698029); #1312= IFCQUANTITYWEIGHT('NetWeight',$,$,0.12388699); #1314= IFCELEMENTQUANTITY('2ML73oGlL2uO0CpCtwZeN1',#20,'BaseQuantities',$,$,(#1306,# 1308,#1310,#1312)); /*Material Association to Fastener*/ #1319= IFCMATERIAL('MISCELLANEOUS/Insulation'); #1322= IFCRELAGGREGATES('3Xmgeq0QP27eb1UbQpud0d',#20,$,$,#46,(#56)); #1324= IFCRELAGGREGATES('1jYB390t14n9Wy_dFgh64k',#20,$,$,#56,(#69)); #1326= IFCRELAGGREGATES('1ZpUmnz2DC4eQXFoLshfNH',#20,$,$,#69,(#82)); #1328= IFCRELCONTAINEDINSPATIALSTRUCTURE('3$cxzBugv1wBjRJd2AbOm8',#20,$,$,(#1264,#65 7,#158),#82); #1330= IFCRELDEFINESBYPROPERTIES('0xI_0vJ5LEeRTCoUcOjoM7',#20,'NameRelDefByPropertie s','DescriptionRelDefByProperties',(#158),#199); #1332= IFCRELDEFINESBYPROPERTIES('1jS2Em0fv9uAdClsUpkxMy',#20,'NameRelDefByPropertie s','DescriptionRelDefByProperties',(#657,#158),#216); #1334= IFCRELDEFINESBYPROPERTIES('0Rmvmri0j8k9iqdixQYwTh',#20,'NameRelDefByPropertie s','DescriptionRelDefByProperties',(#657),#684); /*Precast Joint Attributes*/ #1338= IFCRELDEFINESBYPROPERTIES('2zQL883czEuOEFUlpIRYsx',#20,'NameRelDefByPropertie s','DescriptionRelDefByProperties',(#1264),#1314); #1340= IFCRELDEFINESBYTYPE('1nJA7pusL0w9MwPpy7qTZe',#20,$,$,(#657,#158),#177); #1342= IFCRELDEFINESBYTYPE('3doUjdg5r8WeoEmjSc5vaD',#20,$,$,(#1264),#1283); #1344= IFCRELASSOCIATESMATERIAL('29WW99el1EWwpgq9CT4Ndn',#20,$,$,(#158),#228); #1346= IFCRELASSOCIATESMATERIAL('0tCt4vNcT1VghOFze$tBYA',#20,$,$,(#657),#699); /*Material Association to Fastener*/ #1348= IFCRELASSOCIATESMATERIAL('0duQwoHMT98gZA_iocIQYr',#20,$,$,(#1264),#1319);
82
#1350= IFCPRESENTATIONLAYERASSIGNMENT('TS_1 Phase 1',$,(#1254,#637,#130),$); #1360= IFCCARTESIANPOINT((6000.,0.,0.)); #1370= IFCCARTESIANPOINT((6000.,0.,3300.)); #1380= IFCPOLYLINE((#1360,#1370)); #1390= IFCCONNECTIONCURVEGEOMETRY(#1380,$); #1400= IFCRELCONNECTSWITHREALIZINGELEMENTS('2t99EIvvjCSfoOA4jQczRu',#20,'J1','Logical Joint',#1390,#158,#657,(#1264),'Precast Joint'); ENDSEC; END-ISO-10303-21;
83
1. PCI BIM Project Webpage http://dcom.arch.gatech.edu/pcibim/ 2. Model View Definitions for Precast Concrete http://dcom.arch.gatech.edu/pcibim/documents/Precast_MVDs_v2.1_Volume_I.pdf 3. Draft IFC Binding Documents for Precast Concrete Concepts http://dcom.arch.gatech.edu/pcibim/documents/Preacst_MVDs_v2.1_Volume_IIce.pdf 4. Information Delivery Manual for Precast Concrete http://dcom.arch.gatech.edu/pcibim/documents/IDM_for_Precast.pdf
84
APPENDIX E
Possible Technical Advisor Contacts for National BIM Standards Work
Chuck Eastman Thomas Liebich Nick Nisbet Ivan Panushev Rafael Sacks Richard See
85