- From: Al Gilman <Alfred.S.Gilman@IEEE.org>
- Date: Tue, 17 Oct 2006 15:18:02 -0400
- To: public-rdf-in-xhtml-tf@w3.org
- Cc: wai-xtech@w3.org
In the WAI-ARIA State document [1] we define a 'valuenow' attribute. The use of this is for widgets that maintain one data item, to provide a clear place in the DOM where a representation of the current value of the data item is accessible. Recently we decided that we wish to follow the example of the metadata work (RDFa ?) for XHTML 2.0 in how we allow type information to be asserted against this value. In particular, we want @valuenow to be a legal XML and XHTML attribute, we want to be able to refine it with a QName reference indicating type information, and we want to make the use of XSD built-in types an easy use case. Then we came up with the common use case where a progress bar or similar widget is included in the layout but there is no data to represent with this display object. There are presentation effects such as greying-out that can be applied to the graphical rendering of this widget to connote that it's not meaningful, but we want something more semantic. In particular, there is an 'unknown' supported in MSAA and we want to get the information that accessibility APIs need from document encodings on the Web [2]. It seemed simple enough to say in the DTD that the value of this attribute could be either 'unknown' or any CDATA value. But that roused a twitch in my mind. I vaguely remember that there are classical issues revolving around whether one has nil-bearing types or not. Some people say "magic values are bad stuff." Do we need to implement this as a meta-property? meta-meta-data? The problem that I have been able to come up with arising from: - introducing a magic string in the syntax, and - deferring to the author and another attribute the type designation for this attribute is "what happens if the reserved string is a legal value of the type represented by the CDATA option?" For example, suppose we have a tristate logic type with literals 'true' | 'false' | 'unknown' ? Here @valuenow="unknown" could mean that the value is known and equal to the 'unknown' of the datatype, or that there is no value known. It's simple for the case of a progress bar where all legal values of the type are numerical to introduce alpha-based symbols as reserved values. But not for an arbitrary type that has a CDATA string representation. And the "no data" condition can arise for any data type, not just those whose XSD representation is in terms of digits. What would you consider the best practice in terms of representing this condition in reasonably legacy-friendly XHTML syntax? Al [1] http://www.w3.org/TR/2006/WD-aria-state-20060926/#supported [2] http://www.w3.org/TR/2006/WD-aria-roadmap-20060926/
Received on Tuesday, 17 October 2006 19:18:30 UTC