doc:namespace

part of the GtC documentation

Namespaces in DokuWiki

Fear not: this can look very unfamiliar at first sight, but it's not really hard.

A namespace in DokuWiki is basically a way of pointing to different parts of the wiki. It's just like the folder (or directory) structure on your file system (on your hard drive or wherever), which allows you to arrange your files into a tree-like structure of sensible groups. Many web sites arrange their pages into folders or directories. This is a very useful feature in DokuWiki, which isn't available in MediaWiki (and so Wikipedia), or many other wiki systems. That may be why it's not familiar.

Here on this wiki, there is one page at the 'root', with no namespace: the start page. If you go there and look at the URL in your browser, you may be able to see https://knowledge.growingthecommons.org/doku.php/start.
This page, on the other hand, is at
https://knowledge.growingthecommons.org/doku.php/doc/namespace.
Notice the doc between doku.php and namespace. doc is the namespace that this page belongs to. doc is actually the name of a folder in the web server where this page is kept.

Look at some more examples. Our topic groups are in the namespace (and folder) called gt (standing for “group of topics”).
If you go to any of these, such as Community & culture you will see the URL is
https://knowledge.growingthecommons.org/doku.php/gt/community.
The topic group “Bushcraft & nature” similarly has the URL
https://knowledge.growingthecommons.org/doku.php/gt/bushcraft.
The namespaces allow us to have different pages with the same name, as long as they are in different namespaces.
For each of our topics, we have arbitrarily chosen a four-letter namespace hinting at the topic name. So, there is an actual topic, bushcraft, which is in its own namespace, bush. The URL for that topic is
https://knowledge.growingthecommons.org/doku.php/bush/bushcraft.

This is just the same as the fact that you can have two files with the same name in your computer system, provided they sit in different folders. Not just pages, but also images and other files sit in one or another namespace (i.e., folder).

In normal file systems, a folder or directory structure allows its owner to treat files in different folders differently. Similarly, in DokuWiki, the namespace structure allows us to give different permissions to different people, for the various different namespaces. Curators belong to user groups, and the people in each user group have permission to edit pages in the corresponding namespace. This is designed to greatly reduce worries about accidentally editing the wrong pages.

A folder or directory structure conventionally uses slashes, /, as delimiters. Namespaces conventionally use a colon : as a delimiter. There is a lot of history behind this, which is not needed for understanding namespaces in DokuWiki. Probably enough to say that in DokuWiki, they are essentially the same, except the slash / is used in URLs, while the colon : is the normal usage for internal locations.

So, this document's internal link is [[doc:namespace]] which is simply displayed as namespace.
We have configured our system so that [[doc/namespace]] also works, see: namespace!
For the URL, the link is https://knowledge.growingthecommons.org/doku.php/doc/namespace, using slashes.
Just writing that URL by itself gives what looks like an external link, even though it is in our wiki:
https://knowledge.growingthecommons.org/doku.php/doc/namespace

Namespaces with Markdown

This actually works just the same here in Markdown syntax. [this](doc:namespace) gives this
and [this](doc/namespace) gives this.

  • DokuWiki has extensive documentation around namespaces, including pagename and namespaces.
  • Wikipedia has a very detailed explanation of Namespaces, with much background, for those interested.
  • doc/namespace.txt
  • Last modified: 2026/04/02 08:44
  • by Simon Grant