I refuse to let the angle brackets fall where they may!

My recent post on types got this comment (possibly a hoax) from someone who thought I was saying that I didn't like XML's lack of OO constructs. In fact, that's what I love about XML. If anything, I wish I could convince more people to stop thinking of XML as a “just a serialization syntax for objects” and embrace it - and the tools that come with it - as a powerful way to model and manipulate data.

Another recent comment (about for this post) expressed surprise that I design my Web services starting with the structure of the XML messages. The poster wanted to know why I didn't just design an object model for my problem domain and let the angle brackets fall where they may. The answer is easy: I don't think it will work. If the last 10 years have taught me anything, it's that you have to know how your distributed technology works if you want to have any chance of success. Think how much people know about the syntax and semantics of HTTP headers and HTML bodies. Why do we think we don't have to know anything about the XML we're putting into messages? And, more concretely, why are we surprised when interop, versioning and other problems crop up?

None of this means that I don't want to program using objects. It just means that I start by designing XML, then XSD, then WSDL, then I layer on classes using a very stylized coding style. At runtime, my code mixes XML techniques and object techniques, depending on my needs. Maybe someday I'll have tools that do exactly what I want and need on the wire and I won't have to work bottom up. But to my mind, at least, they're not there yet.

 


Posted Jul 23 2004, 05:36 PM by tim-ewald

Comments

nospamplease75@yahoo.com (Haacked) wrote RE: I refuse to let the angle brackets fall where they may!
on 07-23-2004 3:58 PM
Funny, I just finished writing two posts on this very topic. I demonstrate a real-world situation I'm in where I need to know what the XML looks like.

http://haacked.com/archive/2004/07/23/842.aspx
and
http://haacked.com/archive/2004/07/23/843.aspx
DevHawk wrote re: I refuse to let the angle brackets fall where they may!
on 07-23-2004 4:09 PM
I gave up on XML Serialization of objects a long time ago. We now need better tools for interacting w/ XML from our OO languages. What do you think of COmega?
DonXML Demsak wrote re: I refuse to let the angle brackets fall where they may!
on 07-23-2004 6:05 PM
I totally agree, and in my July's Programming Reading List post ( http://donxml.com/allthingstechie/archive/2004/07/22/958.aspx ) I have a rant that on this topic too. If you don't already have a copy of Berthold Daum's book "Modeling Business Objects with XML Schema" it should be your next book purchase.

Don Demsak
Girish Bharadwaj wrote Design for Distribution
on 07-23-2004 8:04 PM
Ben Lowery wrote re: I refuse to let the angle brackets fall where they may!
on 07-24-2004 5:21 AM
So Tim, having said that, how does it make you feel when Don Box and Doug Purdy say that devs shouldn't have to learn any of the WS* specs that they may be using with Indigo (see the recent interview on theserverside.net)? That bit didn't sit well with me, and your posting helped me see what it was that didn't sit well.

I may be misrepresenting their intent to some degree, (maybe they're really only talking about cases where Indigo is talking to Indigo?) but at some higher level there seems to be a mismatch here.

Any thoughts?
Michael Ruminer wrote re: I refuse to let the angle brackets fall where they may!
on 07-24-2004 6:20 AM
Amen, Brother. Repeatedly I have been beat up by some others that my web services should just expose the objects and be done when I issue an xsd that represents the data in a much more natural format for xml and for the data than serlized objects. Keep preaching it.
Kirk Allen Evans' Blog wrote Should You Learn WS-* Specs Now?
on 07-25-2004 8:57 AM
At Your Service wrote More on controlling the angle brackets...
on 07-26-2004 6:29 AM

Add a Comment

(required)  
(optional)
(required)  
Remember Me?