Re: hgroup and ARIA outline in ISSUE-129 [Was: SSUE-129: replace or modify the ARIA section of the HTML5 spec - chnage proposal and replacement spec text]

hi benjamin,

>These examples are presentations of the content not presentations of
>outlines of the content.

and so the semantics of the presentaions of the content differ from the
oultine view, yet the mappings for the presentations are not defined, this I
see is the crux of the issue.

>The term "region" comes from ARIA:

I am aware of the ARIA role=region, what I was pointing out was that you had
added this in your representation added additional semantics not defined
explicitly in the ARIA mapping section of the spec.


>"Other elements of heading content in the hgroup element indicate
subheadings or subtitles."


but the semantics of these are not defined in the spec and neither are they
defined roles in any accessibility API.

>HTML5 (like ARIA) defines semantics *not* how to represent semantics to the
end-user.

well in the case of the outline it DOES define how they are to be
represented. it says hide some headings and their content. to quote you
"The spec already says the subtitles aren't part of the outline"

"subtitle for a heading of a section" be mapped to supporting accessibility
APIs?
 as I said above there is no role for "subtitle for a heading of a section"

let me repeat, currently in the spec if an element is not mentioned
explictly as having a particular default role (which h1-h6 inside hgroup are
not) it is inferred that they a) they have no default role and b) they can
have ANY ARIA role. Whereas what is implied in your reading of the spec is
that they do have default roles (the undefined 'subtitle' role) and as such
should most probably not be allowed to have many ARIA roles assigned as that
can and will interfere with the outline algorithm.

That is a problem.

>Would you still argue that "subtitle" should be mapped to
>"presentation"? And if so, on what grounds?

>If your goal is to prevent screen readers reading subtitles as
>headings, just don't map them to the "heading" role and suggest UAs
>expose them as text if there's no "subtitle" semantic in their
>platform's Accessibility API.

there is no subtlitle semantic explicitly defined in HTML5 there is no
<subtitle> element or role="subtitle" and no subtitle role in any
accessibility API that I know of, if there were then this would not be an
issue.

my goal is to provide unambiguous advice to user agent implementors on how
to map H1-h6 elemnts inside hgroup elements to accessibility APIs, I have
not reached that point yet, but neither has the HTML5 spec.

that is a problem.

regards
Stevef


On 29 November 2010 08:15, Benjamin Hawkes-Lewis <
bhawkeslewis@googlemail.com> wrote:

> On Sun, Nov 28, 2010 at 11:06 PM, Steve Faulkner
> <faulkner.steve@gmail.com> wrote:
>
> > I note in your first example, you have added 2 constructs "region" and
> > "subtitle" that are not specified in the HTML5 outlining algorithm.
>
> These examples are presentations of the content not presentations of
> outlines of the content.
>
> The term "region" comes from ARIA: "A large perceivable section of a
> web page or document, that the author feels is important enough to be
> included in a page summary or table of contents" that should have "a
> heading referenced by aria-labelledby".
>
> http://www.w3.org/TR/wai-aria/roles#region
>
> I think this is the appropriate mapping for the HTML5 semantic
> "sectioning content":
>
> http://dev.w3.org/html5/spec/content-models.html#sectioning-content-0
>
> The spec defines how we can infer semantic sections in the absence of
> explicit sectioning elements:
>
> "The first element of heading content in an element of sectioning
> content represents the heading for that section. Subsequent headings
> of equal or higher rank start new (implied) sections, headings of
> lower rank start implied subsections that are part of the previous
> one. In both cases, the element represents the heading of the implied
> section."
>
> http://dev.w3.org/html5/spec/sections.html#headings-and-sections
>
> "subtitle" is not defined in the algorithm; it's just an ordinary
> HTML5 semantic:
>
> "Other elements of heading content in the hgroup element indicate
> subheadings or subtitles."
>
> http://dev.w3.org/html5/spec/sections.html#the-hgroup-element
>
> > Also in
> > the second example the heading level 3 and 2nd heading level 2 in the
> hrgoup
> > are  treated as plain text, neither being a heading or a subtitle.
>
> That's because it's a less verbose representation - i.e. a
> representation in which minor semantic detail (X is a subtitle) has
> been stripped away for the listener's convenience.
>
> As you know, it's common for screen readers to allow users to strip
> out semantic detail in this fashion - for example to toggle the
> announcement of quotations - because users can infer these details
> from context or they just aren't that important.
>
> > so depending on the view (oultine or in page) the content of a hgroup (a)
> > may be represented as either 1 or 2
> >
> > (a)
> > <hgroup>
> > <h3>Analysis</h3>
> > <h2>The problem</h2>
> > <h2>A mathematical model</h2>
> > </hgroup>
> >
> > 1.
> > <h2>The problem</h2>
> >
> > 2.
> >
> > Analysis
> > <h2>The problem</h2>
> > A mathematical model
>
> HTML5 (like ARIA) defines semantics *not* how to represent semantics
> to the end-user.
>
> > In theory I don't have an issue with this, but it is not reflected in the
> > current HTML% Spec as to acheive 1 the other headings in the hgroup would
> > have to be treated as having CSS display:none or having the hidden
> > attribute.
>
> The spec already says the subtitles aren't part of the outline, just
> like random "p" elements are not part of the outline.
>
> Typically, HTML outline views are presented in a separate sidebar or
> window not subject to (page) CSS at all.
>
> So (a) what spec text would you suggest here and (b) why would it be
> necessary for "hX" inside "hgroup" but not "p" outside "hgroup"?
>
> > To achieve 2 the h3 and 2nd h2 would have to be treated as having
> > role=presentation.
>
> Why would this be necessary or appropriate?
>
> "presentation" means "An element whose implicit native role semantics
> will not be mapped to the accessibility API."
>
> http://www.w3.org/WAI/PF/aria/roles#presentation
>
> The native semantic of an "hX" element in "hgroup" is subtitle for a
> heading of a section, not heading of a section. Why shouldn't
> "subtitle for a heading of a section" be mapped to supporting
> accessibility APIs?
>
> Imagine instead of reusing "hX" elements, the spec defined a
> "subtitle" element as "indicating a subtitle for a sibling heading
> element":
>
> <section>
>  <subtitle>Analysis</subtitle>
>  <h2>The problem</h2>
>  <subtitle>A mathematical model</subtitle>
>  <p>Section text goes here.</p>
> </section>
>
> Would you still argue that "subtitle" should be mapped to
> "presentation"? And if so, on what grounds?
>
> If your goal is to prevent screen readers reading subtitles as
> headings, just don't map them to the "heading" role and suggest UAs
> expose them as text if there's no "subtitle" semantic in their
> platform's Accessibility API.
>
> --
> Benjamin Hawkes-Lewis
>



-- 
with regards

Steve Faulkner
Technical Director - TPG Europe
Director - Web Accessibility Tools Consortium

www.paciellogroup.com | www.wat-c.org
Web Accessibility Toolbar -
http://www.paciellogroup.com/resources/wat-ie-about.html

Received on Monday, 29 November 2010 01:01:45 UTC