Subject: Re: one xsl file for two parsings
From: Dan Morrison <dman@xxxxxxxx>
Date: Wed, 05 Apr 2000 03:16:04 +1200
|
Joseph Vallot wrote:
> 1. is it the fastest/best/etc way to do that ?
> 2. how do I filter out some initial nodes (<type> has
> to be dropped)
I'd go
> <?xml version="1.0"?>
> <xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
> version="1.0">
> <xsl:template match="/mymsg">
> <xsl:choose>
> <xsl:when test="./type='new'">
> <NEW>
<xsl:copy-of match="./qty" />
<xsl:copy-of match="./code" />
> </NEW>
> </xsl:when>
> <xsl:when test="./type='cancel'">
> <CANCEL>
<xsl:copy-of match="./qty" />
<xsl:copy-of match="./code" />
> </CANCEL>
> </xsl:when>
> </xsl:choose>
> </xsl:template>
Simple enough? Or too simple for your real-life version?
If the set of posibilities is bigger (either lots of 'types' or lots of
other values), consider
...
> <xsl:when test="./type='new'">
> <NEW>
<xsl:call-template name="other_values">
> </NEW>
> </xsl:when>
<xsl:when test="...">
...
<xsl:template name="other_values">
<xsl:copy-of match="./qty" />
<xsl:copy-of match="./code" />
...
</xsl:template>
...
.dan.
XSL-List info and archive: http://www.mulberrytech.com/xsl/xsl-list
|