AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Programmieren allgemein XML Delphi XML: Namespace - Zuweisung funktioniert nicht
Thema durchsuchen
Ansicht
Themen-Optionen

XML: Namespace - Zuweisung funktioniert nicht

Ein Thema von s-off · begonnen am 21. Mai 2006 · letzter Beitrag vom 17. Mär 2009
Antwort Antwort
Seite 2 von 5     12 34     Letzte »    
s-off
(Gast)

n/a Beiträge
 
#11

Re: XML: Namespace - Zuweisung funktioniert nicht

  Alt 22. Mai 2006, 10:32
Hallo marabu,

Zitat:
Damit wollte ich nur ausdrücken, dass durch die Einführung des tags "inputx" das ursprüngliche root element "document" (um bei den tagnames aus deinem Beispiel zu bleiben) um eine Ebene weiter nach unten versetzt wurde und dadurch der XPath Ausdruck nicht "/document" sondern "/inputx/document" sein muss - wie du es ja selbst richtig erkannt hast.
hmm, damit wäre ich ja wieder da, wo ich gestern auch schon war - denn mit '/inputx/document' hatte ich es ja bereits vergeblich versucht

Zitat:
Noch ein Tip: es ist nicht gut, wenn du in einem Projekt gleich mehrere persönliche Forschungsgebiete angehst.
Das habe ich auch schon gemerkt
Nur leider kann man es sich oftmals nicht aussuchen, gerade dann, wenn einem die Zeit im Nacken sitzt. Aber in diesem Fall war es wohl tatsächlich eine absolute Fehlentscheidung Wahrscheinlich wäre ich wirklich schneller gewesen, wenn ich erst alle Themen in kleinen Beispielprojekten durchgegangen wäre

Nun ja, dann tüftel ich jetzt mal noch ein bissel mit '/inputx/document' herum.

Da aber Node := xmlDoc.selectSingleNode('/inputx/document') as IXMLDOMElement schon Nil geblieben ist, wird das wahrscheinlich wieder ein heilloses Unterfangen

Trotzdem danke, dass Ihr Euch so bemüht
  Mit Zitat antworten Zitat
MathiasSimmack
(Gast)

n/a Beiträge
 
#12

Re: XML: Namespace - Zuweisung funktioniert nicht

  Alt 22. Mai 2006, 10:38
Zitat von s-off:
Wenn Du das Thema auf Anhieb verstanden hast, als Du anfingst, Dich damit zu beschäftigen, dann finde ich das schön - geh aber bitte nicht davon aus, dass es jedem so leicht fällt, sich in neue Dinge innerhalb kürzester Zeit einzuarbeiten.
Ist sicher eine Frage des Interesses. Ich habe mit Begeisterung die entsprechenden Kapitel im Platform SDK gelesen und viel experimentiert. Dafür gibt es andere Themen, die mich weniger interessieren, und mit denen ich dann Schwierigkeiten hätte.


Nun versteh mich bitte nicht falsch, aber was ist an deiner XML-Datei denn so "intern" oder "geheim" (in Ermangelung eines besseren Begriffs), dass du hier eine ähnlich strukturierte Datei postest, aber eben nicht das Original? Es sind manchmal Kleinigkeiten, die den Erfolg verhindern (Darsteller aus der P*rnobranche hören das oft ), und dazu gehört für mich eben, dass du einerseits die falsche Datei, aber den richtigen Code zeigst.

Komm schon, Chinesen sind doch gar nicht anwesend ...
  Mit Zitat antworten Zitat
s-off
(Gast)

n/a Beiträge
 
#13

Re: XML: Namespace - Zuweisung funktioniert nicht

  Alt 22. Mai 2006, 11:00
Hehe

Geheimes steht da nicht drin - es ist nur so, dass die Datei gut 14 MB groß ist.
Daher habe ich das Ganze etwas verkürzt nachgestellt.
  Mit Zitat antworten Zitat
marabu

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

Re: XML: Namespace - Zuweisung funktioniert nicht

  Alt 22. Mai 2006, 11:10
Bei dieser Dateigröße brauchst du schon gute Argumente dafür, dass du die ganze Datei als DOM-Dokument im Hauptspeicher hältst. Schau dir mal den Speicherverbrauch im Taskmanager an. Eventuell ist ja SAX eine bessere Lösung für dein Problem.

marabu
  Mit Zitat antworten Zitat
s-off
(Gast)

n/a Beiträge
 
#15

Re: XML: Namespace - Zuweisung funktioniert nicht

  Alt 22. Mai 2006, 11:20
Au Backe - daran habe ich gar nicht gedacht.

Und ist mir ehrlich gesagt auch gar nicht unangenehm aufgefallen - hmm, bei 2GB wohl auch kein Wunder

Werde mir dieses SAX dann wohl auch mal zu Gemüte führen müssen.

*Wuaaaaaaaaaa*heul*

Danke für den Hinweis - das hätte derbe ins Auge gehen können
  Mit Zitat antworten Zitat
