|
[XSL-LIST Mailing List Archive Home] [By Thread] [By Date] [Recent Entries] [Reply To This Message] Predicates using current node-set
I have a problem using predicate expressions where I compare an attribute in the node-set to an attribute in the "current node-set". I have problems explaing this, so here's an example: xml file: <?xml version="1.0" encoding="ISO-8859-1"?> <?xml-stylesheet type="text/xsl" href="paytest.xsl"?> <payments> <oldpayments> <oldpayment payno="1" amount="100" ref="a" /> <oldpayment payno="2" amount="200" ref="b" /> <oldpayment payno="3" amount="300" ref="c" /> </oldpayments> <newpayments> <newpayment Payno="3" amount="300" /> <newpayment Payno="4" amount="300" /> </newpayments> </payments> xsl file: <?xml version="1.0" encoding="ISO-8859-1"?> <xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform"> <xsl:output method="html"/> <xsl:template match="/"> <html> <head><title>test</title></head> <body> <xsl:apply-templates select="/payments/newpayments/newpayment" /> </body> </html> </xsl:template> <xsl:template match="/payments/newpayments/newpayment"> Payno: <xsl:value-of select="@Payno"/> Amount: <xsl:value-of select="@amount"/> <xsl:if test="/payments/oldpayments/oldpayment/@payno = @Payno"> Ref: <xsl:value-of select="/payments/oldpayments/oldpayment[@payno=@Payno]/@ref"/> </xsl:if> <br/> </xsl:template> Result in browser: Payno: 3 Amount: 300 Ref: Payno: 4 Amount: 300 I wanted the "ref" attribute to be printed, but I cant work out how to match the oldpayment payno with the newpayment Payno Vendor: Microsoft Vendor URL: http://www.microsoft.com Jonas Nordstrom Sigma Exallon AB XSL-List info and archive: http://www.mulberrytech.com/xsl/xsl-list
|
PURCHASE STYLUS STUDIO ONLINE TODAY!Purchasing Stylus Studio from our online shop is Easy, Secure and Value Priced! Download The World's Best XML IDE!Accelerate XML development with our award-winning XML IDE - Download a free trial today! Subscribe in XML format
|

Cart








