accname
accname copied to clipboard
Unclear "Otherwise"
Each step starts with the word "otherwise". For me, it is not completely clear what this means. I can imagine three different interpretations:
- The conditions of the previous steps did not apply
- The previous steps had empty results
- The previous steps had empty results (except for whitespace)
I think it should be made clear which of these is intended.
‘Otherwise’ refers to all three of these interpretations equally.
From: Tobias Bengfort [mailto:[email protected]] Sent: Saturday, February 10, 2018 7:11 AM To: w3c/accname [email protected] Cc: Subscribed [email protected] Subject: [w3c/accname] Unclear "Otherwise" (#5)
Each step starts with the word "otherwise". For me, it is not completely clear what this means. I can imagine three different interpretations:
- The condition of the previous steps did not apply
- The previous steps had empty results
- The previous steps had empty results (except for whitespace)
I think it should be made clear which of these is intended.
— You are receiving this because you are subscribed to this thread. Reply to this email directly, view it on GitHub https://github.com/w3c/accname/issues/5 , or mute the thread https://github.com/notifications/unsubscribe-auth/ABx1aDWw48Vo-Ehf4nH1Mzs_92AltYjDks5tTbFugaJpZM4SA9W6 . https://github.com/notifications/beacon/ABx1aOocl8jJgnTTOuQQOtb-q0WJB9e7ks5tTbFugaJpZM4SA9W6.gif
Hi, in conversations with the browser venders it's been made clear that the intended result is to address all of these conditions at once, so that the presence of an empty (only whitespace) value is not valid, nor is the presence of an attribute ID ref that points to nothing, nor any other condition that results in an empty AccName computation from being returned. If a non-empty value is returned, this acts like a return statement where no further processing is done in the algorithm unless otherwise specified for special cases within the steps. If an empty value is returned however, then the condition for the step is not valid and then the process moves on to the next step prefaced with 'otherwise', where the same conditional processing is done to see if a valid name is present. Since this is how the browser venders agree on how this should be done for consistency, and I can't find anything in the spec text that contradicts this, I'll close this issue.
How is this issue resolved? The spec is still completely ambiguous.
When I brought this up, the interpretation was meant to convey that a meaningful value would be returned, and if not, then it would move on. What is meaningful is debatable I guess.
When it was originally written, the assumption was that it was implicitly understood that returning a blank value by any means was not a valid accessible name for anything.
If you would like, I can add this to the 1.2 milestone for further clarification since it is too late to add this to 1.1 at this time.
Yes, please reopen this issue.
Is this a stopper for 1.1 CR then, or should this be moved to 1.2?
I already moved it to 1.2.
If I understand correctly, all occurences of "otherwise" could be replaced by "if the previous steps did not yield a non-empty text". But that would create even more convuluted sentences. Maybe it would be better to clarify "otherwise" somewhere.
@xi: Regarding clarifying "otherwise" somewhere, what about adding it to this section: https://w3c.github.io/accname/#terminology? As you'll see there, we define things like "Result" and "Append the result, without a space, to X". If we put your statement ("if the previous steps did not yield a non-empty text") in the "terminology" section as the definition of "Otherwise", would that address your concerns?
Another option which occurs to me is: Delete "otherwise". The text which precedes each "otherwise" is a statement starting with "return". "Return" means you're done with the steps for the particular "current node" and should not continue processing the steps which follow (each of which starts with "otherwise"). Thus "otherwise" strikes me as redundant and removable. And if you think "Return" is not sufficiently clear, we could add a definition to "Return" to the "terminology" section along with removing "otherwise."
Please let us know at your earlier convenience what you think about the above possibilities as we really, really need to get AccName 1.1 out the door. Thanks!
I think it would be sufficient (though not totally clear) to add "otherwise" to the terminology section.
The point about "return" is interesting. I would agree that the "otherwise" is redundant if you understand "return" in that way. However, that would be a different interpretation from the one @accdc provided above (interpretation 1 from my initial comment). In other words, maybe the use of "return" is also misleading and should be replaced.
Drat! Ok, given that more discussion seems to still be called for in order to get this right, let's leave this targeted for the 1.2 milestone so we can do it right and not rushed.