Andreas: problem mit xsl:copy-of

Beitrag lesen

Hallo,

Ich habe eine Variable in einer XSL-Datei daklariert, worüber die Zeilen ausgezählt werden sollen. Dies sieht folgendermaßen aus:

<xsl:variable name="countlines">
<xsl:copy-of select="block" />

Wozu kopierst du das Element in die Ariable hinen?

<xsl:value-of select="string-length(/) -

Das / bringt genau nichts.

Ich schaffe es einfach nicht, dass mir alle Zeilen zwischen <block>...</block> ausgezählt werden.

<xsl:variable name="countlines" select="string-length(//text()) - string-length(translate(//text(),'&#xA;',''))">

Wird aber vermutlich trotzdem ein falsches Ergebnis liefern, weil auch die Zeilenumbrüche zwischen den Elementen zählen (es sei denn du hast ein DTD, wo geregelt ist, welche Elemente nur andere Elemente als Inhalt haben können)

Grüße
Thomas

Hallo Thomas,

ich will den gesamten Inhalt des Elements <block> mit allen Nachfahren innerhalb der <block>-Elemente kopieren, damit ich anschließend die Zeilen auszählen kann und den Wert, der in der Variable steht, anschließend weiter verwenden kann. Ist der Gedanke falsch? Eine DTD habe ich bislang noch nicht, kommt aber noch :-)
Das "/" berücksichtigt doch die gesamte Zeichenzahl!?!

Vielen Dank für die Hilfe,
Andreas