Umlaute XML und CSS
Johannes Rux
- xml
0 MudGuard0 Johannes Rux0 MudGuard0 Johannes Rux0 Thomas J.S.0 MudGuard
0 Johannes Rux0 Thomas J.S.0 MudGuard
Hallo,
ich habe es geschafft, eine Serie von XML-Dokumenten mit CSS so darzustellen, wie ich das möchte. Das einzige Problem besteht darin, dass die Umlaute in den XML-Dateien nicht direkt erscheinen, sondern als ä etc. Mit dem IExplorer werden sie dennoch dargestellt, bei Opera fliegen sie raus, in Mozilla kommt ein Parsing Error (undefined entity). (Wie) kann ich die korrekte Darstellung erreichen?
Das Problem taucht unabhängig davon auf, ob ich iso-8859-1 oder UTF-8 in der XML-Deklaration verwende.
Hi,
ich habe es geschafft, eine Serie von XML-Dokumenten mit CSS so darzustellen, wie ich das möchte. Das einzige Problem besteht darin, dass die Umlaute in den XML-Dateien nicht direkt erscheinen, sondern als ä etc.
Wo hast Du diese Entities für Dein XML definiert?
cu,
Andreas
Wo hast Du diese Entities für Dein XML definiert?
cu,
Andreas
In der DTD finden sich folgende Definitonen:
<!ENTITY auml "ä">
<!ENTITY Auml "Ä">
<!ENTITY ouml "ö">
<!ENTITY Ouml "Ö">
<!ENTITY uuml "ü">
<!ENTITY Uuml "Ü">
<!ENTITY szlig "ß">
<!ENTITY lt "&#60;">
<!ENTITY gt ">">
<!ENTITY amp "&#38;">
<!ENTITY apos "'">
<!ENTITY quot """>
<!ENTITY nbsp " ">
<!ENTITY ldquo "&#x201C;">
<!ENTITY mdash "&#x2014;">
<!ENTITY nbsp " ">
<!ENTITY rdquo "&#x201D;">
<!ENTITY sect "§">
Hi,
Wo hast Du diese Entities für Dein XML definiert?
cu,
AndreasIn der DTD finden sich folgende Definitonen:
extern oder intern? Externe Entities werden IIRC vom Mozilla nicht aufgelöst.
<!ENTITY lt "&#60;">
Bist Du Dir da sicher mit dem Wert?
<!ENTITY amp "&#38;">
Bist Du Dir da sicher mit dem Wert?
<!ENTITY nbsp " ">
s.u.
<!ENTITY ldquo "&#x201C;">
Bist Du Dir da sicher mit dem Wert?
<!ENTITY mdash "&#x2014;">
Bist Du Dir da sicher mit dem Wert?
<!ENTITY nbsp " ">
Bist Du Dir da sicher mit dem Wert? Und warum nochmal?
<!ENTITY rdquo "&#x201D;">
Bist Du Dir da sicher mit dem Wert?
cu,
Andreas
In der DTD finden sich folgende Definitonen:
extern oder intern? Externe Entities werden IIRC vom Mozilla nicht aufgelöst.
Extern, das erklärt dann wohl einiges...
<!ENTITY lt "&#60;">
Bist Du Dir da sicher mit dem Wert?
Nein, die DTD stammt aber auch nicht von mir... Wo finde ich denn korrekte Werte?
Gruss
Hallo,
<!ENTITY lt "&#60;">
Bist Du Dir da sicher mit dem Wert?
Ja.
<!ENTITY lt "&#60;">
<!ENTITY gt ">">
<!ENTITY amp "&#38;">
<!ENTITY apos "'">
<!ENTITY quot """>
<!ENTITY nbsp " ">
<!ENTITY mdash "&#x2014;">
<!ENTITY ldquo "&#x201C;">
<!ENTITY rdquo "&#x201D;">
Das ist alles richtig so. ;-)
Grüße
Thomas
PS: Das hat jemand vom W3C, aus der DTD für die Spez. übernommen.
Hi,
Ja.
<!ENTITY lt "&#60;">
<!ENTITY gt ">">
<!ENTITY amp "&#38;">
<!ENTITY apos "'">
<!ENTITY quot """>
<!ENTITY nbsp " ">
<!ENTITY mdash "&#x2014;">
<!ENTITY ldquo "&#x201C;">
<!ENTITY rdquo "&#x201D;">Das ist alles richtig so. ;-)
Ich hätt ja vor dem jeweils 2. Zeichen noch ein & erwartet.
Und warum überhaupt die 2 Zeichen?
Aus der HTML-4.01-Liste:
<!ENTITY amp CDATA "&" -- ampersand, U+0026 ISOnum -->
<!ENTITY lt CDATA "<" -- less-than sign, U+003C ISOnum -->
<!ENTITY gt CDATA ">" -- greater-than sign, U+003E ISOnum -->
Scheint wieder mal so einer der kleinen, feinen Unterschiede zwischen HTML und XML zu sein
nicht nur daß kein CDATA dabeisteht...
cu,
Andreas
Hallo,
Das ist alles richtig so. ;-)
Ich hätt ja vor dem jeweils 2. Zeichen noch ein & erwartet.
Das wir ja durch & gemacht
Und warum überhaupt die 2 Zeichen?
Weil sonst die Entity "gleich" ersetzt wird. Was beim < dazu führte, dass es ein echtes < im Quelltext kommt und nicht ein maskiertes.
<?xml version="1.0" encoding="iso-8859-1"?>
<!DOCTYPE data [
<!ENTITY lt "&#60;">
<!ENTITY gt ">">
<!ENTITY amp "&#38;">
<!ENTITY apos "'">
<!ENTITY quot """>
<!ENTITY nbsp " ">
<!ENTITY mdash "&#x2014;">
<!ENTITY ldquo "&#x201C;">
<!ENTITY rdquo "&#x201D;">
]>
<data>
< > & ' â â â
</data>
Natürlich könnte man in XML auf die ersten fünf verzichten, da diese in XML-Standard quasi "eingrbrannt" sind.
<!ENTITY lt "&#60;">
<!ENTITY gt ">">
<!ENTITY amp "&#38;">
<!ENTITY apos "'">
<!ENTITY quot """>
Aus der HTML-4.01-Liste:
Scheint wieder mal so einer der kleinen, feinen Unterschiede zwischen HTML und XML zu sein
nicht nur daß kein CDATA dabeisteht...
Das ist ja auch eine SGML-DTD ;-)
Grüße
Thomas
Externe Entities werden IIRC vom Mozilla nicht aufgelöst.
Dumme Frage: Gibt es überhaupt eine Möglichkeit, XML-Dateien mit einer externen DTD so ins Web zu stellen, dass sie von Mozilla/Opera gelesen werden können? Mit dem blöden IExplorer klappt das ja auch...
Oder muss ich jetzt die ganzen Entities in jedes Dokument einfügen?
Gruss
Hallo,
Dumme Frage: Gibt es überhaupt eine Möglichkeit, XML-Dateien mit einer externen DTD so ins Web zu stellen, dass sie von Mozilla/Opera gelesen werden können? Mit dem blöden IExplorer klappt das ja auch...
Nein. Zur Zeit nicht.
Der "blöde" IE leistet dafür ganze Arbeit.
Grüße
Thomas
Hi,
Dumme Frage: Gibt es überhaupt eine Möglichkeit, XML-Dateien mit einer externen DTD so ins Web zu stellen, dass sie von Mozilla/Opera gelesen werden können? Mit dem blöden IExplorer klappt das ja auch...
Nein. Zur Zeit nicht.
Ein Grund, serverseitig nach (X)HTML zu transformieren - da hat man selbst Kontrolle über die verwendeten Tools.
cu,
Andreas
Hallo,
Dumme Frage: Gibt es überhaupt eine Möglichkeit, XML-Dateien mit einer externen DTD so ins Web zu stellen, dass sie von Mozilla/Opera gelesen werden können? Mit dem blöden IExplorer klappt das ja auch...
Nein. Zur Zeit nicht.Ein Grund, serverseitig nach (X)HTML zu transformieren - da hat man selbst Kontrolle über die verwendeten Tools.
Man siehst es auch hier im Forum, dass immer mehr Leute versuchen XML/XSLT clientseitig zu verwenden und da ist der IE einfach der bessere Browser. Es ist eigentlich schade, aber Mozilla ist ziemlich armselig was das angeht und sorgt jetzt schon selbst dafür, dass er in der näheren Zukunft kein Konkurrenz mehr für den IE darstellt.
Bleibt nur zu hoffen, dass der Druck von den User einmal groß genug sein wird um die Entwickler von Mozilla zum Umdenken zu bewegen.
Dabei hat Mozilla vieles vom IE übernommen (XML Data-Islands, XML HTTP -Request etc.).
Da bleibt einem wirklich oft nur die Serverseite.
Grüße
Thomas