I like your concept and agree with your design choices, so much in fact
that I independently implemented a very similar system. In my case I
packaged the responses in XML,
Difficult isn't it, XML or no XML :-) I had also considered XML, if
nothing else it is the 'in thing'. But the other side of the coin is
that if your XML replies do not comply to a recognised dictionary, the
only advantage is that ready made parsers are available.
Apart from the horrendous overhead of XML, it is not necessarily easier
I just wanted to add that I've seen some shifting where XML sometimes
is compressed (as in (g/b)zip for example) before it is saved or send over
a wire to make up for that overhead while still having a flexible format.
Of course this would definitely be overkill (and a performance cost) for
this particular application, I just wanted to mention it for completeness
sake.
Thanks :)
Rob