Skip to main content Accessibility help
×
  • Cited by 11
Publisher:
Cambridge University Press
Online publication date:
July 2014
Print publication year:
2010
Online ISBN:
9780511762093

Book description

This is the first book that provides a solid theoretical account of the foundation of the popular data format XML. Part I establishes basic concepts, starting with schemas, tree automata and pattern matching, and concluding with static typechecking for XML as a highlight of the book. In Part II, the author turns his attention to more advanced topics, including efficient 'on-the-fly' tree automata algorithms, path- and logic-based queries, tree transformation, and exact typechecking. The author provides many examples of code fragments to illustrate features, and exercises to enhance understanding. Thus the book will be ideal for students and researchers whether just beginning, or experienced in XML research.

Reviews

'[This] book is obviously interesting to theoretical computer scientists, and to developers who may implement their own XML parsers and retrieval mechanisms (it provides hints for the underlying implementations). Instructors at a university may also use the book in an advanced course on XML.'

K. Waldhör Source: reviews.com

Refine List

Actions for selected content:

Select all | Deselect all
  • View selected items
  • Export citations
  • Download PDF (zip)
  • Save to Kindle
  • Save to Dropbox
  • Save to Google Drive

Save Search

You can save your searches here and later view and run them again in "My saved searches".

Please provide a title, maximum of 40 characters.
×

Contents

