This is the mail archive of the xsl-list@mulberrytech.com mailing list .


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: less than zero


> <xsl:variable name="notesleftmargin"><xsl:value-of
> select="ancestor::dxl:richtext//dxl:pardef[@id=$pabid]/@leftmargin"/></xsl:v
> ariable>

That defines the variable to be a result tree fragment with a root node,
and a text node with the string value of the leftmargin attribute.
It would be much more efficient to go

<xsl:variable name="notesleftmargin"
 select="ancestor::dxl:richtext//dxl:pardef[@id=$pabid]/@leftmargin"/>

which defines the variable to be that attribute node, or even


<xsl:variable name="notesleftmargin"
 select="number(ancestor::dxl:richtext//dxl:pardef[@id=$pabid]/@leftmargin)"/>

which defines it to be a number.

  <xsl:variable name="leftmargin" select="$wert - 1"></xsl:variable>

  <xsl:if test="number($leftmargin) &lt; 0"><xsl:variable name="leftmargin"
  select="0"></xsl:variable></xsl:if>

This is trying to declare leftmargin after it has already been declared.
You can't do that. You can not declare a variable that is in scope.
(And of course you can't change the value of a variable once it is
bound.)

David

_____________________________________________________________________
This message has been checked for all known viruses by Star Internet
delivered through the MessageLabs Virus Scanning Service. For further
information visit http://www.star.net.uk/stats.asp or alternatively call
Star Internet for details on the Virus Scanning Service.

 XSL-List info and archive:  http://www.mulberrytech.com/xsl/xsl-list


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]