Click here to close now.


Agile Computing Authors: SmartBear Blog, Liz McMillan, Elizabeth White, Jayaram Krishnaswamy, Wayne Ariola

Related Topics: Java IoT, Microsoft Cloud, Linux Containers

Java IoT: Article

"The World's Gone Crazy with XML," Says Sun's Senior IT architect

Great sound bite. Now what about the reality?

"The world has gone crazy with XML and then Web services," writes Sun's senior IT architect Victoria Livschitz, in an article currently to be found on the official Sun Web site.

"SOAP and UDDI are getting enormous attention," she continues, "and yet, from a software engineering standpoint, they seem to me a setback rather then a step forward. We now have a generation of young programmers who think of software in terms of square brackets. An enormous mess of XML documents that are now being created by enterprises at an alarming rate will be haunting our industry for decades. With all that excitement, no one seems to have the slightest interest in basic computer science."

Great sound bite. Now what about the reality?

Standards activist Rick Jelliffe, CTO of Topologi in Australia, comments:

'I don't think [Livschitz] has twigged that XML, raised as a side-issue at the end of the article, could be helpful for the kind of problem she complains about earlier on - 'subroutines, functions, data structures, loops, and other totally abstract constructs that neglect -- no, numb -- human intuition.'   XML can allow a more human-friendly representation of things: a dog has three legs or whatever."

Microsoft's Dare Obasanjo, writing in the influential XML-DEV mailing list, writes: "Interesting."

"Too bad her comment is the equivalent of a sound bite with no substance at all," Obansajo (who works for Microsoft) continues. " I'd be curious to know why she thinks moving to XML from proprietary binary formats is a setback as opposed to a step forward. Maybe this is just Sun's way of justifying pushing replacing the XML in XML Web Services with ASN.1."

The last word though goes to XML expert Bob Wyman, who on the same list writes:

"From a 'computer science' point of view, you simply can't dispute what Livschitz has said. XML, etc. are a setback. But, she is wrong, I think, in her implicit equating of 'software engineering' with 'computer science.'

The strengths of XML, etc. are not in computer science. Rather, XML's strengths are in the human sciences of sociology, psychology, and political science. XML offers us no concepts or methods that weren't completely understood 'computer science' long before ASN.1 was first implemented in the early 80's. From a 'computer science' point of view, XML is less efficient, less expressive, etc. than ASN.1 binary encodings or the encodings of many other systems. However, because XML uses human readable tag names, because it is text based, easy to write, has an army of evangelists dedicated to it and many freely available tools for processing it, etc. XML wins in any system that values the needs of humans more than those of the machines.

XML's ability to 'win' in the human arena has enabled a great outburst of computer science as a result of the greater interchange of information and the increased ease of interchange. However, this great outpouring of utility and enablement of new computer science work has been at the cost of accepting an interchange format which is 'inferior' from the point of computer science. Of course, I think most of us accept that this cost is an acceptable one and a small price to pay in most cases.

Personally, I have always felt quite strongly that software engineering should be distinguished from computer science by recognizing that software engineering encompasses far more than the close technical scope of computer science. Where computer science is focused on algorithms and machine processes, the focus of software engineering should be on the development and deployment of software within and for systems that have human purposes as their goals. A computer scientist can, and should, focus only on the bits in the machine, a software engineer needs to consider not only the machine but also the organizational dynamics of the team that builds the software as well as the human needs of the organization that uses the software. A computer scientist couldn't help prefering ASN.1 binary encodings to XML. A software engineer, on the other hand, will often see no reasonable alternative to XML in today's world.

Virtually any argument that attempts to claim a technical superiority for XML is bound to be proved wrong by reference to ASN.1 or many other alternatives. In much the same way, most arguments that XML should 'simply be replaced' with a technically superior alternative simply expose the naiveté, ignorance, or closed-mindedness of their advocate. What is 'right' in computer science is not always what is 'right' in software engineering.

Of course, many people who read this will be wondering at this point why I, a "known" proponent of the use of ASN.1 and its encodings, am writing in defense of XML! Well, I'm not really. XML has its place and ASN.1 also has its place. XML is best used in applications where the influence of the human needs on design decisions is strongest while ASN.1 offers real value in applications where the needs of the machines dominate.

