Subject: [xsl] variables and inline tags From: Spencer Tickner <spencertickner@xxxxxxxxx> Date: Wed, 4 May 2005 13:52:35 -0700 |
Having problems with variables, applying templates and parsing strings. Been working on it all day and can't seem to wrap my mind around it. Here is my simplified xml: <definition> <term>recognized</term> <def>, under the <em>Company Act</em></def> </definition> What I need to do is substring the def information when it starts with a comma, ie: with comma <p class="def">"recognized", under the <em>Company Act</em></p> without comma <p class="def">"recognized" under the <em>Company Act</em></p> Ok, there's the background. I'm having problems because I'm using a variable to parse out the unwanted space in the with comma example above, then to get the variable I use a value-of statement which promptly drops the <em> tags. Any suggestions or advive would be appreciated. Here's my simplified xsl: <!-- Defintion --> <xsl:template match="definition" mode="contentsection"> <p class="def"> <xsl:choose> <xsl:when test="substring(def, 1, 1)=','"> <strong>"<xsl:apply-templates select="term"/>"</strong>, <xsl:variable name="uncommadef"> <xsl:apply-templates select="def"/> </xsl:variable> <!-- Problem is here --> <xsl:value-of select="substring($uncommadef, 2)"/> </xsl:when> <xsl:otherwise> <strong>"<xsl:apply-templates select="term"/>"</strong> <xsl:apply-templates select="def"/> </xsl:otherwise> </xsl:choose> </p> </xsl:template> <xsl:template match="term"> <xsl:apply-templates select="text()|strong|em|sup|sub|u|insert|br|eacute"/> </xsl:template> <xsl:template match="def"> <xsl:apply-templates select="text()|strong|em|sup|sub|u|insert|br|eacute"/> </xsl:template> <!-- End of Definition -->
Current Thread |
---|
|
<- Previous | Index | Next -> |
---|---|---|
RE: [xsl] Do Templates Conflict?, Andrew Welch | Thread | Re: [xsl] variables and inline tags, David Carlisle |
Re: [xsl] Do Templates Conflict?, JBryant | Date | RE: [xsl] Do Templates Conflict?, Michael Kay |
Month |