Comments
Richard Davies wrote: The UK has a good crop of technology pioneers in cloud computing - for example ElasticHosts, FlexiScale, Flexiant, OnApp - and also some strong government initiatives such as G-Cloud. We will have to see whether this kind of technical leadership converts into swift mass-market adoption or not.
Cloud Expo on Google News

SYS-CON.TV
Cloud Expo & Virtualization 2009 East
PLATINUM SPONSORS:
IBM
Smarter Business Solutions Through Dynamic Infrastructure
IBM
Smarter Insights: How the CIO Becomes a Hero Again
Microsoft
Windows Azure
GOLD SPONSORS:
Appsense
Why VDI?
CA
Maximizing the Business Value of Virtualization in Enterprise and Cloud Computing Environments
ExactTarget
Messaging in the Cloud - Email, SMS and Voice
Freedom OSS
Stairway to the Cloud
Sun
Sun's Incubation Platform: Helping Startups Serve the Enterprise
POWER PANELS:
Cloud Computing & Enterprise IT: Cost & Operational Benefits
How and Why is a Flexible IT Infrastructure the Key To the Future?
Click For 2008 West
Event Webcasts
Soft Issues Surrounding Industry Standard Schemas
Soft Issues Surrounding Industry Standard Schemas

It sounds so easy. First, get a bunch of people together who share a common need to interchange some type of data - say, invoices. Explain XML to them. Explain the significant technical benefits of having an industry standard schema for invoices.

Get technically minded individuals into a room with plenty of whiteboards and caffeine. Sometime later they'll emerge with a consensus model of what it is to be an "invoice" enshrined in some schema language (UML/XML Schema/DTD/RelaxNG/whatever).

Thereafter, all interested parties use the schema for data interchange and all is sweetness and light.

This makes 100% technical sense but it often doesn't work in the real world. The reasons it doesn't work have nothing to do with flavors of schema language or indeed flavors of markup language. It often doesn't work because of soft issues concerning people.

