Announcement

Collapse
No announcement yet.

XSLT-Prozessor Sablotron: Problem mit Sonderzeichen-Konvertierung

Collapse
X
  • Filter
  • Time
  • Show
Clear All
new posts

  • XSLT-Prozessor Sablotron: Problem mit Sonderzeichen-Konvertierung


  • #2
    Liebe XSLT-Gemeinde,

    ich benutze ein auf PHP 4.3.0 und MySQL 3.23.49 basierendes Content-Management-System, das u.a. XML-Dateien mittels des XSLT-Prozessors Sablotron v0.97 XML-Dateien nach HTML umwandelt.

    Meine Beobachtung: In der aktuellen Konfiguration dieses CMS werden etwa dt. Umlaute bei der Transformation nicht in HTML-Entities (z.B. &auml umgewandelt, sondern verbleiben im Klartext im HTML-Quellcode.

    In den modularisierten XSLT-Stylesheets verwende ich die Codierung UTF-8 (s.u.). Ein Test mit der Codierung ISO-8859-1 ergab das gleiche Ergebnis.

    Ein Test mit XALAN (integriert in das rtf-xml-Konvertierungstool "upCast" von infinity-loop) ergab dagegen eine Konvertierung der Sonderzeichen in Entities.

    <BR><BR>

    Meine Frage: Habe ich mit Sablotron die Möglichkeit, Sonderzeichen (deutsche, aber auch "exotischere") in Entities umzuwandeln?
    Wenn ja, welche Einstellungen am gesamten System sind dazu notwendig?
    Oder ist dies einer der Fälle, in der die XSLT-Spezifikation für XSLT-Prozessoren nur eine KANN-Bestimmung bzgl. der Konvertierung von (Sonder-)zeichen in Entities beinhaltet (etwa: "Ein XSLT-Prozessor KANN Zeichen eines bestimmten Zeichensatzes in Entities umwandeln, muß dies aber nicht.)

    Wer hat diesbezügliche Erfahrungen mit Sablotron gemacht und kann mir weiterhelfen?

    <BR><BR>

    Hier noch einige Informationen zur verwendeten Konfiguration (Server, PHP, MySQL, XML, XSLT-Templates). Welche davon für mein Problem relevant sind, weiß ich leider nicht:

    Server:
    Apache 1.3.26 (unter SUN)

    PHP-Konfiguration:
    './configure'
    '--with-mysql'
    '--with-apache=../apache_1.3.26' '--with-gd=/usr/local'
    '--with-jpeg-dir=/usr/local' '--with-t1lib=/usr/local' '--with-tiff-dir=/usr/local'
    '--with-iconv=/usr/local'
    '--enable-xslt'
    '--with-xslt-sablot'
    '--enable-wddx' '--enable-bcmath'
    '--enable-calendar'
    '--enable-mbstring'
    '--enable-mbstr-enc-trans'
    '--enable-mbregex'
    '--enable-ftp'

    PHP-Variablen: _SERVER["HTTP_ACCEPT_CHARSET"]: ISO-8859-1, utf-8;q=0.66, *;q=0.66

    Kopf der zu konvertierenden XML-Dateien:
    <PRE><CODE>
    <?xml version="1.0" encoding="ISO-8859-1"?>
    </CODE></PRE>

    Kopf der XSLT-Datei(en):
    <PRE><CODE>
    <?xml version="1.0" encoding="UTF-8"?>
    </CODE></PRE>

    xslutput-Element:
    <PRE><CODE>
    <xslutput method="html" encoding="UTF-8" indent="yes"/>
    </CODE></PRE>

    <BR><BR>

    Über Hilfestellungen aller Art würde ich mich sehr freuen. Vielen Dank im Voraus!

    Gruß, Oliver Dürsele

    Comment

    Working...
    X