Bene: Problem mit Texten in Element bei Transformation

Beitrag lesen

Sorry, aber hä???
Die Doctype-Angabe brauchst du nicht. Du brauchst nur method="xml". Dem XSLT-Prozessor ist es ziemlich egal welche Doctype dein End-Dokument haben wird, er geht lediglich von der Angabe im method="" aus.

Ja das hätte ich auch gedacht, allerdings gibt es tatsächlich abhängig ob Doctype verwendet wird, eine andere Ausgabe:

  
<xsl:output method="html" indent="yes" omit-xml-declaration="yes" />  

liefert:

  
<quiz>my name is <input type="text"> and i live in <input type="text">my pets name is <input type="text"> and his brothers name is <input type="text"></quiz>  

Hier werden die input-tags nicht xhtml-konform geschlossen.

  
<xsl:output method="xml" indent="yes" omit-xml-declaration="yes" />  

liefert:

  
<quiz>my name is <input type="text"/> and i live in <input type="text"/>my pets name is <input type="text"/> and his brothers name is <input type="text"/></quiz>  

Hier fehlt das Leerzeichen vor dem schließenden Slash.

  
<xsl:output method="xml" indent="yes"  
    doctype-system="http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"  
    doctype-public="-//W3C//DTD XHTML 1.0 Transitional//EN" omit-xml-declaration="yes" />  

liefert:

  
<!DOCTYPE quiz PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">  
<quiz>my name is <input type="text" /> and i live in <input type="text" />my pets name is <input type="text" /> and his brothers name is <input type="text" /></quiz>  

Hier ist alles perfekt, nur die Doctype-Erklärung steht halt im Ergebnis.

Viele Grüße und Danke
Benedikt