AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

RDF auslesen

Ein Thema von CalganX · begonnen am 11. Feb 2004 · letzter Beitrag vom 23. Feb 2004
Antwort Antwort
Seite 2 von 2     12   
MathiasSimmack
(Gast)

n/a Beiträge
 
#11

Re: RDF auslesen

  Alt 14. Feb 2004, 17:15
Ich glaube, du musst/darfst das auch nicht setzen, weil du ja ohnehin nicht mit XPath arbeitest. Das wollte ich dir ja eigentlich mit meinem letzten Posting sagen. Es spielt in diesem speziellen Fall nur eine Rolle, weil die XML-Datei, die vom Forum erzeugt wird, Namespaces benutzt. Den ersten für den Hauptknoten "RDF", den zweiten "erben" die ganzen anderen Knoten.

Bei deinem Weg spielt der Namespace keine Rolle.
  Mit Zitat antworten Zitat
Claude

Registriert seit: 23. Feb 2004
1 Beiträge
 
#12

Re: RDF auslesen

  Alt 23. Feb 2004, 21:22
Hi,

neu registiert *wink* - und schon eine Frage... :
Der Code hier:

Delphi-Quellcode:
  public
    XMLDoc: TDOMDocument50;
  end;

var
  Form1: TForm1;

implementation

{$R *.dfm} 

procedure TForm1.Button1Click(Sender: TObject);
begin
     ListBox1.Clear;
     Try
       If not XMLDoc.DefaultInterface.load('http://www.delphipraxis.com/rdf.php') then ShowMessage('False');
     Except
       on e : exception do showmessage(e.message);
     End;
end;

procedure TForm1.XMLDocondataavailable(Sender: TObject);
var
  xmlTopics : IXMLDOMNodeList;
  iCnt : Integer;
  jCnt : Integer;
begin
     If XMLDoc.DefaultInterface.parseerror.errorCode <> 0 then Exit;
     Try
       If XMLDoc.DefaultInterface.documentElement = Nil then Exit;
       xmlTopics:= xmlDoc.DefaultInterface.documentElement.childNodes; // Nur damit gehts - hier ist leider kein "XPath" verwendet.
// xmlTopics:= XMLDoc.DefaultInterface.selectNodes('//item/title'); // Exception: Die für diesen Vorgang erforderlichen Daten sind noch nicht verfügbar
// xmlTopics:= xmlDoc.DefaultInterface.documentElement.selectNodes('//*[name(.)="item"]/*[name(.)="title"]'); // Exception: die für diesen ...
     Except
       On E : Exception do ShowMessage(E.Message);
     End;

    For iCnt := 0 to xmlTopics.length-1
    do begin
         For jCnt:=0 to xmlTopics.item[iCnt].childNodes.length-1
           do ListBox1.Items.Add(xmlTopics.item[iCnt].childNodes.item[jCnt].Text+' : '+ xmlTopics.item[iCnt].childNodes.item[jCnt].nodeName);
         ListBox1.Items.Add('----');
       end;
end;

procedure TForm1.FormCreate(Sender: TObject);
begin
     XMLDoc:= TDOMDocument50.Create(Self);
     XMLDoc.onondataavailable:= XMLDocondataavailable;
end;

end.
macht leider nicht ganz das was er soll.
Ich hab größtenteils das von weiter oben übernommen - leider wirft er ne Exception (s. Code).
Was tun?

Viele Grüße
Claude
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 2 von 2     12   


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 12:44 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