- From: David Ezell <David_E3@VERIFONE.com>
- Date: Mon, 23 Feb 2004 21:28:29 -0500
- To: <public-qt-comments@w3.org>
Dear Colleagues, This comment pertains to the 12 November 2003 internal WD of XQuery 1.0: An XML Query Language [1]. Please accept our sincere apologies on being past-due with this submission. Regards, David Ezell (on behalf of the XML Schema WG) [1] http://www.w3.org/TR/2003/WD-xquery-20031112/ XSCH-QL-018 Section 3.13 Validate Expressions Validate expressions are defined in terms of serialization [3.13]. There are problems with interposing serialization between the data model and validation, however, and we suggest you return to using a mapping from the data model to the infoset and defining validation on that instead. Section [2.2.4] apparently relieves implementations of the necessity of supporting a serialization interface, but [3.13] requires it through the back door, and through a mechanism that does not provide the means to provide the serialization process with the normal serialization parameters. Serialization depends on casting to xs:string which in turn is defined in terms of the various type annotations on the data model. There is a certain apparent circularity here that is confusing, if nothing else. Interposing a serialization step means that validating a data model that already has type annotations may cause the validation outcome to be different, because the serialization rules are different, and some types are not necessarily serializable. In particular, serialization will fail for QName nodes with no bound prefix [http://www.w3.org/TR/xslt-xquery-serialization/ section 2]. There may also be edge cases involving simple derived types (in the schema being used for validation) with pattern restrictions that rule out certain of the serializations used for data already annotated with a certain types that would also lead to problems that would not have otherwise arisen. We suggest decoupling validate from serialization, and instead providing a mapping from the data model to the infoset and using that as the basis of validation. Providing such a mapping will help those who will inevitably have to create their own mappings, and to some extent mitigate the introduction of yet another data model.
Received on Monday, 23 February 2004 21:28:26 UTC