Einzelnen Beitrag anzeigen

sko1

Registriert seit: 27. Jan 2017
588 Beiträge
 
Delphi 10.1 Berlin Enterprise
 
#1

ChildNode sieht nicht aus wie erwartet

  Alt 16. Jun 2017, 11:03
Hallo,

ich erzeuge ein XML-Dokument mit folgendem (gekürzten) Code:

Delphi-Quellcode:
function CreateDocumentXML: boolean;
var
  Xml: IXMLDOCUMENT;
  ArchivNode, HeaderNode, ContentNode, DocumentNode, UNode: IXMLNode;
  fn : string;
begin
  Result := false;
  try
    Xml := NewXMLDocument;
    Xml.Encoding := 'utf-8';
    Xml.Options := [doNodeAutoIndent]; // looks better in Editor ;)
    ArchivNode := Xml.AddChild('archive');
    HeaderNode := ArchivNode.AddChild('header');
    ContentNode := ArchivNode.AddChild('content');
    DocumentNode := ContentNode.AddChild('document');
    ArchivNode.Attributes['version'] := '3.0';
    ArchivNode.Attributes['generatingSystem'] := 'Test';
    ArchivNode.Attributes['xmlns:xsi'] := 'http://www.w3.org/2001/XMLSchema-instance';
    ArchivNode.Attributes['xsi:schemaLocation'] := 'http://xml.datev.de/bedi/tps/document/v03.0 document_v030.xsd';
    ArchivNode.Attributes['xmlns'] := 'http://xml.datev.de/bedi/tps/document/v03.0';
    //die beiden Untereinträge
    UNode := HeaderNode.AddChild('date');
    UNode.Text := Formatdatetime('yyyy-mm-dd hh:nn:ss',now);
    UNode := HeaderNode.AddChild('description');
    UNode.Text := 'Datenübergabe';
...
    fn := TPath.Combine(ExportPfad, 'document.xml');
    if TFile.Exists(fn) then
      TFile.Delete(fn);
    Xml.SaveToFile(fn);
  except
    LogAusgabe('Fehler bei Erzeugung document.xml !');
    exit;
  end;
  Result := true;
end;
und bekomme dieses Dokument:
Zitat:
<?xml version="1.0" encoding="utf-8"?>
<archive version="3.0" generatingSystem="Test" xmlnssi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://xml.datev.de/bedi/tps/document/v03.0 document_v030.xsd" xmlns="http://xml.datev.de/bedi/tps/document/v03.0">
<header xmlns="">
<date>2017-06-16 10:53:25</date>
<description>Datenübergabe</description>
</header>
<content xmlns="">
<document/>
</content>
</archive>
Die fett markierten Einträge möchte ich aber nicht, nur wie bekomm ich die weg?

Ciao
Stefan
  Mit Zitat antworten Zitat