XML :: Filter :: domfilter :: libxml

XML :: Filter :: domfilter :: libxml ist ein SAX-Filter, der die DOM-Verarbeitung ausgewählter Teilbetten ermöglicht.
Jetzt downloaden

XML :: Filter :: domfilter :: libxml Ranking & Zusammenfassung

Anzeige

  • Rating:
  • Lizenz:
  • Perl Artistic License
  • Preis:
  • FREE
  • Name des Herausgebers:
  • Petr Pajas
  • Website des Verlags:
  • http://search.cpan.org/~pajas/

XML :: Filter :: domfilter :: libxml Stichworte


XML :: Filter :: domfilter :: libxml Beschreibung

XML :: Filter :: domfilter :: libxml ist ein SAX-Filter, der die DOM-Verarbeitung ausgewählter Teilbetten ermöglicht. XML :: Filter :: domfilter :: libxml ist ein SAX-FILTER, in dem die DOM-Verarbeitung ausgewählter subtrees.synopsis XML: LIBXML verwendet wird. Verwenden Sie XML :: Filter :: domfilter :: libxml; Mein $ filter = xml :: filter :: domfilter :: libxml-> neu (Handler => $ handler, xpathcontext => xml :: libxml :: xpathcontext-> neu (), prozess => / * / bar '=> process_bar,' baz '=> cocess_baz]; Mein $ PARSER = XML :: SAX :: YourFavoritedRiver-> NEU (Handler => $ Filter); # Einige DOM-Verarbeitung sub process_bar {mein ($ node) = @ _; Mein $ doc = $ node-> inhaberdokumentation; $ node-> appendTextchild ("HINWEIS", "Hallo World!"); $ node-> parentnode-> einfügbar ($ doc-> createelement ("foo"), $ node); } sub process_baz {mein ($ node) = @ _; $ knoten-> unbindnode; } Dieses Modul bietet einen Kompromiss zwischen Sax- und DOM-Verarbeitung, indem die DOM-API verwendet werden kann, um nur einigermaßen kleine Teile eines XML-Dokuments zu verarbeiten. Es funktioniert als Sax-Filter, der vorübergehend kleine Dom-Bäume baut, um Teile, die von den von den XPath-Ausdrücken ausgewählten Teilen (mit einigen Einschränkungen, siehe "Einschränkungen") aufgebaut werden. Der Filter hat zwei Zustände, auf die As A und B hier Bezug genommen wird. Der Anfangszustand des Filters ist der Zustand A, nur ein begrenzter vertikaler Teil des Dombaums ist gebaut. Alle anderen SAX-Ereignisse außer Start_Element werden sofort an den Handler übergeben. Beim Start_Element-Ereignis wird im DOM-Baum ein neuer Elementknoten erstellt. Alle möglichen vorhandenen Geschwister des neu erstellten Knotens werden entfernt. Während in dem Zustand A, gibt es in jedem Niveau des Baums genau ein Knoten. Jetzt werden alle XPath-Ausdrücke im Kontext des neu erstellten Knotens geprüft. Wenn keine der Ausdrücke übereinstimmt, bleibt der Parser in Status A und passiert das Start_Element-Ereignis an den Handler. Andernfalls ändert der Callback, der dem ersten Ausdruck, der übereinstimmt, in erinnert ist, und der Parser ändert seinen Status in B.In status B In dieser Phase werden keine Ereignisse an den Handler weitergeleitet. Wenn der Teilbaum vollständig ist (d. H. Das entsprechende End-Tag ist angetroffen), wird der Callback, der dem mit dem abgestimmten XPath-Ausdruck zugeordnet ist, ausgeführt. Das Wurzelelement des Teiltree wird als einziges Argument an die Rückrufs-Subroutine weitergeleitet. Der Rückruf darf alle DOM-Vorgänge auf dem DOM-Teilboden durchführen, sogar, dass es mit einem oder mehreren neuen Teilbetten ersetzt wird. Der Callack muss jedoch den Elternknoten des Elements sowie alle seine Ahnenknoten intakt halten. Dies kann nicht zu einem Fehler oder unvorhersehbaren Ergebnissen führen. Wenn der Rückruf zurückgibt, werden alle Teilbänder, die jetzt im DOM-Baum unter dem ursprünglichen Element des Originalelements angezeigt werden, zu SAX-Ereignissen serialisiert und an den Handler übergeben. Danach werden sie aus dem DOM-Baum gelöscht, und der Filter kehrt in den Status A. limitation zurück: · Beachten Sie, dass diese Art der Verarbeitung die Informationsmenge hoch begrenzt, die der XPath-Motor verwenden kann. Vor allem können Elemente nicht durch ihren Inhalt ausgewählt werden. Die einzigen Informationen, die zum Zeitpunkt der XPath-Evaluierung in dem Baum vorhanden sind, ist der Name und die Attribute des Elements sowie die gleichen Informationen für alle seine Vorfahren. Es gibt nichts, was über mögliche Kinderknoten des Elements sowie seiner Position in seinen Geschwistern zum Zeitpunkt der Auswertung der XPath-Ausdrücke nicht bekannt ist. Anforderungen: · Perl.


XML :: Filter :: domfilter :: libxml Zugehörige Software

Nmnlogger.

NMNLOGGER ist ein kleiner Satz von PHP-Klassen, die einen einfachen, aber effektiven Protokollmechanismus bereitstellen. ...

126

Herunterladen