About Links

This page is for contributors to the MariaDB Documentation and goes into detail on the internals of links. This page is not about MariaDB. If you're interested in contributing to the MariaDB Docs, please also see the Contributing Documentation and Documentation Style Guide pages.

There are three types of links in the MariaDB docs: external, relative, and space. The general rules for when to use each are:

  • If the link is outside of https://mariadb.com/docs/ → Use an External Link

  • If the link is to a page in the same space → Use a Relative Link

  • If the link is to a page in another space → Use a Space Link

See About Spaces for information on what Spaces are.

About Spaces

In GitBook (our documentation system), Spaces are the main sections of the site you see along the top of every docs page:

What space you are in is very important in determining whether you need to use a Relative or Space link. Gitbook identifies Spaces via a unique space identifier. See the Space Links section for more details. We also have a handy list of Space prefixes for use when creating space links in Markdown.

In the documentation source repository on GitHub, the spaces are the top-level folders.

External links are the easiest, they are to external pages outside the https://mariadb.com/docs site. Some examples in Markdown syntax of external links are:

Technically, you can use external links for links to docs content, you just put in the full URI to the page you want to link to. However, if you do that we lose the ability to automatically update the link if the page you're linking to is moved or renamed. So for links to docs content we prefer to use Relative Links or Space Links.

Relative links are links to a page in the same space, relative to the page you are editing. For example a relative link to the Joining the Community page, from this page, looks like this in Markdown:

One big limitation of relative links is that they cannot cross Space boundaries.

This page you are currently reading is under the General Resources space, so we can use internal links to link to other pages under https://mariadb.com/docs/general-resources/. If we want to link to a page in another space, we need to use Space Links.

To link to pages in other Spaces we need to use special Space Links which use an internal identifier so that GitBook knows exactly what page you are pointing to.

A space link begins with https://app.gitbook.com/s/ , followed by a unique alphanumeric space identifier (in this doc we'll call both of these together the space prefix), and finally the path to the page without the final .md extension that exists in the source code.

The path is everything after the space name in a full page URI. For example, take the following full URI for the Securing MariaDB page:

In this URI, the space name is server and the path, if you were creating a space link, is:

To convert that into a space link we need to get the Server space identifier and combine it with the path. Rather than list out just the identifiers for our spaces, we have a List of Space Prefixes that you can copy from when creating space links.

Continuing with our example, a full space link in Markdown for the Securing MariaDB page is: space prefix (for the Server space) + path:

See the List of Space Prefixes section for a list of all of our space prefixes.

List of Space Prefixes

A handy list of all space prefixes for the MariaDB Docs:

MariaDB Platform space prefix

Server space prefix

MaxScale space prefix

Analytics space prefix

Galera Cluster space prefix

Connectors space prefix

Tools space prefix

MariaDB Cloud space prefix

Release Notes space prefix

General Resources space prefix

Here are some examples of Markdown links to various pages using space links:

MariaDB 12.1 Changes & Improvements in the Release Notes space

MariaDB Connector/C Guide in the Connectors space

When Space Links are rendered to the public site, GitBook handles translating Space Links into a link to the correct page. And if a page is moved or renamed then the link will be automatically updated on every page it appears on.

Last updated

Was this helpful?