On Nov 16, 2005, at 19:24, Andreas L Delmelle wrote:
On Nov 16, 2005, at 11:51, Luca Furini wrote:
<snip />
There are other properties with a "validity range" and a fallback
value: column-count, initial-page-number, column-number, number-
columns-repeated, number-columns-spanned, number-rows-spanned,
hyphenation-{push, remain}-character-count; only hyphenation-
ladder-count does not have a fallback value in 1.0, so maybe this
was just an oversight.
Note that the fallback value is different, in general, from the
default value, as it is derived from the illegal value by rounding.
I guess we'll have to have a look at all these properties to see
how the fallbacks are dealt with.
<snip/>
I'll look into this as soon as I find some spare time.
I took another look, and none of the mentioned properties (with the
exception of column-number) perform a validity check/provide a
fallback. Haven't checked all applicable FObj's yet to see if the
errors are reported there...
On another note, there are a few other number-properties for which
bogus-values are currently allowed:
- orphans / widows: from the definition, one would say "positive
integer" (?); any value allowed
- reference-orientation: only 7 possible values; any value is allowed.
- grouping-size: zero-or-positive; negatives are allowed
- maximum-repeats: zero-or-positive; negatives are allowed
Since grouping-size and maximum-repeats are applicable to only one or
two types of FO, the fallback could easily be provided when the
property is bound.
For reference-orientation, I'm still doubting... The values are
numeric, but supposed to be treated as a sort of enum. Probably best
off with a tiny custom Maker to avoid code duplication, and catch the
error as early as possible.
For orphans and widows, the Rec doesn't explicitly state what to do
with zero-or-negative values (neither does CSS) --maybe we could
suffice with a warning message here (and a common-sense substitution
with the initial value?)
Cheers,
Andreas