Haskell and XML: generic combinators or type-based translation?
Proceedings of the fourth ACM SIGPLAN international conference on Functional programming
EDBT '02 Proceedings of the Worshops XMLDM, MDDE, and YRWS on XML-Based Data Management and Multimedia Engineering-Revised Papers
A Functional-Logic Perspective on Parsing
FLOPS '99 Proceedings of the 4th Fuji International Symposium on Functional and Logic Programming
TOY: A Multiparadigm Declarative System
RtA '99 Proceedings of the 10th International Conference on Rewriting Techniques and Applications
The XML Query Language Xcerpt: Design Principles, Examples, and Semantics
Revised Papers from the NODe 2002 Web and Database-Related Workshops on Web, Web-Services, and Database Systems
XDuce: A statically typed XML processing language
ACM Transactions on Internet Technology (TOIT)
CDuce: an XML-centric general-purpose language
ICFP '03 Proceedings of the eighth ACM SIGPLAN international conference on Functional programming
A typed representation for HTML and XML documents in Haskell
Journal of Functional Programming
Journal of Functional Programming
Practical Common Lisp
XPath-logic and XPathLog: A logic-programming style XML data manipulation language
Theory and Practice of Logic Programming
Distributed WWW programming using (Ciao-)Prolog and the PiLLoW library
Theory and Practice of Logic Programming
Pathfinder: XQuery---the relational way
VLDB '05 Proceedings of the 31st international conference on Very large data bases
Rewriting-Based Optimization for XQuery Transformational Queries
IDEAS '05 Proceedings of the 9th International Database Engineering & Application Symposium
MonetDB/XQuery: a fast XQuery processor powered by a relational engine
Proceedings of the 2006 ACM SIGMOD international conference on Management of data
XQuery
VLDB '03 Proceedings of the 29th international conference on Very large data bases - Volume 29
XCentric: logic programming for XML processing
Proceedings of the 9th annual ACM international workshop on Web information and data management
Evaluation of datalog extended with an XPath predicate
Proceedings of the 9th annual ACM international workshop on Web information and data management
Querying xml documents in logic programming*
Theory and Practice of Logic Programming
XHaskell --- Adding Regular Expression Types to Haskell
Implementation and Application of Functional Languages
An Encoding of XQuery in Prolog
XSym '09 Proceedings of the 6th International XML Database Symposium on Database and XML Technologies
XML Path Language (XPath) 2.0 Standard
XML Path Language (XPath) 2.0 Standard
Integrating XPath with the functional-logic language toy
PADL'11 Proceedings of the 13th international conference on Practical aspects of declarative languages
A full pattern-based paradigm for XML query processing
PADL'05 Proceedings of the 7th international conference on Practical Aspects of Declarative Languages
Transparent function types: clearing up opacity
Proceedings of the 14th symposium on Principles and practice of declarative programming
Hi-index | 0.00 |
This paper presents an encoding of the XML query language XQuery in the functional-logic language TOY. The encoding is based on the definition of for-let-where-return constructors by means of TOY functions, and uses the recently proposed XPath implementation for this language as a basis. XQuery expressions can be executed in TOY obtaining sequences of XML elements as answers. Our setting exploits the non-deterministic nature of TOY by retrieving the elements of the XML tree once at a time when necessary. We show that one of the advantages of using a rewriting-based language for implementing XQuery is that it can be used for optimizing XQuery expressions by query rewriting. With this aim, XQuery expressions are converted into higher order patterns that can be analyzed and modified by TOY functions.