AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Programmieren allgemein XML Delphi MSXML: Kurzform bei leerem Tag abschalten?
Thema durchsuchen
Ansicht
Themen-Optionen

MSXML: Kurzform bei leerem Tag abschalten?

Ein Thema von McMorton · begonnen am 12. Mär 2006 · letzter Beitrag vom 15. Mär 2006
Antwort Antwort
McMorton

Registriert seit: 8. Mär 2006
45 Beiträge
 
#1

MSXML: Kurzform bei leerem Tag abschalten?

  Alt 12. Mär 2006, 17:47
Hallo.

Ich hoffe ihr könnt mir helfen.
Ich nutze den Microsoft Parser (MSXML), zum Erstellen einer XML Datei (in Delphi 2005).

Dabei habe ich folgendes Problem: Wenn ich ein leeres Tag habe (also nur Attribute) verwendet der Parser automatisch die Kurzform.
Ich brauche das XML-Dokument aber in der anderen Form.
Gibt es irgenteine Möglichkeit den Parser da drauf umzustellen? Oder muss ich einen anderen verwenden?

Hier ein Beispiel:

So sollte es sein:

<BEISPIEL x="Attribut"></Beispiel>


Und so gibt es der Parser aus:

<BEISPIEL x="Attribut"/>

Schon einmal Danke für eure Hilfe
  Mit Zitat antworten Zitat
marabu

Registriert seit: 6. Apr 2005
10.109 Beiträge
 
#2

Re: MSXML: Kurzform bei leerem Tag abschalten?

  Alt 12. Mär 2006, 18:14
Herzlich willkommen in der Delphi-PRAXiS, McMorton.

Ich arbeite seit Erscheinen des MSIE5 mit XML und muss zugeben, dass deine Anforderung mir nie unter gekommen ist. Die Produktion von empty tags ist völlig standardgemäß. Kann es sein das der Prozessor, den du auf den XML output ansetzt, nicht korrekt arbeitet? Warum brauchst du ein end tag für leere Elemente?

Freundliche Grüße vom marabu
  Mit Zitat antworten Zitat
McMorton

Registriert seit: 8. Mär 2006
45 Beiträge
 
#3

Re: MSXML: Kurzform bei leerem Tag abschalten?

  Alt 13. Mär 2006, 19:45
Ich benutze XML nur als Container für einen anderes Unterformat.
Dieses ist leider genormt. Und die Normung schreibt das Endzeichen vor.

Wen das mit dem Parser nicht geht werd ich wohl zum erstellen der XML einen eigenen "Mini-Parser" schreiben müssen
(ist nur ne winzige XML mit höchstens 3 Nodes).
  Mit Zitat antworten Zitat
Chewie

Registriert seit: 10. Jun 2002
Ort: Deidesheim
2.886 Beiträge
 
Turbo Delphi für Win32
 
#4

Re: MSXML: Kurzform bei leerem Tag abschalten?

  Alt 13. Mär 2006, 19:58
Sicherlich gibt es auch Parser, bei denen man festlegen kann, dass Tags immer in der Langform geschrieben werden. Bei den XML-Bibliotheken für Java, die ich kenne, ist das möglich, ich nehme daher an, dass das auch bei nativen Bibliotheken geht.
Martin Leim
Egal wie dumm man selbst ist, es gibt immer andere, die noch dümmer sind
  Mit Zitat antworten Zitat
McMorton

Registriert seit: 8. Mär 2006
45 Beiträge
 
#5

Re: MSXML: Kurzform bei leerem Tag abschalten?

  Alt 13. Mär 2006, 20:10
Mal sehen, ob ich nen anderen nehme. Das ganze soll so schlank wie möglich sein.
Den XML-Parser bräuchte ich nicht mitliefern (das Prog. kommmt nur auf Rechnern zum Einsatz wo der drauf ist). Die anderen müßte ich dann ja beipacken
  Mit Zitat antworten Zitat
McMorton

Registriert seit: 8. Mär 2006
45 Beiträge
 
#6

Re: MSXML: Kurzform bei leerem Tag abschalten?

  Alt 15. Mär 2006, 20:24
Hi.,
Das Thema hat sich erledigt.

Man muss bloß nen Leerstring angeben. Dann gehts.
Also:

XML.DocumentElement.ChildNodes['WasauchImmer'].Text := '';
  Mit Zitat antworten Zitat
Benutzerbild von sakura
sakura

Registriert seit: 10. Jun 2002
Ort: München
11.412 Beiträge
 
Delphi 11 Alexandria
 
#7

Re: MSXML: Kurzform bei leerem Tag abschalten?

  Alt 15. Mär 2006, 20:25
Danke für das Posten dieser einfachen Lösung

......
Daniel W.
Ich bin nicht zurück, ich tue nur so
  Mit Zitat antworten Zitat
Antwort Antwort


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 03:19 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