addFileBase64
Last modified by Outhman Moustaghfir on 2024/02/26 17:12
Introduction
This function decodes a base64 encoded file.
Uses
where :
- node: is the XML node containing the encoded file.
- fileName: file name with extension. ( file.pdf, document.xml ...)
Examples
In this example, we send an XML file and try to decode a file.
the XSL used :
<?xml version="1.0" encoding="windows-1251"?>
<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="2.0" xmlns:ixf="http://www.ixPath.com/Function" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:ix="localFunction">
<xsl:output method="xml" indent="yes"/>
<!-- Beginning of the Translation -->
<xsl:template match="/">
<xsl:variable name="xml">PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiPz4KPGlYRE9DIHhtbG5zOml4Zj0iaHR0cDovL3d3dy5peFBhdGguY29tL0Z1bmN0aW9uIgogICAgICAgeG1sbnM6eHM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDEvWE1MU2NoZW1hIgogICAgICAgeG1sbnM6aXg9ImxvY2FsRnVuY3Rpb24iPgogICA8dGVzdD4yMTIxMk1vcm9jY29DYXNhYmxhbmNhPC90ZXN0Pgo8L2lYRE9DPgo=</xsl:variable>
<iXDOC>
<test><xsl:value-of select="ixf:AddFileBase64($xml , 'NewXML.xml')"/></test>
</iXDOC>
</xsl:template>
</xsl:stylesheet>
<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="2.0" xmlns:ixf="http://www.ixPath.com/Function" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:ix="localFunction">
<xsl:output method="xml" indent="yes"/>
<!-- Beginning of the Translation -->
<xsl:template match="/">
<xsl:variable name="xml">PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiPz4KPGlYRE9DIHhtbG5zOml4Zj0iaHR0cDovL3d3dy5peFBhdGguY29tL0Z1bmN0aW9uIgogICAgICAgeG1sbnM6eHM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDEvWE1MU2NoZW1hIgogICAgICAgeG1sbnM6aXg9ImxvY2FsRnVuY3Rpb24iPgogICA8dGVzdD4yMTIxMk1vcm9jY29DYXNhYmxhbmNhPC90ZXN0Pgo8L2lYRE9DPgo=</xsl:variable>
<iXDOC>
<test><xsl:value-of select="ixf:AddFileBase64($xml , 'NewXML.xml')"/></test>
</iXDOC>
</xsl:template>
</xsl:stylesheet>
and the output will include the file ID created in the database :
<?xml version="1.0" encoding="UTF-8"?>
<iXDOC xmlns:ixf="http://www.ixPath.com/Function"
xmlns:xs="http://www.w3.org/2001/XMLSchema"
xmlns:ix="localFunction">
<test>642ad89203be0522b6ede668</test>
</iXDOC>
<iXDOC xmlns:ixf="http://www.ixPath.com/Function"
xmlns:xs="http://www.w3.org/2001/XMLSchema"
xmlns:ix="localFunction">
<test>642ad89203be0522b6ede668</test>
</iXDOC>
you will find the created file at the work directory. for our case :
<?xml version="1.0" encoding="UTF-8"?>
<iXDOC xmlns:ixf="http://www.ixPath.com/Function"
xmlns:xs="http://www.w3.org/2001/XMLSchema"
xmlns:ix="localFunction">
<test>21212MoroccoCasablanca</test>
</iXDOC>
<iXDOC xmlns:ixf="http://www.ixPath.com/Function"
xmlns:xs="http://www.w3.org/2001/XMLSchema"
xmlns:ix="localFunction">
<test>21212MoroccoCasablanca</test>
</iXDOC>