13.07.2015 Views

Outline of IFC Model Server Development Project - Construction IT ...

Outline of IFC Model Server Development Project - Construction IT ...

Outline of IFC Model Server Development Project - Construction IT ...

SHOW MORE
SHOW LESS

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

VTT-TEC-ADA-01 Page 2prototype must have extensibility, scalability and be built on standard technologies.In this development stage, <strong>IFC</strong> Release 2.0 is focused on, because the first wave <strong>of</strong> BLIS project products willcome up in 2001. Tools and components that will be developed by this development project will be compatiblewith further <strong>IFC</strong> releases like <strong>IFC</strong> 2x.3. GoalThe goal <strong>of</strong> this development project is to realize following points:• Storing <strong>IFC</strong> model data in a database system. (SQL <strong>Server</strong>, Oracle, etc)• Automatic schema conversion from <strong>IFC</strong> EXPRESS schema to database schema by using XMLtechnology• XML based SOAP communication between model server and client s<strong>of</strong>tware4. Components in <strong>IFC</strong> <strong>Model</strong> <strong>Server</strong>In this project, following components will be realized:• EXPRESS to XML schema Converter (EXC)• <strong>IFC</strong> Object <strong>Model</strong> Data Access Layer Component (DALC)• Web Service Layer (WSL)4.1. EXPRESS to XML Schema Converter (eXc)This component realizes conversion from EXPRESS to XML Schema format. This conversion consists <strong>of</strong> towstages. At the first stage, EXPRESS schema information is converted to an intermediate XML format, i.e. Part28XML format, OIM 1 (Open Information <strong>Model</strong>) format, or ifcXML format. In the second stage, the intermediateXML format is converted a specific schema defining language such as SQL DDL by XSLT, scripting and appletby using DOM parser.There is a need to research about the necessity to develop the first stage, because the functionality that convertsEXPRESS to Part28 XML format will be able to use some existing tools or library.• EXPRESS parser Module:The CSTB open source project will be utilized in this part. Other possibility is the public s<strong>of</strong>twarefrom NIST.• EXPRESS schema intermediate XML schema Module:After parsing EXPRESS schema, the schema information is stored in XML DOM tree in thememory <strong>of</strong> the converter. This DOM tree will be based on Part28 XML format, OIM format orifcXML format.• Intermediate XML to destination Schema Module:The intermediate XML format is very neutral information and contains almost the same informationas EXPRESS schema. This module converts intermediate XML data into the destination schemadefining language, i.e. SQL DDL(Data Definition Language) or other XML Schema format.1 OIM: Open Information <strong>Model</strong> is a framework that was developed by MDC(Meta Data Coalition) for defining meta data.SECOM Co., Ltd. Intelligent Systems Lab.


VTT-TEC-ADA-01 Page 3EXPRESSEXCEXPRESS To XML Schema ConverterXML SchemaPart28 OIM ifcXMLXSL Module XSL Module XSL ModuleSQL DDLfor SQL <strong>Server</strong>SQL DDLfor Oracleother XML SchemaSQL <strong>Server</strong>OracleXML DatastoreFig. 1: <strong>Outline</strong> <strong>of</strong> EXPRESS to XML Schema Converter4.2. <strong>IFC</strong> <strong>Model</strong> Data Access Layer Component (DALC)DALC accesses a database for importing and exporting <strong>IFC</strong> model data. It provides functions that resembleSDAI model server function, and includes following APIs :• BLIS-XML importing and exporting• IfcXML support will be a challenge• Primitive <strong>IFC</strong> object access functions• <strong>IFC</strong> object search (by entity type, GUID)DALC is based on the database schema which is made by EXC tool. ADO component is used for accessing toSECOM Co., Ltd. Intelligent Systems Lab.