Let's start with Zipf's law and the Principle of Least Effort (http://cogsci.umn.edu/millennium/1109153206.html). Simply put, humans strive to do as little as possible to communicate. The language this article is written in, English, is literally riddled with structures that break the rules of English grammar - the schema - in the interests of quick and easy communication.

All human languages exhibit this phenomenon. Successful languages adapt to allow humans to cut corners in the interest of quicker communications. XML tag languages that don't offer similar functionality are asking for trouble. That trouble can manifest itself in a number of possible ways.

First, users may engage in "tag abuse" - using tags for purposes they weren't intended for because it makes their life easier.

Second, users may create point-to-point side agreements between themselves for simpler communications and convert their simple communications to the official schema only when forced to.

Third, users may lobby for "flexibility" that allows them to make local modifications to the industry standard schema, thus creating an entire family of mutually incompatible but similar languages that start as patois and grow into full-blown, mutually incompatible dialects.

Fourth, users may bring the standard initiative down. If this happens, everything from the coffee to the schema language can be blamed. Everything, that is, except noncompliance with Zipf's Principle of Least Effort.

Then there's the matter of organic schema growth and what I call the "tag bag syndrome."

Successful languages, and XML-based tag languages are no exception, need to exhibit the ability to change and evolve over time. Otherwise they atrophy and eventually die. With human languages we just change their grammatical structures and idioms without worrying about historical material fitting the new forms. In other words, we aren't worried about backward compatibility.

With XML tag languages we're typically very worried about backward compatibility. When we need to modify a schema to cater to a new phenomenon, we cannot allow previously valid documents to become invalid. As a result, we loosen the constraints in the schema. Over time, the gradual loosening of constraints erodes the tight control over structure the schema designers put there in the first place. The result is a bag of tags - structures of the form "X can consist of any number of A or B or C or...." In DTD terminology these are known as repeating OR groups.

This leads us nicely to the next soft issue: George Miller's law concerning the cognitive limits of human beings. If you present humans with a list of more than seven options to choose from at any one time, they'll start to feel overloaded and uncomfortable. When it comes to creating XML conforming to a "bag of tags schema," there can be an overwhelming feeling of drowning in a sea of options.

In the back office the software developer is similarly overwhelmed because the large number of choices at each point in the schema translates into a programmer's worst nightmare. known as an exploding state space.

Schema creators ignore Miller's rule at their peril. User and software developers alike can and will subvert the technically elegant designs in order to work within comfortable cognitive limits.

It's important to remember that the "group of people getting together to agree on a data interchange standard" phenomenon is not a new one. Stepping back just one generation, this went on wholesale in the SGML world - without much success. It wouldn't be good soft-issue tactics for me to mention any failed standards initiatives by name. You'll find plenty of evidence if you read through some history of the SGML years, especially the early-to-mid-'90s.

My contention is that the failed industry-standard schema initiatives of the past did not fail for technical reasons; they failed for human reasons. There is a rich lore of experience here that the new wave of XML schema designers could do worse than mine for valuable insights. Those that don't learn from the mistakes of the past truly are doomed to repeat them.

Apart from paying due regard to history, I think XML schema design needs to take a leaf out of the extreme programming book. Start with the customer (human), do the smallest thing than can possibly work, and start using it. Never lose sight of the human creating the XML content or the human writing software to process the content. Remember Miller's law. Remember Zipf's law. Allow the schema to grow/evolve organically over time. It will anyway, whether the schema designer likes it or not.

The only industry standard schemas still standing at the end of this decade will be the ones that address the soft issues.

About Sean McGrath
Sean McGrath is founder and CTO of Propylon, one of Ireland's fastest growing software companies. Headquartered in Dublin, with development centers in Sligo, Ireland and Mumbai, India, Propylon delivers what it terms "industrial strength XML" and XML consultancy services to its service and product partners in Europe and the United States.

In order to post a comment you need to be registered and logged in.

Register | Sign-in

Reader Feedback: Page 1 of 1

Latest Cloud Developer Stories
Rackspace Hosting, the service leader in cloud computing, on Thursday announced its acquisition of SharePoint911, an industry leader in SharePoint consulting, training, and "JumpStart" services within SharePoint. The unification of both companies provides capabilities to deliver ...
With Cloud Expo 2012 New York (10th Cloud Expo) now under four months away, what better time to start introducing you in greater detail to the distinguished individuals in our incredible Speaker Faculty for the technical and strategy sessions at the conference... We have techn...
Nimble, the social CRM platform has announced the launch of Nimble 2.0, billed as the “most social” CRM platform on the market today. Nimble was designed entirely with social CRM in mind and is the first social business platform that empowers companies with the ability to get clo...
2011 was a year of rapid adoption for public and private cloud services. Instant and on-demand server provisioning was the driving force behind the massive growth. On top, cloud server templates and script automation simplified application installation for simple and pre-defined ...
"Having been in the IT field for many years, I believe the cloud computing chapter in the industry is an exciting one and I am proud to be a part of it," said National Reconaissance Office (NRO) Chief Information Officer Jill T. Singer Tuesday, as it was announced that she was on...
Subscribe to the World's Most Powerful Newsletters
Subscribe to Our Rss Feeds & Get Your SYS-CON News Live!
Click to Add our RSS Feeds to the Service of Your Choice:
Google Reader or Homepage Add to My Yahoo! Subscribe with Bloglines Subscribe in NewsGator Online
myFeedster Add to My AOL Subscribe in Rojo Add 'Hugg' to Newsburst from CNET News.com Kinja Digest View Additional SYS-CON Feeds
Publish Your Article! Please send it to editorial(at)sys-con.com!

Advertise on this site! Contact advertising(at)sys-con.com! 201 802-3021

SYS-CON Featured Whitepapers
ADS BY GOOGLE

Breaking Cloud Computing News
The future of U.S. optoelectronics manufacturing will be spotlighted during a one-day industry-centr...