[Bug 19207] i18n-ISSUE-194: Multiple sequential rt elements


--- Comment #1 from Erika Doyle Navara <erika.doyle@microsoft.com> ---
I walked the following markup through the ruby algorithm:

<ruby>BASE<rt>annotation 1<rt>annotation 2</ruby>

. . . and the algorithm seems to imply that the 2nd annotation be associated
with the "BASE" text, rather than an empty text node. Here is a summary of the

1) Follow steps 1 through 16 (nothing really happens yet except initializing
     index == 1

2) Step 17 sends us back to "base mode" (step 13), but this time index-th node
is a <rt> element, for which we run "set the current base text" and then jump
to "annotation mode" (step 18).
   index == 1
   current base text is "BASE"

3) Annotation mode (step 18) then will "push a ruby annotation", where
"annotation 1" is associated with current base text ("BASE"). We then jump to
"annotation mode increment" (step 21). At end of step 21:
 index == 1
 current base text is "BASE"
 lookahead index == 2

4) Continuing on, step 23 has us set index equal to lookahead index because the
next node is another <rt> element. We then enter "annotation mode" again (step 
  index == 2
  current base text is "BASE"
  lookahead index == 2

5) Step 18 has us "push a ruby annotation" again, where we associate the
annotation range "annotation 2" with current base text, which has not changed
from "BASE".

Unless there is a flaw in my logic, I propose we change the description for rt
element to conform to the implications of the algorithm (rather than the other
way around), as this option requires the least amount of change to the spec. 

Here is the proposed change (staged for review):


It changes this part of the spec:


You are receiving this mail because:
You are on the CC list for the bug.
You reported the bug.

Received on Wednesday, 2 January 2013 22:36:22 UTC