Simplicity/Style versus “Just follow my lead”

The world of XML technologies has been an interesting one to follow over the last few years. It’s strange to see how a relatively straightforward standard such as XML (okay not so straightforward if you need to deal with PIs or CDATA or…) can be tangled in knots by the insistence of the standards bodies to go in the direction of complexity and yet more complexity.

Two cases which have been discussed recently in the blogging community are RELAX NG and REST - for example, this post by Tim Bray. RELAX NG has been around for donkeys’ years, and for most purposes required by people “on the Internet”, it is more useful. But XML Schemas have been promoted by the W3C in spite of it being both much more difficult to learn, and also being less expressive for certain forms of XML documents. Rather than go into all the arguments for/against, it’s worth having a look at this post by Dare Obasanjo for details about some reasons why people might go for one rather than the other. But most people don’t look at the technologies like in that post. For most people, you’re either a “cool technologies” person, or a “do it the way everybody else does it” person. I like RELAX NG, but not XML Schemas. And if I could help it, I would never ever look at RELAX NG. I’m in the first category, I guess :-) Others will take whatever tooling is given by their usual vendor (IBM, etc.).

Check out this post as well - this was the reason for this post, really. Again, I tend to like to choose REST rather than WS-I. For a start, it’s what I know. Again, it seems that many people choose what they’re given, though the protocols are yet more ugly ugly beasts.

Similarly, people will choose subversion rather than git (or mercurial or monotone or insert your own cool distributed SCM here). Or in some places they still use CVS (escaping from the world of CVS tomorrow, last day in work!), or some poor *astards use Clearcase - no comment there…

Leave a Reply