Slashdot Log In
Celebrate the XML Decade
Posted by
CowboyNeal
on Thu Nov 16, 2006 09:49 PM
from the happy-birthday dept.
from the happy-birthday dept.
IdaAshley writes "IBM Systems Journal recently published an issue dedicated to XML's 10th anniversary. Take a look at XML application techniques, and general discussion of the technical, economic and even cultural effects of XML. Learn why XML has been successful, and what it would take for XML to continue its success."
This discussion has been archived.
No new comments can be posted.
The Fine Print: The following comments are owned by whoever posted them. We are not responsible for them in any way.
Re:Celebrate the XML Decade (Score:5, Funny)
I started this morning by talking to everyone in XML.
I hope the black eye my coworker gave me heals before my presentation to the CTO tomorrow morning
Re:Celebrate the XML Decade (Score:5, Funny)
We all needed to leave the first post in this to the guy with
the sig
"XML is like violence, if it doenst fix the problem, you arent using enough"
Or words to that effect.
Parent
Re:Celebrate the XML Decade (Score:4, Insightful)
My conspiracy theory is that XML was secretly invented by Intel in order to require 3GHz processors for the simplest of tasks.
Parent
Re:Celebrate the XML Decade (Score:5, Funny)
<greeting type="friendly">Hello, fellow coworker type dude!</greeting>
<response type="violent">Have a black eye!</response>
</conversation>
Parent
Re:Celebrate the XML Decade (Score:4, Funny)
Parent
Re:Celebrate the XML Decade (Score:5, Funny)
I took the liberty of revising the format a little, is this better?
<?xml version="1.0" encoding="UTF-8" standalone="no"?>o n"
<conversation
xmlns="http://slashdot.org/sarcasm/XML/conversati
xmlns:html="http://www.w3.org/1999/xhtml">
<participants>
<participant>
<short-name>OP</short-name>
<full-name>Original poster</full-name>
</participant>
<participant>
<short-name>CW</short-name>
<full-name>Unwitting coworker</full-name>
</participant>
</participants>
<relationships>
<two-way-relationship name="coworker">
<person>OP</person>
<person>CW</person>
</two-way-relationship>
</relationships>
<greeting time="2006-11-17T10:12:10Z" speaker="OP" targets="CW">
<type>
<demeanour>friendly</demeanour>
</type>
<speech>
<text type="text/plain">
Hello, fellow coworker type dude!
</text>
</speech>
</greeting>
<response time="2006-11-17T10:12:34Z" speaker="CW" targets="OP">
<type>
<demeanour>angry</demeanour>
<context>
<divorce type="messy"/>
<custody-battle type="messy"/>
</context>
</type>
<speech>
<text type="application/xhtml+xml">
Have a <html:em>black eye</html:em>!
</text>
</speech>
<action>
<punch>
<recipient>OP</recipient>
<aim>eye</aim>
</punch>
</action>
</response>
</conversation>
I'm sort of disappointed that I only got to use two namespaces. Can't get indentation to work either, unfortunately.
Parent
XML Debacle is more like it ;) (Score:3, Funny)
Eh, what do I know? Maybe it is that bad. =)
Re: (Score:3, Funny)
Care to share the DTD and schema you used for that?
Why XML was successful (Score:4, Insightful)
Marketing to PHBs, mostly.
However here on earth a lot of people still hand-code the stuff. IMO a C-like syntax using nested {}s would've been better.
Re:Why XML was successful (Score:5, Informative)
JSON [wikipedia.org]?
Parent
Re:Why XML was successful (Score:5, Interesting)
When we designed XML, we had over a decade of solid experience with interoperability in the world of SGML, and we also knew about the kinds of problems that different sorts of users had with different sorts of syntax.
The primary users of SGML-based documentation systems were not programmers. They were people who were often not likely to know about a bracket-matching option in an editor or about code indenting, for example. But they were still legitimate users.
You can't easily test the markup in a declarative system: if in an HTML document I used H3 instead of P in a document it might not look right, but it would still parse OK. If I muddle up Author and Title in a bibliography, same thing.
So, the redundancy of end tags in XML is there because, in practice, if you didn't have it, we had learned that our users had problems correcting their documents, and we knew that, in general, it was only rarely possible for software to give the users much help. There were some experiments early on with </>, allowed by SGML (with various options set) to end any element; it soon became obvious that this caused more problems than it was worth, and even Microsoft disabled the troublesome feature in their XML parser.
It's true that today XML is used in lots of situations we didn't predict. We were amazed that by the time we got XML published as a Recommendation there were over 200 users. So no, we didn't predict the future percfectly. But the popularity of XML shows we can't have done all that badly, really
Liam
(Liam Quin, currently W3C XML Activity Lead)
Parent
Re: (Score:3, Insightful)
Re:Why XML was successful (Score:4, Informative)
One case where it helps most is when an incorrect start tag was applied; with the empty end tag this could not be detected, and it turned out to be more comman than one might expect. You're right that the error messages often aren't good, but did you ever try debugging a large SGML document with OMITTAG and SHORTREF in use? The error message was almost always "characters found after end of document" because the required strategy by SGML (in one of the most common error situations) was to close elements until you got a match, so the parser typically closed elements all the way up the tree to the document element, and then gave up.
We were bound, at the time, to strict SGML compatibility; perhaps if we had known XML would succeed we could have made more changes, but then we would have strayed further from the well-trodden path of implementation experience.
As to comments for attributes, I agree with you; we lost them, though because we needed a language simple enough it could be processed e.g. with Perl. We didn't dare dream that Perl would support XML natively!
I agree with you that structured tools should generally be used. The redundancy and simplicity help computer-generated XML, and help to detect, say, missing portions of documents. If xml-rpc is scary, s-expr rpc is even scarier!
Liam
Parent
Re: (Score:3, Interesting)
We weren't really aiming at HTML users.
I'm afraid the only useability studies of SGML tools that I saw were not released to the public. At the time I worked for a vendor of SGML-based software (e.g. including an editor, a viewer, a development environment) and it was a matter of great concern to us.
It's possible we could open up the archives of the XML Working Group, but it would mean getting the permission of several hundred people. I'll ask some people at the upcoming XM
Re: (Score:2)
It is known as: JavaScript
Re:Why XML was successful (Score:5, Insightful)
Parent
Re: (Score:2)
I keep hearing this and it sees foolish every time. If you just used {} how would you easily tell which tag you were closing? It would be too easy to mistake one brace for another, especially when there are several tags. Sure it'd be more efficient: but the idea was to have something that was equally readable by machines and humans. You take any non-trivial piece of XHTML or other XML and convert it to your new {} syntax. Then go try to add some more mark-up to it. And to non-technical users it would be eve
Re: (Score:3, Funny)
I hack LISP, you insensitive clod!
Re: (Score:2)
Re:Why XML was successful (Score:5, Insightful)
Parent
Unfortunately I'm a Java developer... (Score:5, Funny)
Re: (Score:2)
Nothing makes a set of code harder to deal with than taking half of it and writing it in a variety of XML config files and then scattering them throughout the distribution. That way you ensure that anyone doing something foolish like trying to understand it through javadoc or use their IDE to learn it gets nowhere.
I'm going to go cry now.
Re:Unfortunately I'm a Java developer... (Score:5, Interesting)
Pro
- Easy to change the schema, don't have to convert old data.
- They didn't know exactly what XML was, so if I recommended it,
... (a.k.a. "gee whiz" factor?)
- The other developers liked the idea
ConEventually we settled on gzipped xml. It required a little more code, but everyone seemed happy. Oh, and we stored images as separate
I think my experience is pretty common, though. And from experience, libxml2 + libz is still very, very fast, and there's not a (whole lot) of wasted space.
I'd like to hear other people's success stories, if anyone wants to reply... I liked reading the article, too.
Parent
Re:Unfortunately I'm a Java developer... (Score:5, Interesting)
Arguably the single biggest problem with XML that causes slow processing is that software can predict almost nothing about an XML stream and therefore has to allow for anything. The opening bracket tells you very little about what to expect, and creates few implicit failure or non-conformance tests that allows one to terminate processing because there is no definition of "unreasonable". If I want to embed a terabyte of data between XML tags, there is no built-in basic mechanism to inform the software of how much data I should expect to see before a closing tag and no basic mechanism to cue the software as to the type of data to expect. (Yes, you can sort of do it with lots of other layers strapped on, but it isn't core and strapping it on adds complexity.) This is the primary reason it gives miserable performance as a wire protocol format -- the software cannot make decisions about the data without slurping most or all of it, with no way to predict what "most" or "all" actually is. In well engineered standards such as ASN.1, they use the good old tag-length-value (TLV) format. The "tag" tells you what to expect, the length tells you how many bytes to expect, and the value is the actual data. In short, the encoding tells the software exactly what it is about to do before it does it in enough detail that the software can make smart and performant handling decisions.
The only real advantage XML has is that it is (sort of) human readable. Raw TLV formatted documents are a bit opaque, but they can be trivially converted into an XML-like format with no loss (and back) without giving software parsers headaches. There is buckets of irony that the deficiencies of XML are being fixed by essentially converting it to ASN.1 style formats so that machines can parse them with maximum efficiency. Yet another case of computer science history repeating itself. XML is not useful for much more than a presentation layer, and the fact that it is often treated as far more is ridiculous.
Parent
Re: (Score:2)
Actually, it is not. Many people I know, and me, have trouble looking at XML config files that span more than a few rows. You need a tool that presents the XML document as a tree, so you can collapse some nodes in order to focus in the interesting ones.
Just in time for the festive season (Score:5, Funny)
Then with every following year, I'll be sending a stylesheet card which they can apply to the original XML.
And if they need to locate their names on the card, they can use
No mention of XML's creators? (Score:3, Informative)
Re:No mention of XML's creators? (Score:5, Informative)
I have to do this once per year or so, here's the 2006 iteration: I am not XML's inventor. There were 150 people in the debating society and 11 people in the voting cabal and 3 co-editors of the spec. Of the core group, I (a) was the loudest mouth, (b) was independent so I didn't have to get PR clearance to talk, and (c) don't mind marketing work.
-Tim
Parent
Don't feel too bad, Tim (Score:5, Funny)
Parent
Re: (Score:2)
Re: (Score:3, Informative)
news flash (Score:2, Insightful)
Cultural Effects? This is a spec for structuring data, not a Picasso.
Re: (Score:2)
Philistine. You just don't appreciate abstraction.
8^)
Re: (Score:2)
Oh, so text isn't "data"?
idiot.
XML Decade? (Score:5, Funny)
MCMXC was 1990...
MDCCCLX was 1860...
I give up! Which decade was XML?
- RG>
Re: (Score:2)
Re: (Score:3, Informative)
Stuck (Score:2, Insightful)
Yay! Lets party!
XML is for data interchange, nothing else. Unfortunately, it's being used for everything but.
Re: (Score:2, Insightful)
Isn't all data interchanged? From client to server, from blogger to browser, from developer to developer, etc. Any data which is not interchanged is either useless or forgotten. And XML has shown its strength in all these areas: Ease of human and computer parsing.
just plain wrong (Score:2)
a decade of ... (Score:3, Insightful)
notice too late (Score:2)
Bah, it's too late to tell us to celebrate during the decade of XML because that decade is now over!
Yeah, should have done that; celebrating.
Re: (Score:3, Interesting)
<content name="Shameless Self Promotion">
Good point, though there's a better way to edit binary files.
For example, I make a product called FileCarver which allows you to create a file format definition (in XML! heh), that describes the format of a binary file, and the program will automatically provide you with a GUI to edit it. Check it out at http:/fizzysoft.net/filecarver/
</content>
Re:XML "Sucks" (Score:4, Funny)
Parent
Re:XML "Sucks" (Score:5, Funny)
Parent
Re: (Score:2)
This article [prescod.net] argues the other side of that point. I'm not sure how convincing it is, but there are at least some benefits to the XML approach. Where the balance falls, I don't know.
Re:JSON itself is still quite bloated. (Score:4, Insightful)
The formatting strings in Janus controls come to mind.
I have heard that the new Office format (XML) was pretty unreadable.
And what is with modding everything in this thread to zero.
Parent
Re: (Score:2, Informative)
Supposedly the new version 3 standard (which uses the "modeling approach") will be much more firm with the implementors, which will hopefully mean that ever
Re: (Score:2)
It flows better this way, and I think it originally referred to sex instead of XML:
XML is like violence. If it's not solving your problem, just use more.
Re:XML -- The answer to a problem that didn't exis (Score:2)
You are trolling, right? Your rant basically consists of few obvious misunderstandings or statements that are factually wrong.
Seems like a knee-jerk reaction from someone who doesn't understand what XML is and its intended purpose. Seeing the HTML remark was rather amusing though. Way to go to show your ignorance on the subject.
BTW: XML is not designed to or intended to be a SQL replacement. Only morons would think that, claim that or use it as such.