On Sep 10, 2005, at 21:33, Simon Pepping wrote:

Hi Simon,

You are asking a lot of questions. To most I have no answer, but I
have one reservation.

On Sat, Sep 10, 2005 at 01:41:05AM +0200, Andreas L Delmelle wrote:
The only downside is that certain information is lost. The tree
structure won't be the structure as specified in the source document,
but will actually correspond to another structure that yields exactly
the same results.

This bothers me. It may hinder proper calculation of property value
inheritance, which follows the tree as given by the user. We do
property refinement on the tree; other than that it is a precise
reflection of the user's fo document. I am reluctant to change that.

I understand your reluctance. I have similar reservations, which is exactly why I'd rather gather more opinions on the matter before proceeding.
Let me explain a bit further...

My idea is inspired by the way XEP performs this kind of normalization. It does so by performing a pre-processing XSL transform on the FO source document --so the actual input for XEP isn't always an exact copy of the tree as defined in the user's document. Since we have no such pre-processing step --and, of course, stealing that idea is out of the question--, the only place we could perform such normalization is precisely in our FOTree.

Besides that, nothing changes WRT hierarchy. The relationships between the elements will stay the same, so inheritance/property refinement shouldn't pose a problem. Almost on the contrary, in a certain way, not performing such normalization and deferring those matters to the layout package seems to have precisely the effect of not being able to correctly refine the properties in the FOTree itself --we'd always have to wait for layout, which in turn seems to contradict the idea of having a FOTree module that doesn't depend on any particular layout engine (if this idea is still relevant, that is...).

IMO, the least the FOTree should be able to provide is the correct initial values for the properties, which becomes next to impossible if the mentioned issues are dealt with only when layout begins.


Cheers,

Andreas

Reply via email to