The NEW XpressDox Version 14 is now available!

Edit Content
Click on the Edit Content button to edit/add the content.

Authoring Techniques

What to expect in v14 of XpressDox

Version 14 of XpressDox is without a doubt our most exciting and innovative update! We are proud to show you some of the features you can expect after upgrading to this version.   Desktop version: You will find an orientation video here detailing what to expect after upgrading your Desktop

Read More »

The Question Command (v14) – XpressDox

With the launch of XpressDox low code, or version 14, a question command has been introduced to simplify the process of template coding. On the XpressDox ribbon click “New Question”, complete the information in the helper and click OK to insert your new fillpoint.   The ribbon   Simple steps

Read More »

What is the difference between Commands and Functions

Throughout the XpressDox documentation, reference is made to Commands and also to Functions.  Syntactically commands and functions appear the same, but their functionality is different and in some cases this difference is important. A rule of thumb for distinguishing commands from functions is that commands are used for global layout

Read More »

Best Practices for Advanced Authors: Part I

XpressDox is designed to enable a template author to get started on authoring a template without having to do a lot of pre-configuring, or even much design.  You can just start typing the template and add XpressDox fillpoints as they are needed. That’s OK if all you are doing is

Read More »

Inserting templates with variable names (Part 2)

The original article regarding inserting documents with variable names was written way back in 2009.  Since then, as a result of further maturing of XpressDox, some really useful innovations have been added.  In particular, if there are data elements whose values are set very early in the process (in fact

Read More »

Data Sheets

In XpressDox, a Data Sheet is a document that contains a table with a list of data elements and values.   Why a data sheet? A data sheet is useful in the case where, for example, a lengthy and complex document is produced by a template, and where the list

Read More »

Examples of Scripts as Functions – XpressDox

XpressDox Document Automation software   Here are some examples of Scripts which may be useful: Write out a full name from individual data elements: «Script(FullName,FirstName,MiddleName,LastName)»«concat(SuffixWith(&FirstName&,’ ‘),SuffixWith(&MiddleName&,’ ‘),&LastName&)»«ScriptEnd()» The SuffixWith() functions will ensure that the names are suffixed with spaces only if those data elements are given values. If left blank,

Read More »

Arithmetic in XpressDox (using ExpectXSLTFormatNumbers)

Because XpressDox uses XSLT as its document automation engine, the arithmetic features of XSLT are all available to template authors. There is a caveat, though, and that is that XSLT requires that all number presented to it in calculations must be in a specific format.  The specific format is that

Read More »

Validating a NINO

You have a template which needs to capture and use a NINO (National Insurance Number) as described in NIM39110 – National Insurance Numbers. You would like to make sure that the value captured in the interview is a valid NINO. This can be done using the following Rule command: «Rule(NINO,soft,IsRegexMatch,’^[A-Z]{2}[0-9]{6}(A|B|C|D)$’,’The

Read More »

Select templates using a master template

Selection of multiple templates to be run can be done by the user using the XpressDox explorer, but the template author can also control the selection of templates using a master template with document-selection logic built into it.

Read More »

Implement an optional option with ReplaceField

In the article Define layout in a base template, a mechanism for hard-wiring various fields in a letterhead base template is discussed. Now suppose that it’s not a letterhead that is the base, but the outline of an agreement on which other agreements will be based.  In this base agreement

Read More »

Use Chr to make an apostrophe

Suppose you want to set up a variable (called ‘Party’)  to contain either Defendant or Plaintiff, depending on PartyType and then a variable containing the possessive case of that  – i.e. the value should be “Defendant’s” or “Plaintiff’s”.  The apostrophe is going to give trouble. Here’s how to do it. 

Read More »

Build a bi-lingual interview – XpressDox

It would be really useful for XpressDox to be able to present an interview in French if the user is a French speaker, and in English for English users, where the document itself is in English. For the same template. And vice versa. XpressDox can indeed do that, as long as the template author marks up the template accordingly.

Read More »

Working with strings

XpressDox has numerous string handling functions.  The number of different applications is vast, and this article tries to provide a number of situations all in one place. Extract the last few characters of a string Suppose you have a situation where a particular data element will always contain a specific code in

Read More »

Filling PDF Forms

PDF documents which have been prepared with PDF Form Fields (using a suitable PDF Form editor) can be filled with data captured with an XpressDox interview.  In fact, the PDF form can be filled with data from ANY source, as long as it is in XML form. There are a

Read More »

Using Scripts in PDF Form fields

When you are defining a PDF form field map in the Prepare PDF Form UI, you can specify that the source for a particular PDF field is either a data element, or a script. If one or more scripts are specified, then the scripts need to be defined in a

Read More »

Encrypt a template – XpressDox

You want people to be able to run a template that you have made, but don’t want anyone other than yourself to read or modify the template.  This can be achieved by encrypting the template. A template can be encrypted when saving it in the XpressDox Explorer.  When saving a

Read More »

Concatenating strings

There are times when it is necessary to concatenate the values of data elements, variables and/or hard-coded strings together to form a value which is then stored in a variable. The concat function does this.

Read More »

Define layout in a base template

Sometimes a letterhead needs to dictate not just things like the company’s logo and fairly static items like the directors’ names, but also the position of the addressee information and data elements like ‘Your Reference’ and ‘Our Reference’, for example.

Read More »