On Jan 19, 2007, at 13:11, Adrian Cumiskey wrote:
Hi,
Thanks for the investigation (and the patch).
snip /
But this doesn't fix the SERERE error messages ... I am still
learning FO and don't understand all the layout stuff yet so I'm a
little hesitant to go in and try and fix this myself. The error
output FOText w/o Block ancestor resides in this method in
org.apache.fop.fo.FObjMixed.
snip /
Wrapper is a neutral object container and should be allowed where
#PCDATA, %block;, or %inline are (see http://www.w3.org/TR/xsl/
#d0e6532).
Hmm, nasty case. Strictly speaking, the fo:wrapper contains a few
text-nodes (albeit whitespace only). Those text-nodes would be
illegal according to the Rec:
An fo:wrapper is only permitted to have children that would be
permitted to be children of the parent of the fo:wrapper...
The fo:flow is the parent, so the fo:wrapper may only contain (%
block;)+.
The white-space nodes in the fo:flow are simply ignored. Flow does
not subclass FObjMixed, and thus does not implement a characters()
event...
I'll dig into this in the weekend.
Cheers,
Andreas