So wie es aussieht verarbeitet PHP nur solche Namensräume, welche im root-Element definiert werden. So weit mir bekannt ist, darf man das aber in allen Elementen, zumindest habe ich in den W3C-Specs nichts Gegenteiliges gefunden, lasse mich aber gerne eines Besseren belehren.
Hmm, kann gut sein. Die Ursache für das Verhalten ist aber nicht PHP sondern die libxml2, auf die PHP zurückgreift. Ich benutze die libxml2 derzeit in einem in C geschriebenen Projekt, und dort muss man es genauso machen.
Das gleiche gilt auch für die im Java SDK enthaltenen Klassen für XPath, wenn ich mich nicht sehr irre.
Gruß
Stareagle