XML Editor
Sign up for a WebBoard account Sign Up Keyword Search Search More Options... Options
Chat Rooms Chat Help Help News News Log in to WebBoard Log in Not Logged in
Conferences Close Tree View
+ Stylus Studio Feature Requests (1192)
+ Stylus Studio Technical Forum (14621)
+ Website Feedback (249)
- XSLT Help and Discussion (7625)
-> - XSL-fo and how to line feed th... (1)
-> + Houston we have a problem (2)
-> + XSL-FO PDF generation (2)
-> + StylusStudio - pick XSLT 1.0 b... (6)
-> - Stylus Studio 2010 debugging f... (1)
-> - Drop down menu List / Option M... (1)
-> - XML transformation using Java ... (1)
-> + i can't to find XSLT editor in... (2)
-> - Copy xml input as value of an ... (1)
-> - Remove Name space from the Tab... (1)
-> - CGI formatted URL with name/va... (1)
-> - Problem with counting (1)
-> + for-each loop is only returnin... (3)
-> - sort date but some dates may b... (1)
-> - Entity Conversion (1)
-> - How can I build an xml convert... (1)
-> + Little Help (2)
-> + how do I merge nodes to one sc... (2)
-> - beginner help xslt and xpath (1)
-> - Convert XML Feed to CSV/SQL/XL... (1)
-> - Working with text node. (1)
-> - No Topic (1)
-> - API for XSLT Converter for .NE... (1)
-> - Getting started (1)
-> + saxon sql extensions - mysql a... (2)
-> - How do I copy and create new e... (1)
-> + substring-before and sums (3)
-> + Parsing special characters in ... (2)
-> + Schema - Require attribute in ... (2)
-> - Edit existing XSL files when n... (1)
-> + How can I use one single XSLT ... (2)
-> - Default selection of value in ... (1)
-> - Problem with watermark in pdf ... (1)
-> + XSLT Parameter Values dialog n... (3)
-> + Value of File Name is not acce... (10)
-> - Need help with a complex table... (1)
-> - How to replace all nordic char... (1)
-> - XSLT java heap space error wit... (1)
-> - Table Overflow to next page (1)
-> - Using XSLT 2.0 to define custo... (1)
-> - "standalone" attribute and xs... (1)
-> + Standardizing IP addresses (2)
-> + Programmatically changing page... (6)
-> + Can Stylus generate XSLT if so... (5)
-> + Extraction based on NODE Name. (2)
-> + NO XSLT:WYSIWYG (2)
-> + determine condition at run tim... (2)
-> - How to reduce top margin in ev... (1)
-> + need help on xsl looping (4)
-> - Convert Symbol to Element (1)
-> + Separator -only- between field... (3)
-> + DocBook (9)
-> + First Occurance of Alphabet (2)
-> + XSL:Key and Document (2)
-> + Excel Macro using XSLT (2)
-> + Add missing element and attrib... (2)
-> + XSL: Stop Count at First Match (2)
-> + XSD to EDI (4)
-> + How to access data from nested... (2)
-> + Simple division of XML file (2)
-> - XML to Flat File (1)
-> + Dispalying data whith xsl:for ... (3)
-> - distinct nodes - into 3 column... (1)
-> + Newbie at XML (2)
-> + XSL Not Working (3)
-> + to draw table using xsl (2)
-> + Base64 decoder (5)
-> + How to create a hidden sheet u... (3)
-> + XML Reports (2)
-> + Copying image files from one d... (2)
-> + XML conversion to RSS (2)
-> + Inserting Image (2)
-> + Xml to Pdf using Xsl (2)
-> + Using a parameter (or similar)... (2)
-> + How to avoid creating empty xm... (2)
-> + how to read txt files in xml (2)
-> + Limit records to 4 per page. P... (4)
-> + XSLT Mapping Based on JDK5 (2)
-> + XML Mappin (2)
-> + Format Datetime with xslt (3)
-> + Cell border missing (2)
-> + XSL: Key (not matches) (5)
-> + Loop through each char in stri... (2)
-> + What is the best way to sum va... (3)
-> + xslt sort help (2)
-> + getting the count (2)
-> + XSL dynamic variables (5)
-> + XSL:Key use (3)
-> + Help With Updating Attributes ... (8)
-> + GETTING COUNT AND POSITION usi... (3)
-> - Hi Everyone !! (1)
-> + Graph Traversal (Keep track of... (2)
-> + XSL IF with sum (2)
-> + Param not incrementing (2)
-> + Iterating through value tags (3)
-> + URGENT :::: Remove the name sp... (2)
-> + Pass new param values to ASP O... (2)
-> + Detect Browser Version in XSL (2)
-> + xslt result-document (2)
-> + Unique nodes based on two attr... (3)
-- Previous [181-200] [201-220] [221-240] Next
+ XQuery Help and Discussion (2017)
+ Stylus Studio FAQs (159)
+ Stylus Studio Code Samples & Utilities (364)
+ Stylus Studio Announcements (113)
Topic  
Postnext
Mary JohnsonSubject: Base 64 encoded data embedded in XML
Author: Mary Johnson
Date: 11 Nov 2005 10:52 AM
Question: Is there a way to automate the decoding of base 64 embedded data in XML?

Background: I have an XML file with some of the tags containing base 64 encoded data.

I can manually go in and extract the data and use a decoder to convert from base 64 to binary to get the actual .jpg file, but then need to modify the XML manually to reference the new filename.

I am wondering if there is some software out there that will let me automate this or if there are internal functions I can use to decode on the fly.

I am using Dreamweaver 8 that has advanced XML support, but do not even know if this is possible to do in an automated fashion without writing custom php (which I don't want to do).

The individual XML tag looks like this:

<BinaryData Encoding="Base64">/9j/4AAQSkZJRgABAQEAtAC0AAD/4RJIaHR0cDovL2 ... rest of data removed ...//2Q==</BinaryData>

Postnext
Ivan PedruzziSubject: Base 64 encoded data embedded in XML
Author: Ivan Pedruzzi
Date: 14 Nov 2005 11:30 AM
Hi Mary,

If you need to support both Mozilla and IE you have to generate a physical file for each images.

The attached example shows how to convert base64 text into binary and save on a file using the Saxon XSLT processor.


Hopes this helps
Ivan Pedruzzi
Stylus Studio Team


DocumentEmployeeWithPicture.xsl


DocumentEmployeeWithPicture.xml

Postnext
Mary JohnsonSubject: Base 64 encoded data embedded in XML
Author: Mary Johnson
Date: 14 Nov 2005 10:50 PM
I ran this code in my environment using Dreamweaver Cold Fusion and got the following error:

MM_XSLTransform error.
Transformation Error.
Transforming
java.lang.NoSuchMethodException: For extension function, could not find method java.lang.String.new([ExpressionContext,] ).

The file "Pedruzzi.jpg" gets created but is 0 size.

I think the error is in the following line:

<xsl:variable name="b64" select="b64:new(string(Photo))"/>

Postnext
Ivan PedruzziSubject: Base 64 encoded data embedded in XML
Author: Ivan Pedruzzi
Date: 15 Nov 2005 10:53 AM
The example i posted uses an extension fucntion only available with Saxon as stated.

Which XSLT processor Cold Fusion uses?

Does it support java extension function?

You can use the attached XSLT (xsl-property-test.xsl) to see the XSLT processor name and version.

I also attached a version that uses an open source base64 decoder/encoder that was able to run with different processors: XalanJ 2.5.2, Saxon 6.x and Saxon 8.6.

You will need unpuck base64.zip and configure your CLASSPATh to include the direcotory base64


Hope this helps
Ivan Pedruzzi
Stylus Studio Team


Documentxsl-property-test.xsl


Documentbase64.zip
Open Source base64 encoder/decoder

Postnext
Ivan PedruzziSubject: Base 64 encoded data embedded in XML
Author: Ivan Pedruzzi
Date: 15 Nov 2005 10:58 AM
Originally Posted: 15 Nov 2005 10:56 AM


DocumentEmployeeWithPicture(1).xsl

Postnext
Mary JohnsonSubject: Base 64 encoded data embedded in XML
Author: Mary Johnson
Date: 17 Nov 2005 04:53 PM
I ran your xsl-property-test.xsl using my local Cold Fusion server and found that the Vendor URL is http://xml.apache.org/xalan-j and the product version is Xalan Java 2.4.1. The environment on my shared web host server differs in that the product version is Xalan Java 2.5.1

I have installed the code and am getting the error:

Base64 (Unsupported major.minor version 49.0)

I am assuming this is because you gave me code compatible for XalanJ 2.5.2 and I am below that on both platforms.

How can you ever keep these things synchronized? Should I just try to find a compiled version for my Xalan Java 2.4.1?

Postnext
Ivan PedruzziSubject: Base 64 encoded data embedded in XML
Author: Ivan Pedruzzi
Date: 17 Nov 2005 05:30 PM
Nope, the error is because I compiled base64.java using JDK 1.5. and you are running Java 1.4.

Try the attached version

hope this helps
Ivan Pedruzzi
Stylus Studio Team


Unknownbase64(1).zip
compiled with JDK 1.4

Postnext
Mary JohnsonSubject: Base 64 encoded data embedded in XML
Author: Mary Johnson
Date: 19 Nov 2005 01:17 PM
Ivan, you are awesome! I couldn't have done this without you. Everything is working. I had a huge learning curve on this but your instructions were simple and complete. Thank you very much.

Postnext
Paul MedinaSubject: Base 64 encoded data embedded in XML
Author: Paul Medina
Date: 14 Feb 2007 12:51 AM
Hi Ivan,

I downloaded the open-source file and installed jdk 1.5. I was unable to get IE to convert the sample employee file using the style sheet. It errors out with Base64 does not contain any functions. I have added the directory Base64 to the classpath on my laptop. Any idea what I may be doing wrong?

The test files (xml and xsl) are in c:\dxl and the base64 files are in a subdirectory base64 to that directory. I'm a noob with all this, so any help you can provide would be great.

Thanks!

Posttop
Tony LavinioSubject: Base 64 encoded data embedded in XML
Author: Tony Lavinio
Date: 14 Feb 2007 04:57 PM
There are examples on how to do this with the Stylus Studio
built-in Base64 adapter on our web site.
See http://www.stylusstudio.com/binary_xml.html

   
Download A Free Trial of Stylus Studio 6 XML Professional Edition Today! Powered by Stylus Studio, the world's leading XML IDE for XML, XSLT, XQuery, XML Schema, DTD, XPath, WSDL, XHTML, SQL/XML, and XML Mapping!  
go

Log In Options

Site Map | Privacy Policy | Terms of Use | Trademarks
Stylus Scoop XML Newsletter:
W3C Member
Stylus Studio® and DataDirect XQuery ™are from DataDirect Technologies, is a registered trademark of Progress Software Corporation, in the U.S. and other countries. © 2004-2016 All Rights Reserved.