Compressed representation of XML documents with rapid navigation

XML(Extensible Markup Language) is a language used in data representation and storage, and transmission and manipulation of data. Excessive memory consumption is an important challenge when representing XML documents in main memory. Document Object Model (DOM) APIs are used in a processing level that provides access to all parts of XML documents through the navigation operations. Although DOM serves as a a general purpose tool that can be used in different applications, it has high memory cost particularly if using naive. The space usage of DOM has been reduced significantly while keeping fast processing speeds, by use of succinct data structures in SiXDOM [1]. However, SiXDOM does not explore in depth XML data compression principles to improve in-memory space usage. Such XML data compression techniques have been proven to be very effective in on-disk compression of XML document. In this thesis we propose a new approach to represent XML documents in-memory using XML data compression ideas to further reduce space usage while rapidly supporting operations of the kind supported by DOM. Our approach is based upon a compression method [2] which represents an XML document as a directed acyclic graph (DAG) by sharing common subtrees. However, this approach does not permit the representation of attributes and textual data, and furthermore, a naive implementation of this idea gives very poor space usage relative to other space-efficient DOM implementations [1]. In order to realise the potential of this compression method as an in-memory representation, a number of optimisations are made by application of succinct data structures and variablelength encoding. Furthermore, a framework for supporting attribute and textual data nodes is introduced. Finally, we propose a novel approach to representing the textual data using Minimal Perfect Hashing(MPH). We have implemented our ideas in a software library called DAGDOM and performed extensive experimental evaluation on a number of standard XML files. DAGDOM yields a good result and we are able to obtain significant space reductions over existing space-efficient DOM implementations (typically 2 to 5 times space reduction), with very modest degradations in CPU time for navigational operations. Acknowledgements First and foremost I would like to thank God. You have given me the power to believe in myself and pursue my dreams. I could never have done this without the faith I have in you, the Almighty. I take immense pleasure in expressing my sincere and deep sense of gratitude to my supervisor, Professor Rajeev Raman, for his guidance, understanding, patience, encouragement, and, most importantly, his friendship. Without his supervision and constant help this thesis would not have been possible. Apart from the subject of my research, I learnt a lot from him, which will be useful in different stages of my life. I solemnly submit my honest and humble thanks to him for bringing my dreams into reality. I would also like to thank Professor Rick Thomas, PhD tutor, Dr Fer-Jan de Vries and Professor Thomas Erlebach, who morally boosted me and provided me with their guidance, support and assistance. I would also like to thank two special colleagues: Dr ONeil Delpratt for his assistance and kindness throughout the early stage of my research, and Stelios Joannou for his support and help during my research. Also, I wish to extend my gratitude to thank my colleagues and staff at the Computer Science Department, University of Leicester, especially those members of my doctoral committee who have willingly and ably helped me out throughout my doctoral research. I also thank my friends (too many to list here but you know who you are! ) for providing support and friendship that I needed. Their motivation has given me the confidence to reach this stage in my work. I will never forget all the chats and beautiful moments I shared with some of my friends. They were fundamental in supporting me during stressful and difficult moments. I would like to thank Dr Sameeh Al-Sarayreh, Dr Anan Younes, Dr Maen Aljezawi, Dr Mustafa Al-khawaldeh, Dr Hamza Aldabbas, Mohammed Alabdullatif, Mohammad Alshirah, Abdullah Audat, Moneer Nusir, Abdularhaman Alshabeb and Ayman Albarasneh, who personally supported and encouraged me during my PhD journey. My special gratitude goes to my friend Dr Ehsan Khalefa for her moral support and motivation, which drives me to give my best, and for being with me through the thick and thin of life. I find myself lucky to have friends like these in my life. iii I would like to acknowledge the people who mean the world to me: my mom, my sister Reem, my brothers Qutaibah, Saad and Obaidah, and Obaidahs wife Reham and his kids Kamel and Mohammad for their faith in me and allowing me to be as ambitious as I wanted. Their support and unending encouragement have been unconditional all these years. They have cherished with me every great moment and supported me whenever I needed it. I consider myself the luckiest man in the world to have such a supportive family standing behind me with their love and support. Finally, this thesis is detected to the memory of my Father. He was a wonderful father and showed a genuine interest in and concern for my life, my work and my wellbeing.