All DocBook V5.0 elements are in the
namespace http://docbook.org/ns/docbook
. XML
namespaces are used to distinguish between different element sets. In the
past few years, almost all new XML grammars have used
their own namespace. It is easy to create compound documents that contain
elements from different XML vocabularies. Consider this
simple article marked up in DocBook V4.5:
<!DOCTYPE article PUBLIC '-//OASIS//DTD DocBook XML V4.5//EN' 'http://www.oasis-open.org/docbook/xml/4.5/docbookx.dtd'> <article> <title>Sample article</title> <para>This is a really short article.</para> </article>
The corresponding DocBook V5.0 article will look very similar:
<article xmlns="http://docbook.org/ns/docbook" version="5.0"> <title>Sample article</title> <para>This is a really short article.</para> </article>
The only change is the addition of a default namespace declaration
(xmlns="http://docbook.org/ns/docbook"
) on the root element
(and a version
attribute, which is
described in the next section). This declaration applies the namespace to
the root element and all nested elements. Each element is now uniquely
identified by its local name and namespace.
The namespace name http://docbook.org/ns/docbook
serves
only as an identifier. This resource is not fetched during processing of
DocBook documents, and you are not required to have an Internet
connection during processing. If you access the namespace URI with a
browser, you will find a short explanatory document about the namespace.
In the future, this document will probably conform to (some version of)
RDDL and provide pointers to related resources.