There are many ways in XSLT you can do this. My preference would be to use a modified identity template, where you match upon the text nodes and replace the values you want replaced.
Code: Select all
<!-- XSLT 3.0: copies everything, unless matched -->
<xsl:mode on-no-match="shallow-copy" />
<!-- only match text nodes, because that's what we want to change here -->
<xsl:template match="text()">
<xsl:value-of select="replace(., 'DC19DAKHN|DC19D0000', 'MN019015J')" />
</xsl:template>
The above code works with any XSLT 3.0 processor, like Saxon or Exselt. If you can't use an XSLT 3.0 processor and are stuck with 2.0, replace the
xsl:mode declaration with an identity template.
HTH,
Abel Braaksma
http://Exselt.net, a streaming XSLT 3.0 processor