s-off
(Gast)

n/a Beiträge
 
#16

Re: XML: Namespace - Zuweisung funktioniert nicht

  Alt 22. Mai 2006, 12:10
Tjo,

habe nun wohl alle möglichen Kombinationen ausprobiert:

Delphi-Quellcode:
RootNode := xmlDoc.selectSingleNode('inputx');
RootNode := xmlDoc.selectSingleNode('/inputx');
RootNode := xmlDoc.selectSingleNode('//inputx');

RootNode := xmlDoc.selectSingleNode('inputx/document');
RootNode := xmlDoc.selectSingleNode('/inputx/document');
RootNode := xmlDoc.selectSingleNode('//inputx/document');

RootNode := xmlDoc.documentElement.selectSingleNode('inputx');
RootNode := xmlDoc.documentElement.selectSingleNode('/inputx');
RootNode := xmlDoc.documentElement.selectSingleNode('//inputx');

RootNode := xmlDoc.documentElement.selectSingleNode('inputx/document');
RootNode := xmlDoc.documentElement.selectSingleNode('/inputx/document');
RootNode := xmlDoc.documentElement.selectSingleNode('//inputx/document');
Ich denke mal, mehrere Möglichkeiten gibt es nicht mehr - RootNode ist jedenfalls immer NIL

Ich gebe es auf und lege den ganzen Kram ad acta - keine Lust mehr....

Vielen Dank trotzdem nochmal für Eure Unterstützung. Ihr konntet mir das Thema XML ein wenig näher bringen, auch wenn es für den finalen Erfolg nicht genügt hat - was aber wohl aus meiner eigenen Schusseligkeit resultiert. Vielleicht bin ich auch nicht offen genug, mich 100% auf das Thema einzulasssen - ich weiss es nicht.

Einen positiven Nebeneffekt hat das Ganze jedoch gehabt - ich weiss nun endlich den VirtualTreeView grundlegend zu bedienen
  Mit Zitat antworten Zitat
marabu

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

Re: XML: Namespace - Zuweisung funktioniert nicht

  Alt 22. Mai 2006, 12:21
Sascha, es müssten doch schon die ersten 5 Zeilen deiner Originaldaten reichen um dein Problem nachzustellen - oder?

marabu
  Mit Zitat antworten Zitat
s-off
(Gast)

n/a Beiträge
 
#18

Re: XML: Namespace - Zuweisung funktioniert nicht

  Alt 22. Mai 2006, 12:56
Okidoki, hier der Anfang der besagten XML-Datei:

XML-Code:
<?xml version="1.0" encoding="UTF-8"?>
<kml xmlns="http://earth.google.com/kml/2.0">
<Document>
   <Folder>
      <name>My Places</name>
       <open>1</open>
       <Folder>
         <name>Ordner1</name>
         <open>1</open>
         <Placemark>
              <name>Placemark1</name>
              <LookAt>
                <longitude>10.37993318693747</longitude>
                <latitude>19.35357660723419</latitude>
                <range>743945.2733547823</range>
                <tilt>-1.858292979523515e-013</tilt>
                <heading>1.206473994247129</heading>
              </LookAt>
              <styleUrl>root://styleMaps#default+nicon=0x307+hicon=0x317</styleUrl>
              <Point>
                <coordinates>10.37993318693747,19.35357660723419,0</coordinates>
              </Point>
         </Placemark>
  Mit Zitat antworten Zitat
MathiasSimmack
(Gast)

n/a Beiträge
 
#19

Re: XML: Namespace - Zuweisung funktioniert nicht

  Alt 22. Mai 2006, 13:14
Code:
/kml/Document/Folder
für den obersten. Schreibweise beachten! XML legt Wert auf korrekte Groß- und Kleinschreibung der Knotennamen. So ist <Document> eben nicht <document>, usw.
  Mit Zitat antworten Zitat
s-off
(Gast)

n/a Beiträge
 
#20

Re: XML: Namespace - Zuweisung funktioniert nicht

  Alt 22. Mai 2006, 14:15
Also,

Du glaubst es jetzt wahrscheinlich nicht, aber

Delphi-Quellcode:
procedure TfrmMain.toolbarButtons_btnOpenFileClick(Sender: TObject);
var
   nlist: ixmldomnodelist;
   Node: IXMLDOMElement;
begin
   if OpenDialog1.Execute then
   begin
      xmlDoc := CoDomDocument40.Create;
      xmlDoc.async := False;
      sXMLFileName := OpenDialog1.FileName;
      xmlDoc.Load(sXMLFileName);
      Node := xmlDoc.documentElement.selectSingleNode('/kml/Document/Folder') as IXMLDOMElement;
      //Node := xmlDoc.selectSingleNode('/kml/Document/Folder') as IXMLDOMElement;
      showmessage(node.text);
      oStatusBar1.Panels[0].Caption := sXMLFileName;
   end;
end;
funktioniert nicht
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 2 von 5     12 34     Letzte »    


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 15:58 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