szsoftware: html-Tags verschwinden

Beitrag lesen

Das Problem habe ich soeben gelöst.
Der fragliche Abschnitt in der .xml wird jetzt in einer CDATA-Sektion aufgeführt.

In die .xsl muss im entsprechenden xsl:value-of noch das Attribut disable-output-escaping="yes" gesetzt werden, damit die Spitzklammern, das bewirken, was sie sollen.

Die Änderungen im Code:

XML

[...]
<data>
  <top id="1">
  <![CDATA[

Erstes Topic wird hier genauer beschrieben.

Genauer werden die hier enthaltenen html-Elemente vom xslt-Transformer (xalan) "geschluckt".
   <br />
   Hier können jetzt <ul> und <ol> und andere HTML-Tags gesetzt werden. Natürlich würde das so, wie es jetzt ist, eine falsche Struktur erzeugen, also bitteschön die Element-Hierarchie befolgen:

<ul>
        <li>Dann klappta auch mit dem Nachbarn(-Element)</li>
     </ul>

]]>

</top>
</data>
[...]

###########################################################

Diese .xsl formatiert das ganze:

XSL

[...]

<xsl:template match="data">
<hr noshade="noshade" />

<xsl:for-each select="/protokoll/toc/top">
  <xsl:sort select="@order" />
  <xsl:variable name="id" select="@id" />
  <h2>Top <xsl:value-of select="position()" /> - <xsl:value-of select="title" /></h2>
   <xsl:if test="subtitle"><h3><xsl:value-of select="subtitle" /></h3></xsl:if>
  <div>
   <xsl:if test="author/name">
    <h4>Eingereicht von: <xsl:value-of select="author/name" />
    <xsl:if test="author/comment">
     (<xsl:value-of select="author/comment" />)
    </xsl:if>
    </h4>
   </xsl:if>
   <xsl:value-of select="/protokoll/data/top[@id=$id]" disable-output-escaping="yes"/>
  </div>
</xsl:for-each>
</xsl:template>

[...]

##################################################################