469,366 Members | 2,243 Online
Bytes | Developer Community
New Post

Home Posts Topics Members FAQ

Post your question to a community of 469,366 developers. It's quick & easy.

image and binary data

I, guys.

I've embeded an image into a xml file, something like that:
<display type="picture" mime="image/png" name = "mosaico6.png">
<![CDATA[ ....my binary data ... ]]>
</display>

Now, I want to display it with a XSL Transformation, but my code don't work:
<display>

<xsl:attribute name="mime">
<xsl:value-of select="@CDATA"/>
</xsl:attribute>
</display>

Can, anyone help me?

thanks in advance.
Maurizio.

Jul 20 '05 #1
9 9453
On 26/01/2004, around 16:58, Maurizio Penna wrote:

MP> Now, I want to display it with a XSL Transformation
A quick search of google suggests you can't although I only spend a
minute or 2 looking. You might find more there is some discussion
about doing almost exactly what you're talking about here
http://lists.w3.org/Archives/Public/...3Jul/0024.html

--
Stuart
The problem with asking other people for their opinions is that they
frequently give them!

Jul 20 '05 #2

"DFN-CIS NetNews Service" <sh******@estatecomputers.com> ha scritto nel
messaggio news:19***********************@estatecomputers.com ...
On 26/01/2004, around 16:58, Maurizio Penna wrote:
A quick search of google suggests you can't although I only spend a
minute or 2 looking.


Thanks for the help.
I've spended more than 2 minutes on googles to search something. Your link
don't solve my problem.

I'm sorry for my poor english. so I rewrite my problem:
I must display an image that lives into the xml file, in a CDATA section.
And I must use a xslt files to display it. I don't now how to say to the
xslt file that my image is into the CDATA section.

For your help, I invite you to see this article: Embed binary data in XML
documents three ways. At
http://www-106.ibm.com/developerwork...ary/index.html (that
I've founded with a google's search).
The second way is my goal, but I don't know, how to construct the xslt file
(Listing 5. Output format 2: agentproduct2.xml) to visualize the xml file in
IE.

Regards,
Maurizio.
Jul 20 '05 #3
On 26/01/2004, around 09:24, Maurizio Penna wrote:

MP> For your help, I invite you to see this article: Embed binary data in XML
MP> documents three ways.
In that document you are pointed at the file
http://www-106.ibm.com/developerwork.../binaryxml.zip
which contains all that was used to generate the example. The author
seems to use some Java code to do the work. Maybe you'll find the
answers there.
--
Stuart Why is there so much month left at the end of the money?

Jul 20 '05 #4
In article <ne********************@listsrv01.csi.it>,
Maurizio Penna <ma********************@hotmail.com> wrote:

% I'm sorry for my poor english. so I rewrite my problem:
% I must display an image that lives into the xml file, in a CDATA section.

You have a problem here. There are certain characters which are likely
to appear in your image, but which are not permitted in an XML file.
It doesn't matter whether you put CDATA around them or not -- the
characters are simply not allowed, and there's nothing you can do about
it. You can't even use a character reference (� is not permissible,
for instance). You need to convert to an ascii format when you're embedding
binary data.

% And I must use a xslt files to display it. I don't now how to say to the
% xslt file that my image is into the CDATA section.

XSLT doesn't know, and shouldn't be able to know, when you're using a CDATA
section. You need to identify your data by the element of which it's part.
Having said that, XSLT can be used to extract the image data from your
original file, but it can't do much with it -- it might be able to
convert it back to binary format given enough work, but it certainly can't
display it, and in XSLT 1.0 it can't write each image to a separate file,
if there's more than one image in the XML file. It doesn't sound like it's
an appropriate or useful tool for your problem.

% For your help, I invite you to see this article: Embed binary data in XML
% documents three ways. At
% http://www-106.ibm.com/developerwork...ary/index.html (that

I glanced briefly at this article, and I'd say it's not worth reading.

What you want to do, and what the author of the article is actually
doing in his CDATA example (Listing 5), is to convert the binary data into
MIME base 64 encoding. This is a text format which can be included anywhere
text is allowed in an XML document. No CDATA section is required.

