|
Subject: Re: [xsl] FizzBuzz in XSLT 1.0. Help with a 2.0/FXSL solution? From: David Carlisle <davidc@xxxxxxxxx> Date: Wed, 14 Mar 2007 18:09:22 GMT |
Of course the hardest part there is
<xsl:for-each select="xs:integer(substring-before(range,'-')) to
xs:integer(substring-after(range,'-'))">
which is only needed due to the unstructured input.
If the input were
<fizzbuzz>
<start>1</start>
<stop>100</stop>
rather than
<fizzbuzz>
<range>1-100</range>
You could simplify that greatly.
<xsl:stylesheet version="2.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform" xmlns:xs="http://www.w3.org/2001/XMLSchema">
<xsl:output method="text"/>
<xsl:template match="fizzbuzz">
<xsl:value-of separator="" select="
for $i in start to stop
return (' ',$i, test/mod[($i mod @value) = @test])
[not(position() lt last() and . instance of xs:integer)]"/>
</xsl:template>
</xsl:stylesheet>
| Current Thread |
|---|
|
| <- Previous | Index | Next -> |
|---|---|---|
| Re: [xsl] FizzBuzz in XSLT 1.0. He, David Carlisle | Thread | Re: [xsl] FizzBuzz in XSLT 1.0. He, M. David Peterson |
| Re: [xsl] FizzBuzz in XSLT 1.0. He, David Carlisle | Date | Re: [xsl] FizzBuzz in XSLT 1.0. He, M. David Peterson |
| Month |