Re: [xsl] Calculations in an attribute

Subject: Re: [xsl] Calculations in an attribute
From: "Thomas B. Passin" <tpassin@xxxxxxxxxxxx>
Date: Mon, 11 Mar 2002 13:20:24 -0500
[bryan hansen" <bh5k@xxxxxxxxx>]
> 
> I am using XSL to convert to SVG and when I try to do
> a calculation in a attirbute I get an exception of:
> 
> org.xml.sax.SAXParseException: The value of attribute
> "width" must not contain the '<' character.
> 
> I understand what the error is, but not how to get
> around it. The svg needs to have a width dynamically
> calculated (I am making a bar graph) and looks
> something like this:
> 
> <rect x="291" y="121" width="142" height="10"
> fill="green" />
> 
> I want to have a percentage on the width so I have
> tried this (among other things):
> 
> width="<xsl:value-of select="142 * total div 100"/>"
> 
> And it throws the exception listed above. Any ideas?
> Thanks for your help in advance.
> 

That's what attribute value templates are good for:

<rect width='{142 * total div 100}'/>

or,

<xsl:variable name='width' select='142 * total div 100'/>
<rect width='{$width}'/>

Cheers,

Tom P


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


Current Thread