<Apartment> <Room number="1" length="15" Height = "12"/> <Room number="1" length="17" Height = "13"/> <Room number="1" length="13" Height = "19"/> <Room number="2" length="15" Height = "12"/> <Room number="2" length="13" Height = "15"/> </Apartment> Required Output XML should be <Room> <Number>1</Number> <SizeList> <Size> <length>15</length> <Height>12</Height> </Size> <Size> <length>17</length> <Height>13</Height> </Size> <Size> <length>13</length> <Height>19</Height> </Size> </SizeList> <Number>2</Number> <SizeList> <Size> <length>15</length> <Height>12</Height> </Size> <Size> <length>13</length> <Height>15</Height> </Size> </SizeList> </Room>
<xsl:for-each select="//Room> <Number> <xsl:value-of select="@Number"/> // assigning value number to value <xsl:variable name="val" select="@Number"/> </Number> <xsl:for-each select="//Room> //checking if variable value and number are equal <xsl:if test="$val = @Number"> <xsl:value-of select="@length"/> <xsl:value-of select="@height"/> </xsl:for-each> </xsl:for-each>
<Room> <Number>1</Number> <SizeList> <Size> <length>15</length> <Height>12</Height> </Size> <Size> <length>17</length> <Height>13</Height> </Size> <Size> <length>13</length> <Height>19</Height> </Size> </SizeList>
var
This content, along with any associated source code and files, is licensed under The Code Project Open License (CPOL)