When you generate your XML file, you convert the image to mime base64
(there are libraries for doing this all over the place -- which one you
use depends on what language you're working with), then include the
resulting text like any other text.

<image>/9j/4AAQSkZJRgABAgEASABIAAD/2wBDABALCwsMCxAMDBAXDw0PFxsUEBAUGx8XFxcXFx8R
DAwMDAwMEQwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAz/2wBDAREPDxETERUSEhUUDg4O
...
RqhJSQesx30juD8TsA/ulVPz8zfzTU62+zT6VrKK2tt6IiAscn3uVPdSYPUtc17m4MLCx L8w
IPN96Xwx5kLyvsMg+f5Qb/shHSPEi7w9DGw/4wIDDGzoOkAGxQ7RSQP/2Q==
</image>

when you want to display the image, you get the content of <image>,
convert it back to binary format, and pass that to the routines that
display the image.
--

Patrick TJ McPhee
East York Canada
pt**@interlog.com
Jul 20 '05 #5
On 27/01/2004, around 16:12, Patrick TJ McPhee wrote:

PTM> when you want to display the image, you get the content of <image>,
PTM> convert it back to binary format, and pass that to the routines that
PTM> display the image.
Isn't it possible, say, to generate an multipart HTML document that
has base64 bits that can be referred to an displayed directly? Or is
that just a mail thing for attachments?

--
Stuart
Ladies, don't forget the rummage sale. It is a good chance to get rid
of those things not worth keeping around the house. Bring your
husbands.

Jul 20 '05 #6
In article <15**********************@estatecomputers.com>,
DFN-CIS NetNews Service <sh******@estatecomputers.com> wrote:
% On 27/01/2004, around 16:12, Patrick TJ McPhee wrote:
%
% PTM> when you want to display the image, you get the content of <image>,
% PTM> convert it back to binary format, and pass that to the routines that
% PTM> display the image.
% Isn't it possible, say, to generate an multipart HTML document that
% has base64 bits that can be referred to an displayed directly? Or is
% that just a mail thing for attachments?

multipart mime is purely a mail thing. If one of the parts is html,
and if you use a mailer which can display it and resolve <img> tags
to attachments, then you can do that. If you are not writing the code
to process the XML file, you need to embed the image however the code
that processes it wants it embedded. XML doesn't inherently have any
image processing capabilities.
--

Patrick TJ McPhee
East York Canada
pt**@interlog.com
Jul 20 '05 #7
On 28/01/2004, around 17:00, Patrick TJ McPhee wrote:
PTM> XML doesn't inherently have any
PTM> image processing capabilities.
No, I appreciate that, I was thinking more in terms of HTML which
might be the final output from the XSL transform.

--
Stuart
It is generally inadvisable to eject directly over the area you just
bombed. - U.S. Air Force Manual

Jul 20 '05 #8
In article <83**********************@estatecomputers.com>,
DFN-CIS NetNews Service <sh******@estatecomputers.com> wrote:
% On 28/01/2004, around 17:00, Patrick TJ McPhee wrote:
% PTM> XML doesn't inherently have any
% PTM> image processing capabilities.
% No, I appreciate that, I was thinking more in terms of HTML which
% might be the final output from the XSL transform.

In the specific case of html, you might be able to use the data:
url described in RFC 2397. For instance, you can have

<img src='data:image/jpeg;base64,/9j/4AAQSkZJRgABAgEASABIAAD/7RJC...
...
T8Md5MeU9GCbz+SbX7k44U7Crun4Kin/ACpIXTqKIOElMUk+iSKn/9k='>

and if your original XML file has the data as a base-64 encoded
jpeg file, xslt can be used to generate this. It will work with some
browsers, but not others.
--

Patrick TJ McPhee
East York Canada
pt**@interlog.com
Jul 20 '05 #9
On 29/01/2004, around 08:58, Patrick TJ McPhee wrote:

PTM> In the specific case of html, you might be able to use the data:
PTM> url described in RFC 2397.
Cool. I'll give that a go.

PTM> It will work with some browsers, but not others.
OK.

TVM.

--
Stuart
Sea captains don't like crew cuts.

Jul 20 '05 #10

This discussion thread is closed

Replies have been disabled for this discussion.

Similar topics

3 posts views Thread by dave | last post: by
3 posts views Thread by den 2005 | last post: by
2 posts views Thread by Ed | last post: by
1 post views Thread by CARIGAR | last post: by
1 post views Thread by Marylou17 | last post: by
By using this site, you agree to our Privacy Policy and Terms of Use.