Seeking clarification for "undefined" as a literal value

As I understand ARIA, a possible value of "undefined" means the attribute
is not present. If undefined is also the default, then a value of "" is
equivalent. However, I would not expect a user agent to process the literal
string "undefined" as undefined.

Was there an expectation somewhere that the literal string "undefined"
should be treated as attribute not present?

I feel that the ARIA 1.1 spec could be more clear here:

'The "undefined" value, when allowed on a state or property, is an explicit
indication that the state or property is not set. The value is used on
states and properties that support tokens, and the "undefined" value is a
string that is one of the allowed tokens. It is also used on some states
and properties that accept true/false values, when "undefined" has a
different meaning than "false".'

Perhaps when undefined is discussed it should not be put in quotes -- to
programmers this means literal string. Mostly, CORE-AAM does this, but it
does have one place under disallowed values that discusses "undefined" as a
literal string. It does not, however, discuss the "undefined" literal as an
allowed value.

Can someone provide more clarity for our implementation? I'd like to see
more clarity in both specs.

Thank you,

- Aaron

Received on Thursday, 29 June 2017 17:33:01 UTC