Thread XML::LibXML api break?
(4 answers)
Opened by rumpi46 at 2010-07-25 22:42
Ich würde sagen, das Beispielprogramm verhält sich mit einer aktuellen Version von LibXML ganz exakt so, wie es sollte und wie man das erwarten würde.
Die Methode getElementsByTagName soll im gesamten Dokumentbaum nach Knoten mit einem bestimmten Tagnamen suchen, der im Beispielcode angegebene Tagname kommt jedoch nirgends in den angegebenen Beispieldaten vor, folglich ist es nur logisch, wenn das Ergebnis eine leere Liste ist. Um eine bestimmte Struktur im XML-Dokument zu dekonstruieren, was vermutlich der eigentliche Sinn des Beispielcodes ist, wäre die Verwendung von XPath angebracht — dazu könnte man beispielsweise einfach den Methodenaufruf von getElementsByTagName durch findnodes ersetzen. Im Übrigen wäre noch anzumerken, dass XML::LibXML bereits Unterstützung für XPath mitbringt, und das Einbinden des nicht verwendeten Moduls XML::XPath im Beispielcode nicht sinnvoll ist. When C++ is your hammer, every problem looks like your thumb.
|