Académique Documents
Professionnel Documents
Culture Documents
www.elsevier.com/locate/cad
Abstract
Semantic interoperability is a crucial element to make building information models understandable and model data sharable across multiple
design disciplines and heterogeneous computer systems. This paper presents a new approach and its software implementation for the development
of building design objects with semantics of interoperable information to support semantic interoperability in building designs. The novelty
of the approach includes its incorporation of building design domain ontology, object-based CAD information modeling, and interoperability
standard to make building information models and model data semantically interoperable. A set of methods are proposed to address the issues
of object-based building information representation compliant with the Industrial Foundation Classes (IFC); extension of IFC models with the
supplementary information; and semantic annotation of the interoperable and extensible information sets. The prototype implementation of these
methods provides a set of Web-enabled software tools for effectively generating, managing, and reusing the semantically interoperable building
objects in design applications of architectural CAD, structural analysis, and building code conformance checking.
c 2006 Elsevier Ltd. All rights reserved.
Keywords: Building design object; Semantic interoperability; IFC standard; Domain ontology
1. Introduction
Building design can be a highly collaborative process often
involving multi-disciplinary project teams at distributed sites
with heterogeneous computer-support systems. Interoperability
issues arise in such a collaborative design environment
where:
There is a need for sharing semantics of building information
models (BIM) among project participants who do not
necessarily share the same definition of terminologies, share
the same meaning of building information, or share the
same background and perspective about a design (semantic
difference);
Disparate design systems and heterogeneous data sources
with proprietary information model schemas coexist
(structural difference); and
Fundamentally different representation languages and data
formats are used in data interchange processes (syntactic
difference).
Corresponding author. Tel.: +65 6793 8348; fax: +65 6791 6377.
1100
TypeIndicator
Attribute constraints
PropertyName
Description
Value
Unit
LibRefNo
String
String
Real
Measures
String
>=0
Enum (mm, min, dollar)
Unique string
1101
1102
Table 2
Property objects of the window
PropertyName
Description
Value
Unit
LibRefNo
NominalHeight
FireRating
Material
Availability
135
50
CW-0935
Yes
mm
min
Window001
Window003
Window004
Window006
(CAD.WindowProperty,
IFC.WindowProperty)
(CAD.WindowProperty.PropertyName, IFC.WindowProperty.Name)
(CAD.WindowProperty.Description, IFC.WindowProperty.Description)
(CAD.WindowProperty.Value, IFC.WindowProperty.NominalValue)
(CAD.WindowProperty.Unit, IFC.WindowProperty.Unit)
1103
Description
Value
Explode
dropExplode.dvb!Drop
Module.explode
LocatedOnTop
(X i j , Yi j , Z i j ) [k]a ==
(X 0 j , Y0 j , Z 0 j ) [k]a
k = 1, 2, . . .
MaxSetbackDistance
6000
Unit
Type
dvb
mm
a (X , Y , Z ) [ ] a vertex coordinates array for a household shelter space of jth unit on ith floor. (X , Y , Z ) [ ] a base vertex coordinates array for
ij ij
ij
0j 0j
0j
jth vertical tower.
1104
1105
The design of the Web component in the Web tier and the
data access component in the domain logic tier of Fig. 4 are
discussed below.
Web component: The Web component uses the Model-ViewController (MVC) pattern to fulfill its responsibility for routing
an incoming HTTP request from a client browser to the
Controller for generating an appropriate Command object
which knows how to handle the request. This Command
object can then further delegate the request to a facade object
by instantiating a Model object. The object will execute
appropriate business logic functions of the design object server.
Once the request processing is completed, the Controller will
invoke a Flow Management object to look up the next display
page and present it to the client through a View object. The
following sequence diagram of UML [22] in Fig. 5 depicts how
the MVC pattern works.
Data access component: This component is responsible for
database connection and brokers management, such as to
help a requesting object to get a database connection; to
release the database connection; to retrieve the appropriate
broker; and to manage the number of brokers to be
instantiated. Any domain object can only manipulate the
server database objects through brokers. Each domain object
must have at least one broker to process its requests
for accessing the server database. For example, in order
Object creation wizard: The wizard is designed for use with the
ADT system to provide the services of: defining the semantics
of entity properties for ADT models, instantiating the property
definitions with design parameters extracted automatically from
ADT or supplemented by users, validating the property values
against the implemented attribute constraints in the wizard,
linking property objects with CAD models or ADT styles,
and semantically mapping property definitions between ADTs
and IFCs. Three modules are developed with the wizard to
implement these services. The functional requirements of each
module are captured and analyzed by use case diagrams of
UML. Fig. 7 shows one of the use cases for the CAD Pset
definition module.
CAD integration toolkit: It is another CAD add-on to provide
more value-added services to the CAD users who are using
semantics of the supplementary information, especially CAD
behaviors of the downloaded building design objects in
their native CAD systems. As the supplementary information
semantics with the design objects may have been edited
at the server side, the toolkit will identify and retrieve,
1106
1107
the server to the Local Storage Box, then to drag and drop
a selected object/symbol from the local storage to a CAD
working environment.
Structural interfacing tool: This thin client tool uses a Java3D
enabled Web browser with Java applet running on it. The
applet reads in structural design models from the server;
extracts the model topological information and geometric
design parameters; and displays 3D structural elements on a
browser with the support from the Java3D package. Besides 3D
visualization, the interfacing tool allows users to add or edit the
structural property sets to selected structural elements (shown
in Fig. 9). It also supports the design negotiation of architects
and structural engineers through XML messaging between the
two.
4. Software implementation
The prototype server is implemented in Java and supports the
J2EE (Java 2 Enterprise Edition) [23] platform for portability
1108
1109
1110
CAD model to instantiate these property and behavior definitions. If not, it provides GUIs to allow new data entries from
users (lower left GUI in Fig. 13). All input data will be evaluated by constraint algorithms of the Wizard and only valid
inputs are accepted. As indicated in Fig. 13, the Wizard only
provides commonly agreed terms from the vocabulary library
for naming the doors supplementary information of multi-view
representation maps, Psets, behaviors, and reference links. It
embeds these information elements into the door CAD model
through customized ADT facilities. By mapping and annotating
the embedded information semantics, the Wizard generates an
IFC file and an XML profile instance file for the door. Both files
(shown in Fig. 14) together with the door CAD model extended
with the supplementary information will be submitted to the
design object server for sharing with other design applications.
1111
1112