ceXML - an XML vocabulary for building and civil engineering

Reinout van Rees

Delft University of Technology - Faculty of Civil Engineering and Geosciences
Section Civil Engineering Informatics

Dedication

For Annie, who wants to marry me the 10th of November 2000 and for my parents, for their support all those years!

Table of Contents
Preface
General introduction
Structure of the document
Typographical conventions
Personal remarks
I. Outlining the problem
1. eConstruct project
What will eConstruct do
Relevance to this graduation project
2. Current state of communication in the building and construction industry
Usage of communication technologies in the building and construction industry
Existing solutions for electronic communication
Conclusion
3. The goal of this research project
Suggestions for improvement
Possible advantages
Description of the goal
II. The building stones: XML and other initiatives
4. Introduction on communicating with a vocabulary written in XML
Internet technology as a possible new solution
General working of XML
Making an XML vocabulary
Conclusion
5. Initiatives which influenced ceXML
Electronic Business XML (ebXML)
Global Engineering Networking (GEN)
LexiCon
Conclusions
III. Design and implementation of the vocabulary
6. Design of the vocabulary
Detailed requirements specification
Overview of the structure
Business Processes model
The envelope model
The message model
Selection of elements
7. Prototype implementation
Implementation method
Generic utilities
Dealing with the vocabulary and the views
Visualising
Using business processes and contexts
Conclusions
8. Conclusions
Conclusions from Part I in ceXML - an XML vocabulary for building and civil engineering: outlining the problem
Conclusions from Part II in ceXML - an XML vocabulary for building and civil engineering: the building stones: XML and other initiatives
Conclusions from Part III in ceXML - an XML vocabulary for building and civil engineering: Design and implementation of the vocabulary
Successfulness of this research project
Investigating the state of the art
The design and implementation of a vocabulary
Prototype implementation
Perspective for the building and construction industry
My personal appraisal of this research project
IV. Appendices
A. Deeper introduction on XML and related technologies
eXtensible Markup Language (XML) itself
eXtensible Stylesheet Language/Transformation part (XSL/T)
Stylesheet languages for visualisation
XML Namespaces
XML Linking
Cocoon - Apache's xml effort
B. STEP explained in more detail
C. Reading Unified Modelling Language (UML) diagrams
Use Case diagram
Class diagram
D. Python listings
cexmlhelper.py
dtdbuilder.py
treeview.cgi
print.py
E. XSL/T listings
language-.xslt
propagate.xslt
rejoin.xslt
search.xslt
print_answer.xslt
F. Document Type Definitions (DTD's)
cexml_message.dtd
cexml_en.dtd
cexml_nl.dtd
pce_en_procurement.dtd
G. XML files
cexml.xml
catalog.xml
Bibliography
Glossary
Colophon
List of Figures
3-1. PalmPilot with project management software
5-1. Logical architecture of GEN according to [Radeke, 1998]
5-2. Handling of data in GENial
5-3. The GENial interface
5-4. The structure of LexiCon
5-5. UML diagram of the LexiCon meta-model
5-6. Explanation functional unit and technical solution ("the hamburger model") [W. Gielingh, 1988]
6-1. Overview of the relations between the Business Process, the message and the envelope vocabulary
6-2. Business Process Use Case 1
6-3. Business Process Use Case 2
6-4. Business process model
6-5. Model of the envelope vocabulary
6-6. The message model - 1
6-7. Example of a tree structure
6-8. The message model - 2
6-9. The message model - 3
6-10. The message model - 4
6-11. The message model - 5 (final version)
6-12. Both Use Cases together
6-13. Initial version of the example view
6-14. Initial version of the example view - XML version
6-15. Definitive version of the example view
6-16. Definitive version of the example view - XML version
7-1. Dutch view on the filled message vocabulary
7-2. English view on the filled message vocabulary
7-3. The Dutch catalog in English
7-4. The content of both catalogs in English
7-5. The working of the context-manager
7-6. Screen-shot of the printed answer in Acrobat Reader
C-1. Use Case diagram example
C-2. Class diagram example
List of Examples
4-1. XML example - The plain information without any indication about what it really is
4-2. XML example - The same information, now tagged to make an xml file out of it.
7-1. request1.xml
7-2. sender.py
A-1. XML syntax example
A-2. XSL/T - basic example
A-3. XSL/T example - database table structure
A-4. XSL/T example - xml file before transformation
A-5. XSL/T example - xml file after processing with cocoon's SQL processor
A-6. XSL/T example - the stylesheet
A-7. XSL/FO example
A-8. CSS example
A-9. Example use of namespaces to distinguish between two title tags, one indicating a chapter's title, the other indicating a person's title.
Master thesis