Thanks to everyone for your comments.
This has come up before and I entirely sympathize. I have often
expressed the same reservations about the whole DSSSL/XSLFO model.
If anything, I would like to cast my ballot to vote for a complete set of
programming features to be implemented in the XSL-FO standard. Do you think
this is possible in principle, perhaps in a next version?
*do* have the multi-switch/multi-case stuff in XSL FO (6.9.3 ff),
This would not solve my problem - those features allow to choose among
sub-trees, but still there are no ways to query any element about its
parameters (fonts, dimensions, colors) and to base the choice on that
information.
Still, the presense of _choice_ of any sort in the current FO standard is an
indication that, in principle, programming elements are not totally alien to
this language and, if introduced, would not "break" its ideology in any way.
Consider this: Nowadays many XML documents go down a three-step ladder, from
XML via XSLT to FO, and from FO (most often) via some FO processor to PDF.
Now, the first (XSLT) and the last (PDF) steps both have complete
programming capabilities (PDF is effectively Postscript which allows for all
sorts of math, loops, etc.). Why, then, the middle step - FO - is deprived
of this completely? I see no real reason for this.
I think it is perhaps reasonable to require that a very low-level language
be absolutely static and declarative without any algorithmic stuff. But
certainly XSL FO is not _that_ low-level for this to apply. You _can_ and
_do_ go down from XSL FO to a still lower-level representation, and for this
transition to be efficient, XSL FO must be fully programmable.
I think the jury is out. We need more experience in doing real-world
design using FO.
I, for one, would be glad to try re-building some of my TeX macros in XSL to
use in some very real-world projects, but the static nature of XSL FO makes
me doubt if this is possible at this stage.
________________________________________________________________________
Get Your Private, Free E-mail from MSN Hotmail at http://www.hotmail.com
XSL-List info and archive: http://www.mulberrytech.com/xsl/xsl-list