For instance, at, where we do content-based publish/subscribe, we speak to the outside world via HTML and XML since that is the 'language' that is most commonly understood by the world at large and the easiest format for people to generate and consume. On the other hand, all of our internal processing is done on ASN.1 binary encodings. (i.e. we convert everything to/from XML at our perimeter). The result is that we have great interoperability with the outside world by using XML and we've got great efficiency in our internal processing by using ASN.1 encodings. The best of both worlds. In the future, we will undoubtedly allow and even encourage some high volume publishers to send us data using ASN.1 encodings so that we can optimize a bit and eliminate some of the cost of translations at the perimeter -- however, I can't imagine that we would ever stop interchanging XML with the vast majority of our clients.

At the perimeter of's system, the human sciences and human needs dominate. In our core, it is the needs of our machines that dominate. Thus, we meld the application of software engineering and computer science.

Livschitz is right in saying that XML is a step backwards from the point of view of computer science. She is wrong in suggesting that it is anything but a tremendous step forward in software engineering."

More Stories By Jeremy Geelan

Jeremy Geelan is Chairman & CEO of the 21st Century Internet Group, Inc. and an Executive Academy Member of the International Academy of Digital Arts & Sciences. Formerly he was President & COO at Cloud Expo, Inc. and Conference Chair of the worldwide Cloud Expo series. He appears regularly at conferences and trade shows, speaking to technology audiences across six continents. You can follow him on twitter: @jg21.

Comments (11) View Comments

Share your thoughts on this story.

Add your comment
You must be signed in to add a comment. Sign-in | Register

In accordance with our Comment Policy, we encourage comments that are on topic, relevant and to-the-point. We will remove comments that include profanity, personal attacks, racial slurs, threats of violence, or other inappropriate material that violates our Terms and Conditions, and will block users who make repeated violations. We ask all readers to expect diversity of opinion and to treat one another with dignity and respect.

Most Recent Comments
David Webber 02/20/04 12:02:32 AM EST

Mike Plusch makes the case for ConciseXML, and there are other tools besides that offer different solution paths.

I''d urge people looking for ways to deploy user facing interfaces that make it much easier to grok XML to look at using VisualScript XML as a means to do that.

You''ll find more information on this at

and some interesting examples that can give you ideas around how you can use this at:

Enjoy, DW.

Mike Plusch 02/19/04 09:08:47 PM EST

If you are interested in an XML-compatible syntax
that removes the ambiguity and verbosity of XML 1.0,
ConciseXML is an open, language-independent markup
syntax that removes 9 constraints in the XML syntax
that makes it possible to handle every type of data including non-hierarchial data, program logic, binary,
and traditional document markup.

The specification is completely free and open, and parser implementations are also encouraged to be open source.

I am the co-creator of ConciseXML and would love to
find a standards body to adopt ConciseXML. I''d like
to be able to use XML everywhere, but things need to
change to make that possible.

_Mike Plusch
Clear Methods, Inc.

Thomas Cox 02/19/04 10:54:37 AM EST

I''ve spent the last two years working with XML on a full-time basis, writing an applicataion to extract data from any arbitrary XML file. I''ve seen thousands of unique customer and third-party XML documents in that time.

From that perspective, I have to agree with Livschitz. Over 90% of the documents and associated DTDs or XSDs (if any) I see are a disaster. Of course, that''s not the directly the fault of XML, but XML does have some serious flaws (some pointed out by previous posters to this forum) that contribute to the mess. Not that XML doesn''t have many useful applications - RSS is one - but it is ill suited for many others, particularly when the data volume and/or data complexity is high.

I was particularly annoyed by Wyman''s specious contrast between "computer science" and "software engineering". Bad data structures - the problem underlying almost all bad XML - aren''t any more readable to humans than computers.

Further, if you care about scalability, performance, security, or data integrity then you should definitely pay more attention to computer science than Wyman''s fuzzy ideas about what SE should be. (FWIW, there''s already a discipline referred to as "Human Factors" or "Usability". It''s critical to good applications, but it doesn''t - and *shouldn''t* - usually deal with low-level constructs like data-interchange formats.)

Again, XML has its uses, but it is abused far more often than not.

googler 02/19/04 06:11:35 AM EST

She's probably trying to introduce ASN.1 into the non-tech world, in the same breath as XML (which people have head of and are interested in) so that people think Sun invented it. Sun One , ASN One.

