Delimiters: How to choose your own fillpoint delimiters

In principle, almost any delimiters can be used by XpressDox as fillpoint delimiters. For historic reasons, the « and » pair were chosen as the default (but see * below), and all the XpressDox documentation and sample templates use those as the fillpoint delimiters. A fundamental design principle of XpressDox, however, was that the user should be allowed to choose his or her own delimiters.

The delimiters need to be chosen carefully, so that they are unambiguously interpreted by XpressDox as delimiters. An obviously bad choice would be to use ” and ” as the delimiters. The « and » pair is a good choice as it is unlikely that these will be used in normal text inside a document. Correctly chosen, delimiters consisting of two characters (for example *{ and }*) will be less likely to occur naturally in a document than a single character (for example { and }) would be, and hence would be a good choice. Another good choice would be single characters which are unlikely to occur in normal usage, such as « and ».

Once you have decided on your choice of delimiters, if they are not the default XpressDox delimiters, then this choice needs to be registered with XpressDox so that the authoring tools (such as the Command Editor) use that pair of delimiters rather than the default XpressDox delimiters. This is done by using the Template Author Utilities in the ribbon or toolbar. The Template Author Utilities form consists of a number of tabs, and the first section in the Configure and Convert Delimiters tab gives access to the feature that allows you to choose your own delimiters. The delimiters thus configured are referred to as the Authoring Delimiters.

An important, and powerful, feature of XpressDox is that regardless of what authoring delimiters are decided on in the end, the XpressDox engine will always recognise a template which uses the following pairs of delimiters:

  • The default XpressDox delimiters « and » (but see * below)
  • « and » (which are used in HotDocs templates)
  • %[ and ] (which are the GhostFill delimiters)
  • { and } (which are used by ContractExpress and other document assembly systems)

These sets of delimiters are called XpressDox Native Delimiters.

The algorithm that XpressDox uses when interpreting a template is to first look for the authoring delimiters (which might be something like *( and )* if that’s what you’ve chosen, or might be any of the pairs of native delimiters), and if the template contains no fillpoints with those delimiters then it goes on to look for the next set in the list of native delimiters. Once it finds at least one fillpoint for a given pair of delimiters, it then settles on that pair as the delimiters for that template and any templates included via BaseTemplateIncludeTemplateInsertTemplate or MergeTemplate.

* Note that with Version 4 and later of XpressDox, the default delimiters on any new installation of XpressDox will become « and ». These characters are referred to as “chevrons”. Existing installations of XpressDox will not be affected by this when upgrading to Version 4.