Reference to "Alphabetic" in 7.17.2 letter-spacing (XSL 1.1 CR)

I've just stumbled over something in the spec. 7.17.2 letter-spacing (in
XSL 1.1 CR, similar in XSL 1.0) mentions that letter-spacing is applied
in halves before and after every character that is classified as
"Alphabetic" in the Unicode database. This does not include characters
like "-" (002D) or "/" (002F). Assume an fo:block which allows for
letter-spacing that contains the text "XSL-FO". Between "S" and "L", you
get two half letter-spaces (together 1 letter-space). Between "L" and "-",
you get only one half letter-space if you strictly follow the spec. This
is not quite what I would expect and not what various layouters
currently do (Apache FOP, two commercial FO implementations I checked,
OpenOffice 2.0 and Word 2003).

Am I missing something or is this a problem in the spec?

For quick reference, here's the beginning of the character ranges making
up "Alphabetic" characters (from DerivedCoreProperties.txt, v4.1.0):

# Derived Property: Alphabetic
#  Generated from: Lu+Ll+Lt+Lm+Lo+Nl + Other_Alphabetic

0041..005A    ; Alphabetic # L&  [26] LATIN CAPITAL LETTER A..LATIN CAPITAL LETTER Z
0061..007A    ; Alphabetic # L&  [26] LATIN SMALL LETTER A..LATIN SMALL LETTER Z
00AA          ; Alphabetic # L&       FEMININE ORDINAL INDICATOR
00B5          ; Alphabetic # L&       MICRO SIGN
00BA          ; Alphabetic # L&       MASCULINE ORDINAL INDICATOR
00C0..00D6    ; Alphabetic # L&  [23] LATIN CAPITAL LETTER A WITH GRAVE..LATIN CAPITAL LETTER O WITH DIAERESIS
00D8..00F6    ; Alphabetic # L&  [31] LATIN CAPITAL LETTER O WITH STROKE..LATIN SMALL LETTER O WITH DIAERESIS
00F8..01BA    ; Alphabetic # L& [195] LATIN SMALL LETTER O WITH STROKE..LATIN SMALL LETTER EZH WITH TAIL

Thanks,
Jeremias Maerki

Received on Friday, 3 March 2006 10:33:02 UTC