xsl-list
[Top] [All Lists]

Re: [xsl] When to use text()

2014-03-21 11:30:12
On Fri, Mar 21, 2014 at 4:21 PM, David Carlisle 
<davidc(_at_)nag(_dot_)co(_dot_)uk> wrote:
On 21/03/2014 15:28, Ihe Onwuka wrote:

You see an hour ago I wast quite content with my

<xsl:template match="RentAmount | MonthlyAmounts"> <xsl:attribute
name="class" select="'money'"/> <xsl:apply-templates/>
</xsl:template>



You shouldn't have been really as warnings about over-use of text() come
up fairly often:-)

last time though the comments were dismissed with

This is why I don't like to post code, because all I really needed
from this thread was confirmation that duplicate elimination only
applied to node identity rather than content.



You took me too literally. I am still content with it because it still works.



Meanwhile ...... if a comment node did infiltrate RentAmount/text()
what effect wolud that have with the match pattern and how
consistent would it be with the equivalent scenario outside a match
pattern.


You apply


  <xsl:template match="RentAmount/text() | MonthlyAmounts/text()">
    <xsl:value-of select="format-number(.,if (xs:decimal(.) > 999.99)
then '$,000.00' else '$0.00')"/>
  </xsl:template>

to each text node so if you have

<RentAmount>12<!--3-->4</RentAmount>

There are two text nodes so you will get

$12.00$4.00

If you had instead had


  <xsl:template match="RentAmount| MonthlyAmounts">
    <xsl:copy>

    <xsl:value-of select="format-number(.,if (xs:decimal(.) > 999.99)
then '$,000.00' else '$0.00')"/>
</xsl:copy>
  </xsl:template>


Then you would get

<RentAmount>124.00</RentAmount>


Perfect. If ever I am passed rental markup with embedded comments I'll
know what to reference.

--~------------------------------------------------------------------
XSL-List info and archive:  http://www.mulberrytech.com/xsl/xsl-list
To unsubscribe, go to: http://lists.mulberrytech.com/xsl-list/
or e-mail: <mailto:xsl-list-unsubscribe(_at_)lists(_dot_)mulberrytech(_dot_)com>
--~--

<Prev in Thread] Current Thread [Next in Thread>