It sounds like the kind of whining you got when VHS triumphed over Betamax. Live with it, move on or become irrelevant.

Olderthan Sixteen 02/19/04 05:35:25 AM EST

It is quite evident that XML is useful for many practical task. However, many people are finding that it is enough to say "XML solves this" to be viewed as visionaries. The result is that there is no meaningful discussion on the shortcomings and all we get is hype, hype, hype. The result is a very widespread misuse of XML.

In the article, there is a claim that XML is better than ASN.1. But in the field, architects have to deal with people claiming that XML is better than RDBMS, that it is easier to program with XQUERY than with container managed EJBs, that there is no more a need for RAD tools and other such nonsense. All of this is achieved magically by something called "XML". This is the real problem which is taking computer engineering, not just computer science, a step backwards.

It is not really a failing of XML as such, it is just lack of knowledge, which finds food in XML hype. Poeple not involved in technology just cannot tell the difference, as everything from Web Services, SOAP, XML databases, XPath, XSLT, etc. ... gets called XML. And then when someone complains that this is leading to nowhere, they come up with a comparison of XML and ASN.1 !!! Please, let's have some sanity.

David Webber 02/18/04 11:46:09 PM EST

Mike Plusch's example of boolean is exactly on the mark.

Head over to the OASIS CAM TC site and see how using CAM on top of schema goes after solving all this morass for you!

will get you a bunch of information on using CAM.


Mike Plusch 02/18/04 11:04:14 PM EST

XML is a step backwards as far as data representation goes.
The whole attribute vs. element issues is the tip of
the iceberg. XML was not designed for data.

Yes, I know that this is against conventional wisdom
of "XML is great". To show the truth in this statement, ask yourself or anyone who knows XML as simple question: How would you represent a boolean true value in XML syntax?
If XML was designed for data, this would be a trivial question. A boolean value is a simple data type. Any programmer could immediately tell you how to represent true in a programming language. If you are able to figure out the answer, then ask three other developers and see if they give you the same answer. If no two developers give you the same answer, you have just demonstrated to yourself just one of the serious ambiguity issues of XML.

David Webber 02/18/04 10:03:44 PM EST

I am focusing in on the morass of unmaintainable XML that is being created. This is a sad fact, and because noone is listening and learning the lessons of EDI before. To ameloriate this headlong rush to chaos, the OASIS CAM TC has created a system and the jCAM implementation to allow rigorous and consistent XML transactions and scripts to be assembled.

People should heed the message that Livschitz is delivering, and look to build better XML as a result by using techniques such as OASIS CAM is teaching.


Cameron Roe 02/18/04 11:55:24 AM EST

The ''real truth'' is that communicating to machines is hard. XML is, to my mind, an attempt to produce the ''Esparanto'' of machine to machine communication. It''s a fine notion but it loses something in the translation (pun intended).
I think that the software engineering world suffers from the very human notion of when it''s holding a hammer, the world looks like a nail. To us an analogy, you can''t use a hammer(XML) to drive a Twinky(distributed computing) through a piece of wood(internet). :)
The hammer(XML) is a very usefull tool in the correct context, but it is not the solution to all problems, and will probably, in the end, be a solution to a small subset of the engineering problems currently faced by the software industry.

Wilfred Springer 02/18/04 10:43:11 AM EST

> those of us who actually do this in the real world know the truth of the usefulness of XML and Web Services.

Hmmmmm, I wonder if a lot of people *really* know the truth about the usefulness of XML and Web Services. If that were true, then you would not expect seeing so many people embracing it as a general-purpose tool. This is (part of ) the truth:

There is no mutual agreement on how to do transactions across vendors. (ACID, or AC(I)D)
There is no mutual agreement on what is needed to have reliability across vendors.
There is no mutual agreement on policy management across vendors.

Just a couple of things that don't exist in the Web Services space. Sure, we have loads of specifications, but these specifications are sometimes only interesting from a theoritical perspective. Web Services will become truly interesting once all vendors agree on an integrated Web Services stack providing mechanisms to support reliability and transaction management.

Fortunately, we have JSR 208. Somewhere in the future, I will be able to deploy my services without really caring too much about the protocols. I will be able to leave that to the responsibility of the service providers; that will allow me to bind my service to ASN.1, ebMS, WS-I, REST, or what else is out there.

Heywood Jablome 02/18/04 09:50:33 AM EST

