The Finite Implication Problem for Expressive XML Keys: Foundations, Applications, and Performance Evaluation
The increasing popularity of XML for persistent data storage, processing and exchange has triggered the demand for efficient algorithms to manage XML data. Both industry and academia have long since recognized the importance of keys in XML data management. In this paper we make a theoretical as well as a practical contribution to this area. This endeavour is ambitious given the multitude of intractability results that have been established. Our theoretical contribution is based in the definition of a new fragment of XML keys that keeps the right balance between expressiveness and efficiency of maintenance. More precisely, we characterize the associated implication problem axiomatically and develop a low-degree polynomial time decision algorithm. In comparison to previous work, this new fragment of XML keys provides designers with an enhanced ability to capture properties of XML data that are significant for the application at hand. Our practical contribution includes an efficient implementation of this decision algorithm and a thorough evaluation of its performance, demonstrating that reasoning about expressive notions of XML keys can be done efficiently in practice, and scales well. Our results promote the use of XML keys on real-world XML practice, where a little more semantics makes applications a lot more effective. To exemplify this potential, we use the decision algorithm to calculate non-redundant covers for sets of XML keys. In turn, this allow us to reduce significantly the time required to validate large XML documents against keys from the proposed fragment.
KeywordsDecision Algorithm Adjacency List Path Expression Client Node XPath Query
Unable to display preview. Download preview PDF.
- 1.Abiteboul, S., Hull, R., Vianu, V.: Foundations of Databases. Addison-Wesley (1995)Google Scholar
- 2.Aho, A., Ullman, J., Hopcroft, J.: Data structures and algorithms. Addison-Wesley (1983)Google Scholar
- 3.Apparao, V., et al.: Document object model (DOM) level 1 specification, W3C recommendation (1998), http://www.w3.org/TR/REC-DOM-Level-1/
- 5.Arenas, M., Libkin, L.: XML data exchange: Consistency and query answering. J. ACM 55, 7:1–7:72 (2008)Google Scholar
- 6.Bray, T., Paoli, J., Sperberg-McQueen, C.M., Maler, E., Yergeau, F.: Extensible markup language (XML) 1.0, 4th edn., W3C recommendation (2006), http://www.w3.org/TR/xml
- 9.Chen, Y., Davidson, S., Zheng, Y.: Xkvalidator: a constraint validator for XML. In: CIKM 2002: Proceedings of the 2002 ACM CIKM International Conference on Information and Knowledge Management, pp. 446–452. ACM (2002)Google Scholar
- 10.Clark, J., DeRose, S.: XML path language (XPath) version 1.0, W3C recommendation (1999), http://www.w3.org/TR/xpath
- 15.Hartmann, S., Link, S.: Efficient reasoning about a robust XML key fragment. ACM Trans. Database Syst. 34(2) (2009)Google Scholar
- 16.Hartmann, S., Link, S.: Expressive, yet tractable XML keys. In: EDBT 2009: 12th International Conference on Extending Database Technology. ACM International Conference Proceeding Series, vol. 360, pp. 357–367. ACM (2009)Google Scholar
- 17.Jungnickel, D.: Graphs, Networks and Algorithms. Springer (1999)Google Scholar
- 22.Suciu, D.: XML Data Repository, University of Washington (2002), http://www.cs.washington.edu/research/xmldatasets/www/repository.html
- 23.Thompson, H., Beech, D., Maloney, M., Mendelsohn, N.: XML Schema Part 1: Structures, 2nd edn., W3C Recommendation (2004), http://www.w3.org/TR/xmlschema-1/