- From: Joseph Scheuhammer <clown@alum.mit.edu>
- Date: Mon, 06 Oct 2014 09:24:19 -0400
- To: W3C WAI Protocols & Formats <public-pfwg@w3.org>, W3C WAI-PFWG <w3c-wai-pf@w3.org>
ACTION-1493 relates to ISSUE-646 regarding the default value for
supported and required states and properties. See the fourth paragraph,
repeated below, at:
http://www.w3.org/TR/wai-aria/#state_property_processing
<change>
When WAI-ARIA roles are used, supported states and properties that are
not present in the DOM are treated according to their default value,
unless they are required. For token states and properties, an attribute
value that is a zero-length string ("") also corresponds to the default
value. Therefore, user agents SHOULD treat token state and property
attributes with a value of "" the same as they treat an absent
attribute. Normally this corresponds to the default value (usually
"undefined"), but if it is a required attribute, they signal an error
(because a null value is the same as failing to provide the required
attribute).
</change>
<to>
WAI-ARIA roles have associated states and properties that are further
qualified as "supported" or "required". For example, the combobox role
<em>supports</em> the aria-autocomplete property: a given combobox might
or might not implement auto completion. In addition, the combobox role
<em>requires</em> an aria-expanded state since it has a popup listbox as
one of its children, and the value of aria-expanded indicates whether
the listbox is currently open.
When WAI-ARIA roles are used, supported states and properties that are
not present in the DOM are treated according to their default value --
their default value is equivalent to their absence. Keeping with the
combobox example, a missing aria-autocomplete attribute is the same as
its default value "none", meaning the combobox does not offer auto
completion.
Required states and properties that are absent are an author error.
Missing required states and properties are treated as if they were
present and have an implicit neutral value that is not necessarily their
default value. For example, the default value of aria-expanded is
undefined, meaning neither expandable nor collapsible. However, its
implicit value for a combobox is "false", meaning collapsed. The
characteristics table associated with each WAI-ARIA role has an
"Implicit Value for Role:" entry that specifies the value to use for
that role when a required state or property is missing.
(Editorial Note: There are roles whose required states/properties do
not list an implicit value, e.g., slider/aria-valuenow. Is this a bug?).
Sometimes states and properties are present in the DOM but have a
zero-length string ("") as their value. This is equivalent to their
absence. Therefore, user agents SHOULD treat state and property
attributes with a value of "" the same as they treat an absent
attribute. For supported states and properties this corresponds to the
default value, but if it is a required attribute, it signals an author
error, and the implicit value for the role is used.
</to>
--
;;;;joseph.
'Array(16).join("wat" - 1) + " Batman!"'
- G. Bernhardt -
Received on Monday, 6 October 2014 13:24:51 UTC