Dissertation
Total Page:16
File Type:pdf, Size:1020Kb
DISSERTATION Titel der Dissertation An Infrastructure for the Development of Semantic Desktop Applications Verfasser Bernhard Schandl Angestrebter akademischer Grad Doktor der technischen Wissenschaften (Dr. techn.) Wien, im August 2009 Studienkennzahl lt. Studienblatt: A 786 881 Dissertationsgebiet lt. Studienblatt: Informatik Betreuer: Univ.Prof. Dr. Wolfgang Klas Zweitbetreuer: Univ.Prof. DDr. Gerald Quirchmayr ii Abstract The extent to which our daily lives are digitized is continuously growing. Many of our every- day activities manifest themselves in digital form; either in an explicit way, when we actively use digital information for work or spare time; or in an implicit way, when information is in- directly created or manipulated as a consequence of our action. A large fraction of these data volumes can be considered as personal information, that is, information that has a certain class of relationship to us as human beings. The storage and processing capacity of the devices that we use to interact with these data has been enormously increasing over the last years, and we can expect this development to continue in the future. However, while the power of physical data storage is permanently increasing, the development of logical data organization power of personal devices has been stagnating since the invention of the first personal computers. Still, hierarchical file systems are the de-facto standard for data organization on personal devices. File systems represent information as a set of discrete data units (files) that are ar- ranged as leaves on a tree of labeled nodes (directories). This structure, on the one hand, can be easily understood by humans, since the separation into small information units supports the manual manageability of the personal data space, in comparison to systems that employ continuous data structures. On the other hand, hierarchical structures suffer from a number of deficiencies which have negative impact on the quality of personal information management, and it lacks of expressive mechanisms which in turn would help to improve information re- trieval according to user needs. Significant research effort has been invested in order to improve the mechanisms for per- sonal information management. The resulting works represent potential alternatives or sup- plements for systems in place, but sometimes run the risk of over-formalizing information management; a problem that is especially apparent in situations where a non-expert end user is the direct consumer of such services. The contribution of this thesis is to present an alternative organizational model for man- agement of personal data that strikes a balance between the unstructured nature of file systems and the highly formal characteristics of logic-based systems. After a comparative analysis of the current situation and recent research effort in this direction, it describes this organizational metaphor on three levels: First, on a conceptual level, it discusses an abstract data model, a corresponding query algebra, and a set of abstract operations on this data model. This for- mal framework is suitable to represent common data structures and usage patterns that can be found in personal information management, but on the same time does not enforce a complete paradigm shift away from established systems. Second, on a representation level, it discusses how this model can be efficiently processed, stored, and exchanged between different systems. Third, on an implementation level, it describes how concrete realizations of this data model can be built and used in various application scenarios. iii iv Zusammenfassung In einem permanent wachsenden Ausmaß wird unser Leben digital organisiert. Viele tag- tägliche Aktivitäten manifestieren sich (auch) in digitaler Form: einerseits explizit, wenn digi- tale Informationen für Arbeitsaufgaben oder in der Freizeit entstehen und verwendet werden; andererseits auch implizit, wenn Informationen indirekt, als Konsequenz unseres Handelns, erzeugt oder manipuliert wird. Ein großer Teil dieser Informationsbestände ist persönlicher Natur, d.h., diese Information hat einen bestimmten Bezug zu uns als Person. Die Speicher- und Rechenleistung der Geräte, mit denen wir üblicherweise mit solchen persönlichen Daten interagieren, wurde in den letzten Jahren kontinuierlich erhöht, und es besteht Grund zur Annahme, dass sich diese Entwicklung in der Zukunft fortsetzt. Während also die physische Leistung von Datenspeichern enorm erhöht wurde, hat deren logische und organisatorische Leistung seit der Erfindung der ersten Personal Computer praktisch stag- niert. Nach wie vor sind hierarchische Dateisysteme der de-facto-Standard für die Organisation von persönlichen Daten. Solche Dateisysteme repräsentieren Daten als diskrete Einheiten (Dateien), die Blätter eines Baums von beschrifteten Knoten (Verzeichnisse) darstellen. Die Unterteilung des persönlichen Datenraums in kleine Einheiten unterstützt die Handhabung solcher Strukturen durch den Menschen, allerdings können viele Arten von Organisationsin- formation nicht adäquat in einer Baumstruktur dargestellt werden. Dies wirkt sich negativ auf die Qualität der Datenorganisation aus. Aktuelle Forschung im Bereich Personal Information Management liefert zwar mögliche Ansätze, um hierarchische Systeme zu ersetzen, tendiert jedoch manchmal dazu, die Arbeit mit Information überzuformalisieren. Dies ist insbesondere kritisch, weil der durchschnit- tliche Anwender von PIM-Systemen über keine Erfahrung mit komplexen logischen Systemen verfügt. Diese Arbeit präsentiert ein alternatives Organisationsmodell für persönliche Daten, die darauf abzielt, eine Balance zwischen der unstrukturierten Charakteristik von Dateisystemen und den formalen Eigenschaften von logik-basierten Systemen zu finden. Nach einer ver- gleichenden Studie der aktuellen Forschungssituation im Bereich Semantic Desktop und Per- sonal Information Management wird dieses Modell auf drei Ebenen vorgestellt. Zunächst wird ein abstraktes Modell sowie eine Abfrage-Algebra in Form von abstrakten Operationen auf dieses Modell vorgestellt. Dieses Modell erlaubt die Abbildung von im Personal Informa- tion Management gebräuchlichen Daten, aber erfordert keine völlige Umstellung auf Seiten des Benutzers. Anschließend wird dieses abstrakte Modell in konkreten Repräsentationen übergeführt, und es wird gezeigt, wie diese Repräsentationen effizient bearbeitet, gespeichert, und ausgetauscht werden können. Schließlich wird die Anwendung dieses Modells anhand von konkreten prototypischen Implementierungen gezeigt. v vi Acknowledgements I would like to thank my supervisor, Prof. Dr. Wolfgang Klas, who thoughtfully guided and helped me throughout the work on this thesis, and my second advisor, Prof. DDr. Gerald Quirchmayr, for his kind support and encouragement. I gratefully thank my parents who supported me throughout my years of study in every aspect of life, and who encouraged me to start this thesis. I would like to express my special appreciation to my former colleagues Stefan, Diman, and Arash, who did a great job in implementing parts of the work presented in this thesis, and always provided a strong wall to reflect my ideas and fallacies. I would like to thank my colleagues Stefan, Wolfgang, Bernhard, Niko, and Stefan, with whom I had the pleasure to work with during the past years, and who provided not only excellent ideas and input, but made work really fun. Equally I would like to thank Jan, Peter, Manuela, Diana, and Ramona for keeping the department running. Finally, from the deepest of my heart I thank my love Anna, who endured life with a PhD researcher without any complaints throughout the years. I dedicate this work to my beloved son Laurin, who constantly reminds me that there are much more important things in life than a PhD thesis. vii viii Contents 1 Introduction 1 1.1 Motivating Scenarios . .2 1.2 Research Methodology . .4 1.3 Contributions . .4 1.4 Organization . .5 I Background and Related Work 7 2 A Comparative Study on Technologies for Desktop Data Management 9 2.1 File Systems . .9 2.2 The Semantic Web: Expressing Knowledge about Resources . 26 2.3 Semantic Technologies for the Desktop . 33 II Concepts 47 3 Siles: An Abstract Model for Semantic Representation of Data Assets on the Desktop 49 3.1 Design Considerations . 49 3.2 Data Model . 56 3.3 A Query Framework for Siles . 61 3.4 Summary . 67 4 An Application Programming Interface for Siles 69 4.1 API Specification . 69 4.2 Usage Examples . 81 4.3 Summary . 84 III Implementation 85 5 Digital Manifestation of Siles 87 5.1 A Core Ontology for the Sile Model . 87 5.2 Representation of Sile Data as RDF . 91 5.3 Transforming Sile Filters to SPARQL Queries . 95 5.4 Discussion of Alternative Representations . 104 5.5 Summary . 107 6 Serializing Sile Data 109 ix 6.1 Silepacks: Transportable Sile Containers . 110 6.2 Sile Systems as Part of the Web of Data . 113 6.3 Distributing Sile Systems via XML-RPC . 115 6.4 Enriching WebDAV with Sile Annotations . 127 6.5 Summary . 131 7 Case Studies of Sile Repository Implementations 133 7.1 The SemDAV Server: A Triple Store-based Sile Repository . 133 7.2 silefiles: A Semantic File System Extension . 138 7.3 SileMail: Semantic Extensions to E-Mail . 140 7.4 Summary . 141 8 The Semplorer: A User Interface for Sile Management 143 8.1 Design Considerations . 144 8.2 Interface Design . 146 8.3 Summary . 152 IV Conclusions 153 9 Discussion and Experimental Results 155 9.1 Comparison and Differentiation . 155 9.2 Experimental Results .