Non-uniform page numbering schemes

By default, full looseleaf publishing uses a standard page folio format numbering scheme to define the numbering style of the primary folio index and point page levels for every leaf in a partition. In some cases, however, the paged content within an existing looseleaf publication may use several different folio numbering schemes. Where this occurs, the numbering scheme is said to be non-uniform.

For example, suppose the leaves in an existing looseleaf publication are declared as follows:

If the underlying folio numbering scheme is 999(abcd), then the leaf set uses non-uniform numbering schemes to identify the pages of the second and third leaves.

When a partition that uses a non-uniform numbering scheme is imported into TopLeaf, the leaf boundaries points can be retained, but the leaves identified by non-conforming folios cannot be directly assigned or managed by TopLeaf. The page identifiers for these leaves can only be retained by creating a PDF for the content and then manually replacing the folios for each output page. This process is both time consuming and error-prone, and must be repeated for each TopLeaf release.

Leaf labels

A leaf label associate a page folio with an identifier that does not conform to the underlying partition folio numbering scheme. Leaves that require an alternative page label identifier are declared within a leaf label list. When the partition is typeset, TopLeaf checks if a label is defined for the current page — if it is, then the label is used in place of the underlying folio to visually identify the page.

Entries in the leaf label list can be assigned when importing an existing looseleaf publication, or loaded from a stylesheet when typesetting a partition update.

Leaf label list file

The <tl:leaf.list> leaf label list defines the partition leaves that require alternative page label identifiers. For example, the following leaf label list declares front and back page labels for leaves 3 and leaf 5:

 <tl:leaf folio="3" label="167" label-back="167a"/>
 <tl:leaf folio="5" label="169" label-back="169/1"/>

When a partition is typeset, TopLeaf automatically loads the leaf label declarations applied when the partition was last published. You can load an alternative set of leaf labels using the stylesheet <leaf-settings/> command.

A copy of the published leaf label list can be exported to an external file from the TopLeaf API or TopLeaf workstation.

Referencing leaf labels

Use the stylesheet <folio/> directive if you need to render a label for a page, and the <next-folio/> directive to render the label for the front page of the following leaf. If defined, leaf labels will be listed within filing instructions, extracted files (for example, a Table of Contents), or when viewing the TopLeaf GUI workstation leaf list.

Labelling additional pages

When the material for a changed or manually included leaf cannot be rendered on the pages associated with that leaf, TopLeaf allocates the excess material to one or more additional pages. The folios assigned to these pages will always conform to the partition page folio format — even if the additional pages are created from a leaf identified by a leaf label.

For example, suppose the front and back pages of leaf 3 are visually identified by the labels 167 and 167a, and the partition page folio format is 999(abcd). In an update, leaf 3 is modified and typeset, with the changed content overflowing to an additional point page. The folio assigned to the point page is 3a (and not 167b).

To assign a pair of page labels to leaf 3a, declare an additional entry for that leaf in the leaf label list loaded when the release is typeset:

 <tl:leaf folio="3"  label="167"  label-back="167a"/>
 <tl:leaf folio="3a" label="167b" label-back="167c"/>
 <tl:leaf folio="5"  label="169"  label-back="169/1"/>

If you add, change, or remove leaf label entries, use the TopLeaf stylesheet <leaf-settings/> command to load the leaf label declarations from a leaf labels list file, as in the following example:

<leaf-settings leaf-labels="C:/TEMP/LEAFLIST.XML" />

Exporting leaf boundary markers

Leaf and page labels are included when exporting content containing boundary markers to an external document file.


To import an existing set of leaf boundaries that use a non-uniform pagination scheme you must:

  1. Insert one or more leaf boundary markers into your document content. Each leaf boundary assigns a folio that conforms to the selected partition folio print format.

  2. Where a leaf requires a set of output folio identifiers that does not conform to the partition folio format, declare a label for the front page and a label-back for the back page in the leaf boundary;

  3. Assign any leaf specific release labels to the leaves in the initial leaf set;

  4. Perform a Leaf split;

  5. Create the Next Update release;

  6. Compose the partition;

  7. Verify the initial set of published pages.


The following restrictions apply when using non-uniform page numbering schemes:

  • It is the user's responsibility to ensure that all pages within the partition leaf set remain uniquely identified.

  • Any leaf that is not declared in the leaf label list is assumed to have a folio that conforms to the partition page folio format.

  • The leaf label list stored in each release only declares entries for the published leaf set. If a leaf is typeset within a run of changed or included leaves, and the leaf is deleted, then the leaf label list entry for that leaf will be discarded when the partition is published.

[Warning] Warning

Although the leaf label list file uses a syntax that is compatible with XML, it is not read using a full XML parser. Do not put anything other than tags and comments in the leaf label list file, and only use ASCII characters.