Oops..I wasn’t thinking. That will only work if all your images are svg 
files…you’ll errors asking it to parse binary files :-)

Sorry for the noise,
David

From: Cramer, David W (David) [mailto:[email protected]]
Sent: Wednesday, October 20, 2010 4:13 PM
To: chris snow
Cc: [email protected]; Jim Campbell
Subject: RE: [docbook] how to throw error if imagedata not found

Hi Chris,
Btw, I ran across a potentially better answer to your question (depending on 
the behavior of  your xslt processor):
http://www.dpawson.co.uk/xsl/sect2/N2602.html#d3859e19

David

From: Cramer, David W (David) [mailto:[email protected]]
Sent: Wednesday, October 13, 2010 11:42 AM
To: Jim Campbell; chris snow
Cc: [email protected]
Subject: RE: [docbook] how to throw error if imagedata not found

Hi Chris,
Here’s what we do:

The build runs an xslt that produces a list of images used. Ant then checks to 
make sure all are the images available and kills with a useful error message 
the build if any are missing. To avoid an annoying build/fail/fix/repeat cycle, 
the error message shows all missing images rather than only listing the first 
missing image it finds.

I think to do something like this within the xslt would require that you write 
an extension/call out to java.

David

From: [email protected] [mailto:[email protected]] On Behalf Of Jim 
Campbell
Sent: Wednesday, October 13, 2010 11:27 AM
To: chris snow
Cc: [email protected]
Subject: Re: [docbook] how to throw error if imagedata not found

Hi there, Chris,
On Wed, Oct 13, 2010 at 9:16 AM, chris snow 
<[email protected]<mailto:[email protected]>> wrote:
Is it possible for an error to be thrown during processing if a file
referred to by imagedata is not found?

   <mediaobject>
     <imageobject>
       <imagedata fileref="../../images/coding-cycle.png"/>
     </imageobject>
   </mediaobject>

Many thanks,

Chris
It might not be exactly what you are looking for, but one option would be to 
include the image via an xinclude mechanism, and then include a xinclude 
fallback.  It might go something like this:

   <mediaobject>
     <imageobject>
       <xi:include fileref="../../images/coding-cycle.png">
         <xi:fallback>Image file is unavailable.</xi:fallback>
       </xi:include>
     </imageobject>
   </mediaobject>

You would need to use a DTD or schema (or at least a DTD fragment) that allows 
for use of xinclude.

I hope this helps,

Jim

Reply via email to