Wie man in einer XPath?-Query den Namespace ignoriert
Xpath (und die Erweiterung XSLT) beachten den Namespace eines XML-Dokumentes.
Manchmal kann es vorkommen dass man den Namespace eines zu parsenden Dokumentes nicht kennt (oder kennen will
), in dem Fall kann man die Query so formulieren dass der Namespace ignoriert wird.
Dazu dient die XPath? local-name() funktion. Ein Beispiel:
<test xmlns='urn:egal'>
<erdbeer>
<himbeer/>
</erdbeer>
</test>
Dieser Ausdruck findet das himbeer-Element:
//*[local-name()='himbeer']
Dieser nicht:
Natürlich haben Namespaces einen Sinn, ignorieren ist also nicht notwendigerweise die beste Idee.