Document assembly conjures up thoughts of expensive software that often becomes shelfware once lawyers realize that they cannot figure it out without professional help. Document assembly consultant Seth Rowland has helped many firms that decided to invest in professional help. But in this TechnoFeature article, Seth reviews XpressDox, a new document assembly program that sells for $150 and promises ease of use regardless of your skill level. Who better to test this claim than Seth? Read his review to see what this expert thinks of this new expert system.
TECHNOFEATURE: REVIEW: From a TechnoLawyer Exclusive article published on June 15, 2010.
Introduction
I have been working with document assembly software on a full–time basis for a long time—since 1996. During that period, I have had the opportunity to review (and program in) large number of systems that assemble documents with user-entered data or merged data sources.
The document assembly platforms I’ve used include HotDocs, GhostFill/AmicusAssembly, Dealbuilder/ContractExpress, Exari, MasterDraft, and SmartWords/Xyrite. I have used merge technology in practice management systems, including Time Matters, Amicus Attorney, AdvologixPM, Salesforce.com, PracticeMaster and ProLaw to create merge templates. And I have worked with VBA and macro automation in Microsoft Word, Outlook, Excel, WordPerfect, MultiMate, and IBM DisplayWrite. I have reengineered and rebuilt document workflow systems originally built in Lotus Notes, PowerTXT, ThinkDocs, Visual Workform, and CAPS Author. And I have reviewed numerous client–server and Web–based document assembly engines, including Pathagoras, DL Drafting Libraries, Rapidocs/Directlaw, ActiveWords, Intelledox, ProDoc, LawOnTheWeb, and Lawgic.
Thanks to this review, I recently added O2Smart’s XpressDox Docussembly to the above list.
Criteria for Evaluation
As a lawyer and a programmer, I constantly look for the perfect balance among power, ease of use, and return on investment. It is critical that a document assembly system handle complex logic. Lawyers are complex, their needs are complex, and their documents are complex. Lawyers command high fees due to their ability to handle this complexity and reduce it to simple manageable decisions for their clients.
Raw Power. A good document assembly system must have the power to handle complexity, including nested logic, repeating data, and calculations. It must also integrate with other programs that attorneys use to enter and manage their data.
Ease of Use. At the same time, the program must be easy for the developer and easy for the end user who will be answering the questions. It must present a simple and manageable interview to the user. It must be dynamic, which means that it should ask only the relevant questions, and group them together based on subject.
Return on Investment (ROI). The software must be suitable for the task. Otherwise, you will find yourself a year or two later either rebuilding your templates in a new system or never achieving your original automation goals. In addition to the price of the software, the cost includes the hardware required to run the software, the time spent by internal and external developers building the system, and the time to train end–users to use the system. These costs must be balanced against the efficiencies gained through the use of the system.
XpressDox Price and ROI
Let’s start with price. XpressDox starts at $150 per user. In volume the price drops to $79 pre user. This price is for a full version of XpressDox. There is no additional fee for a developer version, and no lesser fee for a run-time only version. What you get for the fee is a docussembly system—that’s their word for document assembly.
XpressDox was designed by Peter Tuffin, a former senior programmer at Korbitec, the developers of GhostFill. In designing this system, Peter drew on the lessons learned as a power user and integrator of GhostFill, a document assembly system no longer marketed in the United States. He understood the need to make the program simple so that users could start creating templates immediately. At the same time, the program needed to be powerful enough to meet the needs of programmers to assemble multiple templates, link to databases, and calculate values based on data entered.
Given the modest $150 price, it’s worth buying a license to try it out. You will find that XpressDox has sufficient power to meet your document assembly needs. You’ll have to decide whether you like the way it handles document assembly and whether or not you need to deploy document assembly over the Internet, a feature not currently supported by XpressDox.
Installation of XpressDox
For this review I downloaded the trial software from the XpressDox Web site. The program has two versions: One for Microsoft® Office Word 2007 and another for earlier versions of Word. The installer includes a free Microsoft® Office Word add-in that enables you to output Word documents directly to PDF format without Adobe Acrobat.
I installed the software on a Windows Vista 64 PC, with a quad–core processor and 8 GB of RAM using Microsoft® Office 2007. The installation took five minutes. When I restarted Word, there was a new ribbon titled XpressDox with all the features on it. If you use XpressDox as single user, you can accept the default settings. Otherwise, you should click on the Settings icon and set up a network location for all your standard folders, clauses, and help files. You should also configure your data sources which can include connectors to Access, Excel, SQL Server, MySQL, Outlook, and practically any data source. All these configurations can be saved to a central configuration file which can then be imported into any subsequent installations.
My First Template
I generally read the manual first, but this time I didn’t. The software ships with a sample templates folder. Here is a sample template:
<<Addressee>>
<<Street>>
<<City>>, <<State>> <<Zip>>Dear
<<ChooseFromRDBList(Salutation,Sir,Madam)>><<Salutation>>:
RE:
<<Regarding>>
Type this in a Word document and apply text formatting. Then click the Save Template button. It’s that easy. Now, click on Run Template and choose the document you just saved. That’s it.
Next Steps
After I took my baby steps, I looked closer at the sample templates and read the 39 page user guide. I discovered the power of the scripting language. XpressDox is a fully powered document assembly language. It supports all the data entry field types required for document assembly, including text, dates, numbers, currency, checkboxes, and memo fields (including text-formatted memo fields), as well as multiple choice. There is a full panoply of variable formatting functions for all data-types.
When it comes to the interview, no conditional scripting is required. If a variable is used in the template, it appears in the interview. If a variable is contained only within a conditional text block, that text does not appear unless the precondition is met.
The system requires no separate component file, library or data dictionary to assemble. Everything is in the template. That is both a strength and a weakness. Take for example, the following:
<<ForEach(Mailer/CopyTo)>><<position()>>
.<<CC_Name>><<Caption(CC_Name,Full name of Carbon Copy)>><<CC_Initials>><<Caption(CC_Initials,Enter Initials)>>
<<End(ForEach)>>
This block of text creates a node called Mailer with a repeating set of Carbon Copy addressees. It defines an alternate prompt for the variable CC_Name and CC_Initials.
On first impression, the coding of templates appears too complex for the casual developer. I strongly recommend that you review the sample templates and read the manual before you venture into complex templates. The functions are quite logical, but they require you to become conversant in a different language.
XpressDox is chock full of functions, like “Caption,” “ExtractInitials,” and “FormatDate” for sophisticated document assembly. These functions, including sample code and wizards, can be accessed from the Template Author’s Toolkit. There is a feature, currently in beta, to make this process even simpler — it enables you to access both commands and data elements as you type the opening brackets.
When you choose a command, a wizard appears to guide you on the options for the command. Without these wizards, it is difficult to get the correct syntax for these functions.
XpressDox includes template management and workflow functions. You can use RunTemplates to dynamically run multiple templates in a single assembly. You can launch a word macro with the simple command <<RunWordMacro(ChangeParagraphAlignment)>>
. You can define a BaseTemplate
that is merged into the template, or you can use InsertDocument
to bring in a clause or subtemplate. And in so doing, you can use ReplaceField
to map fields from the source template into the inserted template, if necessary.
Further, you can manipulate the outputs of a document assembly, defining the name of the output file and the answer file, and specifying where these files are stored.
If you have a data source such as a practice management system, SQL Server, an Access database, or even an Excel file, text file or xml file, you can link to it during assembly. You can either select the record during assembly, or use criteria in the interview to bring in the entire record set. The details of establishing the connection are too complex for this review, but one feature is worth noting: The database connection includes an option to RefreshSave
, which enables you to preview the data in the document assembly interview, make changes, and then write back those changes to the database.
Where to use XpressDox
XpressDox is a bargain. Starting at $150 per user, it is less than half the price of its nearest competitor, and substantially less than other competitors. At that price, it is for everyone, ranging from casual coders looking to handle simple merge templates to developers who mean business about document assembly.
XpressDox supports simple document assembly. You can learn the basics of the program in 15 minutes and produce templates with variables, repeats, and conditional logic. XpressDox handles dialog scripting automatically. If you spend a little more time, you can create computations, format outputs, and even add some color to the intake interview.
At the same time, in the hands of a specialist, you can build complex user interviews, connect XpressDox templates to multiple data sources, work with clauses and master templates, use XLST functions, and develop multi-template workflow.
Areas for Improvement
XpressDox is still a new product. It is rough around the edges. The user interview is functional, but it lacks some of the polish found in other document assembly products.
While the scripting language supports interview customizations (including tabs, colors, prompts, help text, labels, and repeats), the program lacks a cohesive interview designer. Improvements in certain layout issues, such as support for multiple fields on a single line, the ability to dictate the order of variables, and alternate ways to represent true/false variables, would make the program more usable.
Further, the system currently lacks a Preview window. What this means is that you need to run multiple test assemblies to debug errors in template coding. With a preview you could try one set of answers and check whether the result is as you intended. As templates get longer, it becomes harder to identify the source of template errors.
Perhaps the most glaring omission in the offering is the lack of support for PDF or graphical forms. The software works with Word XML. Until support is added for PDF, you will be limited to text-based templates. You will have the choice of reproducing the form as a table in Word, or using a graphic as a watermark on each page and positioning the text as appropriate.
Overall Rating
On a scale of 1-5, with 5 as the highest, I give XpressDox a TechnoScore score of 4. The program’s strength is its powerful document assembly markup language, support for complex functions, and its ability to infer the relevance of variables in presenting the user interview. Its weakness lies in its lack of support for PDF templates, the lack of a comprehensive fill-point editor, and the rigidity of the dialog builder. In time, the TechnoScore will increase as the company makes the script editor more intuitive and the dialog-builder more flexible.
Response from XpressDox
We invited O2Smart to respond to this TechnoFeature. Chairman Chris Pearson emailed us the following:
As always, Seth’s review is objective and insightful. As Seth points out, XpressDox is a young product. However, given the large number of document assembly products on the market we are indeed pleased and excited to have received such a favourable Technoscore. Of course we also realize that there is still work to be done in order to address the shortcomings raised by Seth, and we are working hard to improve those aspects.
Of particular note is that we will be releasing the XpressDox Web-server version on 1 October 2010. In short this will allow users to run XpressDox Desktop as a Web version, or to run templates stored on an intranet or on the Internet, and even to launch templates from a Web site or Web application.
We’d like to thank Seth for taking time to evaluate XpressDox so thoroughly. We’d also like to thank Technolawyer for publishing the review.
About Seth Rowland
Seth Rowland, Esq. was named TechnoLawyer Consultant of the Year in 2002 for his contributions to Technolawyer on the subject of document assembly and law practice automation. He is a nationally known technologist whose company, Basha Systems LLC, has helped many law firms build customized practice management and workflow solutions. Please feel free to visit his blog for the latest on document assembly and practice management.