[XSL-LIST Mailing List Archive Home] [By Thread] [By Date]

RE: [xsl] following sibling attribute


Subject: RE: [xsl] following sibling attribute
From: Sripriya Venkataraman <Sripriya.Venkataraman@xxxxxxxxxxxxxxx>
Date: Mon, 29 Apr 2002 12:18:39 -0700

The attributes could be different. I do not know what the attribute names
are ...

What I have to do is look for the CHANNELRESULTS element and output in the
below format.
Attribute Name	Value of attribute from all channels separated by tab

Thanks,
Priya
X 323


-----Original Message-----
From: Michael Kay [mailto:michael.h.kay@xxxxxxxxxxxx]
Sent: Monday, April 29, 2002 12:12 PM
To: xsl-list@xxxxxxxxxxxxxxxxxxxxxx
Subject: RE: [xsl] following sibling attribute


This is a very simple transformation, and you don't need to use preceding or
following sibling. When processing the parent of the <CHANNELRESULTS>
elements, do

tr
for-each CHANNELRESULTS
  td
    value-of @channel
  /td
/for-each
/tr

tr
for-each CHANNELRESULTS
  td
    value-of @ControlInhibitorRFU
  /td
/for-each
/tr

and so on.

Michael Kay
Software AG
home: Michael.H.Kay@xxxxxxxxxxxx
work: Michael.Kay@xxxxxxxxxxxxxx

> -----Original Message-----
> From: owner-xsl-list@xxxxxxxxxxxxxxxxxxxxxx
> [mailto:owner-xsl-list@xxxxxxxxxxxxxxxxxxxxxx]On Behalf Of Sripriya
> Venkataraman
> Sent: 29 April 2002 17:28
> To: 'xsl-list@xxxxxxxxxxxxxxxxxxxxxx'
> Subject: [xsl] following sibling attribute
>
>
> Hi,
>
> I have the following XML that I am trying to convert into
> text using XSL.
>
> <CHANNELRESULTS Channel="1" ControlInhibitorRFU="140.88"
> BaselineRFU="232.04" WidthAtHalfHeight="16.90" NoiseAvg="242.10"
> NoiseStdev="6.90" InhibitionNoiseAvg="12.94"
> InhibitionNoiseStdev="4.30">
> <CHANNELRESULTS Channel="2" ControlInhibitorRFU="141.91"
> BaselineRFU="376.62" WidthAtHalfHeight="14.50" NoiseAvg="393.22"
> NoiseStdev="13.71" InhibitionNoiseAvg="11.48"
> InhibitionNoiseStdev="5.58">
> <CHANNELRESULTS Channel="3" ControlInhibitorRFU="162.61"
> BaselineRFU="454.27" WidthAtHalfHeight="14.80" NoiseAvg="472.27"
> NoiseStdev="15.29" InhibitionNoiseAvg="10.91"
> InhibitionNoiseStdev="2.87">
>
> I want the text output as:
>
> Channel			1		2		3
> ControlInhibitorRFU	140.88	141.91	162.61
> BaselineRFU			232.04	376.62	454.27
> ...
>
> How do I select all the attributes from the preceding or
> following nodes ?
> What am I doing wrong ??
>
> 	<xsl:template match="CHANNELRESULTS">
> 		<xsl:if test="position() = last()">
> 		<xsl:for-each select="@*">
> 			<xsl:value-of select="."/>
> 			<xsl:value-of
> select="preceding::node()/name(.)"/>
> 		</xsl:for-each>
> 		</xsl:if>
> 	</xsl:template>
>
> Thanks,
> Priya
>
>
>  XSL-List info and archive:  http://www.mulberrytech.com/xsl/xsl-list
>


 XSL-List info and archive:  http://www.mulberrytech.com/xsl/xsl-list

 XSL-List info and archive:  http://www.mulberrytech.com/xsl/xsl-list



Current Thread
Keywords
xml