Hallo!
Ich wollte noch mal Bezug auf mein Posting http://forum.de.selfhtml.org/archiv/2003/11/63028/ nehmen.
Die ganze Übung diente natürlich dazu, ein XML-Dokument zu validieren.
In dem ich die Fehlerausgabe in eine Datei leite, komme ich nun an die Fehlermeldung von xmllint ran. ecex() wollte ja keine Ausgeben.
Es wurde ja der Tipp gegeben, es in eine Datei zu leiten, aber ich habe nie den Ausgabekanal (2 = Standardfehler) verwendet.
In dem Fall reicht system() aus, weil man nicht an die Ausgabe auf der Shell muß.
// Windows
system("c:\xmllint\xmllint.exe --noout datei.xml 2>error.txt");
// Linux
system("/usr/local/libxml/bin/xmllint --noout datei.xml 2>error.txt");
Für "error.txt" könnte man nun dynamische (eindeutige ID) Dateinamen verwenden, damit sich mehrere Validierungen gleichzeitig nicht in die Quere kommen.
So kann man nun XML-Dokumente serverseitig gegen eine DTD oder XML-Schema validieren.
MfG, André Laugks
L-Andre @ gmx.de