Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   XML (https://www.delphipraxis.net/46-xml/)
-   -   Delphi DOCTYPE definieren (https://www.delphipraxis.net/42395-doctype-definieren.html)

xaromz 18. Mär 2005 09:51


DOCTYPE definieren
 
Hallo zusammen.

Da ich gerade mit dem Problem konfrontiert war, bei einem XML-Dokument einen DOCTYPE zu erstellen und leider nicht weitergekommen bin (auch die Vorschläge hier im Forum sind nicht wirklich zu gebrauchen), hab ich mir mal eine Lösung überlegt.

Hier für alle, die das gleiche Problem haben und nicht weiterkommen.

Delphi-Quellcode:
var
  XML : TXMLDocument;
begin
  XML := TXMLDocument.Create(Application);
  XML.Active := True;

  // XML-Header schreiben (<?XML ... ?>)

  // XML mit Daten füllen


  // --------------------
  // Hier der interessante Part:

  XML.XML.Insert(1, '<!DOCTYPE blablabla >');

  // Den Text manuell ändern deaktiviert das Dokument, darum:
  XML.Active := True;

  // --------------------
 
  XML.Free;
end;
Vielleicht kann ja jemand mit der Lösung was anfangen.

bis denn
xaromz

sakura 18. Mär 2005 09:55

Re: DOCTYPE definieren
 
Das geht auch "offiziell" ganz einfach:
Delphi-Quellcode:
  XMLDoc.insertBefore(XMLDoc.createProcessingInstruction('xml',
      'version="1.0" encoding="UTF-8"'), XMLDoc.documentElement);
...:cat:...

xaromz 19. Mär 2005 17:31

Re: DOCTYPE definieren
 
Hallo,

Zitat:

Das geht auch "offiziell" ganz einfach:
ich meinte nicht die XML-Version, Encoding usw., sondern den DOCTYPE. Ich hab mir jetzt nicht angeschaut, ob man das auch über diese Funktion setzen kann, werd's mal probieren. Als ich sowas mal probiert hab, hat mir die Komponente immer Fehler entgegengeschmissen. Naja, vielleicht hab ich auch was falsch gemacht.

Andere Frage, gibt's irgendwo ne vernünftige Doku zu der Komponente, das was bei Delphi dabei ist kann man ja eigentlich nur als Witz bezeichnen.


Bis dann
xaromz

xaromz 20. Mär 2005 09:57

Re: DOCTYPE definieren
 
Tag zusammen,

ich habe mir das jetzt mal angesehen. Wie ich mir dachte kann man mit diesen Funktionen keinen DOCTYPE definieren. Die XML-Version ist eine Processing instruction und geht mit <? los. Ich hab keine Ahnung, wie man den DOCTYPE nennt, aber er geht mit <! los. Das kann man wohl nicht so einfach setzen. Es gibt ja die Möglichkeit, den DOCTYPE über IDOMDocument.doctype zu lesen, aber eben nur zu lesen.

bis dann
xaromz


Alle Zeitangaben in WEZ +1. Es ist jetzt 16:48 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