Xpath Funktion erzeugt Fehlermeldung
Dixi86
- xsl
0 Thomas J.S.0 Dixi86
Hallo,
Ich habe folgendes Problem. Ich habe in XML einen String der ein Leerzeichen enthält.
<root>
<string integer="595.275590551181 841.889763779528"/>
<root>
Nun will ich die beiden Zahlen trennen und umrechnen lassen mit
<xsl:template match="/">
<xsl:value-of select="string/round (substring-before (//@integer, ' ') div 2.8346512493134829)"/>
</xsl:template>
Allerdings gibt mir saxon-B 9.0.0.6 die Fehlermeldung aus:
"Arithmetic operator is not defined for arguments of types (xs:string, xs:decimal)" Ich muss gestehen, dass ich damit nichts anfangen kann...
Kann mir jemand auf die Sprünge helfen?! Muss ich noch einen Namesspace einfügen ?!
Vielen Dank
Dixi86
Hallo,
Ich habe folgendes Problem. Ich habe in XML einen String der ein Leerzeichen enthält.
<root>
<string integer="595.275590551181 841.889763779528"/>
<root>
>
> Nun will ich die beiden Zahlen trennen und umrechnen lassen mit
>
> ~~~xml
<xsl:template match="/">
> <xsl:value-of select="string/round (substring-before (//@integer, ' ') div 2.8346512493134829)"/>
> </xsl:template>
Allerdings gibt mir saxon-B 9.0.0.6 die Fehlermeldung aus:
"Arithmetic operator is not defined for arguments of types (xs:string, xs:decimal)" Ich muss gestehen, dass ich damit nichts anfangen kann...
"substring-before" erzeugt einen String, den willst du dann dividieren. Da meckert der Prozessor.
round(number(substring-before(@integer, ' ')) div 2.8346512493134829)
Grüße
Thomas
Super! Vielen Dank für die schnelle Antwort! Es hat funktioniert!
Simon