Tim recently responded to my post on RelaxNG with some compelling arguments. His rebuttal of my HTTP analogy asks why we’re focused on supporting additional SOAP transports, such as TCP, when HTTP seems to work ok and is extremely interoperable. He proposes that in a similar fashion to supporting multiple SOAP transports, it should also be possible to support multiple schema languages, making room for RNG.
My response to the transport issue comes back around to the central issue of interoperability. SOAP was intentionally designed around transport-neutrality in order to facilitate using a range of interoperable transport protocols. TCP is an example of a widespread transport that can easily be used with SOAP without significantly impacting overall interoperability potentially. Trying to standardize on some bizarre or proprietary transport would lead to the same issue I see with RNG.
Tim goes onto explain that one of the reasons he feels so strongly about schema design has to do with what he considers to be the source of truth:
There is a group of people - of which I'm one - who believe that the definition of a system's message schema is not an implementation detail projected from a set of OO types which are the source of truth. In fact, they believe just the opposite: that a system's message schema is the source of truth and the OO types you choose to project in a particular process is the implementation detail.
For the record, I totally agree with Tim here. I also consider myself part of the-message-is-the-source-of-truth group. It’s what I believe facilitates interop more than anything else as I indicated here. It’s all about interop. I would love to live in a world where adding support for new features, like RNG, could be accomplished without negatively impacting interop but it’s clear to me that we’re not there yet. Interop is simply too hard.
This discussion has lead Tim to reveal his current Relaxing Approach to XSD, which according to him, shares similar characteristics with RNG. He has expounded on this idea in a few more posts and concludes that XSD could make him very happy.
The discussion has also given Tim and I a chance to catch up on the phone on this and other things. Like Craig, Tim has motivated me once again to continue learning, this time about RNG. Associating with him is nothing less than a continual education. ;-)
Posted
Aug 25 2004, 11:44 AM
by
Aaron Skonnard