The Rise and Fall of CORBA
Michi Henning, who used to be one of the most well-known public figures in the CORBA scene, has written an article for ACM queue describing "the rise and fall of CORBA". Despite its focus on this particular technology, which many view as one of the alternatives for implementing service-oriented architectures, some of his arguments might be considered applicable for the standard and specifications in the Web services space:
By combining features, specifications end up as the kitchen sink of every feature thought of by anyone ever. This not only makes the specifications larger and more complex than necessary, but also tends to introduce inconsistencies: Different features that, in isolation, are perfectly reasonable can subtly interact with each other and cause semantic conflicts.
To be fair, the often criticized closed-door process most MS/IBM-driven WS specifications are created in addresses some of these problems. WSDL 2.0 and XML Schema (part 1, part 2) might be considered canonical examples of design by committee.
Doug Schmidt, another very respected name in the CORBA scene, weighs in with some thoughtful comments and related links in the comp.object.corba newsgroup; another interesting follow-up is by Steve Loughran, co-author of the influential "Rethinking the Java SOAP Stack" report. Whatever one may think about the reasons for CORBA's failure - or in fact, whether one believes CORBA has failed at all - it's certainly worth being aware of mistakes made in the past to avoid them in the future.
It could happen to us!