1

Below is the xml input:

    <?xml version="1.0" encoding="utf-8"?>
    <Message>Hello</Message>

I am serializing above xml using dp:serialize element like below

<xsl:template match="/">
    <xsl:variable name="input">
      <dp:serialize select="/" omit-xml-decl="yes"/>
    </xsl:variable>
</xsl:template>

Now I want to deserialize the same data inside anoter xslt.How to proceed with this.

V Reddy
  • 11
  • 5

3 Answers3

0

According to https://www.ibm.com/support/knowledgecenter/SS9H2Y_7.1.0/com.ibm.dp.doc/parse_element.html there is a corresponding dp:parse element so you can do <dp:parse select="$your-xml-data"/>.

Martin Honnen
  • 160,499
  • 6
  • 90
  • 110
0

dp:parse is available to you as either an extension element:

<xsl:variable name="parsed-nodeset">
    <dp:parse select="xmlstring"/>
</xsl:variable>

or as an extension function:

<xsl:variable name="parsed-nodeset" select="dp:parse(xmlstring)"/>

In either case, the xmlstring should resolve to an xs:string containing your XML. Both the element and function versions of dp:parse have an optional parameter that tells DataPower that the string should be treated as a Base64-encoded copy of your XML:

<dp:parse select="b64string" encoding="base-64"/>

dp:parse(b64string, 'base-64')
bjimba
  • 928
  • 8
  • 13
0

Your input

XML : Hello

Serialize :

<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform" xmlns:dpfunc="http://www.datapower.com/extensions/functions" xmlns:dp="http://www.datapower.com/extensions" extension-element-prefixes="dp" exclude-result-prefixes="dp dpconfig">
    <xsl:output method="xml" version="1.0" encoding="UTF-8" indent="yes" omit-xml-declaration="yes"/>
    <xsl:template match="/">
        <xsl:variable name="input">
            <dp:serialize select="/" omit-xml-decl="yes"/>
        </xsl:variable>
    </xsl:template>
</xsl:stylesheet>

Deserialize :

<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform" xmlns:dpfunc="http://www.datapower.com/extensions/functions" xmlns:dp="http://www.datapower.com/extensions" extension-element-prefixes="dp" exclude-result-prefixes="dp dpconfig">
    <xsl:output method="xml" version="1.0" encoding="UTF-8" indent="yes" omit-xml-declaration="yes"/>
    <xsl:template match="/">
        <xsl:variable name="Ouput" select="dp:parse($input)"/>>
    </xsl:template>
</xsl:stylesheet>
sreevathsa a
  • 149
  • 13