The name of a node or property may have a prefix, delimited by a single ':' (colon) character that indicates the namespace of the item.
Namespacing in a content repository is patterned after namespacing in XML. As in XML, the prefix is actually shorthand for the full namespace, which is a URI. URIs are used as namespaces in order to minimize naming collisions. Every compliant (level 1 or 2) repository has a namespace registry. The namespace registry always contains at least the following built-in namespace prefixes:
jcr Reserved for items defined within built-in node types.
nt Reserved for the names of built-in primary node types.
mix Reserved for the names of built-in mixin node types.
xml Reserved for reasons of compatibility with XML.
“” (the empty prefix) This indicates the default namespace.
In level 1 repositories the prefix assigned to an existing registered namespace (a URI) may be temporarily over-ridden by another prefix within the scope of a particular Session. Level 2 repositories have, additionally, the capability to add, remove and change the set of namespaces (URIs) stored in the namespace registry (excluding the built-in namespaces). See section 6.3, Namespaces, for more details.