# XML-Namespace-Problem

In diesem Abschnitt wird ein Problem beschrieben, das auftreten kann, wenn Sie XPath-Ausdrücke mit XML-Dokumenten verwenden, die Namespaces enthalten. Weitere Informationen zu Namespaces finden Sie unter [XML namespace](https://en.wikipedia.org/wiki/XML_namespace) und [Namespaces in XML](https://www.w3.org/TR/2006/REC-xml-names11-20060816/).

## Beschreibung

Derzeit funktionieren XPath-Ausdrücke wie erwartet, wenn das XML-Dokument keine Namespaces hat. Wenn ein Dokument jedoch Namespaces enthält, auch Standard-Namespaces, können XPath-Ausdrücke unerwartete Ergebnisse zurückgeben.

Beispielsweise geben in dem XML-Dokument unten die Ausdrücke /a, //c und //c/@name alle ein leeres Array zurück:

```
<a xmlns="http://www.w3.org/2000/example">
  <b>
    <c name="name1"/>
  </b>
</a>
```

## Workaround

Um dieses Problem zu vermeiden, können Sie einen XPath-Ausdruck verwenden, der ein Tag nach Namen abruft. Damit können Sie den Namespace ignorieren. Für die Beispiele oben können Sie /\*[name()='a'], //\*[name()='c'] und //\*[name()='c']/@name verwenden.