XML Ive never meta language like it
It has been well over a year since I first
wrote about XML. Back then it was simply a data formatting language. Today it
is evolving into the lingua franca of e-business. This article explores XML and its accessory buzzwords.
What is it?
XML (eXtensible Markup Language) is a
language that is used to define data structures. It can be thought of as a form
definition language. By form, I mean for example a driving licence application
form. Today this form is paper based and is usually processed by a human, which
is both time consuming an error prone. With XML you can create an identical
electronic form, which can be processed by a computer. XML allows you to define
the fields of the form, eg. <Full name>, <postcode>, <age>.
What is more, XML places no restrictions on
the type of fields you invent. Thats the extensible part! So there is no
reason why your form cannot be extended to include <favourite car colour>
and <zodiac sign>. Such flexibility makes XML the perfect starting point
to create ones own language. In this case I could call it DLML Driving
Licence Markup Language.
This flexibility gives XML the entitlement
to call itself a meta-language.
Whats the fuss?
There are a number of reasons:
Openness XML is not under the control of a single vendor. It has been
created by the World Wide Web Consortium (W3C), which is made up of industry
players, but is not controlled by any of them. Thus XML is less likely to
seduce us into becoming part of somebodys revenue agenda.
Interoperability There are many incompatible systems in existence that lie along
various business flow chains. XML can be used as a way of standardising the
flow of data between these systems. Thus there is no need to go out and buy
single-vendor enterprise wide applications. ERP and CRM players take note.
Such interoperability will make it much
easier for companies using disparate technologies to work together. So expect a
flurry of joint ventures over the next few years.
Flexibility XML allows you to define whatever language you like. Be it ECML -
Ecclesiastical Crocheting Markup Language or RAML Real Ale Markup Language,
XML will enable like-minded folk to get talking electronically without the need
to overhaul their IT systems.
Comparativity Using XML on the Web, it is now possible to label the data held
on web pages such that it is visible to XML reading software (aka bots). Thus
if a user wants to get the best price on a Ford Cougar, she can simply send her
bot off to gather all the web pages that contain the price of such a car.
Having been spared the need to a trawl the showrooms physically, b trawl
the web manually, she can more or less instantaneously get the best price.
XML is likely to force vendors into a
commodity situation. Prices will be much the same wherever you go, ie low,
causing vendors to compete in other areas such as quality of service, after
sales care etc.
What are the associated buzzwords?
·
Markup A way of labeling data that
describes its characteristics:
·
Formatting eg. The following data
will be displayed in bold
·
Context eg. The following data is a
Postcode.
·
Tag Another name for a markup.
·
HTML HyperText Markup Language. This
is the standard formatting language for web pages. It can be thought of as a
Formatting markup language, whereas XML can be thought of as a Contextual
markup language.
·
SGML Standard Generalised MarkUp
Language. This is the original standard for defining how to create a document
markup language. It can be thought of as the original markup language of which
HTML and XML are descendants.
·
XSL eXtensible Stylesheet Language.
This language is used to enable developers to define how data stored in an XML
format will be displayed to the user. Hence for a given set of data, there will
be different XSL stylesheets for the different devices on which it will be
displayed, eg. PC, PDA, mobile phone.
·
XHTML eXtensible HTML It can be
thought of as the web page version of XML.
·
SOAP Simple Object Access Protocol
This enables applications to communicate across the web.
·
SAX Simple Application Programming
Interface for XML A mechanism for manipulating XML documents
·
DOM Document Object Model A not so
simple mechanism for manipulating XML documents.
What initiatives are taking place?
Within the Finance sector alone there are:
·
XFRML Extensible Financial Reporting
ML
·
FpML Financial Product ML
·
FLBC Formal language for Business
Communication
·
IOTP Internet Open Trading Protocol
·
OTP Open Trading Protocol
·
PMML Predictive Model ML
·
FinXML XML for Capital Markets
·
SwiftStandards XML XML for Swift
·
BoleroXML Trade documentation
Similar activity is taking place across all
technology-centric sectors.
Whats the future for XML?
The future looks bright. In one fell swoop
we have a vendor independent data structuring language, which addresses the
needs of the e-world, both web and elsewhere. It could put a big dent in the
revenues generated by the systems integrators and the enterprise application
developers. It is sufficiently flexible to cope with existing display
technologies, such as PC, TV and PDA. And also for forthcoming display
technologies such as head up display glasses and virtual reality.
However where it will really make an
impression is in comparative shopping on the web. If you sell commodity
products/services make sure your site is XMLed (more specifically xHTMLed see
above), otherwise your business will be invisible to comparative shoppers.