-----Original Message-----
From: 3rett 3onfield
<snip />
<?xml version="1.0" encoding="UTF-8"?>
<xsl:stylesheet version="1.0"
xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
<xsl:output method="text" version="1.0" encoding="UTF-8" indent="yes"/>
<xsl:template match="Root">
<xsl:apply-templates select="MapSecuritiesResult"/>
</xsl:template>
Two ways to correct this here:
- either apply-templates selecting 'MapSecuritiesResult/Security'
- insert a new template matching 'MapSecuritiesResult' and fire templates
from there
In the first case, you can select the desired nodes at once like
<xsl:apply-templates
select="MapSecuritiesResult/Security[Outcome='Success']" />
<xsl:template match="Security">
<xsl:copy>
<xsl:apply-templates select="Outcome[Success]"/>
Then you can replace this by:
<xsl:apply-templates />
But if you want the child elements to be output as XML elements you'll have
to define matching copy-templates for all child nodes, or they'll simply be
output as text nodes in the result.
Alternately, define the template as:
<xsl:template match="Security">
<xsl:copy-of select="." />
</xsl:template>
Which will simply copy the matching Security nodes to the result document.
Hope this helps!
Cheers,
Andreas
XSL-List info and archive: http://www.mulberrytech.com/xsl/xsl-list