RE: XPath error with Xalan
Thanks for the suggestion..that is what I want to do. Unfortunately, just like before this works great in XMLSpy with their default MS XSLT engine, but when I use Xalan, it blows up. It is a new error though. This time it is a NullPointerException. Thanks, Ci-Ci -----Original Message----- From: David Carlisle [mailto:davidc@n...] Sent: Friday, November 05, 2004 8:05 AM To: Thomson, Alisa Cc: xml-dev@l... Subject: Re: XPath error with Xalan Here are two samples of methods I tried: <xsl:if test="Determination[. != '']"> <xsl:apply-templates select="Determination"/> </xsl:if> <xsl:if test="string()"> <xsl:apply-templates select="Determination"/> </xsl:if> Neither of those should generate an Xpath syntax error, but they do different things. the first tests if the string value of any Determination child of the current node is non empty. the second is equivalent to test="string(.)" and tests if the string value of the current node is non empty. so given <foo> <Determination/> </foo> the first form would test false and so not apply templates, but the second would test true as the string value of foo is a newline two spaces and another newline, so would apply templates to the empty Determination child. Note that if there is a possiblility of more than one Determination child most likely neither form does what you want, <foo> <Determination>abc</Determination> <Determination/> </foo> <xsl:if test="Determination[. != '']"> <xsl:apply-templates select="Determination"/> </xsl:if> the test here is true as there is a non-empty Determination so you apply templates to both Determination elements, including the empty one. If you just want to apply templates to non-empty Determination, you dont need an xsl:if, just don't select the ones that you don't want to process: <xsl:apply-templates select="Determination[. != '']"/> David ________________________________________________________________________ This e-mail has been scanned for all viruses by Star. The service is powered by MessageLabs. For more information on a proactive anti-virus service working around the clock, around the globe, visit: http://www.star.net.uk ________________________________________________________________________
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