Altova Mailing List Archives>Archive Index >microsoft.public.xsl Archive Home >Recent entries >Thread Prev - Re: datatype >Thread Next - Re: datatype Re: datatypeTo: NULL Date: 7/3/2009 3:43:00 PM Larry Sulky wrote: > On Jul 3, 8:20 am, Martin Honnen <mahotr...@yahoo.de> wrote: >> I did already suggest >> >> <xsl:variable name="bboxWidth" >> as="xs:decimal" >> select="xs:decimal($bboxTokens[3]) - >> xs:decimal($bboxTokens[1])"/> >> >> where xs:decimal($bboxTokens[3]) casts the third item in the $bboxTokens >> sequence to a decimal. > Your suggestion didn't work at first. It gave me this error: > > "Type error, value does not match a required type as specified > by the matching rules in 2.5.4 Sequence Type Matching. > - 'xs:decimal' " > > But then I removed the as= attribute: > > <xsl:variable name="bboxWidth" > select="xs:decimal($bboxTokens[3]) - xs:decimal($bboxTokens[1])"/> > > and then it worked perfectly. So I'm a little confused, but > grateful! :-) I am not sure why you get that error. When I try this XML document <foo bbox="1,2,3,4"/> against this XSLT <xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="2.0" xmlns:xs="http://www.w3.org/2001/XMLSchema"> <xsl:template match="foo"> <xsl:variable name="bboxTokens" as="xs:string*" select="tokenize(@bbox, ',')"/> <xsl:variable name="bboxWidth" as="xs:decimal" select="xs:decimal($bboxTokens[3]) - xs:decimal($bboxTokens[1])"/> <xsl:value-of select="$bboxWidth"/> </xsl:template> </xsl:stylesheet> then it runs fine with Saxon 9 and AltovaXML tools 2009. -- Martin Honnen --- MVP XML http://msmvps.com/blogs/martin_honnen/ | ||||||
| Company | Legal | Press | Partners | Careers | Sitemap | Contact Us | Altova Blog | Mobile | Full Site | |||
|
