Processing Structured Hypermedia — a Matter of Style
Total Page:16
File Type:pdf, Size:1020Kb
Processing Structured Hypermedia — A Matter of Style Jacco van Ossenbruggen SIKS Dissertation Series No 2001-5 The research reported in this thesis has been carried out under the auspices of SIKS, the Dutch Graduate School for Information and Knowledge Systems. ISBN 90 6196 502 0 VRIJE UNIVERSITEIT Processing Structured Hypermedia — A Matter of Style ACADEMISCH PROEFSCHRIFT ter verkrijging van de graad van doctor aan de Vrije Universiteit te Amsterdam, op gezag van de rector magnificus prof.dr. T. Sminia, in het openbaar te verdedigen ten overstaan van de promotiecommissie van de faculteit der Exacte Wetenschappen Wiskunde en Informatica op dinsdag 10 april 2001 omn 15.45 uur in het hoofdgebouw van de universiteit, De Boelelaan 1105 door Jacco Ronald van Ossenbruggen geboren te Hoorn Promotor: prof.dr. J.C. van Vliet Copromotor: dr. A. Eliens¨ Contents Preface iii I The Hypermedia Research Agenda vii 1 Introduction 1 1.1 Alternative perspectives on hypermedia research . 2 1.2 Scope and contributions of the thesis . 6 2 From Structured Text to Structured Hypermedia 9 2.1 Introduction . 9 2.2 Structured Text Documents . 20 2.3 Hypertext Documents . 35 2.4 Multimedia Documents . 49 2.5 Hypermedia Documents . 60 2.6 Conclusion . 68 3 Hypermedia on the World Wide Web 73 3.1 Overview: Basic Web Protocols . 73 3.2 Structured Documents on the Web . 78 3.3 Hyperlinking on the Web . 86 3.4 Multimedia on the Web . 97 3.5 Conclusion of Part I . 105 II Hypermedia Modeling 107 4 The Dexter Hypertext Reference Model 109 4.1 Introduction . 109 4.2 The Storage Layer . 111 4.3 Runtime Layer . 124 4.4 Discussion . 129 5 The Amsterdam Hypermedia Model 131 5.1 Introduction . 132 5.2 Preliminaries . 135 5.3 Spatio-Temporal Layout . 137 i CONTENTS 5.4 Link Context . 140 5.5 Components in the AHM . 142 5.6 The Hypermedia Class . 147 5.7 Discussion . 148 6 Modeling Transformations and Temporal Behavior 151 6.1 Document Transformations and Style Sheets . 151 6.2 Modeling Temporal Behavior . 155 6.3 Discussion . 159 6.4 Conclusion of Part II . 160 III Architectural Issues in Structured Hypermedia Processing 163 7 Hypermedia Software Architectures 165 7.1 Introduction . 165 7.2 Hypermedia systems and their Architectures . 166 7.3 Conclusion . 176 8 DejaVu: Object Technology for SGML-based Hypermedia 179 8.1 Framework Terminology . 179 8.2 Overview of the DejaVu Framework . 180 8.3 The DejaVu Hot Spots . 185 8.4 DejaVu Extensions and Plug-ins . 193 8.5 Conclusion . 200 9 Berlage: Experiments in Format Conversion 203 9.1 Introduction . 204 9.2 Extracting Structure: Generating HyTime . 206 9.3 Using Structure: Generating SMIL and MHEG . 209 9.4 Conclusion . 214 10 Summary and Discussion 217 10.1 Summary . 217 10.2 Document Models from 50,000 feet . 223 10.3 Discussion . 225 A Glossary 231 B Introduction to SGML and XML 235 C Introduction to Z and Object-Z 239 Samenvatting 245 Bibliography 247 Index 267 ii Preface I came across the terms “hypertext” and “hypermedia” relatively late. It was in 1991, during the discussion of an example for the Object-Oriented Programming course at the Vrije Universiteit (VU) in Amsterdam, given by Anton Eliens.¨ If I only had known then what an important role hypermedia, object-oriented programming and Anton would play in both my Master’s and PhD thesis. A year later, my girlfriend Annemarie and I planned to do our final term project together. Our common interests made us look for a subject that combined music and computer science. Although I was a musical tabula rasa, this could be compensated by my willingness to learn and Annemarie’s strong background in music. It was again Anton who suggested that we should try to extend a hypermedia system (developed during another final term project) with music as a new media type. In those days, I wondered whether “hypermusic” was a topic with sufficient scientific significance for a Master’s thesis. And naturally, I thought Anton (who turned out to also have a great interest in music) was only joking when he replied: “You could even do a PhD thesis on this subject.” I really enjoyed doing that final term project, even though Annemarie decided to quit our project due to lack of time. These were the early days of the Web and Mosaic, and after arriving at the university, I usually spent the first half hour checking out all the new pages that were added to the Web. Sometimes, I was lucky and there were two, or even three, new HTTP servers set up in a single day! I was one of the students that Anton managed to convince to write a paper about their Master’s thesis research, and I was — still being a student — pleasantly surprised when my paper was accepted at the ACM’s European Conference on Hypermedia Technology (ECHT’94). Additionally, the paper had enlarged my chances to become a PhD student at the VU, and that gave me the opportunity to write this thesis. Due to another conference, in Dublin, Ireland, Anton could not be present at my graduation ceremony. It was in Dublin however, that Anton talked with Dick Bulterman and Lynda Hardman of CWI (the National Research Institute for Mathematics and Computer Science in the Nether- lands), and where they agreed upon me coming to CWI for a six months period. I hardly could have wished for a better way to start my PhD research: after visiting ECHT’94, I started to work at CWI’s group headed by Dick Bulterman, a group firmly rooted in both hypertext and multimedia research. The many discussions I had with Lynda made me aware of the intricacies of time-based hypermedia in general, and of the Amster- dam Hypermedia Model in particular. Lynda also introduced me to the (former) PhD iii Preface students of MMUIS, and I hope to enjoy many more of their informal meetings after this thesis has been completed. Sjoerd Mullender and Jack Jansen taught me the inner details of their CMIFed hypermedia authoring environment and the programming lan- guage in which CMIFed was implemented, Python. This knowledge turned out to be very valuable for my later work at CWI. I returned to the VU after these six months, but would still frequently visit CWI. At the VU, we had to decide on which particular hypermedia document model we would base our prototype implementations, and how to integrate that model with the model underlying the World Wide Web. Due to the wide variety of models that were available, most of them not “Web-aware”, I wanted to postpone the decision for as long as possi- ble. In this situation, I came across several articles from authors with a background in electronic publishing, advocating that different applications will always need different document models, and explaining how to design systems that could be easily adapted to new document models. Since these systems were often based on SGML-technology, I started to learn SGML, and realized soon that an SGML-based hypermedia system would allow both easy experimentation with different hypermedia document models, and full integration with the Web1. Bastiaan Schonhage,¨ still a Master’s student in those days, managed to control the large amount of (SGML) complexity involved and to trans- form my initial proof-of-concept into a fully operational SGML-based Web browser for his final term project. Anton, Bastiaan, Martijn van Welie, Sebastiaan Megens (two other Master’s students) and I, greatly enjoyed our joint effort to integrate the many musical components we had developed into our SGML-based Web browser. My knowledge of SGML (and more specifically its time-based hypermedia exten- sion HyTime), and CWI’s wish to have a more standardized interchange format as an alternative to CMIF’s native multimedia file format, was one of the reasons for devel- oping a mapping from CMIF to HyTime, and to implement an extension to the CMIFed environment to perform this translation automatically. The initial prototypes of my mapping and translation software were later significantly extended and improved by Lloyd Rutledge, HyTime expert par excellence. This formed the basis for the further co- operation with Lloyd, and I hope the results of our many discussions and publications are appropriately reflected in this thesis. Thanks, Lloyd! I would also like to thank Dick Bulterman, Sjoerd Mullender, Jack Jansen and Lynda Hardman. Dick gave me the opportunity to work within his group at CWI and granted me total freedom in choosing my research topics. Nevertheless, he has continuously encouraged me to participate in all the activities of his group that were relevant for my research projects. The ability to participate in the W3C working group that developed SMIL is only one example of the many opportunities Dick has given me. With their long experience in hypermedia authoring, Sjoerd and Jack provided me with many insights, and their implementation of CMIFed’s SMIL support forms an indispensable basis for the work on the Berlage environment reported in the third part of the thesis. After 1In those days, I was not aware of the role SGML had already played in the history of our software en- gineering group at the VU. An earlier project had even resulted in one of the world’s first SGML parsers, developed by Jos Warmer, Sylvia van Egmond and Hans van Vliet. iv Preface moving from the university to CWI, Lynda gave me the opportunity to finish my thesis during office hours — providing helpful comments along the way. Lynda, many thanks for being so patient. At the VU, I would like to thank my promotor Hans van Vliet for his support and patience.