Ankh, I'm not sure what to make of your comment about turning on heels... ;) I've read parts of the Gormenghast trilogy, and I love the atmosphere that Mervyn Peake creates. What can I say, titus is my real name!
As far as whither XML... My Cartwheel/FamilyRelations software can communicate between client & server using an XMLish data format, and I recently extended it to save/load this format from disk. This way people can load analyses offline. The only real problem I ran into was that the files can contain large analyses & I ended up doing a Bad Thing and encapsulating the analyses as blobs within the XML data. Not sure what I else I could have done; using XML properly would have made the files 50 times larger.
I spent some time writing Java, Python, and C++ parsers for the format, but then realized that until I made the system more generally useful no one was going to care but me. So, I adhered to Rule Y and just built the libraries without writing a detailed spec. So no DTD, no spec, just an internal feature format that could be regularized were anyone interested. Which they're not ;).
I've spent more time on the RPC route in recent years, and am now stuck on the fence about the future. My next set of features could depend on XML-RPC to communicate data, but then the data can't be accessed without a server connection. This seems like a bad idea, but the overhead of writing the XML I/O functions also seems unnecessary at the moment.
But I'm sure that's more than you wanted to know...