- From: Erik Bruchez <ebruchez@orbeon.com>
- Date: Mon, 04 Jun 2007 11:07:26 -0700
- To: public-forms@w3.org
- CC: www-forms-editor@w3.org
All, A follow-up to this question: I find that in 1.1 we do have some better text specifying what it means for a string to be empty. This is in "6.1.3 The required Property" "The value of the bound instance data node must be convertible to an XPath string with a length greater than zero." Therefore I suggest that in the two places where we say "required but empty" we clearly refer to section 6.1.3. The occurrences are in sections "4.3.5 The xforms-revalidate Event" and "11.2 The xforms-submit Event" (point 3). More precisely, I suggest that: "required but empty" be changed to: "required but empty (as specified in 6.1.3 The required Property)" This is still not 100% correct as 6.1.3 in fact define "non-empty" instead of "empty" ;-) But at least this will point the reader to a formal definition of emptiness. And of course this does not address the issue that this definition of emptiness is not very useful as I attempted to show below. -Erik [1] http://www.w3.org/TR/xforms11/#model-prop-required Erik Bruchez wrote: > > John, Ulrich: > > > I agree with Ulrich. The meaning of empty string is clear, and a > > string with spaces in it is not empty because it has spaces in it. > > Ok, that's what I thought, unfortunately ;-) > > > I do agree that this is different than what a user-friendly > > interpretation might mean, but this would not be the only place where > > such technicalities cause us a little grief. Here are a few other > > favorites: > > 1) having to say true() and false() rather than true and false > > 2) Having empty string not be the same thing as zero in XPath > > mathematical operations > > 3) Empty string being unacceptable lexically for many schema datatypes > > > > Still, these don't mean our issues are ill-defined. Just that right > > now a form author would have to do more work to address the > > situation when there should be no distinction between two things > > like whitespace string and empty string. > > I think that this comes down to whether our current definition of > "required but empty" is actually useful in a form application. I am > contending that it is not very useful at all. > > There are a few uses of the "required" MIP I can see: > > 1. Use it to visually style form controls to mark that they are > required. You may do this with a different color, with a little "*" > next to it, etc. This is actually just fine as is at the moment. > > 2. Use it as a constraint on the actual data. This is what we do at > submission time where "required but empty" data prevents submission > (unless validate="false"). > > 3. Style controls as "required but empty" to alert the user that a > required field must be filled out. I don't think XForms recommends > any CSS to do this at the moment, but in Orbeon Forms we allow > this. > > #2 above is where I think there is the main issue (#3 suffers from the > same issue with the definition of "empty", but let's skip this one for > now). If a user by mistake or on purpose enters blank spaces in a > required first name field, the field still satifies the condition > "required". I think that in 99.9% of the cases, this is not what you > want. > > I know, you can use types and constraints to enforce this > condition. But that's exactly my point: I may as well never use the > "required" model item property, because I will always have to use a > schema type or a constraint to express that the field must contain a > non-blank value anyway. > > This limits the practical uses of the "required" MIP in my > opinion. Certainly, it makes #2 above not very useful as a > constraint. Or am I missing something? > > If it was up to me, I would look at solutions such as: > > 1. Redefine "required" to require one non-whitespace character. > > 2. Allowing the form author to express how "required" is computed. For > example, a form author could be content with expressing that > whitespace content still satisfies the "required" condition, while > another author could be stricter and say that a field must contain > at least one non-whitespace character to satisfy requiredness. > > -Erik > -- Orbeon Forms - Web Forms for the Enterprise Done the Right Way http://www.orbeon.com/
Received on Monday, 4 June 2007 18:07:56 UTC