- From: Chaals McCathie Nevile <chaals@yandex-team.ru>
- Date: Mon, 12 Oct 2015 23:44:54 +0200
- To: "James Craig" <jcraig@apple.com>, "Richard Schwerdtfeger" <schwer@us.ibm.com>
- Cc: "Ivan Herman" <ivan@w3.org>, "W3C PF - DPUB Joint Task Force" <public-dpub-aria@w3.org>, PF <public-pfwg@w3.org>, "Lisa Seeman" <lseeman@us.ibm.com>
- Message-ID: <op.x6excgh6s7agh9@widsith.local>
Hi RIch,
I think we are still talking past each other.
It sounds like the COGA group is looking for an attribute whose values can
be defined, in a list that can be easily extended, that can describe links
in a machine-readable way.
HTML has an attribute for that called rel. It has been around for a long
time, has been implemented in various ways all the way through different
bits of the toolchain - and even beyond the Web, for whatever that is
worth.
There is also "rev" but the only value of that is where you want to reduce
the number of possible values - instead of having to have rel="next" and
rel="previous" you could use rel="next" but rev="next" to say that
something else had rel="next", i.e. is the previous document.
More detail below.
On Mon, 12 Oct 2015 22:40:18 +0200, Richard Schwerdtfeger
<schwer@us.ibm.com> wrote:
>
> That is not the issue and it has absolutely nothing to do with the
> problem we are trying to solve which is that given a link we need to
> know what the destination type of the >link it is going. This was
> discussed at the last ARIA task force meeting. It is important that
> people read the work going on in the cognitive accessibility task force
> and what is >being done with dpub.
Can you please provide some clearer sense of what we need to read? "All of
coga" isn't useful, some list of 15 wiki pages and 20 email threads from
the last 4 months might be more rational.
>
> Coga needs to know that that link points to help information
This is *exactly* the sort of thing rel does.
In the HTML4 era browsers provided those buttons in consistent places
such as at the top or bottom of the window, triggered by rel="help",
rel="next", etc, as per the spec:
http://www.w3.org/TR/1998/REC-html40-19980424/types.html#type-links
The HTML5 version appears to have less, since it defers to the wiki which
allows anyone to list a rel value and the spec for it, but it explicitly
includes help, prev and next ...
>
> and a whole list of other features such that when styled they know the
> purpose of the destination of the link so it can be styled using symbols
> or other mechanisms so that >they can appear in a consistent way.
Yes, but any attribute can be used for styling.
>
> This impacts aging, in that many web sites and applications style things
> differently and the user gets lost. The dpub group had introduced
> different roles for things like >glossary references that could easily
> marked with role="link" and aria-destination="glossaryterm". A publisher
> could style these to look the same way and in a way that is >easily
> understood by different users.
indeed:
*[role=link][rel=next] { /* your style for next */ }
*[role=link][rel=glossary]:before { /* your dictionary icon */ }
>
> Coga has suggested the use of an new aria-destination attribute that
> could consume these values. This would allow us to still reuse the link
> role for these different types of >links but then provide additional
> information that would help drive toward a consistent look and feel.
> @rel would be great but unfortunately HTML shoved a bunch of totally
> >unrelated values in it.
You don't need to handle irrelevant values. But for anything that needs a
particular behaviour, such as a link tothe next thing, or a link to help,
you have to implement it whatever attribute it is in.
The nice thing about doing this on rel attributes is that you build on a
set of browser extensions, content, and tools that link content,
stretching back more or less the whole history of the Web.
More to the point, some of the attributes you think are irrelevant match
the things I have read from COGA (although I may have misunderstood
something).
rel="stylesheet alternate" title="simplified layout"
rel="alternate" hreflang="en-x-kincaid-level-4" title="Easy to read"
These are things that real developers already know how to do. And things
that are relatively easy to crawl for. Which matters, because *finding*
resources that are useful is also an important way to improve
accessibility.
Building on existing HTML to enable for example
<a rel="icon"
<span role="link" onclick="popupDictionary(this.innerText)" rel="glossary"
Would actually be very easy. I'd be very happy to do that in the Web
Platforms group, which is the new successor to both Web Apps and HTML, at
the same time as following the existing trivial process of editing the
wiki that HTML5 uses for extending values.
>
> This would be for the link role and not the <link> element. The user
> experience could care less if the @rel="prefetch". @rel is a hodge podge
> of unrelated values.
rel is currently applicable to link, a and area elements - because those
are the things that define links in HTML. It makes perfect logical sense
to argue that something with role="link" is analagous to an a element, and
therefore the rel attribute should be valid, and have the same behaviour
as it does for the a element.
>
> Charles had earlier asked how ATs processed @rel. On Windows, at least,
> they don't and that may be because many of the values have no value to
> ATs.
Sure. But nor does anything in existence process the aria-destination
attribute. Which puts it behind rel, since there are browsers in use which
handle it. In any case, implementation is relatively simple...
var helpButton = document.querySelector('[role=link][rel=help],
a[rel=help], area[rel=help]');
document.addeventListener('help', helpButton.click);
Although most browsers don't emit a "help" event for pages so you might
want to define something temporary like a keyboard listener for 'f1' or
add a button to the document (like ReSpec does for W3C working drafts).
>
> Making matters worse SVG2 doesn't even have a rel attribute:
> https://svgwg.org/svg2-draft/attindex.html
But nor does it have an aria-destination attribute. In any event,
implementation is pretty much the same whatever it is called.
>
> So, I was interested in @rel as well but the solution quickly felt apart
> for our purposes.
I don't think it does. Your purpose is *exactly* what the rel attribute
was intended to do, and has done for a couple of decades. Making a
*different* attribute to do the same thing seems like a bad way forward.
It introduces confusion, or double the work, at best.
>
> I have not seen the SVG WG indicate that it will adopt the HTML <a>
It has an a element of its own. Adding a rel attribute as valid on that is
pretty trivial as far as I can tell, whether they adopt the HTML element
or not.
>
> In studies with the aging population with NIDDR and in the Coga task
> force that senior users want the user interface to be consistent in how
> it looks and where things are >placed. For example, they don't want the
> next link to appear indifferent places as they just can't process the
> site. They get confused.
This is exactly what the rel="next" attribute was used for by shipping
browsers, which placed it near the "contents", "previous", "help" and
"index" buttons.
You might want to ask the browsers why they removed those, and how hard it
is to put them back (hint: trivial, although it would be good if they
doubled the time allowed to a week, to get some decent design applied this
time)
>
> Consequently, we are talking about an aria-destination attribute. I have
> cc'd Lisa Seeman if you have any questions from the Coga task force.
1. Does COGA care what the attribute is called?
2. Does COGA believe that
a. this attribute should *only* be relevant to people using
"specialised" technology, and
b. the attribute should not be processed to modify the user interface
of mainstream browsers?
(and repeating the request I started with, what do I need to read on this
topic?)
cheers
Chaals
--
Charles McCathie Nevile - web standards - CTO Office, Yandex
chaals@yandex-team.ru - - - Find more at http://yandex.com
Received on Monday, 12 October 2015 21:45:39 UTC