daveamour
asked on
preceding-sibling
I have a probkem using preceding-sibling
Here is my xml and xslt. I am trying to output the Age and previous age. This is just a contrived example to illustrate an example.
Any ideas?
Thanks
Dave
<?xml version="1.0" encoding="UTF-8"?>
<?xml-stylesheet type="text/xsl" href="C:\Documents and Settings\armoud\Desktop\EE People.xsl t"?>
<TestData>
<item>
<column name="Firstname" value="Fred"/>
<column name="Surname" value="Green"/>
<column name="Age" value="28"/>
<column name="Sex" value="M"/>
<column name="MemberNumber" value="58"/>
</item>
<item>
<column name="Firstname" value="Dave"/>
<column name="Surname" value="Bloggs"/>
<column name="Age" value="38"/>
<column name="Sex" value="M"/>
<column name="MemberNumber" value="28"/>
</item>
<item>
<column name="Firstname" value="Tiffany"/>
<column name="Surname" value="Brown"/>
<column name="Age" value="24"/>
<column name="Sex" value="F"/>
<column name="MemberNumber" value="15"/>
</item>
</TestData>
<?xml version="1.0" encoding="UTF-8"?>
<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
<xsl:output method="html" version="1.0" encoding="UTF-8" indent="yes"/>
<xsl:template match="/TestData/item">
<xsl:variable name="PreviousItem" select="preceding-sibling: :item/colu mn[@name=A ge]/@value "></xsl:va riable>
Current Age: <xsl:value-of select="column[@name='Age' ]/@value"> </xsl:valu e-of><br />
Previous Age: <xsl:value-of select="$PreviousItem"></x sl:value-o f><br />
<hr />
</xsl:template>
</xsl:stylesheet>
Here is my xml and xslt. I am trying to output the Age and previous age. This is just a contrived example to illustrate an example.
Any ideas?
Thanks
Dave
<?xml version="1.0" encoding="UTF-8"?>
<?xml-stylesheet type="text/xsl" href="C:\Documents and Settings\armoud\Desktop\EE
<TestData>
<item>
<column name="Firstname" value="Fred"/>
<column name="Surname" value="Green"/>
<column name="Age" value="28"/>
<column name="Sex" value="M"/>
<column name="MemberNumber" value="58"/>
</item>
<item>
<column name="Firstname" value="Dave"/>
<column name="Surname" value="Bloggs"/>
<column name="Age" value="38"/>
<column name="Sex" value="M"/>
<column name="MemberNumber" value="28"/>
</item>
<item>
<column name="Firstname" value="Tiffany"/>
<column name="Surname" value="Brown"/>
<column name="Age" value="24"/>
<column name="Sex" value="F"/>
<column name="MemberNumber" value="15"/>
</item>
</TestData>
<?xml version="1.0" encoding="UTF-8"?>
<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
<xsl:output method="html" version="1.0" encoding="UTF-8" indent="yes"/>
<xsl:template match="/TestData/item">
<xsl:variable name="PreviousItem" select="preceding-sibling:
Current Age: <xsl:value-of select="column[@name='Age'
Previous Age: <xsl:value-of select="$PreviousItem"></x
<hr />
</xsl:template>
</xsl:stylesheet>
ASKER CERTIFIED SOLUTION
membership
This solution is only available to members.
To access this solution, you must be a member of Experts Exchange.
O'Reillys XSLT book and 5 years experience. The only way comes from doing it, and it's much easier if you can do it in a decent editor like XMLSPy that gives you XPath functionality in an xml doc so you can test your expressions.
Cheers for the points and the grade.
Cheers for the points and the grade.
ASKER
Ok thanks
I'm using Xml Spy so at least I'm on the right path...
I'm using Xml Spy so at least I'm on the right path...
ASKER
How do you learn all this stuff, I find it very unintuitive and books I have tried reading seem difficult too.
Thanks
Dave