VTT-TEC-ADA-01 Page 4the database in DALC.In this project, Micros<strong>of</strong>t SQL <strong>Server</strong> 2000 will be a target database system, because it has XML compatiblefunctions. ADO can access to other database such as Oracle by changing the database provider component.To handle the STEP files, <strong>IFC</strong>svr ActiveX Component will be used in DALC. When a client application usesSTEP files, <strong>IFC</strong>svr component accesses the STEP files and invokes DALC primitive <strong>IFC</strong> object access functionsto import and export the <strong>IFC</strong> model data with database.4.3. Web Service Layer (WSL)WSL provides the <strong>IFC</strong> model data upload and download services. There are two ways to upload and downloadthe <strong>IFC</strong> model data in this proposal.1. With user interface on the web pages: Users operate upload and download procedures on the web pagesmanually. This is a quite traditional way to use web pages. ASP scripts will run the DALC directly. Httpprotocol is used for downloading/uploading <strong>IFC</strong> files.2. By using SOAP protocol: Client applications can access to the Web Service Component on the <strong>IFC</strong><strong>Model</strong> <strong>Server</strong> site via SOAP protocol. A request is sent out to the Web service by client applications inorder to download and upload the <strong>IFC</strong> <strong>Model</strong> Data. The <strong>IFC</strong> <strong>Model</strong> data written by BLIS-XML will beencapsulated by SOAP.WSL also provides <strong>IFC</strong> <strong>Model</strong> handling user interfaces to client applications. This means that a kind <strong>of</strong> partialmodel select and merge functions, quantity take <strong>of</strong>f function, property set edit function and so on, will beattached into the Web Service in the future. In this proposal, preliminary limited model select and merge function,defined by the building storey, will be implemented.In the first stage <strong>of</strong> this proposal, ASP (Active <strong>Server</strong> Page) on IIS (Internet Information <strong>Server</strong>) will be used.To support XML and SOAP protocol, Windows 2000 <strong>Server</strong>, SOAP SDK and BizTalk <strong>Server</strong> (if needed) will benecessary.5. ConclusionApplicationviaSOAPCADInternet<strong>IFC</strong> <strong>Model</strong> Data(XML or STEP)<strong>Model</strong> As BLIS-XMLRequest by SOAPSOAPListner<strong>IFC</strong> EXPRESS SchemaEXPRESS XML SchemaConverterDatabaseSchema(SQL)Non CADWeb BrowserInternetWeb <strong>Server</strong>Scriptlet<strong>IFC</strong>svrActiveXComponent<strong>IFC</strong> Object<strong>Model</strong>AccessModuleADODatabase.Net clientCatalog Data(XML by PSML)<strong>IFC</strong> <strong>Model</strong> <strong>Server</strong>Web Service LayerData Access LayerDoor WindowManufacturerFig. 2: <strong>Outline</strong> <strong>of</strong> <strong>IFC</strong> <strong>Model</strong> <strong>Server</strong> ComponentsIn this development project, following s<strong>of</strong>tware modules will be implemented:• EXPRESS to XML Schema Converter (eXc)SECOM Co., Ltd. Intelligent Systems Lab.


VTT-TEC-ADA-01 Page 5• Data Access Layer Component (DALC)• Web Service Layer (WSL)This development project aims to solve following key points:• How to define the database schema• What should be the intermediate XML schema• Design for APIs <strong>of</strong> Data Access Layer Component• How to use the SOAP function for Web Services6. Schedule1/7 1/8 1/9 1/10 1/11 1/12 1/1 1/2 1/3 1/4 1/56/2001 6/2002Preparation1/6 30/61/8 1/9 1/101/7 31/102/7 31/7Research for XML Schema candiates1/8 31/8EXPRESS to XML Converter Progrm Design1/9 31/101/11 1/121/10 31/12EXRRESS to XML Database SchemaConverterEXPRESS to XML Converter ImplementationData Access Layer Component1/2 1/31/1 31/3Fig. 3: Schedule <strong>of</strong> <strong>IFC</strong> <strong>Model</strong> <strong>Server</strong> <strong>Project</strong>Web Service Layer1/51/4 31/5Test and evaluationNote: The schedule is tentative and might be changed.SECOM Co., Ltd. Intelligent Systems Lab.

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!