- From: Kay, Michael <Michael.Kay@softwareag.com>
- Date: Thu, 27 Nov 2003 12:56:25 +0100
- To: public-qt-comments@w3.org
- Message-ID: <DFF2AC9E3583D511A21F0008C7E62106073DD2E7@daemsg02.software-ag.de>
SAG-XQ-006 XML syntax for XQuery We believe there is a need for an XML-based syntax for XQuery. There are several scenarios that lead to this requirement: * embedding XQuery queries in XML documents (including, potentially, future versions of W3C document formats such as XSLT, XML Schema, or XLink). * generating queries using XQuery or XSLT (stylesheets that generate stylesheets are extremely common, and because XQuery lacks reflection and higher-order functions, the same need will exist with XQuery) * storing and organizing queries in an XML database. Again, we find that it is very common for stylesheets and schemas to be stored in an XML database, and it is distinctly odd that this is not possible for queries. (Wrapping the query as CDATA is possible, of course, but the document then has no useful structure that the database system can take advantage of). We don't believe the current proposals for XQueryX meet this need. The need is for a format that is human-readable and human-writable. We see no need for an interoperable XML representation of the internal parse tree of the XQuery syntax, which is what XQueryX provides. It meets none of the above three requirements. While a syntax at this level might be useful internally within a product suite, we see no need for it to be interoperable. Most real, practical, everyday XQuery queries, for example all of those in the published use cases, are already conformant to XML syntax. We believe that the requirement for an XML-based syntax for XQuery could be met by: (a) imposing some restrictions, for example on the ability to use quotes or nested elements within attribute values (users might have to declare variables to avoid such nesting) (b) defining an XML representation for the top-level structure of the query, at the level of declarations in the prolog, while leaving the syntax of expressions untouched (c) representing direct element and attribute constructors "as themselves". Michael Kay for Software AG
Received on Thursday, 27 November 2003 07:00:22 UTC