- From: Wanda Cox <co.wanda@apple.com>
- Date: Wed, 03 Sep 2003 15:47:17 -0700
- To: team-xforms-review@w3.org, www-forms-editor@w3.org
- Cc: w3c-ac-forum@w3.org
- Message-ID: <3F566F74.B81AFB22@apple.com>
Call for Review: XForms 1.0 Is a W3C Proposed Recommendation Wanda Cox AC Representative for Apple ------------------------------------------------------------------------ Decision for XForms 1.0 As representative of the above Member, I suggest that the XForms 1.0 Specification ( X) be returned for further work due to substantial issues Comments: Apple Computer and Opera Software have reviewed the the XForms specification. We believe forms are vital to the web and the submitted review is based on a desire to see forms enhance future web devices and web pages. The XForms WG has worked hard to develop XForms, and they have made extensive efforts to reuse other W3C Recommendations. However, after a thorough review of the specification, we do not believe XForms is a technology appropriate for the Web. XForms is hard to author. Comparing XForms examples with their equivalents in, for instance, HTML forms, shows that the status quo is significantly simpler to write and maintain than the XForms equivalents. Since the main reason for the popularity of existing Web technologies has been their ease of authoring, we feel this is a serious problem. XForms has too many dependencies. In addition to XForms itself, an XForms implementation needs to support XML with namespaces, XML Schema, XPath, XML Events, DOM Events, DOM Core, CSS, a stylesheet linking technology (e.g. the XML Stylesheet PI), and a host language (e.g. XHTML or SVG). In particular, its dependency on XML Schema is of great concern to us. XForms does not address the need for a rich user interface markup language. For example, it provides no way to indicate which button in a form should be the default button, and it does not allow for the possibility of the caption and form control elements being separated (as supported by the <label> element in XHTML), which makes it harder to style. In addition to the above, we have also found specific claims made in the specification that we feel are untrue, some of which are directly related to the three major points listed above: Claim 1: The separation of the data being collected from the markup of the controls collecting the individual values makes XForms more tractable by making it clear what is being submitted where. Counterclaim: It actually makes it _harder_ to tell what is going on, since the form control elements and instance model elements must be in different parts of the document in XForms documents. In HTML forms, there is no ambiguity as to what is submitted: The form controls are direct descendants of the relevant form element, and submit exactly what their attributes claim to submit. Claim 2: XForms, while designed to be integrated into XHTML, is no longer restricted only to be a part of that language, but may be integrated into any suitable markup language. Counterclaim: This appears to be an attempt at solving a problem that does not exist: Nothing stops authors from using XHTML1 form elements in non-XHTML documents _today_, in deployed browsers. Unfortunately, the solution adopted by XForms of introducing yet another namespace to the W3C fold merely results in extra confusion in the common case: an XHTML document that uses XForms is forced to use at _least_ two namespaces, typically more, despite evidence that typical Web authors find namespaces confusing and hard to use. Claim 3: XForms has striven to improve authoring. Counterclaim: XForms is, in our experience, orders of magnitude harder to author than HTML forms. For example, compare http://lists.w3.org/Archives/Public/www-archive/2003Sep/att-0003/example1.xhtml ...with: http://www.w3.org/TR/xforms/sliceG.html#xforms-in-xhtml-00 The two files implement basically the same form, yet the HTML one is significantly shorter, only uses one namespace (as opposed to 5 for the XForms equivalent), and does not involve multiple layers of indirection. Note that the HTML example here, much like the XForms one, uses some externally defined functions that are not considered part of the markup as they are not typically redeveloped for each form but can be re-used across projects. We would be interested in seeing these commonly used functions be standardised. Claim 4: XForms has striven to improve internationalization. Counterclaim: Progress with defining IRIs has removed the i18n problem from HTML forms. (Indeed XForms refers to the relevant TAG finding that discusses this. [TAG Finding 7]) Claim 5: XForms has striven to improve accessibility and usability. Counterclaim: By making it harder for authors to select specific form controls, accessibility and usability are in fact reduced. HTML forms already have the <legend> element (equivalent to xforms:caption) and the title attribute (for tooltips). It would be trivial to extend HTML forms to include links to further help information in a consistent way. Claim 6: XForms has striven to improve device independence. Counterclaim: By depending on so many specs, XForms has increased the requirements for implementations to the point where few devices can even attempt an implementation. Claim 7: Submitted data being strongly typed speeds up form filling since it reduces the need for round trips to the server for validation. Counterclaim: Forms _today_ regularly have script-based client-side type checking that do not require server round trips. In addition, irrespective of any client side validation, servers will still have to validate all data for security and sanity reasons, so there is no decrease on the load on the server. Claim 8: XML submission obviates the need for custom server-side logic to marshal the submitted data to the application back-end. Counterclaim: This assumues a priori that the application back-end uses an XML input method. Applications could just as easily be written to accept multipart/form-data, or could simply convert multipart/form-data into an XML form. Secondly, it would be easy to introduce a new form encoding (enctype) for XML submission in HTML, without any changes to the HTML spec itself. Claim 9: Existing schema re-use obviates duplication, and ensures that updating the validation rules as a result of a change in the underlying business logic does not require re-authoring validation constraints within the XForms application. Counterclaim: This makes the dubious fundamental assumption that the business logic uses XML Schema as its basis. For sites written in server-side JavaScript, the same argument could be made for current HTML forms. Claim 10: XForms has less use of scripting, and thus a reduction in the need for imperative scripts for event handlers. Counterclaim: XPath is close to a procedural scripting language in its own right, so the claim that there is less scripting is arguable. Since authors are more familiar with imperative scripting than declarative XPath expressions, this results in greater difficulty for authors, not less. Furthermore, XForms <action> syntax can easily be viewed as a very basic programing language with angle brackets. Inventing a new script-like language when existing languages such as ECMAScript are widely used by authors simply forces authors to learn yet another language, making authoring more difficult. Claim 11: XForms splits the instance model and typing information from the interface. Counterclaim: This is not true. The user interface elements are still used, to a large extent, to give the possible values, e.g. in enumerated sets. If this claim were true, there would only be one form element, not eleven, and the actual control shown and the values shown or made available would be derived from the type and instance data. In conclusion, we do not believe XForms should proceed to W3C Recommendation stage. Despite the above, however, we do agree that HTML forms have problems that need addressing. In particular: * The requirement that all form controls must be structurally nested within <form> elements means that it is impossible to create multiple forms side by side, as for example having each column or row in a table be its own form. * HTML forms are severely limited in terms of typing information. The need for date types, patterned text field entry, marking fields as required, and other similar extensions is clearly shown by any e-commerce Web site. * The current POST submission formats, both multipart/form-data and application/x-www-form-urlencoded, have issues. The latter is not defined for file upload; the former is non-trivial to parse and does not fit well with the modern, XML-biased, toolset. * Common idioms, such as cloning form controls, propagating values, implementing dependencies and validating values could easily be simplified by providing utility interfaces. We would like to see alternative proposals, for example in the form of an XHTML module, that address these concerns without introducing the aforementioned problems from which XForms suffers. References: [TAG Finding 7] "TAG Finding: URIs, Addressability, and the use of HTTP GET", Dan Connolly, 2002. http://www.w3.org/2001/tag/doc/get7 ------------------------------------------------------------------------ Usage My organization: Please indicate which options match your choice: * [_] produces products addressed by this specification * [_] expects to produce products conforming to this specification (your details below) * [_] expects to produce content conforming to this specification (your details below) * [_] expects to use products conforming to this specification (your details below) * [_] does not expect to produce or use products or content addressed by this specification Comments (or a URI pointing to it): ------------------------------------------------------------------------ Patent Claims Patent claims applicable to these specifications should be disclosed according W3C's [43]Current Patent Practice Note [43] http://www.w3.org/TR/patent-practice Please indicate which option matches your choice: * (X) To the best of my knowledge, my organization does not have patents that may be essential technology for implementing these specifications. * (_) We have disclosed to [44]patent-issues@w3.org following the procedure described in section 3 of the [45]Current Patent Practice Note [44] mailto:patent-issues@w3.org [45] http://www.w3.org/TR/patent-practice ------------------------------------------------------------------------
Received on Wednesday, 3 September 2003 18:47:20 UTC