B
Moinsen zusammen,
gibt es bei TXMLDocument eine Möglichkeit den kompletten Baum nach einem Bestimmten Node zu durchsuchen? Bisher habe ich immer jede Ebene einzeln durchsuchen müssen, das ist aber reichlich unelegant und die XML-Dateien die mein Programm auswerten soll halten sich nicht (nur) an eine einzige Norm.
Kleines Beispiel:
<?xml version="1.0" encoding="ISO-8859-1" ?>
<rdf:RDF
xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
xmlns="http://my.netscape.com/rdf/simple/0.9/">
<channel>
<title>heise online news</title>
<link>http://www.heise.de/newsticker/</link>
<description>Nachrichten aus der Welt des Computers</description>
</channel>
<item>
<title>Neues Jugendschutzrecht wird nicht weiter verschärft</title>
<link>http://www.heise.de/newsticker/data/jk-04.04.03-005/</link>
</item>
<item>
<title>Internet Explorer soll sich leichter entfernen lassen</title>
<link>http://www.heise.de/newsticker/data/anw-04.04.03-002/</link>
</item>
<item>
<title>Microsoft hat etwas gegen den Wechsel Münchens zu Linux</title>
<link>http://www.heise.de/newsticker/data/tol-04.04.03-002/</link>
</item>
<item>
<title>Einigung über Lizenzzahlungen von Web-Radios</title>
<link>http://www.heise.de/newsticker/data/jk-04.04.03-004/</link>
</item>
<item>
<title>Gewinnwarnung bei Peoplesoft</title>
<link>http://www.heise.de/newsticker/data/tol-04.04.03-001/</link>
</item>
<item>
<title>Microsofts Digitalkino-Engagement trägt erste Früchte</title>
<link>http://www.heise.de/newsticker/data/nij-04.04.03-000/</link>
</item>
<item>
<title>"Bill Gates erschossen" -- Asiens Börsen trudeln nach Falschmeldung</title>
<link>http://www.heise.de/newsticker/data/tol-04.04.03-000/</link>
</item>
<item>
<title>Nach Verzögerungen ist FreeBSD 4.8 freigeben [Update]</title>
<link>http://www.heise.de/newsticker/data/jk-04.04.03-003/</link>
</item>
<item>
<title>MSN schließt Erwachsenen-Gruppen</title>
<link>http://www.heise.de/newsticker/data/uma-04.04.03-000/</link>
</item>
<item>
<title>Musikindustrie klagt über existenzielle Gefährdung durch Kopien</title>
<link>http://www.heise.de/newsticker/data/jk-04.04.03-002/</link>
</item>
<item>
<title>US-Behörden verschlafen Sicherheitsinitiative</title>
<link>http://www.heise.de/newsticker/data/svh-04.04.03-000/</link>
</item>
<item>
<title>Hannover Messe Industrie vom Pech verfolgt</title>
<link>http://www.heise.de/newsticker/data/jk-04.04.03-001/</link>
</item>
<item>
<title>US-Musikindustrie verklagt Studenten wegen Tauschbörsen</title>
<link>http://www.heise.de/newsticker/data/jk-04.04.03-000/</link>
</item>
<item>
<title>Rechtsanwalt fordert Löschung der Marke "Linux" in Deutschland</title>
<link>http://www.heise.de/newsticker/data/anw-04.04.03-001/</link>
</item>
</rdf:RDF>
// ******************************
// 2. Beispiel
// ******************************
<?xml version="1.0" encoding="iso-8859-1" ?>
<!-- generator="HPE/1.1" -->
<!-- Copyright (C) 2000-2002 News Is Free. Terms Of Service http://www.newsisfree.com/termsofservice.php -->
<rss version="0.91">
<channel>
<title>ComputerWoche: Nachrichten</title>
<link>http://www.computerwoche.de/index.cfm?pageid=254</link>
<description>COMPUTERWOCHEonline bedient IT-Profis mit den Informationen, die sie für ihre tägliche Arbeit benötigen. (By http://www.newsisfree.com/syndicate.php - FOR PERSONAL AND NON COMMERCIAL USE ONLY!)</description>
<language>de</language>
<webMaster>mkrus@newsisfree.com</webMaster>
<lastBuildDate>04/04/03 12:40 CEST</lastBuildDate>
<image><link>http://www.newsisfree.com/sources/info/4114/</link><url>http://www.newsisfree.com/HPE/Images/button.gif</url><title>Powered by News Is Free</title><width>88</width><height>31</height></image>
<item>
<title>IBM zeichnet Bauplan für autonomes Computing</title>
<link>http://www.newsisfree.com/click/-5,16000886,4114/</link>
</item>
<item>
<title>Musikindustrie einigt sich mit Web-Radiosendern</title>
<link>http://www.newsisfree.com/click/-5,16000887,4114/</link>
</item>
<item>
<title>Amazon nimmt Googles Suchdienste unter Vertrag</title>
<link>http://www.newsisfree.com/click/-5,15998653,4114/</link>
</item>
<item>
<title>Agiplan Technosoft beantragt Insolvenz</title>
<link>http://www.newsisfree.com/click/-5,15998654,4114/</link>
</item>
<item>
<title>Vermeintlicher Tod von Bill Gates sorgt für Kurseinbrüche</title>
<link>http://www.newsisfree.com/click/-5,15998655,4114/</link>
</item>
<item>
<title>Customize this feed</title>
<link>http://www.newsisfree.com/sources/rss/4114/</link>
<description>Add more items, descriptions, time stamps, etc...</description>
</item>
</channel>
</rss>
Gesucht werden jeweils die <item>-Elemente. Wie man schön sieht, sind im ersten Beispiel diese Elemente auf *gleicher* Ebene wie das vorherige <channel>-Element. Im zweiten Beispiel allerdings sind <item>-Elemente *Kinder* von <channel>.
Leider fällt mir keine Elegante möglichkeit ein, wie ich einigermaßen Sicher an meine <items> herankomme. Hat jemand vielleicht ein Snippet, oder einen Tipp für mich?
Danke schonmal
Beechen