xmlgraphics-fop-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Karen Lease <kle...@club-internet.fr>
Subject Properties and Expressions (commits upcoming)
Date Mon, 09 Oct 2000 21:41:53 GMT
Greetings Arved and others,

Way back in August, we had a long discussion about expression evaluation
in FO properties. I had to admit after rereading the March draft that
the way I was interpreting it was not what was written. (You were right;
I was still thinking wishfully of DSSSL.) I'm still not very happy about
what the XSL FO spec says, but have decided that if that's the law (at
least for now), then I'd better live with it.

So I've "borrowed" the expression evaluation logic from XT plus my
additions for units and FO-specific functions and integrated it with the
FOP property setting logic (in the Makers). Actually, there isn't much
left of the original XT code except for the tokenizer and the general
parse architecture. I put most of the changes in a new package called
org.apache.fop.fo.expr, but there are also some changes in the fo
package (Property, PropertyList etc) and some new and slightly modified
classes in the datatypes package. I also changed the arguments to the
Maker.make() call so I had to update the SVG Property.Maker classes too.
I also made a lot of changes in properties.xsl and added a few new
gadgets in properties.xml.

Besides expression handling, the properties.xsl can now handle keyword
equivalents for props like border-width. It handles relative units (ems)
correctly, including inheriting them (line-height, for example). I've
also started to add minimal support for "percent" specifications,
although this won't be tested much until I get back to tables. 

All in all, this makes a lot of changes. It's not totally complete (some
functions like system-font() are unimplemented and I haven't yet done
enough testing to feel comfortable about delivering such a big update.
Some documentation would be a good idea too. But I don't want to wait
too long either.

If anyone has any test files in which they wanted to use expressions and
couldn't, I'd be happy to test them out. The attached "normal.fo" gives
some idea of what is supported.

Also, when I am ready to commit this, I need to figure out how to do it.
There were some votes about me having commit access, but I don't know if
that is a reality, so I haven't tried it out. It wouldn't bother me to
bundle the whole thing up and send it to an experienced committer
either, but that makes a lot of work for someone else and we all have
enough to do.

Arved, do you have any suggestions about how I should proceed?

Cheers from rainy and windy Paris (great for FOP, even I don't want to
ride a bike in this weather)

Karen Lease
View raw message