From: Tony G. <Ton...@Su...> - 2005-09-09 20:45:57
|
Stefan Seefeld <se...@sy...> writes: > Here are some more observations when processing fo:external-graphic > elements: > > 1) The 'src' attribute is an url, meaning it has to be resolved > relative to the url base of the current node it was found in. > However, xmlroff tries to read it as a file, i.e. relative to > the current working directory (for example in fo-image.c:236). > Shouldn't something like xmlBuildURI() be used to actually > construct the correct absolute filename ? Your observations are correct. I have been wondering what to do about that, and about xml:base attributes, and about http URIs. I will look into xmlBuildURI(). > > 2) I now get this error: > > > (process:7561): libfo-CRITICAL **: Expression evaluation error: Expression not completely evaluated: > ':image/svg+xml' > Object path: > /FoTree[1]/root[1]/page-sequence[3]/flow[1]/FoBlockBlock[3]/FoBlockLayout[1]/external-graphic[1] > > (process:7561): libfo-WARNING **: Unsupported property: (null) > > My external-graphic element contains an attribute: > > content-type="content-type:image/svg+xml" > > and it seems as if xmlroff doesn't understand that. What is > not clear to me is whether it doesn't understand the 'image/svg+xml' > type, or whether it doesn't understand the 'content-type' format at all. Section 5.9 of the XSL 1.0 specification says: All property value expressions in attributes within an XSL stylesheet can be expressions. except that patently some of them can't be. content-type will need yet another special expression parser, and should be added to libfo-compat.xsl until that happens. > 3) When I remove that attribute alltogether xmlroff will > seemingly run forever (well, at least I had to kill it > after a long while). I didn't have a close look into > the call stack to find out what it was doing then, though. Sorry, no quick answer for that one since I haven't seen it before. I doubt that it relates specifically to removing the attribute since the attribute currently isn't used. Regards, Tony. |