Andi: Syntaxfehler?

Beitrag lesen

Hallo zusammen,

ich schreibe gerade an einem XSLT- Stylesheet. Gestern ist mir aufgefallen, das ich versehentlich bei der XSLT- Version 1.0 angegeben habe. Ich habe dann einfach die Versionsnummer in 2.0 geändert, allerdings bekam ich dann einige Fehlermeldung in Bezug auf die bei Rechnungen verwendeten Datentypen für die Zeilen 2 und 4 im ersten Auszug des Stylesheets.
Ich verwende den xSLT- Przessor Saxon, Version 8.4.

Ein Auszug aus meinem alten Stylesheet sieht so aus:

<xsl:variable name="bound_x" select="substring-before(BPlanAuszug/wfs:FeatureCollection/gml:boundedBy/gml:Envelope/gml:pos[position()=1],' ')"/>
<xsl:variable name="offset_x" select="substring($bound_x,1,2)*100000"/>
<xsl:variable name="bound_y" select="substring-after(BPlanAuszug/wfs:FeatureCollection/gml:boundedBy/gml:Envelope/gml:pos[position()=1],' ')"/>
<xsl:variable name="offset_y" select="substring($y1,1,2) * 100000"/>

Daraufhin habe ich das Stylesheet wie folgt abgeändert:

<xsl:variable name="bound_x" select="substring-before(BPlanAuszug/wfs:FeatureCollection/gml:boundedBy/gml:Envelope/gml:pos[position()=1],' ')"/>
<xsl:variable name="offset_x" select="substring($bound_x,1,2)"/>
<xsl:variable name="offset_x_num" select="number($offset_x)*100000"/>
<xsl:variable name="bound_y" select="substring-after(BPlanAuszug/wfs:FeatureCollection/gml:boundedBy/gml:Envelope/gml:pos[position()=1],' ')"/>
<xsl:variable name="offset_y" select="substring($y1,1,2) "/>
<xsl:variable name="offset_y_num" select="number($offset_y)*100000"/>

Die Fehlermldungen waren beseitigt. Mit "number" wollte ich die als Text im GML- File angegebenen Koordinaten in Zahlen umwandeln. Allerdings war meine Ausgabe in SVG leer, da alle Koordinaten in meinen SVG- Objekten als "not a number" transformiert wurden.

Is irgendwas besonders zu beachten, wenn man Text in Zahlen konvertiert?

Beste Grüße

andi