OASIS Mailing List ArchivesView the OASIS mailing list archive below
or browse/search using MarkMail.

 


Help: OASIS Mailing Lists Help | MarkMail Help

docbook-apps message

[Date Prev] | [Thread Prev] | [Thread Next] | [Date Next] -- [Date Index] | [Thread Index] | [List Home]


Subject: Cannot resolve imagedata element's fileref attribute using modular docbook and XInclude


Title: Cannot resolve imagedata element's fileref attribute using modular docbook and XInclude

Hello all,

I've posted the question below on the DbLaTeX mailing list, but I have a suspicion that my problem might be solved if I had a better understanding of XSL, XInclude, and using xsltproc.

I would greatly appreciate any advice you might provide.

Basic information:
------------------
* Debian 5.0 "Lenny" host machine, all packages up-to-date
* Validating against DocBook XML V4.5 DTD
* dblatex version 0.2.9-3
* $ latex --version
pdfTeX using libpoppler 3.141592-1.40.3-2.2 (Web2C 7.5.6)
kpathsea version 3.5.6
    ...
Compiled with libpng 1.2.27; using libpng 1.2.27
Compiled with zlib 1.2.3.3; using zlib 1.2.3.3
Compiled with libpoppler version 3.00

* $ xsltproc --version
Using libxml 20632, libxslt 10124 and libexslt 813
xsltproc was compiled against libxml 20632, libxslt 10124 and libexslt 813
libxslt 10124 was compiled against libxml 20632
libexslt 813 was compiled against libxml 20632


Problem:
--------
I'm having trouble getting dblatex to locate images.  I believe that the trouble lies someplace with xsltproc not expanding the "fileref" attribute using xml:path.  WARNING, I am *not* an XML or DocBook expert, so you should take any of my suspicions with a large grain of salt - and you may feel free to laugh should I say something that makes no sense :-)

My directory structure looks like:

book/
____| main.xml
____| appendix/
______________|appendix.xml
______________| foo/
___________________| foo.xml
___________________| images/
___________________________|*.png

Book/main.xml uses XInclude to insert book/appendix/appendix.xml, which in turn uses XInclude to insert book/appendix/foo/foo.xml.  Book/appendix/foo/foo.xml contains elements such as:

<mediaobject>
  <imageobject>
    <imagedata fileref="images/image_1.png" format="PNG" />
  </imageobject>
</mediaobject>

If I enter the book/appendix/foo/ directory and execute:
    $ dblatex foo.xml
I have no problems.  Foo.pdf is created, and includes the images I expect it to.

If I am anywhere above the "foo" directory, dblatex reports "Image 'images/image_1.png' not found" and the resultant PDF file does not include the images.

What I've Tried:
----------------
I can sucessfully use xsltproc to create HTML and "chunked" HTML files, as long as I pass the following parameters to it:

  --xinclude
  --param keep.relative.image.uris 0

I've reviewed the XSL Parameters section (5.1) of the DocBook to LaTeX Publishing User Manual for something similar to "keep.relative.image.uris", but have been unsuccesfull.

I've searched and grep'ed through the /usr/share/xml/docbook/stylesheet/dblatex files - but didn't see anything that jumped out at me (admittedly, they are out of my comfort zone).

I've looked into trying to use xmllint or xlstproc to generate an intermediate XML file with completely resovled path names, so I could pipe that to dblatex, but haven't had any luck coming up with the proper XSL file or parameter combination.

I've tried using the "-I" option to point dblatex at additional directories to search for "figures."  I also wrapped some of the <mediaobject> elements in figures - but that didn't seem to make a difference.

I *have* confirmed that setting the fileref attribute to an absolute pathname *does* work.

I've googled a ton and reviewed the dblatex mailing list on SourceForge.  Since I've come up empty, and I can't believe that nobody else has ever structured a document the why I have, my intuition tells me that I am missing something completely obvious.

Can anyone help me understand what is happening and how to fix it?

Best regards,
--mike

--
Michael Erickson
Director Software Products
LOGIC
(612) 436-5118 : desk
(612) 384-1584 : cell
http://www.logicpd.com




[Date Prev] | [Thread Prev] | [Thread Next] | [Date Next] -- [Date Index] | [Thread Index] | [List Home]