Towards a Declarative Query and Transformation Language for XML and Semistructured Data: Simulation Unification

  • François Bry
  • Sebastian Schaffert
Conference paper
Part of the Lecture Notes in Computer Science book series (LNCS, volume 2401)


The growing importance of XML as a data interchange standard demands languages for data querying and transformation. Since the mid 90es, several such languages have been proposed that are inspired from functional languages (such as XSLT [1]) and/or database query languages (such as XQuery [2]). This paper addresses applying logic programming concepts and techniques to designing a declarative, rule-based query and transformation language for XML and semistructured data. The paper first introduces issues specific to XML and semistructured data such as the necessity of flexible “query terms” and of “construct terms”. Then, it is argued that logic programming concepts are particularly appropriate for a declarative query and transformation language for XML and semistructured data. Finally, a new form of unification, called “simulation unification”, is proposed for answering “query terms”, and it is illustrated on examples.


Logic Programming Query Term Node Selection Disjunctive Normal Form Transformation Language 
These keywords were added by machine and not by the authors. This process is experimental and the keywords may be updated as the learning algorithm improves.


Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.


  1. 1.
    W3C Extensible Stylesheet Language (XSL). (2000)
  2. 2.
    W3C XQuery: A Query Language for XML. (2001)
  3. 3.
    Abiteboul, S., Buneman, P., Suciu, D.: Data on the Web. From Relations to Semistructured Data and XML. Morgan Kaufmann Publishers, San Francisco, CA (2000)Google Scholar
  4. 4.
    Fernandez, M., Siméon, J., Wadler, P.: XML Query Languages: Experiences and Examplars. Communication to the XML Query W3C Working Group (1999)Google Scholar
  5. 5.
    Alashqur, A. M., Su, S. Y. W., Lam., H.: OQL: A Query Language for Manipulating Object-Oriented Databases. In: Proc. 15th Int. Conf. on Very Large Data Bases (VLDB). (1989)Google Scholar
  6. 6.
    Chamberlin, D., Fankhauser, P., Marchiori, M., Robie, J.: XML Query Use Cases. W3C Working Draft 20 (2001)Google Scholar
  7. 7.
    Bry, F., Schaffert, S.: Pattern Queries for XML and Semistructured Data. Technical Report PMS-FB-2002-5, Inst. for Computer Sciences, University of Munich, (2002)
  8. 8.
    Bry, F., Schaffert, S.: Towards a Declarative Query and Transformation Language for XML and Semistructured Data: Simulation Unification. Technical Report PMS-FB-2002-2, (2002)
  9. 9.
    Henzinger, M. R., Henzinger, T. A., Kopke, P. W.: Computing Simulations on Finite and Infinite Graphs (1996)Google Scholar
  10. 10.
    Fernandez, M., Suciu, D.: Optimizing Regular Path Expressions Using Graph Schemas. In: Proceedings of the Int. Conf. on Data Engineering. (1988) 14–23Google Scholar
  11. 11.
    Buneman, P., Fernandez, M., Suciu, D.: UnQL: A Query Language and Algebra for Semistructured Data Based on Structural Recursion. VLDB Journal 9 (2000) 76–110CrossRefGoogle Scholar
  12. 12.
    Frühwirth, T.: Theory and Practice of Constraint Handling Rules. Journal of Logic Programming, Special Issue on Constraint Logic Programming 37 (1998) 95–138zbMATHCrossRefMathSciNetGoogle Scholar
  13. 13.
    Baader, F.: Unification in Commutative Theories. In: Unification. Academic Press (1989) 417–435Google Scholar
  14. 14.
    Grahne, G., Lakshmanan, L. V. S.: On the Difference between Navigating Semi-structured Data and Querying It. In: Workshop on Database Programming Languages. (1999)Google Scholar
  15. 15.
    Berlea, A., Seidl, H.: fxt — A Transformation Language for XML Documents. Journal of CIT, Special Issue on Domain-Specific Languages (2001)Google Scholar
  16. 16.
    Boley, H.: Relationships Between Logic Programming and XML. In: Proc. 14th Workshop Logische Programmierung, Würzburg (2000)Google Scholar
  17. 17.
    W3 Consortium XML Path Language (XPath). (1999)
  18. 18.
    DFKI: RuleML — Rule Markup Language. (2002)
  19. 19.
    Buneman, P., Davidson, S. B., Fernandez, M. F., Suciu, D.: Adding Structure to Unstructured Data. In: Proceedings of ICDT’97. Volume 1186., Springer (1997) 336–350MathSciNetGoogle Scholar
  20. 20.
    Kilpeläinen, P.: Tree Matching Problems with Applications to Structured Text Databases. PhD thesis, Dept. of Computer Sciences, University of Helsinki (1992)Google Scholar
  21. 21.
    Aït-Kaci, H., Podelski, A., Goldstein, S. C.: Order-Sorted Theory Unification. Technical Report 32, digital — Paris Research Laboratory (1993)Google Scholar
  22. 22.
    Smolka, G.: Feature Constraint Logics for Unification Grammars. Journal of Logic Programming 12 (1992) 51–87zbMATHCrossRefMathSciNetGoogle Scholar
  23. 23.
    Fages, F.: Associative-Commutative Unification. In: Proc. 7th Int. Conf. on Automated Deduction (Napa, CA). Volume 170., Berlin, Springer (1984) 194–208CrossRefGoogle Scholar
  24. 24.
    Baader, F., Snyder, W.: Unification Theory. In Robinson, A., Voronkov, A., eds.: Handbook of Automated Reasoning. Elsevier Science Publishers (1999)Google Scholar
  25. 25.
    Montanari, U., Rossi, F.: Finite domain constraint solving and constraint logic programming. In Benhamou, F., Colmerauer, A., eds.: Constraint Logic Programming: Selected Research. MIT press (1993) 201–221Google Scholar
  26. 26.
    Ross, K. A., Srivastava, D., Stuckey, P. J., Sudarshan, S.: Foundations of aggregation constraints. Theoretical Computer Science B 190 (1994)Google Scholar
  27. 27.
    Würtz, J., Müller, T.: Constructive disjunction revisited. In: KI-Künstliche Intelligenz. (1996) 377–386Google Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 2002

Authors and Affiliations

  • François Bry
    • 1
  • Sebastian Schaffert
    • 1
  1. 1.Institute for Computer ScienceUniversity of MunichGermany

Personalised recommendations