I would say Petal offers the same sort of approach as Seamstress.
I thought Petal was the same thing as Seamstress but after joining the GMANE list and reading the docs it is very different.
- Petal provides a mini-language. Seamstress and XML::LibXML usage is nothing but object-oriented Perl.
- Petal is xml-based, which is fine if you have well-done XHTML. Seamstress is based around the flexible HTML::TreeBuilder which uses HTML::Parser and can use old skool HTML with no problem.
- did you see my post about creating alternating table rows with Petal? The way to do that in Seamstress or XML::LibXML is vastly different and in neither of our cases involves a mini-language.