Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   XML (https://www.delphipraxis.net/46-xml/)
-   -   Delphi XML erstellen, XMLDocument erstellt autom. Attribut (https://www.delphipraxis.net/122384-xml-erstellen-xmldocument-erstellt-autom-attribut.html)

Thanatos81 15. Okt 2008 09:07


XML erstellen, XMLDocument erstellt autom. Attribut
 
Moin zusammen!

Ich bin gerade dabei, eine XML-Datei mittels TXMLDocument zu erstellen. Ein kleines Problem taucht aber jetzt schon am Anfang auf.
Mein Code ist folgender:
Delphi-Quellcode:
var
  listNode, orderNode, headerNode, childNode: IXMLNode;
begin
  XMLDocument1.Encoding := 'ISO-8859-1';
  listNode := XMLDocument1.AddChild('ORDER_LIST');

  orderNode := listNode.AddChild('ORDER');
  orderNode.Attributes['xmlns'] := 'http://www.opentrans.org/XMLSchema/1.0';
  orderNode.Attributes['xmlns:xsi'] := 'http://www.w3.org/2001/XMLSchema-instance';
  orderNode.Attributes['version'] := '1.0';
  orderNode.Attributes['type'] := 'standard';

  headerNode := orderNode.AddChild('ORDER_HEADER');
  headerNode.AddChild('CONTROL_INFO');

  childNode := headerNode.ChildNodes['CONTROL_INFO'].AddChild('GENERATOR_INFO');
  childNode.Text := 'XML Generator';
  childNode := headerNode.ChildNodes['CONTROL_INFO'].AddChild('GENERATION_DATE');
  childNode.Text := DateTimeToXMLTime(now);
end;
Ich erhalte folgende Ausgabe:
XML-Code:
<?xml version="1.0" encoding="ISO-8859-1"?>
<ORDER_LIST>
  <ORDER xmlns="http://www.opentrans.org/XMLSchema/1.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" version="1.0" type="standard">
    <ORDER_HEADER xmlns="">
      <CONTROL_INFO>
        <GENERATOR_INFO>XML Generator</GENERATOR_INFO>
        <GENERATION_DATE>2008-10-15T09:57:18.894+02:00</GENERATION_DATE>
      </CONTROL_INFO>
    </ORDER_HEADER>
  </ORDER>
</ORDER_LIST>
Mein Problem ist, dass der Knoten "ORDER_HEADER" das leere Attribut "xmlns" erhält, welches dort aber nicht hingehört. Hat jemand einen Hinweis für mich, was ich da verkehrt mache?

Schönen Dank im Voraus!
P.S.: Ich weiß, dass der Code nicht ideal ist, es ging mir erstmal nur darum mich mit XML-Dateien zu beschäftigen.

//Edit
Den Threadtitel etwas aussagekräftiger gestaltet

nahpets 15. Okt 2008 12:17

Re: XML erstellen
 
Hallo,

funktioniert der Quelltext so, wie Du ihn hier eingestellt hast? Ich laufe bei der zweiten Zeile auf eine Schutzverletzung.
Falls es nicht der vollständige Quelltext ist, poste bitte mal den Rest (eventuell liegt ja da der Fehler).

Thanatos81 15. Okt 2008 12:31

Re: XML erstellen
 
Zitat:

Zitat von nahpets
Hallo,

funktioniert der Quelltext so, wie Du ihn hier eingestellt hast? Ich laufe bei der zweiten Zeile auf eine Schutzverletzung.
Falls es nicht der vollständige Quelltext ist, poste bitte mal den Rest (eventuell liegt ja da der Fehler).

Das hatte ich auch erst, dann habe ich im OI das XMLDocument1 active auf true gesetzt. Ist das bei dir eventuell auch das Problem? Dann kann ich das Trestprojekt auch gerne anhängen.

marabu 15. Okt 2008 12:40

Re: XML erstellen, XMLDocument erstellt autom. Attribut
 
Hallo Thomas,

kennst Du diesen Thread?

Freundliche Grüße

Thanatos81 15. Okt 2008 12:53

Re: XML erstellen, XMLDocument erstellt autom. Attribut
 
Suchfunktion da war ja was :oops:

Dann schau ich mir das mal in Ruhe an, und falls ich noch Fragen habe, dann melde ich mich wieder. Erstmal schönen Dank!


Alle Zeitangaben in WEZ +1. Es ist jetzt 06:46 Uhr.

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz