XML kann mit dem Namespacepräfix nicht mit dem DOM-Parser gelesen werden

8

Dies ist die Eingabe-XML:

%Vor%

Dies ist der Code, den ich zum Lesen der XML verwende (Variable xmlString enthält das obige XML):

%Vor%

Ausgabe:

%Vor%

Ich kann das Element lesen, wenn ich "ns2: Token" als Tag-Name verwende, aber ich möchte das Präfix in meinem Code nicht verwenden, da ich nicht sicher bin, ob es dasselbe sein wird oder in der Zukunft ändern. Gibt es eine Möglichkeit, das XML-Element zu lesen, ohne den Namensraum im Tag-Namen fest zu codieren?

    
Anand Jayabalan 17.05.2013, 20:03
quelle

4 Antworten

8

Die W3C dom Methode für namespaced Elemente:

%Vor%

IIRC frühere Version des W3C-DOM hatte keine Unterstützung für Namespaces, also verwende ich es nicht. Wenn Sie jedoch das obige mit dem vollständigen NamespaceURI http://schemas.xmlsoap.org/soap/envelope/ verwenden, sollte es funktionieren. Das Präfix ist unwichtig - es hat keine Permanenz außerhalb des Dokuments, in dem es verwendet wird.

versuche es also:

%Vor%     
peter.murray.rust 17.05.2013, 20:59
quelle
1

Erhalte zuerst den Namensraum

%Vor%

Verwenden Sie dann nameSpace variable accordingly

zB:

%Vor%     
Jamshed 08.05.2017 04:07
quelle
0

Sie könnten den Namespace immer einer Variablen zuweisen, dies würde es ermöglichen, sie in der Zukunft zu ändern.

    
Tobes 17.05.2013 20:19
quelle
0

Versuchen Sie, den XPath-Ausdruck zu verwenden. Siehe Beispielcode unten.

%Vor%     
Rakesh 24.02.2016 07:15
quelle

Tags und Links