Mailinglisten-Archive |
Hallo Jens, hallo Sven, > Nun erweisen sich beim Parsen die deutschen Sonderzeichen als > ein Problem. > Ich kann sie leider nicht als "ü" etc in das XML File > schreiben, den > dann bekomme ich einen Fehler beim parsen durch "&". > Und hier in Sydney(AU) steht mir leider nur englische Software > und Keyboards zur Verfuegung. > Was das direkte eingeben sehr umstaendlich macht "copy paste" > ist da sicher nicht sehr schoen. ich zitiere mal aus http://www.xml.com/pub/a/98/08/xmlqna1.html : In XML eingebaut sind nur < = < > = > & = & ' = ' " = " Genau für Dein Problem gibt's "Character References". Falls Dein XML in ISO-8859-1 ist, schreibst Du einfach: ü für ein "ü" - die Zahlen kannst Du einfach in einer ASCII-Tabelle nachsehen. Falls Dein XML in UTF-8 ist, schreibst Du statt der ASCII-Zahl den Unicode-Codepoint. Sven, Dein Vorschlag scheint mir nicht viel Sinn zu machen. > Erstelle eine "dateinname.dtd" mit folgendem Inhalt > > <!ENTITY uuml "uuml"> > > dann bindest du die Datei in dein XML File ein > > <?xml version="1.0" encoding="iso-8859-1"?> > <!DOCTYPE test SYSTEM "../src/dtd/test.dtd"> > > und dann kannst du auch "ü" in deinem XML File benutzen. Wenn Du Dir mal ansiehst, was ein XML-Parser damit macht (z.B. PHP's XML-Funktionen, Internet Explorer, xmllint auf der Kommandozeile), dann wirst Du feststellen, daß er das "ü" im XML-Quelltext durch "uuml" ersetzt - definitiv kein "ü". Jens, wenn Du gerne die HTML-Umlaut-Entities benutzen möchtest (einfacher zu merken als die ASCII-Codes), dann geht das so: <?xml version="1.0" encoding="ISO-8859-1"?> <!DOCTYPE test [ <!ENTITY uuml "ü"> ]> <test>ü</test> Gruß, Tim -- ------------------------------------------------------------ Tim Strehle http://tim.digicol.de/ Digital Collections http://www.digicol.de/ ------------------------------------------------------------
php::bar PHP Wiki - Listenarchive