The Beauty of XML is its Flexibility

Published on June 23, 2009

XML, or EXtensible Markup Language, is a platform-independent way to represent data. Simply put, XML enables you to create data that can read by any application on any platform. It is based on the same tag-based technology that underlies HTML.

For example, suppose you want to use XML to store information about a transaction. This transaction originates on a salesman's iBook, so it will be stored there. But it will then be sent to the data application on the individual's server, and ultimately archived on a mainframe, so it needs to be very flexible.

XML is fairly straightforward to use, once its structure is understood. It also provides several different methods by which you can control the structure, and even the content, of data. The flexibility of XML means that it's useful for so many applications, such as configuration files, Web services, data storage, and so on. Since its introduction, developers have found numerous uses for XML.

The most obvious use of XML is to store data. XML provides advantages for both data-centric information (such as the data you find in a database) and document-centric information (such as data you store in XML so you can display it differently in different environments.)

Podcasting and other data syndication

One of the most common uses of XML today is in the realm of syndication. Millions of bloggers use RSS feeds to keep up with the latest information on their favorite blogs, and commercial interests have begun taking an interest in podcasting, or distributing audio and video over the internet to devices such as iPods, which also uses XML.

A common place to find XML is behind the scenes of favorite applications and development environments, where it serves as a common means for creating files of configurations or instructions. Providing configuration instructions in a human-readable XML file enables users to control the behavior of applications much more easily than before.

Bloggers often provide external "feeds" that show their most recent posts and provide links back to the original material. These feeds have turned into big business, with advertisers taking note, and the distribution of audio and/or video, or podcasting, becoming the focus of major media companies such as the broadcast television networks. These feeds are in the form of XML.

More XML in action

You can find XML in a variety of places, such as publishing, encoding semantic data, and even those voice recognition units you talk to over the telephone.

XML is platform and programming-language independent, so you can use it with virtually any programming language. Although you can implement Service Oriented Architectures (SOA) using a variety of technologies, the most common is to use Web services, and that means XML.

DB2 has been providing high-performance data storage and access for relational data based on SQL standards and data storage optimizations, such as data partitioning and advanced indexing and query optimization techniques. Now, DB2 has introduced an optimized data storage engine for XML data alongside the existing relational engine.

XML is at the heart of many of today's nascent technologies. For example, as search engines improve and the world moves towards the Semantic Web, XML is how webmasters can add meaningful information to their pages. Grid computing and autonomic computing continue to gain ground, and XML figures prominently in these technologies, as well. Database vendors continue to look at storing XML more efficiently.

Grid and Autonomic Computing

As the world becomes smaller, computer systems seem to get bigger. Specifically, researchers, companies, and other organizations begin to see the advantage in mending their systems together into a single larger system, either to provide enhanced computing power or to save money by eliminating waste. Because of its platform independence, XML is perfect for exchanging information between disparate systems.

Several organizations and informal groups of people have been involved in the process of making standards for XML users. At the same time, the XML community is celebrated for its activity in creating informal, but important standards to fill gaps left by bigger organizations.

In summary, XML provides you with a great deal of functionality and power, but fortunately it is itself a fairly simple and straightforward technology. Once you learn the basics -- and that doesn't take long -- you can pick and choose what you want to learn.

Jadesada Kraisingkorn is Country Manager, Software Group,

IBM Thailand