Autor Beitrag
fero
Hält's aus hier
Beiträge: 14

WinXP, Vista
D5, D7, D2005 PE
BeitragVerfasst: Fr 20.04.07 11:29 
Hi,

ich lasse von einem meiner Programme Protokolle im XML-Format erstellen. Damit das ganze dann im Browser schöner aussieht, habe ich ein XSL-Stylesheet erstellt. Aber wie kann ich dem IXMLDocument sagen, dass er dieses Stylesheet verwenden soll. Sprich:

So sieht meine XML-Datei aus:

ausblenden XML-Daten
1:
2:
3:
4:
<?xml version="1.0" encoding="iso-8859-1"?>
<report time="20.04.2007 12:17">
...
</report>


Und so sollte sie aussehen:
ausblenden XML-Daten
1:
2:
3:
4:
5:
<?xml version="1.0" encoding="iso-8859-1"?>
<?xml-stylesheet type="text/xsl" href="report.xsl" ?>
<report time="20.04.2007 12:17">
...
</report>


Hier steht in der 2. Zeile die Stylesheet-Referenz. Nur wie kann man über ein IXMLDocument diesen Eintrag erzeugen?

Vielen Dank im Voraus.

Gruß -- Andy aka fero
fero Threadstarter
Hält's aus hier
Beiträge: 14

WinXP, Vista
D5, D7, D2005 PE
BeitragVerfasst: Fr 20.04.07 12:02 
OK, hat sich erledigt. Habe eine Lösung gefunden:

ausblenden Delphi-Quelltext
1:
2:
3:
4:
5:
6:
7:
8:
var
  ipiXSL: IDOMProcessingInstruction;
  XMLDoc: IXMLDocument;
begin
  [...]
  ipiXSL := XMLDoc.DOMDocument.createProcessingInstruction('xml-stylesheet','type="text/xsl" href="report.xsl"');
  XMLDoc.DOMDocument.insertBefore(ipiXSL,XMLDoc.DOMDocument.documentElement);
end


Der Code oben fügt die entsprechende Anweisung ein. Das Ergebnis (formatierte XML-Datei) funktioniert im IE und FF prima.

-- Andy