- From: Klotz, Leigh <Leigh.Klotz@xerox.com>
- Date: Tue, 12 Jan 2010 13:06:33 -0800
- To: <innovimax@gmail.com>
- Cc: "Forms WG" <public-forms@w3.org>, "dsdl-discuss" <dsdl-discuss@dsdl.org>, "Jirka Kosek" <jirka@kosek.cz>, "MURATA Makoto (FAMILY Given" <EB2M-MRT@asahi-net.or.jp>, "Alex Brown" <alexb@griffinbrown.co.uk>, <chairs@w3.org>, <markus.gylling@gmail.com>, <www-forms-editor@w3.org>
Dear Mohamed and JTC 1/SC 34/WG 1, Thank you and the group for the detailed comments. We discussed some of your comments [1] and I am responding to them. For others, I've been asked by the Forms WG to investigate and respond later. We look forward to further help after the next revision of the schemas. I have additionally added Markus Gylling (not a Forms WG member) to the CC list of this message, in case he wishes to review my comments separately. More detailed comments are inline below. Thank you, Leigh. [1] http://lists.w3.org/Archives/Public/public-forms/2010Jan/att-0003/2010-01-06.html#topic5 From: Innovimax SARL <innovimax@gmail.com> Date: Fri, 25 Dec 2009 23:57:50 +0100 Message-ID: <546c6c1c0912251457pff7abccn4c8f4c15534f8e3d@mail.gmail.com> To: www-forms-editor@w3.org Cc: dsdl-discuss <dsdl-discuss@dsdl.org>, Jirka Kosek <jirka@kosek.cz> Cc: "MURATA Makoto (FAMILY Given)" <EB2M-MRT@asahi-net.or.jp> Cc: Alex Brown <alexb@griffinbrown.co.uk>, chairs@w3.org Dear, Please find those comments about Relax NG schemas for XForms 1.1 as a liaison from SC 34 to W3C Don't hesitate to ask us any further help on the technologies SC 34 is promoting : * DSDL family : http://dsdl.org/ ** Relax NG ** Schematron ** NVDL ** DTLL ** DSRL ** CREPDL * Document format ** OOXML ** ODF Best wishes Mohamed ZERGAOUI on behalf of JTC 1/SC 34/WG 1 * The main XForms schema is without namespace and second schema file is used for "including" elements into proper XForms namespace This is so called "chameleon" approach for schema design. It is useful when it is expected to use the same set of elements in several vocabularies each using distinct namespace. But there is no provision for using different then XForms namespace in XForms 1.1 Recommendation. We are aware that XHTML 2.0 draft used XForm in this way, but it seems that W3C has discontinued XHTML 2.0 efforts. We therefore suggest to provide only one schema which will explicitly define all elements in the XForms namespace. If "chameleon" approach is necessary for reasons we don't see this situation should be cleraly described in the schema comments so users of schemas are not confused and know which schema when to use. Namespaces are not significant to the XForms application. We structured the RelaxNG schema in these two parts as a convenience for those who might profile our XForms 1.1. An upcoming revision of the Relax NG schema for XForms 1.1 will make it clearer which features of host language integration depend on namespaces (for example, XForms-namespaced attributes) and which are independent. We have received reports of language integrations which are independent of the XForms namespace, and while we do not publish the XForms 1.1 Recommendation without a namespace, we believe that a modular schema which facilitates profiling will ultimately improve adoption for XForms. By the way, we don't expect that all integrations of XForms into host languages will be W3C Recommendations. ODF, for example, profiles XForms and uses only the XForms model (at least in current versions), and it is not a W3C Recommendation. * Definition of extension element (§3.4.1) is missing in the schema The extension element is described in prose and it is present in W3C XML Schema for XForms but it is not present in RELAX NG version of schema. We agree, and already noted noted this. The XSD version, by the way, defines the extension element but does not allow it in the content models of any XForms elements. Thus the XSD is erroneous as well, and will be corrected. * There is no start pattern defined XForms are usually placed into a host language so provided schema is just building block for composition of compound document schema. This should be stressed in comments so users are not confused by fact that provided schemas are not valid and working itself. We agree. An upcoming publication will provide at least a sample language integration. Moreover it would be better to add elements model, group, repeat, switch, input, secret, textarea, output, upload, range, trigger, submit, select and select1 as possible start elements to allow invocation of the XForms RELAX NG schema from NVDL script. We will investigate NVDL at a later date; our resolution to provide RelaxNG for XForms 1.1 did not cover NVDL, and WG members do not have experience with it. We would welcome comments or examples. * Individual schemas are not referencable by URI RELAX NG schemas are available in a ZIP file for download. There is no stable URI which can be used for referencing schemas. Please note that having such persistent URIs for schema doesn't mean that validators are going to fetch schemas from this location. Many tools have integrated support for XML Catalogs which can redirect requests to local copy of resource. Providing stable URI for resource like schema is perfectly aligned with Architecture of the World Wide Web (see http://www.w3.org/TR/webarch/) We agree that there should be a location for the schema, but the location was not available at the time of Recommendation publication. We plan to create a separate document for this purpose, perhaps with a host language integration. As noted above, the current RelaxNG schema is aimed at host language integrators, and is not usable standalone, so the need for a referencable copy is not great. * Syntax error in xforms-nons-11.rnc The last line of definition of pattern xforms.ActionName should be | (xsd:NMTOKEN - (xsd:NMTOKEN { pattern = "^xforms-.*" })) | instead of | xsd:NMTOKEN - (xsd:NMTOKEN { pattern = "^xforms-.*" }) This bug was caused by Trang schema converter. WG1 will report this problem upstream to Trang developers so tool is fixed for future use. We will fix this in an upcoming version. Thank you, and Makoto Murata separately, for pointing this out. Future versions will likely be maintained in RNC and converted to XML by trang. Please let us know if you see any problems with this approach. * Improper usage of ^ in regular expression In the upcoming draft, I find only one pattern which begins with "^", namely the one you list. Does this mean we should do this? (xsd:NMTOKEN - (xsd:NMTOKEN { pattern = "xforms-.*" })) If so, please let us know. Patterns in RELAX NG are always matched against complete string so it is incorrect to use ^ at the start of regular expression. * Misuse of combine="interleave" (&= in compact syntax) The use of &= is recommended only when you combine different define statements in different schema modules. Moreover the XForms schema does not need to use combine as there are no multiple occurences of the same named pattern. &= should be changed to = in compact syntax, and combine="interleave" should be removed from XML version of the schema. Host language integration add content to these patterns. When we publish the sample host language integration, would your group be so kind as to re-examine this comment and see if we are then using &= correctly? * group, repeat, case, label, help, hint, alert and message elements allow foreign content but this is not reflected in the schema Interleave content models of these elements with anyForeignElement or create named pattern which can be overriden by user integrating XForms schema into a host language. We agree. Some of these issues are addressed by the host language integration, and others by bug fixes. Again, please check our work at the next revision, if you would be so kind. The following is an example definition of anyForeignElement (it is expecting that xf prefix is bound to the XForms namespace). anyForeignElement = element * - xf:* { anyAttribute*, anyForeignElement* } anyAttribute = attribute * { text } * Change IDREF datatype to token As there are no attributes with type ID defined in the schema there is nothing to which IDREF can point. This wíll result in unresolved references during validation. The burden is on host language integration to declare ID attributes. If XForms declared @id to be xsd:ID, it might conflict with a similar definition in the host language. Or, if the host language each used a different attribute for ID, then there would be two possible attributes for declaring ID, again an unfortunate situation. I should note that xml:id was first proposed by Stevem Pemberton on November 1, 2002 at an XForms Face-to-Face meeting at Netscape in San Diego, precisely for the purpose of solving this issue. Unfortunately, RelaxNG does not properly handle xml:id (see http://blog.jclark.com/2009/01/relax-ng-and-xmlid.html ) and so we are unable to rely on it here. -- Innovimax SARL Consulting, Training & XML Development 9, impasse des Orteaux 75020 Paris Tel : +33 9 52 475787 Fax : +33 1 4356 1746 http://www.innovimax.fr RCS Paris 488.018.631 SARL au capital de 10.000 € Again, thank you for your comments. They are helpful to us. Leigh.
Received on Tuesday, 12 January 2010 21:07:35 UTC