XML for Data Architects: Designing for Reuse and Integration

Before embarking upon the journey to learn why eXtensible Markup Language (XML) is important or when it should be used in a technology application, you have to have some idea about how it came to be. XML has evolved to become a "conforming subset" of Standard Generalized Markup Language (SGML). SGML has been in use for a number of years to describe and constrain the content of primarily text-oriented documents and files. Common examples of text-oriented content are the pages of a book, letters, notes, brochures, and presentations. As would be expected, the contents of these documents are strings of characters and words that are generally assembled to present a context (most often as collections of phrases, sentences, paragraphs, sections, and chapters). With this type of loosely structured information, rarely is there a need to describe granular pieces of information such as individual words or even more specific characteristics such as data types. SGML applications of this type include the use of descriptive tags to delineate sections of contained text and to describe text and document characteristics. Although the value of SGML for describing document-oriented data is undisputed, its application to other business and technology paradigms such as global e-commerce and enterprise data exchanges presents a few problems. First, SGML is implemented by a complex syntax that for many can be difficult to learn and apply. Also, there is a obvious lack of support for strongly typed data (e.g., data architects will recognize "strongly typed data" as...