unitless lengths in mpadded attributes

Can get clarification of these questions in the context of mpadded
attributes, please?

1. Are unitless lengths valid attribute values?
2. Is "0" a special case where no unit is valid?

In the attribute table, the description
'( "+" | "-" )? unsigned-number (("%" pseudo-unit?) | pseudo-unit | unit | namedspace )'
has no "?" following the second set of parentheses, indicating
that there must be something following the unsigned-number.

That seems reasonably clear that the answer to both my questions
is "no", but there are some possible hints elsewhere in the spec
that unitless values might be valid, so I want to check that I am
not missing something.

The default for both lspace and voffset is "0".
I guess it's quite feasible to have a default that is not a string
that can be specified as a valid value, but it feels a little odd.

Would it be clearer to specify the default value as "0em", as it
was in MathML2?

In the text "Each format begins with an unsigned-number, which may
be followed by a % sign (effectively scaling the number) and an
optional pseudo-unit, by a pseudo-unit alone, or by a unit
(excepting %)", would it be clearer to replace "which may be followed" 
with "followed"?

In the text "the resulting length is the product of the number
(possibly including the %) and the following pseudo-unit, unit,
namedspace or the default value for the attribute if no such unit
or space is given", would it be clearer to replace "if no such unit
or space is given" with "if % is specified with no pseudo-unit"? 

http://www.w3.org/Math/draft-spec/chapter3.html#presm.mpadded

Received on Monday, 21 May 2012 21:56:13 UTC