This chapter is intended to provide a quick introduction to structured markup (SGML and XML). If you're already familiar with SGML or XML, you only need to skim this chapter.
To work with DocBook, you need to understand a few basic concepts of structured editing in general, and DocBook, in particular. That's covered here. You also need some concrete experience with the way a DocBook document is structured. That's covered in the next chapter.
This chapter doesn't assume that you know what HTML is, but if you do, you have a starting point for understanding structured markup. HTML (Hypertext Markup Language) is a way of marking up text and graphics so that the most popular web browsers can interpret them. HTML consists of a set of markup tags with specific meanings. Moreover, HTML is a very basic type of SGML markup that is easy to learn and easy for computer applications to generate. But the simplicity of HTML is both its virtue and its weakness. Because of HTML's limitations, web users and programmers have had to extend and enhance it by a series of customizations and revisions that still fall short of accommodating current, to say nothing of future, needs.
SGML, on the other hand, is an international standard that describes how markup languages are defined. SGML does not consist of particular tags or the rules for their usage. HTML is an example of a markup language defined in SGML.
XML promises an intelligent improvement over HTML, and compatibility with it is already being built into the most popular web browsers. XML is not a new markup language designed to compete with HTML, and it's not designed to create conversion headaches for people with tons of HTML documents. XML is intended to alleviate compatibility problems with browser software; it's a new, easier version of the standard rules that govern the markup itself, or, in other words, a new version of SGML. The rules of XML are designed to make it easier to write both applications that interpret its type of markup and applications that generate its markup. XML was developed by a team of SGML experts who understood and sought to correct the problems of learning and implementing SGML. XML is also extensible markup, which means that it is customizable. A browser or word processor that is XML-capable will be able to read any XML-based markup language that an individual user defines.
In this book, we tend to describe things in terms of SGML, but where there are differences between SGML and XML (and there are only a few), we point them out. For our purposes, it doesn't really matter whether you use SGML or XML.
During the coming months, we anticipate that XML-aware web browsers and other tools will become available. Nevertheless, it's not unreasonable to do your authoring in SGML and your online publishing in XML or HTML. By the same token, it's not unreasonable to do your authoring in XML.