References
Abiteboul, S., Quass, D., McHugh, J., Widom, J., and Wiener, J. L. (1997). The Lorel query language for semistructured data. Int. Journal on Digital Libraries, 1(1): 68–88.
Aho, A. V. and Ullman, J. D. (1971). Translation on a context-free grammar. Information and Control, 19(5): 439–475.
Alon, N., Milo, T., Neven, F., Suciu, D., and Vianu, V. (2003). XML with data values: typechecking revisited. Journal of Computer and System Sciences, 66(4): 688–727.
Antimirov, V. (1996). Partial derivatives of regular expressions and finite automaton constructions. Theoretical Computer Science, 155: 291–319.
Benedikt, M. and Koch, C. (2008). XPath leashed. ACM Computing Surveys, 41(1): 3: 1-54.
Benzaken, V., Castagna, G., and Frisch, A. (2003). CDuce: an XML-centric general-purpose language. SIGPLAN Notices, 38(9): 51–63.
Berlea, A. and Seidl, H. (2002). Binary queries. In Extreme Markup Languages. Electronic edition.
Bojańczyk, M. and Colcombet, T. (2006). Tree-walking automata cannot be determinized. Theoretical Computer Science, 350(2-3): 164-173.
Bojańczyk, M. and Colcombet, T. (2008). Tree-walking automata do not recognize all regular languages. SIAM Journal on Computing, 38(2): 658–701.
Book, R., Even, S., Greibach, S., and Ott, G. (1971). Ambiguity in graphs and expressions. IEEE Transactions on Computers, 20: 149–153.
Bray, T., Paoli, J., Sperberg-McQueen, C. M., and Maler, E. (2000). Extensible markup language (XMLTM). http://www.w3.org/XML/.
Brüggemann-Klein, A. (1993). Regular expressions into finite automata. Theoretical Computer Science, 120: 197–213.
Brüggemann-Klein, A. and Wood, D. (1998). One-unambiguous regular languages. Information and Computation, 140(2): 229–253.
Brüggemann-Klein, A. and Wood, D. (2000). Caterpillars: a context specification technique. Markup Languages, 2(1): 81–106.
Brüggemann-Klein, A., Murata, M., and Wood, D. (2001). Regular tree and regular hedge languages over unranked alphabets. Technical Report HKUST-TCSC-2001-0, Hongkong University of Science and Technology.
Brzozowski, J. A. (1964). Derivatives of regular expressions. Journal of the ACM, 11(4): 481–494.
Buneman, P., Fernandez, M. F., and Suciu, D. (2000). UnQL: a query language and algebra for semistructured data based on structural recursion. The VLDB Journal, 9(1): 76–110.
Calcagno, C., Gardner, P., and Zarfaty, U. (2005). Context logic and tree update. In Proc. ACM Symp. on Principles of Programming Languages (POPL), pp. 271-282.
Cardelli, L. and Ghelli, G. (2004). TQL: a query language for semistructured data based on the ambient logic. Mathematical Structures in Computer Science, 14(3): 285–327.
Christensen, A. S., Møller, A., and Schwartzbach, M. I. (2002). Static analysis for dynamic XML. In Proc. Workshop on Programming Language Technologies for XML (PLAN-X).
Clark, J. (2002). An algorithm for RELAX NG validation. http://www.thaiopensource.com/relaxng/implement.html.
Clark, J. and DeRose, S. (1999). XML path language (XPath). http://www.w3.org/TR/xpath.
Clark, J.andMurata, M. (2001). RELAX NG. http://www.relaxng.org.
Colazzo, D., Ghelli, G., and Sartiani, C. (2009). Efficient inclusion for a class of XML types with interleaving and counting. Information Systems, 34(7): 643–656.
Comon, H., Dauchet, M., Gilleron, R., et al. (2007). Tree automata techniques and applications. Available on: http://tata.gforge.inria.fr. Release 12 October 2007.
Courcelle, B. (1994). Monadic second-order definable graph transductions: a survey. Theoretical Computer Science, 126(1): 53–75.
Deutsch, A., Fernandez, M., Florescu, D., Levy, A., and Suciu, D. (1998). XML-QL: a query language for XML. http://www.w3.org/TR/NOTE-xml-ql.
Engelfriet, J. (1975). Bottom-up and top-down tree transformations - a comparison. Mathematical Systems Theory, 9(3): 198–231.
Engelfriet, J. (1977). Top-down tree transducers with regular look-ahead. Mathematical Systems Theory, 10: 289–303.
Engelfriet, J. and Maneth, S. (2003). A comparison of pebble tree transducers with macro tree transducers. Acta Informatica, 39(9): 613–698.
Engelfriet, J. and Vogler, H. (1985). Macro tree transducers. Journal of Computer and System Sciences, 31(1): 710–146.
Engelfriet, J. and Vogler, H. (1988). High level tree transducers and iterated pushdown tree transducers. Acta Informatica, 26(1/2): 131-192.
Fallside, D. C. (2001). XML Schema Part 0: Primer, W3C Recommendation. http://www.w3.org/TR/xmlschema-0/.
Fankhauser, P., Fernandez, M., Malhotra, A., Rys, M., Simeon, J., and Wadler, P. (2001). XQuery 1.0 Formal Semantics. http://www.w3.org/TR/query-semantics/.
Flum, J., Frick, M., and Grohe, M. (2002). Query evaluation via tree-decompositions. Journal of the ACM, 49(6): 716–752.
Foster, J. N., Pierce, B. C., and Schmitt, A. (2007). A logic your typechecker can count on: unordered tree types in practice. In Proc. Workshop on Programming Language Technologies for XML (PLAN-X), pp. 80-90.
Frisch, A. (2004). Theorie, conception et realisation d'un langage de programmation adapte a XML. Ph.D. thesis, Universite Paris 7.
Frisch, A. (2006). OCaml + XDuce. In Proc. Int. Conf. on Functional Programming (ICFP), pp. 192-200.
Frisch, A. and Hosoya, H. (2007). Towards practial typechecking for macro tree transducers. In Proc. Int. Symp. on Database Programming Languages (DBPL), pp. 246-260.
Frisch, A., Castagna, G., and Benzaken, V. (2008). Semantic subtyping: dealing set-theoretically with function, union, intersection, and negation types. Journal of the ACM, 55(4).
Gapeyev, V., Garillot, F., and Pierce, B. C. (2006). Statically typed document transformation: an Xtatic Experience. In Proc. Workshop on Programming Language Technologies for XML (PLAN-X), pp. 2-13.
Ghelli, G., Colazzo, D., and Sartiani, C. (2008). Linear time membership in a class of regular expressions with interleaving and counting. In Proc. 17th ACM Conf. on Information and Knowledge Management, pp. 389-398.
Harren, M., Raghavachari, M., Shmueli, O., et al. (2005). XJ: facilitating XML processing in Java. In Proc. 14th Int. Conf. on World Wide Web (WWW2005), pp. 278-287.
Henriksen, J. G., Jensen, J. L., Jørgensen, M. E., et al. (1995). Mona: monadic second-order logic in practice. In Tools and Algorithms for the Construction and Analysis of Systems, vol. 1019 of Lecture Notes in Computer Science, pp. 89-110.
Hopcroft, J. E. and Ullman, J. D. (1979). Introduction to Automata Theory, Languages, and Computation. Addison-Wesley.
Hosoya, H. (2003). Regular expression pattern matching - a simpler design. Technical Report 1397, RIMS, Kyoto University.
Hosoya, H. (2006). Regular expression filters for XML. Journal of Functional Programming, 16(6): 711–750.
Hosoya, H. and Murata, M. (2006). Boolean operations and inclusion test for attribute-element constraints. Theoretical Computer Science, 360(1-3): 327-351.
Hosoya, H. and Pierce, B. C. (2002). Regular expression pattern matching for XML. Journal of Functional Programming, 13(6): 961–1004.
Hosoya, H. and Pierce, B. C. (2003). XDuce: a typed XML processing language. ACM Transactions on Internet Technology, 3(2): 117–148.
Hosoya, H., Vouillon, J., and Pierce, B. C. (2004). Regular expression types for XML. ACM Transactions on Programming Languages and Systems, 27(1): 46–90.
Hosoya, H., Frisch, A., and Castagna, G. (2009). Parametric polymorphism for XML. ACM Transactions on Programming Languages and Systems, 32(1): 2: 1-56.
Inaba, K. and Hosoya, H. (2007). XML transformation language based on monadic second-order logic. In Proc. Workshop on Programming Language Technologies for XML (PLAN-X), pp. 49-60.
Inaba, K. and Hosoya, H. (2009). Compact representation for answer sets of w-ary regular queries. In Proc. Conf. on Implementation and Application of Automata (CIAA), pp. 94-104.
Jedrzejowicz, J. (1999). Structural properties of shuffle automata. Grammars, 2(1): 35-51.
Kamimura, T. and Slutzki, G. (1981). Parallel and two-way automata on directed ordered acyclic graphs. Information and Control, 49(1): 10–51.
Kawaguchi, K. (2001). Ambiguity detection of RELAX grammars. http://www.kohsuke.org/relaxng/ambiguity/ AmbiguousGrammarDetection.pdf.
Kawanaka, S. and Hosoya, H. (2006). bixid: a bidirectional transformation language for XML. In Proc. Int. Conf. on Functional Programming (ICFP), pp. 201-214.
Kido, H. (2007). Acceleration of biXid using attribute-element automata. Bachelor thesis, University of Tokyo.
Kirkegaard, C. and M0ller, A. (2006). XACT - XML transformations in Java. In Proc. Workshop on Programming Language Technologies for XML (PLAN-X), page 87.
Klarlund, N. and M0ller, A. (2001). MONA version 1.4 user manual. http://www.brics.dk/mona/.
Koch, C. (2003). Efficient processing of expressive node-selecting queries on XML data in secondary storage: A tree automata-based approach. In Proc. Int. Conf. on Very Large Data Bases, pp. 249-260.
Levin, M. Y. (2003). Compiling regular patterns. In Proc. Int. Conf. on Functional Programming (ICFP), pp. 65-77.
Levin, M. Y. and Pierce, B. C. (2005). Type-based optimization for regular patterns. In Proc. Int. Symp. on Database Programming Languages (DBPL), pp. 184-198.
Maneth, S., Perst, T., Berlea, A., and Seidl, H. (2005). XML type checking with macro tree transducers. In Proc. Symp. on Principles of Database Systems (PODS), pp. 283-294.
Maneth, S., Perst, T., and Seidl, H. (2007). Exact XML type checking in polynomial time. In Proc. Int. Conf. on Database Theory (ICDT), pp. 254-268.
Meyer, A. R. (1975). Weak monadic second-order theory of successor is not elementary recursive. In Logic Colloquium, vol. 453 of Lecture Notes in Mathematics, pp. 132-154.
Milo, T. and Suciu, D. (1999). Type inference for queries on semistructured data. In Proc. Symp. on Principles of Database Systems (PODS), pp. 215-226.
Milo, T., Suciu, D., and Vianu, V. (2003). Typechecking for XML transformers. Journal of Computer and System Sciences, 66(1): 66–97.
Møller, A. and Schwartzbach, M. I. (2006). An Introduction to XML and Web Technologies. Addison-Wesley.
Møller, A., Olesen, M. ø., and Schwartzbach, M. I. (2007). Static validation of XSL transformations. ACM Transactions on Programming Languages and Systems, 29(4): 21: 1-47.
Murata, M. (1997). Transformation of documents and schemas by patterns and contextual conditions. In Principles of Document Processing '96, vol. 1293 of Lecture Notes in Computer Science, pp. 153-169.
Murata, M. (2001a). Extended path expressions for XML. In Proceedings of Symp. on Principles of Database Systems (PODS), pp. 126-137.
Murata, M. (2001b). RELAX (REgular LAnguage description for XML). http://www.xml.gr.jp/relax/.
Murata, M. and Hosoya, H. (2003). Validation algorithm for attribute-element constraints of RELAX NG. In Extreme Markup Languages. Electronic edition.
Murata, M., Lee, D., and Mani, M. (2001). Taxonomy of XML schema languages using formal language theory. In Extreme Markup Languages. Electronic edition.
Neumann, A. and Seidl, H. (1998). Locating matches of tree patterns in forests. In Proc. 18th Conf. on Foundations of Software Technology and Theoretical Computer Science, vol. 1530 of Lecture Notes in Computer Science, pp. 134-145.
Neven, F. and den Bussche, J. V. (1998). Expressiveness of structured document query languages based on attribute grammars. In Proc. Symp. on Principles of Database Systems (PODS), pp. 11-17.
Neven, F. and Schwentick, T. (2002). Query automata over finite trees. Theoretical Computer Science, 275(1-2): 633-674.
Papakonstantinou, Y. and Vianu, V. (2000). DTD inference for views of XML data. In Proc. Symp. on Principles of Database Systems (PODS), pp. 35-46.
Perst, T. and Seidl, H. (2004). Macro forest transducers. Information Processing Letters, 89(3): 141-149.
Pierce, B. C. (2002). Types and Programming Languages. MIT Press.
Planque, L., Niehren, J., Talbot, J.-M., and Tison, S. (2005). N-ary queries by tree automata. In Proc. Int. Symp. on Database Programming Languages (DBPL), pp. 217-231.
Seidl, H. (1990). Deciding equivalence of finite tree automata. SIAM Journal of Computing, 19(3): 424–437.
Slutzki, G. (1985). Alternating tree automata. Theoretical Computer Science, 41: 305–318.
Sperberg-McQueen, C. M. and Burnard, L. (1994). A gentle introduction to SGML. http://www.isgmlug.org/sgmlhelp/g-index.htm.
Suda, T. and Hosoya, H. (2005). Non-backtracking top-down algorithm for checking tree automata containment. In Proc. Conf. on Implementation and Applications of Automata (CIAA), pp. 83-92.
Sulzmann, M. and Lu, K. Z. M. (2007). XHaskell - adding regular expression types to Haskell. In Proc. Conf. on Implementation and Application of Functional Language, vol. 5083 of Lecture Notes in Computer Science, pp. 75-92.
Thatcher, J. W. and Wright, J. B. (1968). Generalized finite automata with an application to a decision problem of second-order logic. Theory of Computing Systems, 2(1): 57–81.
Tozawa, A. (2001). Towards static type checking for XSLT. In Proc. ACM Symp. on Document Engineering, pp. 18-27.
Tozawa, A. (2004). Regular expression containment with xs:all-like operators. Unpublished.
Tozawa, A. (2006). XML type checking using high-level tree transducer. In Functional and Logic Programming (FLOPS), pp. 81-96.
Tozawa, A. and Hagiya, M. (2003). XML schema containment checking based on semi-implicit techniques. In Proc. 8th Int. Conf. on Implementation and Application of Automata, vol. 2759 of Lecture Notes in Computer Science, pp. 213-225.
Vansummeren, S. (2006). Type inference for unique pattern matching. ACMTransactions on Programming Languages and Systems, 28(3): 389–428.
Vouillon, J. (2006). Polymorphism and XDuce-style patterns. In Workshop on Programming Language Technologies for XML (PLAN-X), pp. 49-60.
Watson, B. W. (1993). A taxonomy of finite automata construction algorithms. Computing Science report 93/43, University of Technology Eindhoven, Eindhoven, The Netherlands.
Zilio, S. D. and Lugiez, D. (2003). XML schema, tree logic and sheaves automata. In Proc. Int. Conf. on Rewriting Techniques and Applications, vol. 2706 of Lecture Notes in Computer Science, pp. 246-263.

Metrics

Altmetric attention score

Full text views

Total number of HTML views: 0
Total number of PDF views: 0 *
Loading metrics...

Book summary page views

Total views: 0 *
Loading metrics...

* Views captured on Cambridge Core between #date#. This data will be updated every 24 hours.

Usage data cannot currently be displayed.