|
[XSL-LIST Mailing List Archive Home] [By Thread] [By Date] [Recent Entries] [Reply To This Message] Re: getting the last value of a nodeset
Prasad Akella wrote:
hiaha, sorry didnt mean to change your question....sometimes folks get confused this is easier.....u need a tail like function TEST XML <?xml version="1.0" encoding="UTF-8"?> <test xmlns:xforms='http://www.example.org/xforms'> <xforms:bind nodeset="/Exam/ExamMetaData/Title"/> </test> TEST XSLT <?xml version="1.0" encoding="UTF-8"?> <xsl:stylesheet version = '1.0' xmlns:xsl='http://www.w3.org/1999/XSL/Transform' xmlns:xforms='http://www.example.org/xforms'> <xsl:output method="xml" indent="yes" /> <xsl:variable name="variable" select="/test/xforms:bind/@nodeset"/> <xsl:template match="/"> nodeset: <xsl:value-of select="$variable"/> last segment name: <xsl:call-template name="tail"> <xsl:with-param name="string" select="$variable"/> </xsl:call-template> </xsl:template> <xsl:template name="tail"> <xsl:param name="string" select="."/> <xsl:choose> <xsl:when test="substring-after($string,'/')"> <xsl:call-template name="tail"> <xsl:with-param name="string" select="substring-after($string,'/')"/> </xsl:call-template> </xsl:when> <xsl:otherwise> <xsl:value-of select="$string"/> </xsl:otherwise> </xsl:choose> </xsl:template> </xsl:stylesheet> should result in printout of nodeset value and last segment value if you want to reuse then just wrap call template in a variable; <xsl:variable name="desiredresult"> <xsl:call-template name="tail"> <xsl:with-param name="string" select="$variable"/> </xsl:call-template> </xsl:variable> though be careful with whitespace.... gl, Jim Fuller
|
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








