Ten Predictions for XML in 2007 71
An anonymous reader writes "2007 is shaping up to be the most exciting year since the community drove off the XML highway into the Web services swamp half a decade ago. XQuery, Atom, Atom Publishing Protocol (APP), XProc, and GRRDL are all promising new power. Some slightly older technologies like XForms and XSLT are having new life breathed into them. 2007 will be a very good year to work with XML."
How about reasons not to use XML? (Score:2)
Re:How about reasons not to use XML? (Score:5, Informative)
If you're getting RSI from XML, you're not doing it right. Use a tool! Anyway, the real reason to use JSON instead of XML is cross-site security restrictions. You can't make an XmlHTTPRequest call from one domain to another, but you can add a <script /> tag with a src pointing somewhere else.
XML is broken (Score:5, Insightful)
So, you're saying that in order to use a markup language whose primary design goal was to be easy for human beings to work with, I should invest in buying and learning at tool? Never mind that I have never even seen a decent XML editor.
Sorry, but XML is just bad design: it's badly designed for machines, and it's badly designed for humans. Using tools to deal with it may be a workaround, but it's certainly not "doing it right".
In fact, the best compromise is probably simply not to write code in XML, but pick one of the better alternative formats and convert to XML after editing.
Re:XML is broken (Score:4, Insightful)
No, I'm saying that you should rarely have to edit XML directly yourself. For the times that you do, use a nice programmer's editor like PSPad or Visual Studio that will automatically add close tags (cut your typing in half!). The rest of the time, you should be generating your XML programmatically from some other data source.
Since when is XML "code"? Writing an XSL/T to apply to an XML file may be code-like, but in general XML should be a data format that you pass around between applications, not something you "code" yourself.
JEdit (Score:5, Informative)
May I suggest JEdit [jedit.org]? It supports XML out-of-the-box and is open source and runs anywhere and is a great* editor by any measure. If after having your XML closing tags auto-completed, indented, and validated effortlessly in this editor leaves XML still too much work for you, then I hope you never use anything beyond Vi, APL, and LaTex.**
*I said "great" not "perfect". Lets keep this civilised.
**Nothing wrong with any of these: just examples of the tersest things of which I could think.
Re: (Score:1)
Since when is XML "code"? Writing an XSL/T to apply to an XML file may be code-like, but in general XML should be a data format that you pass around between applications, not something you "code" yourself.
Code hidden as XML is everywhere. Ever since someone promoted the fallacy that XML is not code, applications everywhere have spawned little crappy domain-specific languages whose syntax is XML.
Here's a quick test: do you check the XML document in to your version control or configuration management system? Then it's code.
Re: (Score:2, Insightful)
Oddly enough, I also check-in READMEs, SETUPs, images, doc files, etc. None of those are code, and neither is my XML configuration file (for example).
Re: (Score:1)
Hear Hear! (Score:2)
Re:XML is broken (Score:4, Interesting)
Well said. A good example is RELAX NG [wikipedia.org]: write the source in the compact syntax [relaxng.org] and convert it to XML when/if you need it.
A simple compact syntax example:
The equivalent XML (and the RELAX NG XML format is considered much better than, e.g., W3C XML Schema):
(Please ignore the underscores.)
Remember people: XML may be good for data interchange between different applications because every language ever created by the gods has an XML parser, but don't use it for anything else. To quote Phillip J. Eby [dirtsimple.org]: Some people, when confronted with a problem, think "I know, I'll use XML." Now they have two problems.
Re:XML is broken (Score:4, Funny)
And I have a t-shirt that says (in the style of those motivational posters) "Abstraction: because the first step in solving any problem is always to create more problems." So, does that mean abstraction is bad, too?
Re: (Score:1)
XML is not meant to be easy to "work" with as such, it's meant to be human understandable for things like debugging and development.
The XML creators have been quite clear on a number of occasions that they never expected people to be writing XML by hand.
Re: (Score:2)
This was out of the XML creators' hands, since the basic syntax was created by the SGML designers, and they designed the syntax with the intent that it be easy to use for humans. Of course, they were wrong.
In any case, the fact remains that XML is a lousy language for humans and it's a lousy language for computers.
Re: (Score:1)
Re: (Score:2)
Re: (Score:2)
XML files are NOT "Code", but a methodology of laying out data in a hierarchical [wikipedia.org] format. The human brain structures data in a hierarchical format. But in a binary world, relational [wikipedia.org] formats are more efficient. You may be thinking of the XSLT [wikipedia.org], which is used to convert XML data to a HTML format. I would agree with you on that point. As for XSD, a met
You need a computer to use XML (Score:1, Funny)
That is right, it's extremely difficult to use XML unless you have a tool, like a computer. Technically, you can use XML with a pencil and paper, but it's difficult, and a pencil is a tool too. You can also write XML in the sand with a stick, but sticks are also tools. Another thing you can do is think about XML with your brain, but your brain is also a tool. So yes, you do have to use tools in order to use XML, and if you don't have any tools like brains or sticks or pencils or computers, then no, you sho
design by glib comments (Score:2)
Re: (Score:3, Funny)
Re: (Score:2)
There's one reason I like JSON way more than XML, and its name is RSI.
You're typing any of this stuff by hand? You're kidding right?
JSON and XML are appropriate as a wire protocol for app 2 app communication. JSON is appropriate only when the receiving application is written in java script. There are only two scenarios that I can think off right off the bat that I might hand type XML. One is a configuration file (e.g. WEB-INF\web.xml) and the other is a GRDDL [w3.org] style personal vanity site which isn't going to be that much more typing than HTML.
Typing lots of content usi
My hope.. (Score:4, Interesting)
Re: (Score:2)
Doing -what- with XML?! Thats so freakin generic, sometimes I wonder if I should put "experience with flat text files" on my resume...
Re: (Score:1, Flamebait)
Re:My hope.. (Score:4, Insightful)
What a world we live in, when knowing and doing more is derided just because it isn't buzzword compliant.
Re: (Score:2)
Re: (Score:2)
When I see "Experience with XML", i'm wondering, do they mean knowing the actual concept of XML, including namespaces, etc? Do they mean using XML as a basic data transfer format, ala Web Service? Do they mean using XML as a near database? Or do they mean full blown programming with XPath, DOM, XSLT, etc?
I've seen all 3, and more (I -have- seen job offers for programmers with 4+ years exp in XML that only wanted people to be able to read XML config
Re: (Score:2)
It wil have been replaced with the next great buzz word.
Re: (Score:2)
Re: (Score:3, Insightful)
Re: (Score:2)
Re: (Score:1)
How about "documents"? For documents it qualifies as
Re: (Score:1)
and a bad one at that.
So XML has graduated? (Score:1)
Wow, I guess I'm going to have start thinking of XML as a serious technology instead of a Latest-Fad-Tech-Widget-Buzzword-Laden curiousity. Well, I've still got the ol' fall back, WWW.
Re: (Score:1)
Re: (Score:1)
Sir, this is the Bush Regime...er, Department of State Security...uh,Secret Police....no, Department of Homeland Security. We understand that you have posted about Osama Bin Laden. Are you related to him? Would you mind coming with us so we can discuss this? Do you know where he is? Because we'd really like to talk with him. No, sir, he's not in trouble, we just have a few questions.
Oh, you were posting on /., well that's anothe
Re: (Score:1)
Z O O M ! ! !
The sound you heard was a passing, way over your head.
And you sound a bit on the angry side as well. Need a hug?
Re: (Score:1)
I read that as "parsing".
Re: (Score:1)
Damn, too bad I can't mod this discussion, I'd give you a "Funny". That was good. Dry and good. Wonder if anyone else got it.
I've got some. (Score:1, Insightful)
Who else was hoping... (Score:1)
Year of the XML formats as well? Fight! (Score:2)
Re: (Score:3, Interesting)
Re: (Score:1)
I hate XML (Score:2)
Because I know s-expressions which are easier to type and encode much more information that XML. s-expressions can be data exactly like XML, but can also be code. Beautiful code.
Because is more a marketing buzzword than real meat.
That said, I use XML when I have to, like generating XLS files in PHP. But I would not use it at all if I didn't received money for doing it.
Re: (Score:2)
Well, beauty is in the eye of the beholder, and parenthesis hell isn't particularly beautiful to me. For a human readable format, I find it a lot harder to match small closing parentheses than explicit--albeit more verbose--closing tags, especially since you very rarely find multiple consecutive identical closing tags in real data.
> That said, I use XML when I have to
Excellent, that's where the value of XML comes in. It's neither the most efficient, nor necessarily the most beautiful
Re: (Score:2, Interesting)
- A standard binary, binary-safe serialization format that allows you to serialize simple objects: int, float, (unicode) string, list of any of these types and dictionary of int, float or string any of these types.
- A real, binary-safe, flexible grammar processing tool that allows you to define grammars in EBNF and process them (preferrably, constructing and deconstructing the parse tree), being standard, clean, and multi-language. This will allow you to work with XML as we
Re: (Score:2)
The good thing about XML is that it isn't good for anything, but is mediocre for everything
The main original use case were not "INI files" or other configuration stuff, but computer documentation, and transcriptions of texts. Mixed content, such as paragraphs of running text in which certain items are marked, or tagged, in some way, was the primary goal. We really didn't predict
My predictions (Score:2)
2) slower and
3) more hierarchical database 'bolt ons' with exciting new ways of violating ACID.
What? Me cynical?
XML and Web services (Score:2)
What I don't get is what the big deal is with XML web services, especially SOAP, sure it allows you to send data fairly easily, but it seems that we are adding computational complexity and bandwidth overload to the mix. I have used SOAP web services and am not sure why it is so popular compared to XML-RPC.
Isnt there a more efficient way to send data than in XML?
Re:XML and Web services (Score:4, Informative)
A better comparison is - Is SOAP any better than CORBA for what SOAP is being used for. It was initially sold with the "port 80" and "easier to debug than a binary protocol" arguments. Those don't hold much water any longer. Further, SOAP added a ton of extensions obliterating any ease of use promises, a trap that CORBA itself fell into. Heck, even the basic WSDL spec turned out to be difficult enough that stub generators aren't available for most languages. Python recently got one last week, but dynamic languages mostly went without.
If all that one does is typed stateless procedural calls, CORBA is hardly anymore complex than SOAP and heck of a lot more efficient than SOAP.
Re: (Score:1)
SOAP is your typical bloated, overengineered, nauseatingly verbose, terribly inefficient, butt ugly W3C "recommendation". Better not let them "recommend" you anything else.
We only needed RPCs with a standard serialization format covering lists and dictionaries for those who work with productive languages. NOT in XML format, that just sucks, and congratulations on making web services useless for anything where performance is important - even for looping over calls.
CORBA (Score:1)
Re: (Score:2)
Re: (Score:1)
Moo (Score:1)
<Prediction>All</Prediction>
<Prediction>Your</Prediction>
<Prediction>XML</Prediction>
<Prediction>Are</Prediction>
<Prediction>Belong</Prediction>
<Prediction>To</Prediction>
<Prediction>Us</Prediction>
<Prediction></Prediction>
<Prediction></Prediction>
<Predictions>
Buzzwords (Score:1, Funny)
(because XML is a universal language and networks did not allow you to do this already.)
The trend is now to build XML (*fap*fap*fap*), then u
My web goes to 11.0 (Score:1)
What are you doing back on Web 3.0? My web goes to 11.0!
-Don
XASMML will bring back performance (Score:1)
Now included free with Office XPASM!
I feel greasy (Score:1)