XML :: Filter :: DOMFILTER :: LIBXMLXML :: FILTER :: DOMFILTER :: LIBXML is een SAX-filter, waardoor DOM-verwerking van geselecteerde subbomen mogelijk is. | |
Download nu |
XML :: Filter :: DOMFILTER :: LIBXML Rangschikking & Samenvatting
Advertentie
- Vergunning:
- Perl Artistic License
- Prijs:
- FREE
- Naam uitgever:
- Petr Pajas
- Uitgever website:
- http://search.cpan.org/~pajas/
XML :: Filter :: DOMFILTER :: LIBXML Tags
XML :: Filter :: DOMFILTER :: LIBXML Beschrijving
XML :: Filter :: DOMFilter :: LibXML is een SAX Filter waardoor DOM verwerking van geselecteerde substructuren. XML :: Filter :: DOMFilter :: LibXML is een SAX Filter waardoor DOM verwerken van geselecteerde subtrees.SYNOPSIS gebruik XML :: LibXML; gebruik XML :: Filter :: DOMFilter :: LibXML; mijn $ filter = XML :: Filter :: DOMFilter :: LibXML-> new (Handler => $ handler, XPathContext => XML :: LibXML :: XPathContext-> new (), Process => / * / bar'=> process_bar, 'baz => process_baz]); mijn $ parser = XML :: SAX :: YourFavoriteDriver-> new (Handler => $ filter); # Sommige DOM verwerking sub process_bar {mijn ($ knooppunt) = @ _; mijn $ doc = $ node> ownerDocument; $ Node> appendTextChild ( "noot", "Hallo wereld!"); $ Node> parentNode-> InsertAfter ($ doc-> createElement ( "foo"), $ knooppunt); } Sub process_baz {mijn ($ knooppunt) = @ _; $ Node> unbindNode; } Deze module vormt een compromis tussen SAX en DOM verwerking doordat gebruik DOM API slechts redelijk kleine delen van een XML-document te verwerken. Het werkt als een SAX filter tijdelijk het bouwen van kleine DOM bomen rondom onderdelen geselecteerd door gegeven XPath-expressies (met enkele beperkingen, zie "BEPERKINGEN"). Het filter heeft twee staten, die zal worden aangeduid als A en B hier. De begintoestand van het filter A.In de stand A, wordt slechts een beperkte verticale gedeelte van de DOM-structuur opgebouwd. Alle andere dan start_element SAX gebeurtenissen worden immediatelly doorgegeven aan Handler. Op start_element gebeurtenis, wordt er een nieuw element knooppunt gecreëerd in de DOM-boom. Alle mogelijke bestaande siblings van de nieuwe knooppunt verwijderd. Dus, terwijl in staat A, is er precies één knooppunt op elk niveau van de boom. Nu zijn alle XPath-expressies worden gecontroleerd in het kader van de nieuw gecreëerde node. Als geen van de uitdrukkingen wedstrijden, de parser blijft in stand A en passeert de start_element evenement Handler. Anders wordt de callback geassocieerd met de eerste expressie die afgestemd is onthouden en de parser toestand verandert naar toestand B B.In het filter bouwt een volledige subboom DOM van de nieuwe volgens de inkomende gebeurtenissen. Er worden geen gebeurtenissen doorgegeven aan Handler in dit stadium. Wanneer de substructuur voltooid (dat wil zeggen het overeenkomstige eind-tag wordt aangetroffen), de callback behorende bij de XPath expressie die aangepast is uitgevoerd. Het hoofdelement van de deelboom doorgegeven aan de callback subroutine als enige argument.The callback mag elke DOM bewerkingen op de DOM substructuur zelfs te vervangen door één of meer nieuwe substructuren. De callack moet echter behouden het element ouderknooppunt en alle voorouder knooppunten intact. Als u dit niet te doen kan leiden tot een fout of onvoorspelbare results.When de callback rendementen worden alle substructuren die nu worden weergegeven in de DOM-boom onder de oorspronkelijke element ouder series te SAX evenementen en doorgegeven aan Handler. Daarna worden ze verwijderd uit de DOM-boom en het filter keert terug naar de staat A.Limitations: · Merk op dat dit soort verwerking zeer de hoeveelheid informatie die de XPath motor kan gebruiken beperkt. Het meest opvallend is, kunnen elementen niet worden geselecteerd door de inhoud ervan. De enige informatie die aanwezig is in de boom op het moment van de XPath evaluatie is de naam en de kenmerken van het element en dezelfde informatie voor al haar voorouders. Er is niets bekend over mogelijke onderliggende knooppunten van het element, evenals van zijn positie binnen zijn broers en zus op het moment dat de XPath-expressies worden geëvalueerd. Vereisten: · Perl
XML :: Filter :: DOMFILTER :: LIBXML Gerelateerde software
HTML :: Mail
HTML :: MAIL is een PERL-extensie voor het verzenden van e-mails met ingesloten HTML en media. ...
141
DBIX :: MIGRATIE :: Directories
DBIX :: MIGRATIE :: Directories is een PERL-module om SQL-schema's te installeren / verwijderen / upgraden / downgraden. ...
190
NET :: BITTORRENT :: LIBBT :: TRACKER
NET :: BITTORRENT :: Libbt :: Tracker is een PERL-module om toegang te krijgen tot een tracker die onder Libttracker wordt uitgevoerd. ...
179