XTags - Simple Automated Data Publishing Through InDesign and QuarkXPress

What are XTags?

Simply put, XTags is a scriptable data format that can automate content input and output from Quark or InDesign documents. The XTags format supports the full QuarkXPress Tags language and its own extended XTags language.

To understand how XTags can automate your publishing workflow, you must first understand how the XTag language originated. QuarkXpress originally released the Xpress tag (Not to be confused with Xtags) format to the public as a proprietary markup language to automate the building of tedious page elements such as classified ads in newspapers. Much like the foundation for InDesign is the language of XML, Quark’s basic page element building language is really where Xpress tags originated from.

XTags were developed in 1992 by Chris Ryland, a Harvard graduate who founded emsoftware. XTags were originally created as a mechanism for database publishing and content automation exclusively for QuarkXPress. Chris Ryland could envision the potential of the Xpress tag language and imagined how publishers around the world could use this tagging system to automate tedious layout tasks. He could also foresee what added functionality they might ask for such as: the use of automated translations to apply changes to the information at a lower level than Xpress tags, the use of parameterized macros to simplify complex tag and text sequences, and script Xtag actions with platform scripting tools.  With the eventual rise of Adobe InDesign, emsoftware decided to develop a plugin for InDesign that would allow publishers to use the same XTags data format in InDesign that they had been previously using with QuarkXPress.

Who can benefit from using XTags?

Companies that publish catalogs, books, or classifieds should consider taking a closer look at their current workflow to determine if using XTags could help automate any steps in the content import or formatting process.

For example, let's say that you already have a database that stores all the information you need to build a catalog. A production designer cuts and pastes this information from an output of your data (text file) into InDesign, and then places associated graphics manually. If there are any last minute changes to the information in the database the manual cutting/pasting/formatting all needs to be re-done.

With XTags, you can output the information from the database using the XTags language. If you cannot output database information directly into an XTags format, the XTags plugin can help through the use of data transformation macros. After installing the XTags plugin, you can import an XTags file and potentially build and format an entire catalog.  Items such as graphics, frames and lines can also be created and automated using XTags. Content imported through XTags can be automatically styled using Paragraph, Object and Character styles that have already been defined in your document.

The initial process for setting up a document to accept an XTags file can take some time, but this time is more than made up for once the process is finalized. Based on the size of your publication XTags can save your production team hundreds of hours in manual data manipulation and formatting.


Building an XTags Workflow

1. Defining the look of your input

The first step is to import your current data and stylize it. This means not only choosing the correct font and size, but also making Paragraph and Character styles where they are needed and applying them. If you'll be importing inline graphics as well, you may also need to make Object styles to define how the inline graphics sit on the line and how text reacts to an inline object.

Defining your Paragraph and Object styles before the XTags export.

2. Redefining your data

To examine what format your data should resemble before it is ready to input as XTag information, you can use the XTag plugin to export your data to a tagged-text format. In InDesign you need to highlight the contents of the frame with your type tool, then you can choose File > Save Text with XTags. InDesign will then save a file with the .xtg extension. You can open the .xtg file in your favorite text editor to examine how the information will need to be styled in order to flow in correctly. You will need to closely examine each line to see what tags are surrounding your data and will then need to make sure that this tagging information is either added at export from your database, or transform it with the tools inside of XTag plugin set.


You can also see that the image itself has an absolute path back to the folder (XTags can automate the import and placement of images in a layout).


3. Flowing in your new re-defined data

Flowing in tagged data is easy. It's as simple as File > Import Tags with XTags. If you need to update the data, simply generate a new XTag file and flow it in again. All the data is imported and is styled correctly based on the XTags surrounding each element.

Moving XTag data from Quark to InDesign

In the same way that rebuilding your Quark documents in InDesign was a major challenge, updating your XTag pages from Quark to InDesign can be a challenge as well.  One benefit however, is that the same process I have described above for building XTags can be used to fix the way they now appear in InDesign. Hurdles such as leading, tracking and kerning differences between Quark and InDesign can be overcome simply by redefining your stylesheets in InDesign.

The biggest challenge is in the way that inline graphics flow with type. In Quark, inline graphics sat on the baseline by default, while in InDesign they hang from the baseline. With a little ingenuity and patience these issues can be remedied as well.

The best part about converting older QuarkXPress XTags documents into InDesign is the ability to now take advantage of all the great features that InDesign has included for typography. Features such as Nested Styles, Grep Styles and Line Styles make the import process easier than ever. I often find that old Quark XTag data simply applied "Normal" to all elements, and then executed a series of overrides to change the appearance, making each tag overly complicated and hard to change. Now that you have a chance to redefine this XTag data, you can simply tag your data with style names, and InDesign will do the rest of the work for you!