
eCommerce
Search our
entire site
Enter your search
terms below, or visit
our search
page
Search
case
studies only
Enter your search
terms below:
For
the table
of contents and
hyperlinks to
general topics
proceed to toc
 
|
XML: More
Than Just A Quick Fix
FEBRUARY 1999
Extensible Markup Language is
seen as a universal object model that will enhance Web
development and simplify application integration
Extensible Markup Language is finding many uses in IT
departments--driven largely by an insatiable need for new
applications to drive electronic commerce. XML will help
developers build and deploy sophisticated Web
applications faster. XML will also hasten enterprise
integration efforts so important to supply chains and
other business collaboration initiatives.
XML is being used to develop next-generation Web
applications that sport greater interactivity than those
early systems, which relied solely on HTML to create and
display static Web content. XML is also an important
ingredient in the many application integration efforts
under way in companies that need to link Web,
client-server, and legacy systems. XML and some related
technologies will make it easier for companies to develop
distributed applications that can exchange formatted data
across file types.
XML is a metalanguage that describes the way data is
formatted and exchanged between clients and servers on an
IP network. It's viewed as an extension to HTML,
providing many more programming tags that can be used to
format, structure, and search upon information contained
in an application.
XML is specifically optimized for the Web. And while its
adoption is being driven by Web development, XML will
likely have applicability in systems beyond the Internet,
such as broad-based application development tools and
systems-management and mainframe applications.
Currently, XML is a proposed standard under the auspices
of the World Wide Web Consortium. It's derived from the
long-standing Standard General Markup Language
specification. SGML was too complicated for Web
documents, so a more efficient and network-aware
specification was needed.
XML requires greater functionality to reach its full
potential as a data standard and HTML killer. That's
coming in the form of some complementary standards.
XML is winning acceptance from a range of vendors, such
as IBM, Microsoft, Oracle, and Sun Microsystems. They're
adding XML support to development tools, Web utilities,
databases, and business applications. In the past
quarter, two companies released XML servers: Object
Design and Bluestone Software.
Data About Data
By its nature, HTML is for formatting documents,
primarily for viewing on the Web. XML is good at
presenting data in a form that's easy to
understand--unlike most computer languages and
applications. If an application is told that a document
in the browser is an invoice, for example, the
application will have a hard time parsing out all the
various elements for further processing. There just isn't
a standard way on the Web to identify and present an
invoice and its individual pieces of data, or relate it
to other data.
But data in an XML document can be extracted, analyzed,
and presented in any format by any application that can
parse XML data. For example, the figure on the right
displays the text of the play Hamlet marked up with XML
to identify the type of content that each text string
contains. Another application can read this data and
produce an annotated script, and another could analyze
speech patterns while ignoring the character
descriptions.
The Web is essentially a text-based medium with
cumbersome adaptations for objects such as images and
sound files. Text marked up with XML has the benefit of
being cross-platform and simple to understand. XML also
supports flexible data structures and international
character sets (see chart below).
| Text
Benefits Of XML Over Binary File Formats |
| Cross-platform: Text
is one of the few data formats universally
supported on computer platforms, even if
character sets vary. |
| Simplicity: XML
can organize data while keeping the data in
human-readable form. It also lends itself to
common text editors for viewing and editing, and
it is possible to use understandable strings for
tags. |
| Flexible data
structures: XML is ideally suited to
representing tree, hierarchical, and nested data
well, including the rooted tree structure of
HTML; relational data, mapping data into a tree
and displaying rows as subtrees; and graphs, when
used with the proposed Resource Description
Format. |
International
character sets: XML 1.0 is based on
ISO-10646, the Unicode character set, so that
virtually any character in use in any language is
legal within an XML document.
Data:
InformationWeek |
HTML Killer
XML is useful as a standard way to describe data, but is
far from revolutionary by itself. When XML is combined
with two other emerging standards, the Extensible Style
Language (XSL) and XML Linking Language (XLL), these
three specifications define a rich markup language that
is flexible, extensible, and keeps separate a Web page's
data, formatting, and navigation. This separation makes
it easier for developers to create and change
applications as system and business needs dictate.
XSL is a superset of the Cascading Style Sheet, a
proposed standard to allow flexible formatting of HTML
files. What CSS does for HTML code, XSL does for XML,
plus a lot more. XSL acts as almost a full processing
language for the data contained within XML pages. It
provides simple Select Case statements (xsl:choose), a
programmatic construct that executes codes based on a
specific condition. It also supports conditional
branching (xsl:if), and condition and loop testing
(xsl:for-each), which repeats blocks of code as long as a
particular condition is true.
There are two parts to the XSL specification, one for
transforming XML documents and another for formatting
semantics. Transforming XML documents involves
associating patterns with the source tree contained
within the XML document, using XSL templates. This is the
XSL feature that provides almost complete flexibility to
convert data into any format, including an HTML-formatted
Web page.
The other part of the XSL spec is used to provide
formatting objects with attributes you can set for
flexible formatting. XSL's formatting objects work much
the same as style sheets in many word processors, using
what the specification calls a formatting vocabulary.
Each object represents a particular behavior, such as the
construction of a page number with the page-number object
or the formatting of a numbered list with the list flow
object. Each object has a number of properties for
fine-tuning the formatting.
XML and XSL together can provide what amounts to a
customizable HTML. This lets Web designers define their
own tags, rather than rely on Microsoft and Netscape to
extend the language as they see fit, while keeping data
separate from formatting.
But a major feature of the Web is navigation through
hyperlinks, and nothing in either XML or XSL provides
them. That's where XLL comes in. The two parts of this
specification provide Web pages with far greater linking
capabilities between documents and to parts of a document
than was possible with HTML. The first part, XLink, gives
documents advanced linking capabilities, such as links to
multiple destinations, bidirectional links, and links
with custom behaviors.
The other part of the XLL spec, XPointer, provides links
to locations within documents even without special tags
and a wider span of addressing to page elements, strings,
and arbitrary selections. Web developers can use these
features to exert more control over the relationships
between documents.
Unfortunately, the XSL and XLL specifications aren't
complete. But the combination of these three
specifications can produce HTML documents, other
well-formed XML documents that process the source data
into different forms, or almost any other document type.
XML Offshoots
What ensures XML's long-term viability is the groundswell
of uses to which it is being put: in corollary standards,
as the foundation for other standards, and in support of
various software products. It seems as though each week
brings another substantial XML announcement.
IBM, Unisys, and other partners recently unveiled their
XML Metadata Interchange proposal. XMI integrates XML
with the Uniform Modeling Language, fast becoming the
standard means of modeling software projects, and the
Object Management Group's Meta Object Facility repository
standard. XMI will let developers of distributed systems
share object models. The biggest advantage of this is to
enable collaborative application development over the
Internet, with programmers sharing information and
metadata.
One problem inherent in XML is the lack of a
namespace--boundaries within which a tag name must be
unique. For example, the tag could mean either a
customer's location or a geographical location.
The solution is a proposed XML Namespace specification
that describes how prefixes can uniquely identify a tag
as belonging to a particular XML source document. Each
such prefix is supported by descriptive metadata that
gives the location of each source document's tag set.
TABLE OF CONTENTS
|

XML
Home
Architecture
B2B
Catalog Manager
ERP
Introduction
Microsoft
Middleware
Primer
XML to EDI
Extranet
Tech. Specs
|