QUESTION: What is PPML/VDX
PPML/VDX stands for "Personalized Print Markup Language/Variable Data Exchange."
PPML/VDX is a standard that specifies a way to use information in
PPML format for the exchange or identification of the elements needed to render
job as intended by the person or entity that created it.
The PPML/VDX standard was developed by the Committee for Graphic Arts Technologies Standards (CGATS),
and it was approved by ANSI early in 2002.
Formerly known as "VDX,"
PPML/VDX technology — which is based on
a subset of PODi's PPML specification — allows
electronic-publishing software to use
PDF files as containers for packaging
the information needed to produce
standard provides a framework
that can be used by software and hardware vendors
to create variable-data-printing solutions that
allow variable-data print jobs to print at or near
rated speed on a digital printer or digital press.
Print speed is a bottleneck in many
conventional variable-data-printing workflows,
and PPML/VDX-based variable-data-printing solutions
that are implemented properly
will remedy this situation.
The PPML/VDX standard was developed by
Subcommittee 6, Task Force 2 of
The PPML/VDX standard is
available for purchase from the American National Standards Institute (ANSI) Web site — click this link:
How does PPML/VDX work?
In a PPML/VDX workflow, you have a PPML/VDX sender
and a PPML/VDX receiver. A PPML/VDX sender is a
system that generates a collection of
files that contain information about a variable-data-publishing
job, and a PPML/VDX receiver is a system that
makes use of these files to produce the
A PPML/VDX sender could be a software program
or programs and/or one or more humans.
Likewise, a PPML/VDX receiver could be a
or programs and/or one or more humans.
The collection of files that is sent to a
PPML/VDX receiver by a PPML/VDX sender is
referred to as a
"PPML/VDX instance." A particular
PPML/VDX instance might consist of just one file,
or it might consist of several files or many
files. If there is just one file in the
PPML/VDX instance, that file
is a special kind of PDF file called a
"PPML/VDX Layout file." Every PPML/VDX
instance must contain one and only one
PPML/VDX Layout file. If a PPML/VDX instance consists
of more than one file,
one of the files is a PPML/VDX Layout file,
and there might be several or many other PDF files,
and there might also be one or two files in
A PPML/VDX Layout file has a filename extension of
.vdx instead of .pdf, to signify that it is a PPML/VDX Layout
file instead of a "regular" PDF file.
The XML files, if present,
contain PPML data and/or
JDF data. PPML data is
an essential part of every PPML/VDX instance: it is
either inside the PPML/VDX Layout file for the PPML/VDX
instance, or it is in a separate file. JDF data is
optional. If a PPML/VDX instance does contain JDF data,
the JDF data can either be inside the PPML/VDX Layout
file or it can be in a separate file. See below for
more information about the PPML data and JDF data in
a PPML/VDX instance.
The PPML/VDX Layout file
As we've just said, every PPML/VDX instance contains
one and only one PPML/VDX Layout file. The PPML/VDX Layout
file is a PDF file that functions as a
container for some data structures that
describe how the components of the variable-data job are
organized. In addition to these data
structures, a PPML/VDX Layout file might
also contain some or all of the code for
the text & graphics that are required to produce
the variable-data job.
It's important to note that a
PPML/VDX Layout file is not intended for
viewing with PDF-viewer software such as
Adobe Acrobat — even
though it is a PDF file.
That's because a PPML/VDX Layout file is not
structured like a conventional PDF file that is
meant to be opened in PDF-viewing software and
read by human eyes. Instead, a PPML/VDX Layout file
is structured in a way that allows it to serve as
a "container" or "package"
for data structures (and possibly for text & graphics)
that will be
used by PPML/VDX-receiver software to generate
variable-data documents — but the PPML/VDX Layout file
itself is not a "document" in the conventional
sense of the word.
If you do open a PPML/VDX Layout file in
Adobe Acrobat, you will probably see something
Warning: This is a PPML/VDX file.
This file may not display properly in your viewer.
Different ways to organize a PPML/VDX instance
A PPML/VDX instance can be structured in several different
The simplest case
In the simplest kind of PPML/VDX instance,
100% of the information needed to produce
the variable-data job is contained in one
PDF file: the PPML/VDX Layout file. Here is
an illustration that shows what's inside
In this example, all the text and graphics for
the variable-data job are contained inside
the PPML/VDX Layout file, which is named
MyLayoutFile.vdx. Data structures inside
the PPML/VDX Layout file specify where the
various bits of text and the various graphics
are located within the file and describe how
the text and graphics are to be utilized when
producing the variable-data documents.
The "bits of text" can be single
characters, words, sentences, paragraphs, or entire
pages. Formatting information —
such as text positioning,
font name, font style, leading (linespacing), text color,
etc. — is included along with the text itself.
Four major types of PPML/VDX-related
data structures can be found inside a PPML/VDX
The PPMLVDX, ContentBindingTable,
and Layout data structures must be present in every
PPML/VDX Layout file. The ProductIntent data structure
- The ContentBindingTable data structure —
this data structure serves as a sophisticated cross-reference table
and "checklist" that can be used by a PPML/VDX receiver
to determine whether or not all the components
required for the variable-data job are present.
- The Layout data structure — this data structure
either 1) contains a PPML
data structure that describes how the
variable-data documents are to be laid out and how the bits &
pieces of text & graphics are to be incorporated into them,
or 2) contains a reference to a separate file in which
such a PPML data structure is stored.
- The ProductIntent data structure — this data structure
either 1) contains a JDF data structure that specifies
what kind of paper to be
used for printing, what binding method should be used
(if any), etc., or 2) contains a reference to a separate file
in which such a JDF data structure is stored.
- The PPMLVDX data structure — this
data structure serves as a
"wrapper" for the data structures described
above. That is: the ContentBindingTable data structure,
the Layout data structure, and the ProductIntent data
structure (if there is one) are enclosed within the
PPMLVDX data structure.
These data structures are in XML
format. In other words: each of them is an XML element.
Again, it's important to note you will not be able to see
text and graphics that are contained in a PPML/VDX Layout
you open it in a PDF viewer such as Adobe Acrobat.
That's because a
PPML/VDX Layout file is not structured like
a conventional, human-readable PDF file. Instead, its
purpose in life is to serve as a
container for information that is essential to a
and for that reason it is structured according to specifications in
the PPML/VDX standard that has been developed by CGATS.
It is the responsibility of the PPML/VDX receiver in a
PPML/VDX workflow to
read and understand the data structures inside the
PPML/VDX Layout file and to utilize the information in
those data structures to assemble the various
textual and graphical elements
in the file into actual documents.
A more-complicated case
You can also have a PPML/VDX instance that
consists of a PPML/VDX Layout file that
contains only the data structures described above
but does not contain
the actual code for the text and graphics to be
used in the variable-data documents that will be created. In
this case, other PDF files are included in
the PPML/VDX instance along with the PPML/VDX Layout
file, and these other PDF
files contain the code for the text and graphics.
For example, you might have a PPML/VDX instance that
contains the following ten files:
The illustration below depicts a PPML/VDX
instance that is organized this way.
In a PPML/VDX instance like this, the data structures
inside the PPML/VDX Layout file reference other PDF files,
rather than referencing locations within the PPML/VDX
Layout file itself (as was the case with the PPML/VDX
instance described earlier).
Another way to do it
A PPML/VDX instance can also be organized such that
the PPML data structure and the JDF data structure
(if there is one) are located in separate files,
instead of being located inside the PPML/VDX Layout
file. For example, you might have a PPML/VDX instance
that contains the following twelve files:
Here is an illustration that shows how this works.
In this case, PPML/VDX data structures inside the PPML/VDX
Layout file reference a PPML file and a JDF file, and — as in
the previous example — they
also reference PDF files that contain text & graphics. The PPML/VDX
Layout file itself does not contain PPML data or JDF data.
Other ways that a PPML/VDX instance can be organized
We've shown three different ways that a PPML/VDX instance can
be organized. There are also other ways to organize a
PPML/VDX instance. If you're curious about the details behind
PPML/VDX, you might want read the PPML/VDX standard
itself. You can purchase a copy of it for $40.00 US at the American National Standards Institute (ANSI) Web site — click this link:
Software vendors and hardware/RIP manufacturers that support PPML/VDX
The following software vendors offer solutions that generate output in PPML/VDX format:
For detailed information about these products, contact
Citation Software at 888-260-7316.
Atlas Software: This company's PrintShop Mail application is
a powerful yet easy-to-use variable-data-publishing solution
that runs on Windows and Macintosh computers. It can
generate output in
PPML/VDX format (as well as other formats).
Datalogics: This company's DL-100,
DL-1000, and DL-Formatter products
are variable-data-publishing solutions that run
on Windows and Macintosh computers. Some of these
solutions are plug-ins to FrameMaker, InDesign, QuarkXPress,
or Acrobat; some are server-based solutions designed
for batch production. These solutions, which
offer a high degree of control over typography,
can generate output in PPML/VDX format
(as well as other formats).
Elixir Technologies: This
company offers solutions that can generate variable-data
documents and/or convert various
document formats to other document formats. PPML/VDX
is one of the output formats supported by some of
Techno Design: This company's PersonalizerX
product is a QuarkXPress XTension
that allows you to design & produce variable-data
documents. It runs on Macintosh computers.
In addition to other output formats, it generates PPML/VDX.
XMPie: This company's Personal Effect
solution is a suite of products that allow you to
design and produce variable-data documents. Personal
has extensive CRM support
for managing cross-media direct-marketing campaigns.
It generates PPML/VDX output as well as other output formats.
The NexPress 2100 from NexPress Solutions
is a digital color press that delivers
high-quality images. The NexPress 2100 supports PPML/VDX and,
when combined with one of the software solutions listed above,
constitutes a powerful and flexible
high-end variable-data printing solution.
Let our Wizard help you find the right product!
Copyright © 2001-2019 Citation Software Inc.