Where XML Comes From
XML's roots grow straight out of SGML, originally developed by Charles Goldfarb, Edward Mosher, and Raymond Lorie, at IBM in the late 1960s. SGML was designed as a completely general document modeling meta-language, but suffers from inordinate complexity and includes many features that are seldom, if ever, used when creating document definitions.
XML's earliest definitions are based on SGML document type definitions, or DTDs, which define XML itself and many of its current applications. But XML was designed to be both compact and simple (which SGML is not) and completely self-describing (which also applies to SGML). This explains why XML is often described as a "subset of SGML," because it represents a careful selection of SGML's most commonly used capabilities along with a deliberate simplification of SGML's syntax and structure. Although XML is not intended solely for use on the Web, it has been optimized to be easy for user agents (such as Web browsers) to parse. Likewise, XML's self-describing characteristics permit user agents to rely on those characteristics to drive their document handling behavior, rather than having to build all kinds of intelligence into the user agents themselves. Over time, this will permit user agents to shrink, while increasing their capabilities simultaneously.