В соответствии со спецификацией и табуляция (U + 0009), и пробел (U + 0020) считаются «символами пробела» , которые могут использоваться для разделения токенов.
Так с чего вы взяли, что это незаконно в этом контексте? Особенно учитывая, что пример 6.3 проясняет, что он действителен:
Пример 6.3. Разделительные пробелы
-·foo:→·bar
- -·baz
-→baz
(·
обозначает пробел (U + 0020), а →
обозначает символ табуляции (U + 0009)).