I'm not sure, but you may just be trying to force XML into a situation where it truly isn't needed. XML is not an end all solution to all of your programming problems. XML is an excellent solution to a lot of problems though. User configuration, multi-language environments which need to share data, and business to business data exchanges are just a few.
I will, however, add one (sort of) new technology that may (or may not) help here, XHTML. XHTML is simply HTML which is XML compliant. For instance a
<BR> tag would look like
<br/>, etc. In this way you could use
LWP::Simple and
XML::Parser to get the html page and
easily parse it. That way users can use the data for other applications, simply by getting the page and grabbing the relevant info.
I thought about doing a web-site football pool (still might, haven't gotten around to it) for work, looked at http://football.espn.go.com/nfl/scoreboard and figured that every week, I could just grab the info from that site as to who is playing, who's at home, etc, but the data (html) would be a little difficult to extract. If they used XHTML it'd be a breeze.