Hallo Lore,
Mmh. Kann man denn mit XPath überhaupt XHTML-Dokumente parsen?
Ja, kann man.
Ich habe nämlich festgestellt, dass das Parsing funktioniert, wenn ich Doctype sowie den Namespace weglasse
Der Doctype hat damit nichts zu tun, die Namespaces aber schon.
Für den XPath-Ausdruck müssen ebenfalls Namespaces deklariert werden, wobei nicht die selben Prefixes verwendet werden müssen, wie im Dokument. (Das wäre auch nicht sinnvoll, schließlich kannst Du, wenn Du eine Anwendung schreibst, nicht wissen, welche Prefixe die Elemente haben, nur welche Namespaces).
Wenn Dein XPath-Ausdruck in ein XSLT-, XQuery- o.ä. Dokument eingebettet ist, kannst Du die Namespaces natürlich einfach im Dokument deklarieren. Verwendest Du XPath aber direkt in einer Anwendung, musst Du das irgendwie über die entsprechende API machen.
Bei DOM 3 XPath geht das mit Hilfe des XPathNSResolver-Interfaces.
Wenn Du irgend eine API von .NET verwendest, die nicht diesens Standard implementiert, dann verlinke doch bitte die Dokumentation dazu.
Grüße
Daniel