What is it?
Extensible Markup Language (XML) is a metalanguage, which is used to create other languages. It has been adopted almost universally: organisations using it include Microsoft, IBM and the open source Apache Foundation.
It has become the business interchange standard of choice. More than half of large and medium-sized companies see it as part of their strategic vision and are building new applications with it, according to Resolution Market Research.
As a result, XML and web services developer skills are a prized commodity, said Resolution.
But XML's strengths are also its weaknesses. It is human-readable, which is great for improving communication between IT and business, but this means it carries a huge performance overhead. XML files can be 20 times the size of equivalent proprietary formats.
Also, as XML is a metalanguage, alternative schemes and approaches to querying data are proliferating.
XML is stable, but the glacial pace at which its custodians at the Worldwide Web Consortium (W3C) reach decisions leaves urgent problems unresolved. There is also a threat of patent-protected proprietary implementations compromising XML's universality.
Where did it originate?
At the W3C, where Tim Bray and others were looking for a way for internet-connected systems to exchange data. Work began in 1996 and W3C approved the first XML standard in 1998. Like HTML, XML is derived from the Standard Generalised Markup Language (SGML) although, unlike HTML, it retains a lot of SGML's power and flexibility while being easier to use.
What is it for?
Devised as a way of defining document formats, XML found most of its early uses in publishing, but is now also applied to structured data such as relational databases and spreadsheets.
XML has been used to create many application- and industry-specific languages, from bible and music publishing to chemical manufacturing, and document exchange standards for e-business consortia.
What makes it special?
According to Resolution, users see the benefits of XML in terms of improving efficiency and lowering support costs. Specific examples include faster application development and deployment, greater application portability and easier staff hires. It is Unicode-compliant and can be read and edited using simple text-editing tools. Although most programming languages are developing ways of incorporating and working with XML, it is not tied to any language or platform.
How difficult is it to master?
According to IBM's Developerworks site, XML involves a huge variety of standards and technologies that interact in complex ways. "It can be difficult for beginners to navigate the most important aspects of XML, and for users to keep track of new entries and changes in the space," it said. HTML developers should make the change easily enough, because of the languages' common ancestry, but will find XML a lot less lax and forgiving.
Bloor Research said, "It is very easy to design an XML message. It is very much harder to design a coherent set of messages."
Rates of pay
Web service development roles using Microsoft products or Java can earn from £25,000 to £40,000.
There is a mass of free tutorial material. Try IBM's Alphaworks and Developerworks sites, Microsoft's XML site, and the XML Cover Pages, which also contain news about developments in XML. You could take formal classroom training or learn from books published by O'Reilly, Addison-Wesley and John Wiley, parts of which may be available on the web. Consider also joining xmluk.org, the UK chapter of the SGML and XML User Group.