How heading levels are handled

When parsing a tree of wiki pages, Scroll Word Exporter converts both the page hierarchy and the headings within a page into hierarchical sections.

As Confluence does not enforce proper ordering of headings (heading 2 can come before heading 1, etc.), the exporter uses an algorithm to create a sensible hierarchy in every case. This page explains the algorithm.

Finding the correct hierarchy and level

In order to create a hierarchy of sections, Scroll Word Exporter will set the highest level of heading on a page when it detects the first heading. All subsequent headings cannot be of higher level as this first heading, and will therefore be sorted in on a lower level as they actually are.

For example:

h2. Heading 1
h1. Heading 2
h2. Heading 3

CODE

In this example Heading 2 and Heading 1 will be on highest level. Heading 3 will be one level below. This is because, Heading 1 set the highest level, and Heading 2 cannot be higher. However, Heading 3 has a lower level as Heading 2 and comes after Heading 2 – therefore it will be on level below Heading 2.

The hierarchy in the table of contents will be:

Heading 1Heading 2 Heading 3

Heading promotion

During the development and testing of Scroll Word Exporter, we found out that many users create a single highest-level heading on top of every page, which basically repeats the title of the wiki page. This leads to an (in most cases) unwanted additional level in the hierarchy. So Scroll Word Exporter removes this additional hierarchy level by using the first, highest-level heading on the page and omitting the page title.

For example: We have a page called 'Installation' with this structure: