[whatwg] rp is a styling tag and has no semantic function

Futomi Hatano info at html5.jp
Fri Oct 30 05:32:37 PDT 2009

On Fri, 30 Oct 2009 11:10:59 +0100
Nikita Popov <privat at ni-po.com> wrote:

> Futomi Hatano schrieb:
> > If ATs(e.g. screen reader)  know the rp element, it can remove the content of the rp element.
> > So, we can get only true annotations from ATs, without parentheses.
> > I don't want hear parentheses from a screen reader.
> >
> > I hope that all browsers (including ATs) support the ruby element.
> > If so, I think the rp element is not necessary.
> >
> > Thank you.
> >
> > --
> > Futomi Hatano
> > www.html5.jp
> >   
> > I think this element is necessary in the HTML5 spec.
> Talking about screen-readers: How should a screen-reader actually handle
> ruby annotations? In this case
> <ruby>
> 漢 <rt> かん </rt>
> 字 <rt> じ  </rt>
> </ruby>
> it would be quite strange if a screen-reader read the annotations,
> because they have the same content as the ruby base text. (I hope this
> is correct. I don't know the Japanese language, but I understood it as
> 漢 beeing same as かん only in a different "way" of writing.) So the
> reader must not read the annotation.

More correctly, screen-readers should read only the contents of <rt> rather than the base text.
That is, screen-readers are expected to read it as "ka-n-ji" from <rt>s.
Of course, screen-readers which don't support <ruby> repeat 2 times such like "ka-n-ka-n-ji-ji" as you know.

We also have to get <ruby> easy to read for visual browser users.
But, the markup above is rendered by non-IE browsers as below.


We feel it is odd.
So, I want to mark it up like this.

This markup is rendered by non-IE browsers as below.


It's natural and easy to understand.

Screen-readers which supports <ruby> of HTML5 are expected to ignore <rp>, 
and read only the contents of <rt>.
Users who use such a screen-reader will hear "ka-n-ji" only once.
I think that both of screen reeder users and visual browser users would be happy.
If <rp> is dropped from the spec, screen-readers could't ignore parentheses without fail.
So, I think that <rp> is necessary.

> In an example i got from an older W3C spec, it's different:

Are you talking about "Ruby Annotation module for XHTML 1.1"?

> <ruby>
>   <rbc>
>     <rb>10</rb>
>     <rb>31</rb>
>     <rb>2002</rb>
>   </rbc>
>   <rtc>
>     <rt>Month</rt>
>     <rt>Day</rt>
>     <rt>Year</rt>
>   </rtc>
>   <rtc>
>     <rt rbspan="3">Expiration Date</rt>
>   </rtc>
> </ruby>
> As this markup isn't used anymore with HTML5, here's how it would be
> (dropping the "expiration date"):
> <ruby>
> 10 <rt>Month</rt>
> 31 <rt>Day</rt>
> 2002 <rt>Year</rt>
> </ruby>
> This one now should be read out by the screen-reader. Otherwise the
> meaning of the numbers may be not as clear.
> (Or is the date-example out-of-date and ruby shouldn't be used there?)

I think that <ruby> of HTML5 is not appropriate for the case.
According to the HTML5 spec, <ruby> is "primarily used in East Asian typography as a guide for pronunciation or to include other annotations".
I think that this element was not designed for the case you mentioned.
"Ruby Annotation module for XHTML 1.1" can be used for a broad range of objectives.
But <ruby> of HTML5 is limited, I think.

Thank you for your time.

Futomi Hatano

More information about the whatwg mailing list