wahsaga: XHTML mit PHP DOM validieren

Beitrag lesen

hi,

ich versuche folgendes XHTML-Dokument

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"  
        "DTD/xhtml1-strict.dtd">  
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" >  
<head>  
<title>Test</title>  
</head>  
<body>  
<p>Hello, validation!</p>  
</body>  
</html>

mit Hilfe der DOM Functions von PHP zu validieren (über die Methoden loadHtml() und validate()).

Dabei bekomme ich, zu meiner Überraschung, folgende Meldung:

Warning: DOMDocument::validate(): standalone: body declared in the external subset contains white spaces nodes in [...]

Wenn ich dann die white spaces zwischen body und p eliminiere, wird das Dokument als valide angesehen.

Was habe ich verpasst? In XHTML 1.0 Strict hat mir doch bisher kein Validations-Service white space im Body angemeckert?
Darf ich ein XHTML-Dokument etwa nicht mehr schön lesbar formatieren ...?

Außerdem dauert die Validierung verhältnismäßig lange - logisch, wenn die DTD und zugehörige Ressourcen immer von PHP/meinem Apachen aus dem www geholt werden müssen, zumal auf dieser Ebene vermutlich kein Caching implementiert ist.
Also wollte ich mir die DTD lokal ablegen, und dann im Doctype meines XHTML-Dokumentes darauf verweisen.
Gut, gibt erst mal mecker, weil weitere in der DTD relativ verlinkte Ressourcen dann ebenfalls noch fehlen. Also xhtml-lat1.ent, xhtml-symbol.ent und xhtml-special.ent ebenfalls noch lokal abgelegt, damit "funzt" es erst mal. Gibt es in der DTD noch weitere eingebundene Ressourcen, die ich übersehen habe?

Wie müsste ich jetzt in meiner lokalen Version der DTD den Inhaltstyp von body anpassen, damit white space darin nicht mehr angemeckert wird? Geht es überhaupt?
Oder bleibt mir nur die Möglichkeit, vor dem Validieren white space außerhalb von Tags in Body mittels preg_replace zu entfernen?

gruß,
wahsaga

--
/voodoo.css:
#GeorgeWBush { position:absolute; bottom:-6ft; }