Subject: Re: to draw a table in xsl
From: Vasu Chakkera <vasucv@xxxxxxxxx>
Date: Thu, 17 Sep 2009 10:40:57 +0100
|
Hey AC,
What did u expect the <xsl:message> will do???
<xsl:message> element writes a message to the output. Normally used
for printing debug messages or error messages... you probably want a
value-of select .. to be able to get the value out...
Try this XSL.. Notice the use of Keys..
<?xml version="1.0"?>
<xsl:stylesheet version="1.0"
xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
<xsl:key name="column" match="/root/tabledisplayedcolumns/columnname"
use="text()"/>
<xsl:template match="/">
Table:
<xsl:for-each select = "/root/tablevalues/*[key('column',name())]">
<xsl:value-of select = "."/>
,
</xsl:for-each>
</xsl:template>
</xsl:stylesheet>
2009/9/17 ac <ac@xxxxxxxxxxxxx>
>
> <?xml version="1.0" encoding="UTF-8"?>
> <xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
version="1.0">
>
> <xsl:template match="/">
> <xsl:message>Table</xsl:message>
> <xsl:for-each select="root/tabledisplayedcolumns/columnname">
> <xsl:message>
> <xsl:value-of select="root/tablevalues/*[current() eq
name()]"/>
> </xsl:message>
> </xsl:for-each>
> </xsl:template>
> </xsl:stylesheet>
>
> for example.
>
>
>> How can I achive this in xsl
>>
>>
>> <root>
>> <tablevalues>
>> <column1>100</column1>
>> <column2>101</column2>
>> <column3>102</column3>
>> </tablevalues>
>> <tabledisplayedcolumns>
>> <columnname>column1</columnname>
>> <columnname>column3</columnname>
>> </tabledisplayedcolumns>
>> </root>
>>
>>
>> Output:
>>
>> Table
>> 100
>> 102
>
--
Vasu Chakkera
Numerical Algorithms Group Ltd.
Oxford
www.vasucv.com
--
Vasu Chakkera
Numerical Algorithms Group Ltd.
Oxford
www.vasucv.com
|