- From: Mark Birbeck <mark.birbeck@webbackplane.com>
- Date: Wed, 10 Sep 2008 13:33:43 +0100
- To: "Forms WG" <public-forms@w3.org>, "XHTML WG" <public-xhtml2@w3.org>
I've been asked to do a review of XML Schema 1.1. Even though it is simpler than XML Schema 1.0, it remains a substantial set of documents, so I have not drilled into every nook and cranny. Instead I've focused on those things that I thought would be relevant to XForms, XHTML 2, and XHTML M12N. In terms of being incorporated into XForms at the processing level, I don't see enormous benefits, although I do agree with Kenneth on the items that he has outlined. However, where I see XML Schema 1.1 having the potential to be most helpful to us, is in the definition of XForms and XHTML 2 themselves. I say 'potential' because we're in the process of using more and more RelaxNG, so XML Schema may have 'missed the boat' from the point of view of our languages. Anyway, the following is merely intended as a 'heads-up' for the groups, since I don't have any formal comments that I'd like to make back to XML Schema Working Group. ALTERNATIVES The xs:alternative element [1] is a welcome addition, and will greatly assist in the increasing modularisation of our languages. The behaviour is essentially that the type of an element can be set based on an XPath test: <xs:alternative test="@a='b'" type="c" /> or: <xs:alternative test="@a='b'"> <!-- some new type on the fly --> </xs:alternative> >From the way that the XPath test works, it is only possible to test things that apply to the element itself, so you can't check parent elements, for example. When it comes to being used in XForms data itself, it will be useful in situations like this: <contact type="address"> <street ... /> </contact> <contact type="phone"> <number ... /> </contact> But I see it being of most use to us in the schemas that define the XForms and XHTML 2 languages themselves. This is because we increasingly have situations where the element structure of a document is based on the presence of some of the attributes, and this type of construct is likely to grow in the future. It also helps if we want to export our *behaviours* without requiring our mark-up, for example: <someotherlanguage:control role="xf:range" start="0" end="10"> ... </someotherlanguage:control> OVERRIDE Override seems better than redefine from the point of view of language design. My impression is that anything can be overridden, and the item doing the overriding can be of any type. DEFAULT ATTRIBUTE GROUPS Hurray! (I think Shane will appreciate this.) Regards, Mark [1] <http://www.w3.org/TR/2008/WD-xmlschema11-1-20080620/#cTypeAlternative> -- Mark Birbeck, webBackplane mark.birbeck@webBackplane.com http://webBackplane.com/mark-birbeck webBackplane is a trading name of Backplane Ltd. (company number 05972288, registered office: 2nd Floor, 69/85 Tabernacle Street, London, EC2A 4RR)
Received on Wednesday, 10 September 2008 12:34:23 UTC