Leaf Split

Command line:
tlapi ‑cPUBMARK sPart
Library call:
nStatus = TLpubmark (sPart, nNxtUpd, 0L)
Scripting call:
nStatus = PubMark (bNxtUpd)

Function

A leaf split establishes an initial set of published leaves for a full looseleaf partition using an existing set of leaf boundaries. The document content declares one or more leaf boundary markers to identify the existing leaf boundaries. TopLeaf allocates the content between successive leaf boundary markers to one or more document leaves, then automatically moves the partition to the published phase.

Arguments

sPart

The path of the partition that is to be leaf split. The scripting call uses the Partition property to determine the partition to use.

nNxtUpd

If this is non-zero, a new update phase is created after the leaf split.

bNxtUpd

This applies to the scripting interface only. If this is true, a new update phase is created after the leaf split.

For additional command line arguments see “Common Flag Arguments”.

Notes

Please refer to the User Guide for a list of restrictions that apply when performing a leaf split.

After you initialize a partition from an existing set of boundaries, you must establish an initial set of output pages. To do that, you need to create a new update, then compose the partition.

A leaf split can be cancelled by an Undo Commit if the next update phase has not been created (that is, nNxtUpd = 0).

Examples

Command line:

tlapi ‑cPUBMARK manuals/topix/volume1

Library call:

/* Leaf split a partition, don't create a new update */
status = TLpubmark("manuals/topix/volume1", 0L, 0L);

Scripting call:

status = topleaf.PubMark(false);

Leaf split errors

If a leaf split is unsuccessful, one of the following errors may be reported in the partition commit log:

Error Meaning
folio separator not valid for page folio format Some page folio formats place restrictions on the permitted separator character. See also Implementation - Page folio format
too many point levels for page folio format The maximum number of point page levels is dependent on the page folio format. See also Implementation - Page folio format
value of primary folio index exceeds permitted maximum The maximum value for the primary folio is dependent on the page folio format. See also Implementation - Page folio format
value of point page index exceeds permitted maximum The maximum value for a point page index is dependent on the page folio format. See also Implementation - Page folio format
length of folio exceeds permitted maximum The maximum length of a folio string is 32 characters.
unsupported folio format The requested page folio format is not defined or is badly specified.
folio not valid for page folio format The leaf boundary folio does not identify the front page of a leaf.
invalid folio separator, expected ... Inconsistent folio separator characters were detected. All point page leaf folios must specify the same folio separator character.
Can't start a group on a word break A leaf group boundary marker must coincide with a paragraph boundary. It cannot begin within a word.
Can't start a group on a hyphenated word break A leaf group boundary marker must coincide with a paragraph boundary. It cannot begin at a hyphenated word break.

Use the API Get Diagnostic Log or Component File function call to retrieve a copy of the partition commit log file.