Such is the difference between theory and practice. Theorists, such as Livschitz, can pontificate all they want to puff up their pet beliefs but those of us who actually do this in the real world know the truth of the usefulness of XML and Web Services.

@ThingsExpo Stories
WebRTC has had a real tough three or four years, and so have those working with it. Only a few short years ago, the development world were excited about WebRTC and proclaiming how awesome it was. You might have played with the technology a couple of years ago, only to find the extra infrastructure requirements were painful to implement and poorly documented. This probably left a bitter taste in your mouth, especially when things went wrong.
Nowadays, a large number of sensors and devices are connected to the network. Leading-edge IoT technologies integrate various types of sensor data to create a new value for several business decision scenarios. The transparent cloud is a model of a new IoT emergence service platform. Many service providers store and access various types of sensor data in order to create and find out new business values by integrating such data.
The broad selection of hardware, the rapid evolution of operating systems and the time-to-market for mobile apps has been so rapid that new challenges for developers and engineers arise every day. Security, testing, hosting, and other metrics have to be considered through the process. In his session at Big Data Expo, Walter Maguire, Chief Field Technologist, HP Big Data Group, at Hewlett-Packard, will discuss the challenges faced by developers and a composite Big Data applications builder, focusing on how to help solve the problems that developers are continuously battling.
There are so many tools and techniques for data analytics that even for a data scientist the choices, possible systems, and even the types of data can be daunting. In his session at @ThingsExpo, Chris Harrold, Global CTO for Big Data Solutions for EMC Corporation, will show how to perform a simple, but meaningful analysis of social sentiment data using freely available tools that take only minutes to download and install. Participants will get the download information, scripts, and complete end-to-end walkthrough of the analysis from start to finish. Participants will also be given the pract...
WebRTC: together these advances have created a perfect storm of technologies that are disrupting and transforming classic communications models and ecosystems. In his session at WebRTC Summit, Cary Bran, VP of Innovation and New Ventures at Plantronics and PLT Labs, will provide an overview of this technological shift, including associated business and consumer communications impacts, and opportunities it may enable, complement or entirely transform.
SYS-CON Events announced today that Dyn, the worldwide leader in Internet Performance, will exhibit at SYS-CON's 17th International Cloud Expo®, which will take place on November 3-5, 2015, at the Santa Clara Convention Center in Santa Clara, CA. Dyn is a cloud-based Internet Performance company. Dyn helps companies monitor, control, and optimize online infrastructure for an exceptional end-user experience. Through a world-class network and unrivaled, objective intelligence into Internet conditions, Dyn ensures traffic gets delivered faster, safer, and more reliably than ever.
WebRTC services have already permeated corporate communications in the form of videoconferencing solutions. However, WebRTC has the potential of going beyond and catalyzing a new class of services providing more than calls with capabilities such as mass-scale real-time media broadcasting, enriched and augmented video, person-to-machine and machine-to-machine communications. In his session at @ThingsExpo, Luis Lopez, CEO of Kurento, will introduce the technologies required for implementing these ideas and some early experiments performed in the Kurento open source software community in areas ...
Too often with compelling new technologies market participants become overly enamored with that attractiveness of the technology and neglect underlying business drivers. This tendency, what some call the “newest shiny object syndrome,” is understandable given that virtually all of us are heavily engaged in technology. But it is also mistaken. Without concrete business cases driving its deployment, IoT, like many other technologies before it, will fade into obscurity.
Today air travel is a minefield of delays, hassles and customer disappointment. Airlines struggle to revitalize the experience. GE and M2Mi will demonstrate practical examples of how IoT solutions are helping airlines bring back personalization, reduce trip time and improve reliability. In their session at @ThingsExpo, Shyam Varan Nath, Principal Architect with GE, and Dr. Sarah Cooper, M2Mi's VP Business Development and Engineering, will explore the IoT cloud-based platform technologies driving this change including privacy controls, data transparency and integration of real time context w...
Who are you? How do you introduce yourself? Do you use a name, or do you greet a friend by the last four digits of his social security number? Assuming you don’t, why are we content to associate our identity with 10 random digits assigned by our phone company? Identity is an issue that affects everyone, but as individuals we don’t spend a lot of time thinking about it. In his session at @ThingsExpo, Ben Klang, Founder & President of Mojo Lingo, will discuss the impact of technology on identity. Should we federate, or not? How should identity be secured? Who owns the identity? How is identity ...
The IoT market is on track to hit $7.1 trillion in 2020. The reality is that only a handful of companies are ready for this massive demand. There are a lot of barriers, paint points, traps, and hidden roadblocks. How can we deal with these issues and challenges? The paradigm has changed. Old-style ad-hoc trial-and-error ways will certainly lead you to the dead end. What is mandatory is an overarching and adaptive approach to effectively handle the rapid changes and exponential growth.
The buzz continues for cloud, data analytics and the Internet of Things (IoT) and their collective impact across all industries. But a new conversation is emerging - how do companies use industry disruption and technology enablers to lead in markets undergoing change, uncertainty and ambiguity? Organizations of all sizes need to evolve and transform, often under massive pressure, as industry lines blur and merge and traditional business models are assaulted and turned upside down. In this new data-driven world, marketplaces reign supreme while interoperability, APIs and applications deliver un...
Electric power utilities face relentless pressure on their financial performance, and reducing distribution grid losses is one of the last untapped opportunities to meet their business goals. Combining IoT-enabled sensors and cloud-based data analytics, utilities now are able to find, quantify and reduce losses faster – and with a smaller IT footprint. Solutions exist using Internet-enabled sensors deployed temporarily at strategic locations within the distribution grid to measure actual line loads.
The Internet of Everything is re-shaping technology trends–moving away from “request/response” architecture to an “always-on” Streaming Web where data is in constant motion and secure, reliable communication is an absolute necessity. As more and more THINGS go online, the challenges that developers will need to address will only increase exponentially. In his session at @ThingsExpo, Todd Greene, Founder & CEO of PubNub, will explore the current state of IoT connectivity and review key trends and technology requirements that will drive the Internet of Things from hype to reality.
The Internet of Things (IoT) is growing rapidly by extending current technologies, products and networks. By 2020, Cisco estimates there will be 50 billion connected devices. Gartner has forecast revenues of over $300 billion, just to IoT suppliers. Now is the time to figure out how you’ll make money – not just create innovative products. With hundreds of new products and companies jumping into the IoT fray every month, there’s no shortage of innovation. Despite this, McKinsey/VisionMobile data shows "less than 10 percent of IoT developers are making enough to support a reasonably sized team....
You have your devices and your data, but what about the rest of your Internet of Things story? Two popular classes of technologies that nicely handle the Big Data analytics for Internet of Things are Apache Hadoop and NoSQL. Hadoop is designed for parallelizing analytical work across many servers and is ideal for the massive data volumes you create with IoT devices. NoSQL databases such as Apache HBase are ideal for storing and retrieving IoT data as “time series data.”
Today’s connected world is moving from devices towards things, what this means is that by using increasingly low cost sensors embedded in devices we can create many new use cases. These span across use cases in cities, vehicles, home, offices, factories, retail environments, worksites, health, logistics, and health. These use cases rely on ubiquitous connectivity and generate massive amounts of data at scale. These technologies enable new business opportunities, ways to optimize and automate, along with new ways to engage with users.
The IoT is upon us, but today’s databases, built on 30-year-old math, require multiple platforms to create a single solution. Data demands of the IoT require Big Data systems that can handle ingest, transactions and analytics concurrently adapting to varied situations as they occur, with speed at scale. In his session at @ThingsExpo, Chad Jones, chief strategy officer at Deep Information Sciences, will look differently at IoT data so enterprises can fully leverage their IoT potential. He’ll share tips on how to speed up business initiatives, harness Big Data and remain one step ahead by apply...
There will be 20 billion IoT devices connected to the Internet soon. What if we could control these devices with our voice, mind, or gestures? What if we could teach these devices how to talk to each other? What if these devices could learn how to interact with us (and each other) to make our lives better? What if Jarvis was real? How can I gain these super powers? In his session at 17th Cloud Expo, Chris Matthieu, co-founder and CTO of Octoblu, will show you!
As a company adopts a DevOps approach to software development, what are key things that both the Dev and Ops side of the business must keep in mind to ensure effective continuous delivery? In his session at DevOps Summit, Mark Hydar, Head of DevOps, Ericsson TV Platforms, will share best practices and provide helpful tips for Ops teams to adopt an open line of communication with the development side of the house to ensure success between the two sides.