Subject: [xsl] Question about strings. From: "Patel, Viral" <viral.patel@xxxxxxxxxxxxxxxxxxxx> Date: Wed, 15 Jan 2003 09:13:13 -0600 |
> Hi, > > I am new to XSL and I have several questions - some of them might be > really easy ones but I just want to confirm. > 1. Is it possible to compare two strings lexicographically in XSL/XPATH? I believe the answer is no. Is there a way I can achieve this? 2. I have listed the XML & XSL below. In that the community name attribute could start with a alphabet, a number or any other character. Most of the community names are expected to start with alphabets. In my output, if I have one or more community name starting with a certain alphabet (i.e. 'A') then I want to put a link (aka advance orgranizer) at the top of the page that would say 'A' and likewise for all the alphabets. Also since I have few communities starting with non-alphabets, I would want to put a link called Miscellaneous that would link to a page which would display all non-alphabetic characters. How would I go about doing this? And the those non-alphabetic characters are not fixed, they could vary depending on the XML file used. If there was string comparison allowed then I could do something like @name<'a' or @name>'z' for each node and that would give me all non-alphabetic characters. Any ideas/help/suggestions would be greatly appreciated. Thanks <record> <community name="101 South"> ... Some Information ... </community> <community name="**"> ... Some Information ... </community> <community name="Adams"> ... Some Information ... </community> <community name="Smith"> ... Some Information ... </community> ... .... .... </record> <?xml version="1.0" encoding="UTF-8"?> <xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="1.1" xmlns:lxslt="http://xml.apache.org/xslt"> <xsl:template match="/"> <xsl:apply-templates match="//community"/> </xsl:template> <xsl:template name="community"> <xsl:if test="starts-with(@name,'*')"> <xsl:call-template name="createTopLetterLinkForCommunity"> <xsl:with-param name="letterLink">*</xsl:with-param> </xsl:call-template> </xsl:if> <xsl:if test="starts-with(@name,'A')"> <xsl:call-template name="createTopLetterLinkForCommunity"> <xsl:with-param name="letterLink">A</xsl:with-param> </xsl:call-template> </xsl:if> <xsl:if test="starts-with(@name,'B')"> <xsl:call-template name="createTopLetterLinkForCommunity"> <xsl:with-param name="letterLink">B</xsl:with-param> </xsl:call-template> </xsl:if> <xsl:if test="starts-with(@name,'C')"> <xsl:call-template name="createTopLetterLinkForCommunity"> <xsl:with-param name="letterLink">C</xsl:with-param> </xsl:call-template> </xsl:if> <xsl:if test="starts-with(@name,'D')"> <xsl:call-template name="createTopLetterLinkForCommunity"> <xsl:with-param name="letterLink">D</xsl:with-param> </xsl:call-template> </xsl:if> .... AND SO ON .... </xsl:template> </xsl:stylesheet> > Thanks > V. Patel. > XSL-List info and archive: http://www.mulberrytech.com/xsl/xsl-list
Current Thread |
---|
|
<- Previous | Index | Next -> |
---|---|---|
RE: [xsl] How do I use MathML with , Dunning, John | Thread | [xsl] Using key with XPath and use , Liguori, Steven |
[xsl] How do I use MathML with FOP?, Graham Hannington | Date | Re: [xsl] DTD copy, xxx |
Month |