| Processing XML with Perl |   | Michel Rodriguez | 
|  Filtering vs Extracting |   |  XML::Pyx | 
XML transformation Modules
| Name | Model | Description | 
| XML::DOM | tree | implements W3C's Document Object Model, robust and widespread | 
| XML::DT | mixed | omnimark-like features, mature | 
| XML::EasyOBJ | tree | based on XML::DOM, recent | 
| XML::Filter::Hekeln | stream | a filter with a attribute-oriented syntax, alpha | 
| XML::Grove | tree | uses visitors to walk the document, mature | 
| XML::Node | stream | simplifies the stream interface to XML::Parser, recent | 
| XML::Parser | stream | the base of all XML transformation modules, includes a tree mode | 
| XML::PatAct::* | various | a series of modules for associating patterns with action also a template to create new PatAct module | 
| XML::PYX | stream | the pyx, pyxv and pyxw tools are the real interesting part, mature | 
| XML::RAX | record | treats an XML document as a table, recent (but simple) | 
| XML::Simple | tree | simple tree interface to XML files, widely used, mature | 
| XML::Twig | mixed | can build trees for just parts of an XML document | 
In addition other modules, such as XML::XQL and XML::XPath can be used for XML transformation.
|  Filtering vs Extracting |   |  XML::Pyx |