Mimetype von XSLT
Konrad Rudolph
- xsl
Hallo Forum,
ich habe gerade mal ein kleines Test-XML-Doc hochgeladen. Das Doc wird (clientseitig) über XSLT transformiert.
Hier mal ein Link (geht dann natürlich nicht mit Opera): http://madrat.net/essays/quotes/Kluge Spr�che.xml
Klappt aber nicht; der Moz-FiBi gibt bei mir aus:
"
Error loading stylesheet: An XSLT stylesheet does not have an XML mimetype:
http://madrat.net/essays/quotes/Kluge%20Spr%FCche.xslt
"
was bedeutet das? Muß ich per .htaccess etwa einen Mimetype für XSLT-Dateien festlegen? Und wie sähe der dann aus? text/xml oder text/xsl?
Wenn ich das ganze lokal aufrufe, dann klappt es. Allerdings ist eines komisch: das Doc ist in UTF-8 gecoded (und macht davon auch heftig Gebrauch, griechische Zeichen, kombinierte diakritische Zeichen sowie Umlaute werden verwendet). Allerdings zeigt mir der Moz-FiBi unter "View Page Info" an, das Dokument sei "ISO-8859-1". Ich dachte, diese ISO-Norm entspräche "Lateinisch 1"? Das sagt auch http://www.bbsinc.com/iso8859.html
Der MSIE zeigt die Onlineversion übrigens klaglos an ... braucht aber ewig zum Parsen *fg*
Gruß,
KonRad -
Hallo,
Klappt aber nicht; der Moz-FiBi gibt bei mir aus:
"
Error loading stylesheet: An XSLT stylesheet does not have an XML mimetype:
http://madrat.net/essays/quotes/Kluge%20Spr%FCche.xslt
"was bedeutet das? Muß ich per .htaccess etwa einen Mimetype für XSLT-Dateien festlegen? Und wie sähe der dann aus? text/xml oder text/xsl?
Erstens die Datei sollte nur *.xsl heissen.
Dann ist es eigentlich gar keine XSL datei!
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
WAS macht ein <!DOCTYPE in der XSL-Datei???
Wenn du im Ausgabedokument <!DOCTYPE Angaben haben möchtest kunslutiere bitte den folgenden Abschnitt im Selfhtml: http://selfhtml.teamone.de/xml/darstellung/xsltelemente.htm#output
Grüße
Thomas
Wenn du im Ausgabedokument <!DOCTYPE Angaben haben
möchtest kunslutiere bitte den folgenden Abschnitt im Selfhtml:
^mal wieder wortschöpferisch tätig gewesen? ;)
Hallo,
Erstens die Datei sollte nur *.xsl heissen.
Aha, wieso? VS.NET schlägt mir ".xslt" als Standarddateinamenerweiterung für XSLT-Dokumente vor und ich habe das halt übernommen.
Egal, mit ".xsl" klappt es.
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">WAS macht ein <!DOCTYPE in der XSL-Datei???
tja, nach deiner Erklärung frage ich mich das jetzt auch. Ich dachte halt, wenn man XHTML-Entities im XSL verwendet, müsse man diese auch definieren -- per DocType.
Wenn du im Ausgabedokument <!DOCTYPE Angaben haben möchtest kunslutiere bitte den folgenden Abschnitt im Selfhtml: http://selfhtml.teamone.de/xml/darstellung/xsltelemente.htm#output
aha, vielen Dank, habe ich jetzt eingefügt.
Allerdings verstehe ich nach wie vor nicht, wieso mir der Mozilla nach wie vor (trotz expliziter Festlegung) eine falsche Encoding erkennt! Spielt zwar keine Rolle, da der Browser das Doc richtig darstellt, aber es wundert mich ...
Gruß,
KonRad -
Hi,
Allerdings verstehe ich nach wie vor nicht, wieso mir der Mozilla nach wie vor (trotz expliziter Festlegung) eine falsche Encoding erkennt! Spielt zwar keine Rolle, da der Browser das Doc richtig darstellt, aber es wundert mich ...
Nur mal so ne Vermutung:
welches Encoding ist in der XML-Datei angegeben/verwendet?
Und welches für den Output der Transformation?
cu,
Andreas
Nur mal so ne Vermutung:
welches Encoding ist in der XML-Datei angegeben/verwendet?
Und welches für den Output der Transformation?
beide Male UTF-8:
XML:
<?xml version="1.0" encoding="UTF-8" ?>
XSLT:
<xsl:output
method="xml"
indent="yes"
encoding="UTF-8"
omit-xml-declaration="no"
doctype-public="-//W3C//DTD XHTML 1.0 Strict//EN"
doctype-system="http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"
version="1.0"
/>
übrigens: der MSIE erkennt UTF-16 (und erzeugt es auch: im Quellcode des XSL-Outputs steht tatsächlich "UTF-16"!) und stellt das Dokument folgerichtig vollkommen verkehrt dar (alles falsch ...). LOL! Also: die Darstellung stimmt im Moz, daher nehme ich an, daß er's schon richtig erkennt, aber die Info falsch erstellt wird oder so.
Gruß,
KonRad -
Hallo,
Erstens die Datei sollte nur *.xsl heissen.
Aha, wieso?
Wei das die allgemein gängige Dateinamenerweiterung ist?
Allerdings verstehe ich nach wie vor nicht, wieso mir der Mozilla nach wie vor (trotz expliziter Festlegung) eine falsche Encoding erkennt! Spielt zwar keine Rolle, da der Browser das Doc richtig darstellt, aber es wundert mich ...
Weiss ich auch nicht.
Grüße
Thomas
PS: bitte nimm keine Leerzeichen und Sonderzeichen in Dateinamen für Dateien die für's Internet gedacht sind.
PS: bitte nimm keine Leerzeichen und Sonderzeichen in Dateinamen für Dateien die für's Internet gedacht sind.
hach, ich *liebe* das ;-)
Die Datei ist ein süßer kleiner Test. Ich habe vorher im Prinzip nie mit Unicode gearbeitet und wollte mal ausprobieren, inwiefern das denn geht. Zu diesem Zweck strapaziere ich natürlich ... normalerweise würde ich nie Sonderzeichen in Dateinamen verwenden, Ehrenwort.
Jetzt wollte ich halt mal ausprobieren, inwiefern das alles klappt. -- Und bin erstaunt, wie gut es streckenweise funktioniert!
Also, nochmals danke für die Hilfe.
Gruß,
KonRad -