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: Calculations in an attribute


[bryan hansen" <bh5k@yahoo.com>]
> 
> 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


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