What is an XML namespace prefix?
An XML namespace prefix is a prefix used to specify that
a local element type or attribute name is in a
particular XML namespace. For example, in the following,
the serv prefix specifies that the Address element type
name is in the http://www.foo.com/ito/addresses
What characters are allowed in an XML namespace prefix?
The prefix can contain any character that is allowed in
the Name  production in XML 1.0 except a colon.
Can I use the same prefix for more than one XML
What happens if there is no prefix on an element type
If a default XML namespace declaration is in scope, then
the element type name is in the default XML namespace.
Otherwise, the element type name is not in any XML
What does the URI used as an XML namespace name point
The URI used as an XML namespace name is simply an
identifier. It is not guaranteed to point to anything
and, in general, it is a bad idea to assume that it
does. This point causes a lot of confusion, so we'll
repeat it here:
URIs USED AS XML NAMESPACE NAMES ARE JUST IDENTIFIERS.
THEY ARE NOT GUARANTEED TO POINT TO ANYTHING.
While this might be confusing when URLs are used as
namespace names, it is obvious when other types of URIs
are used as namespace names. For example, the following
namespace declaration uses an ISBN URN:
and the following namespace declaration uses a UUID URN:
Clearly, neither namespace name points to anything on
NOTE: Namespace URIs that are URLs may point to RDDL
documents, although this does not appear to be widely
implemented. For details, see the next question.
NOTE: An early version of the W3C's XML Schemas used
namespace URIs to point to an XML Schema document
containing the definitions of the element types and
attributes named in the namespace. However, this proved
very controversial and the idea has been withdrawn.
What is an XML namespace name?
An XML namespace name is a URI that uniquely identifies
the namespace. URIs are used because they are widely
understood and well documented. Because people may only
allocate URIs under their control, it is easy to ensure
that no two XML namespaces are identified by the same
Can I resolve the URI used as an XML namespace name?
Can I use a relative URI as a namespace name?
Yes. However, such usage is deprecated, so you should
never do it.
What is XPointer?
XPointer is set of recommendations developed by the W3C.
The core recommendations are the XPointer Framework
which provides an extensible addressing behavior for
fragment identifiers in XML media types.
XPointer gains its extensibility through the XPointer
Framework, which identifies the syntax and processing
architecture for XPointer expressions and through an
extensible set of XPointer addressing schemes. These
schemes, e.g., element() or xpointer(), are actually
QNames. The xmlns() scheme makes it possible for an
XPointer to declare namespace bindings and thereby use
third-party schemes as readily as W3C defined XPointer
How do I install the XPointer processor?
Download the latest "cweb-xpointer" release from
SourceForge. This project uses Apache Maven and Java
1.4+, so you will need to install those as well.
Normally you will also want to download one of the
XPointer Framework integrations, such as the
xpointer+dom4j or the xpointer+jdom package. These
"integration packages" provide support for a specific
XML Document model.
The project dependencies are explicitly declared in the
Maven POM. This means that Maven can automagically
download the required releases of dependent JARs.
There are several release artifacts. The "uberjar"
release provides an executable command line utility (see
below) and bundles all dependancies (except for Java
itself). If you want to integrate into an existing
application, then you should use the cweb-xpointer JAR
and also download copies of its dependencies. If you are
using a Maven project, then this is all very, very easy.