Probably the majority of people who would want XML in mIRC don't see much multi-level nodes.

Most commonly XML (that people see) is single level based (I did say commonly) and that wouldn't be hard to make a parser with a simple loop an regex/gettok.

But for finite level nodes you'd just need to do some recursion and regex/gettok (I'd use regex) but with recursion (I know it's not *technically* possible without timers/dummy aliases calls) you could probably easily figure out how to make the hierarchy.

I don't personally think it would be very hard just take some logic and planning. But of course it wouldn't be as efficent as one in C/C++ like Khaled could provide ... but then again, there's no fun in that =P