Hallo,
mit folgender Routine hänge ich
XML Daten an einen bestehenden Knoten:
Delphi-Quellcode:
procedure TBookInformation.insertXmlData(var targetNode: IXmlNode; const xmldata: String; const ns: String);
var
xmlDoc: IXmlDocument;
rootNode: IXmlNode;
begin
if xmlData.IsEmpty then
exit;
xmlDoc := TXmlDocument.Create(nil);
try
xmlDoc.LoadFromXML(xmlData);
xmlDoc.Active := true;
xmlDoc.Options := [doNodeAutoIndent];
rootNode := xmlDoc.DocumentElement.CloneNode(true);
targetNode.ChildNodes.Add(rootNode);
finally
xmlDoc.Active := false;
end;
end;
Wenn nun der targetNode eine namespace prefix hat, z.B. ns2,
wird dieser vererbt wenn ich einen neuen Knoten per targetNode.addChild anhänge.
Damit kann ich leider keine Struktur/keinen Zweig anhängen.
Mit targetNode.childNodes.add(..) funktioniert das, nur der prefix wird hier nicht vererbt.
Warum ist das so? Gibt es eine Lösung dazu?
Grüße
Klaus