xsl-list
[Top] [All Lists]

Sibling access in XSL !

2004-09-23 14:57:14
Hi,

I have got a simple XML like this which has some information about fruits

----------------------------------------------------------------------------------------------------
<?xml version="1.0" encoding="UTF-8" standalone ="yes"?>
<FRUIT>
<IDENTIFICATION>
  <NAME>APPLE</NAME>
</IDENTIFICATION>

<APPEARANCE>
  <COLOR>RED</COLOR>
</APPEARANCE>

<STORAGE>
  <TEMP>STORE APPLES UNDER 20 DEGREE</TEMP>
</STORAGE>

<IDENTIFICATION>
  <NAME>GRAPE</NAME>
</IDENTIFICATION>

 <APPEARANCE>
  <COLOR>BLACK</COLOR>
</APPEARANCE>

<STORAGE>
  <TEMP>STORE GRAPES UNDER 30 DEGREE</TEMP>
</STORAGE>

</FRUIT>
----------------------------------------------------------------------------------------------------


When i ran the above XML with the following XSL and Xalan parser,

----------------------------------------------------------------------------------------------------
<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform"; version="1.0">
 <xsl:template match="FRUIT">
   <HTML>
     <HEAD><TITLE>XSL TEST</TITLE></HEAD>
     <BODY>
       <TABLE>
         <xsl:apply-templates select="IDENTIFICATION"/>
         <xsl:apply-templates select="APPEARANCE"/>
         <xsl:apply-templates select="STORAGE"/>
       </TABLE>
     </BODY>
    </HTML>
 </xsl:template>

 <xsl:template match="IDENTIFICATION">
   <TR><TD><xsl:value-of select="NAME"/></TD></TR>
 </xsl:template>

 <xsl:template match="APPEARANCE">
   <TR><TD><xsl:value-of select="COLOR"/></TD></TR>
 </xsl:template>

 <xsl:template match="STORAGE">
   <TR><TD><xsl:value-of select="TEMP"/></TD></TR>
 </xsl:template>
</xsl:stylesheet>
----------------------------------------------------------------------------------------------------


I got the output as :

----------------------------------------------------------------------------------------------------
APPLE
GRAPE
RED
BLACK
STORE APPLES UNDER 20 DEGREE
STORE GRAPES UNDER 30 DEGREE
----------------------------------------------------------------------------------------------------


But i need the output as


----------------------------------------------------------------------------------------------------
APPLE
RED
STORE APPLES UNDER 20 DEGREE

GRAPE
BLACK
STORE GRAPES UNDER 30 DEGREE
----------------------------------------------------------------------------------------------------
i.e the details of apples appearing first followed by grape.


Please let me the know the ways of doing this - to identify the following node and process accordingly.


Regards,
Raj

_________________________________________________________________
Movies, music, celeb news. Stay in the loop. http://www.msn.co.in/cinema/ With MSN Entertainment!



<Prev in Thread] Current Thread [Next in Thread>