What is XML?

  • Comments posted to this topic are about the content posted at http://www.sqlservercentral.com/columnists/shirsch/whatisxml.asp

  • At last sanity!. XML is just another technical solution in search of a problem.

    Many years ago a user said "We have a problem sending our orders to  xyz co. ltd -  their system doesnt understand our systems data format". A passing techy thought "I could fix that!" and suggested xml. Therby missing the point completely.

    The real issue when communicating data twixt diferent systems is not that system B does not know which field holds system A's stock code, its that a stock code on system A is "00123" but on system B its "WIDGET01".  XML doesnt begin to address this.

    Good data storage mediums are simple, efficient and transparent to applications. XML is complex, massively wasteful of storage and computationally an open ended black hole. It is fundamentally inappropriate as a data storage medium, and a poor choice for data transfer.

    Cage rattled ?

  • Yes the hype is crazy, I thought it would have died down by now but its still going strong!

    As my Dad once said to me "Horse's for coarse's".

    A great saying, and it simply means this, XML isnt the only way of transporting data, it's just ONE of the many ways you can transport data! If size is a problem, then use something else. No one has a gun to anyone's head telling them they must use XML, use it when it fits best. For some applications it works great, as a data store, Im sure there are other better formats. There was some huge debate over SQL2005 handling XML data types. I couldnt see the fuss, if it doesnt work for you then dont use it, and if you want to use it, its always there as an OPTION! Dont limit yourself, you only cage yourself in. Ide prefer to have a toolbox full of tools for every occasion, I dont have to use them all, buts its always good to have it just in case?

    Also dont forget that DTDs are being phased out over the "Schema", basically XML describing itsself.

    Good article dude, keep it up.

  • Stephen,

    Nice article!  Finally a simple explanation of XML!



  • Every time you use XML, God kills a kitten.

  • Thank you sooo much for writing an article that is an honest look at XML and not one that’s nothing but another praise of XML and how XML is the second coming in the programming world.  I’m so fed up with hearing how XML will solve every known computer related problem.  Personally I have no issue with Microsoft integrating XML into dotNET or even into SQL Server 2005 but I do have issue with them selling XML as the end all in development and making it sound like as if everything needs to be converted to XML as soon as possible. 


    XML is just another tool in a developer’s toolbox and anyone who sees it as anything else is fooling themselves.  I have seen many am articles and related pieces on the net and in print talking about how developers who want to stay in demand need to jump on the XML bandwagon ASAP, leaving everything else behind.  IN a few years, after a sizeable number of companies and users have tried to ‘do it all in XML’ have been thru the process and realized the folly of substituting everything else for XML, things will swing back to normal like they are now and XML will be viewed as no more then what it is, another method, option or tool for working with software.


    The smart developer will learn how and when not to use XML as well as how to use it.



    Kindest Regards,

    Just say No to Facebook!
  • Note that even .NET uses binary internally - not everything is XML.

    I agree wholeheartedly with the article. The systems at each end still need to know the schema so its no different to a binary struct - just bigger. The only advantage that I can see for XML - and it can be a big one - is that its human-readable which makes debugging and investigation a lot easier. ... but then you can write a simple decoder for any other structure.

  • I appreciate this article for it's objective voice. I've long felt the same way, but it feels like nice vindication when someone else posts similar thoughts.

    For most of my data transfers, I still feel that a the good-old comma delimited text file is peachy-keen. However, if I have to transfer long narratives/text fields, it seems like XML is the way to go. What do other programmers use when you have to transfer large text fields?

  • THANK YOU THANK YOU THANK YOU especially for pointing out that XML is heirarchical -- I've been fighting very frustrating battles with people who believe in the next silver bullet but have no appreciation for data modeling. The hard fact that people need to get is that data modeling has nothing to do with any particular technology and and everything to do with understanding the business.

  • I'm not sure that XML was intended to be a language to fully encode reality between the angle brackets. Nor is every use case possible to capture. But for the really dull ones, like exchanging business documents, the world will not miss the hours p-ed away manually coding flat ASCII mappings between EDI, Some Guy's Clever Markup Scheme, and your RDBMS.

    What it offers is a lot more reuse. It's not very good as a primary data store, but it makes the transfer of complex data easier, and using standardized parsers for manipulating it are easier than writing your own. It's just one tool among many, though a useful one.

  • Just plain out of date.

  • Awesome article.  You said what we were all thinking.  "Who actually uses this crap?"

    DBA with an attitude

  • Good article.  Unfortunately we are stuck with a vendor that thinks XML is the best and only solution to data transfers, yet they have not idea how to properly format the XML and don't believe in a DTD's or schemas.  Basically all they deliver is a text file with tags and all we get is a bunch of headaches.  I still believe XML has it’s place but after being forced to use it, I'm starting to think that it’s just a buzz-word used by management and resumes.




  • Thanks for all your kind words. A few thoughts.

    As it says in the heading in italics, I originally wrote this 7 years ago. I couldn't get it published then, because it was (and still is, really) counter to the current orthodoxy. I really don't understand the allure of what is essentially a failed idea.

    What are XML languages good for? A major clue is in their name: markup languages. Markup languages are created for marking up text. They're not created for, nor are they good at, data transfer or data storage.

    Finally, if you do use XML for whatever reason, I strongly recommend sticking with DTD's, as opposed to the far cooler XML Schemas. In my opinion, the extra you get from schemas is not worth the extra obfuscation; in addition, schema processing is still pretty immature. During my time trying to implement the SPL project for the FDA, the official schema compiled in XMLSpy (as an XML file) but didn't compile in another tool (as a schema). What do you do in that case?

  • A good article; thanks. If you ever get the urge to do another, I've long been looking for the answer to: How do you create or consume XML from within your programs?

Viewing 15 posts - 1 through 15 (of 33 total)

You must be logged in to reply to this topic. Login to reply