he newest addition to the pantheon of web technologies is yet another markup language. XML, otherwise known as the Extensible Markup Language, resembles other markup languages like SGML and HTML. But XML empowers developers to create their own tags and markup languages to suit their needs.
After using XML, you'll never look at web document design in the same way. Mangling HTML beyond all recognition to achieve a specific web page design goal will soon be a thing of the past. No longer will all documents be forced to fit into the HTML mold. Accompanying the advent of XML is a new way of thinking about documents as well as a new design paradigm. The current "whatever it takes to get the right look" approach to document design will soon give way to a focus on accurate descriptions of document content using the best markup.
Prior to the advent of XML, physicists, trainers, and developers in every other field had to manipulate their data to fit into the HTML document model, even when the fit was far from perfect. Because XML is a markup language used to describe other markup languages (hence the label "meta-language"), you can create your own Document Type Definitions (DTD) to define a set of markup tags specifically tailored to fit your needs. Physicists might create a PML (Physics Markup Language) to describe formulas and other physics-related content. A web-based training company could devise a WBTML (Web-Based Training Markup Language) to catalog its many training offerings or to describe the contents of those offerings.
XML provides a standard set of tools for developers to use when creating markup. These XML-based markup languages are called XML vocabularies or applications. Each is a unique markup solution that meets a specific need, or speaks to a specialized audience (see the sidebar "Is XML Right for You?"). Although XML just settled at version 1.0 in February 1998, a wide variety of XML vocabularies are already in use, and still more are in development. The list of available applications will continue to grow as XML becomes more widely accepted as a web technology, and as more browsers support XML-based markup directly.
Although each XML vocabulary is unique and varies widely from the others in scope and intent, all have two important things in common. First, each is written using XML, which makes them members of the same extended markup family, built according to the same standard, and readable by any XML-compliant browser. Second, each represents a markup language designed to describe a specific type of content.
XML was created to enable developers to create their own unique vocabularies that would function predictably within a standardized set of structures and rules. Each application that follows the rules of XML can also be processed using standard XML tools. When XML is fully integrated into web browsers, content described using any XML vocabulary will be readable by all XML-compliant browsers.
Markup Describes Content
Web page developers have been working with a markup language for some time now. Although HTML stands for HyperText Markup Language, it is instead treated as a HyperText Formatting Language. The trend in web page design has been to describe documents using HTML, while keeping a close eye on what the documents look like when displayed inside a web browser. An overwhelming concern for the final display of a document by a user agent (AKA browser) is in violation of the most basic tenets of markup.
The primary goal of markup is to separate the description of a document from its final display. Markup should be used to describe the different parts of a document's content using tags as labels. Documents that use markup are ASCII (text-based), so they're platform and operating system independent. A document designer concentrates on using tags to describe a document's contents as accurately as possible, without regard for its onscreen appearance. In theory, developers don't even have to know how a document is to be rendered—be it on screen, in print, or through a projector—to describe that document correctly.
In fact, documents that are independent of platform, operating system, and application can be created by separating markup from display. Specialized software applications—which are perforce platform and OS specific-process such marked-up documents and, based on the descriptions of each part of a document, render its final display as needed. Each XML vocabulary is completely defined by its own unique Document Type Description (DTD), and you must play by a DTD's rules to create documents for its vocabulary.