http://www.perlmonks.org?node_id=1064063

jjanmaat has asked for the wisdom of the Perl Monks concerning the following question:

Hello,

I'm writing a script to process an HTML file and recognize a couple of new tags. The tags I want to include are similar to those in HTML::Template, in the way they work.

I was trying to get HTML::Template to do the work. However, I am doing some other processing using an HTML tree, and HTML::Element doesn't seem to handle the HTML::Template tags properly when rebuilding the HTML. This means I can't just dump the sub-tree I want to work on out as HTML and run it through as a template.

The issue is replacing things that are a block. An example I am trying to build is

<VARIF name="foo" value="test">
stuff
</VARIF>

to do the obvious. HTML::Element doesn't recognize my new tag as a valid tag, in terms of building a tree below it. However, it does see it as a tag, and when the HTML method is called, it generates a <VARIF ..> </VARIF> pair, gets rid of the </VARIF> that was there originally, and outputs the stuff after the new </VARIF>.

Any suggestions for how to get my little bit processed properly?

Thanks (and my apologies for any lack of clarity).