Government buyers
click here
 • Products & Services     • Buy software 
 • Downloads     • Support 
 • Customer testimonials     • FAQ 
 • Free newsletter     • Press 
 • Mailpiece-design site     • Links 
 • News archives     • Contact 
   • About     • Home 
MYTHS and facts about
variable-data printing
& publishing
♦♦♦ Sign up for our
free newsletter


Citation Software Inc.
 Specialists in variable-data publishing since 1986

                 Follow CitationSW on Twitter                 
              Click to use wizard
             Use our Wizard to find the right product for your requirements and budget!

    Make $50 by sending a customer to us
♦ Sign up for our free newsletter ♦

PPML - A Firm Foundation for the Future of Variable-Data Printing

MAY 9, 2001


Maybe you've heard of it, but you can't exactly remember what it stands for.

"Whatever!" you're probably thinking. "Who needs another abbreviation?"

But wait. If you make your living in the field of printing and publishing, you can't afford not to know about PPML. So, here's the scoop.

What is PPML?

PPML stands for Personalized Print Markup Language. Here is a basic definition:
PPML is an XML-based language for variable-data printing.
Below, we'll flesh out this definition as we talk more about exactly what PPML is and what it does. But first, let's talk about where PPML came from, and why.

Who Developed PPML?

PPML was developed by The Digital Printing Initiative (PODi). PODi, formerly known as the Print On Demand Initiative, is a not-for-profit multi-vendor initiative that's working to develop the market for digital printing.

Quite a few high-profile companies belong to PODi. Here is a list of some of them:
  • Adobe Systems Incorporated
  • Barco
  • Canon
  • CreoScitex
  • Electronics for Imaging (EFI)
  • Epson
  • Hewlett-Packard
  • IBM
  • Indigo
  • Lexmark
  • NexPress
  • Nimblefish
  • Noosh
  • Oce
  • Pageflex
  • Scitex
  • Xeikon
  • Xerox.

Why Did PODi Think There Was a Need for PPML?

To understand why PODi thought that PPML was needed, you first need to understand that variable-data print jobs are likely to print more slowly than non-variable-data print jobs. Depending on the types of documents that you are printing, this can be a mild problem, a moderate problem, or a very severe problem. In some situations, variable-data print jobs print so slowly that it might not even be profitable for a printing company to take on such jobs.

This degradation in print speed is one of the major challenges faced by printing companies that want to participate in the variable-data-printing marketplace. While they were developing the PPML specification, the PODi members devoted much attention to this issue.

Why Do Variable-Data Jobs Print Slowly?

As we've said, a variable-data print job will probably take longer to print than a similar, non-variable-data print job. This happens because - with the variable-data-print job - the code for each and every text element and the code for each and every graphic element on each and every page must be sent to the printer/RIP each time that a customized version of that page is printed, and the printer/RIP must rasterize all of this code each time it is sent. ("Rasterization" is the process of converting code that describes text and graphics into the format that is required by the "print engine," which is the machinery that actually puts the marks on the page.)

This is not the case with non-variable-data print jobs. With a non-variable-data print job, the code for the text elements and graphic elements on each page must be sent to the printer/RIP and rasterized by the printer/RIP only once; then the printer can print as many copies as required.

A simple example will illustrate this concept.
Let's say that you run an automobile dealership, and you are going to print 300 copies of a single-page marketing brochure that will be mailed to potential customers whose names and addresses are contained in a mailing list. The brochure has a picture of the latest model of your manufacturer's SUV; and it also has some text that gives the name, street address, phone number, Web-site address, and business hours for your dealership.

If you are truly printing "copies" (i.e., if all the brochures are identical), the code that describes the brochure's text and graphic elements will be sent to your printer/RIP by your computer only once. The printer/RIP will rasterize this code, and then it will print the 300 brochures. The computer doesn't need to download the code for the text and graphics 300 times, and the printer/RIP doesn't need to rasterize the code 300 times. Instead, the computer downloads the information once, and the printer/RIP rasterizes it once and keeps the raster image (the result of the rasterization process) in memory until the 300 pages have been printed.

Now let's say that you decide to customize the brochures in some way. For example, you might decide to tailor the picture of the car on the brochure to the anticipated preferences of the person to whom it will be mailed.

You decide that a person's age might be a good indicator of the type of car that he or she might be interested in. Fortunately for you, your mailing list contains each person's birth date as well as the person's name and address. So you decide to put a photo of an economy car on the brochure that will be mailed to people under the age of 25 (these folks are probably in college or are just starting out in their careers), you decide to put a photo of an SUV on the brochures that you will mail to people between the ages of 25 and 50 (many of these individuals probably have children and are likely to want a large, rugged vehicle), and you decide to put a photo of a luxury sedan on the brochures to be mailed to people over the age of 50 (these people are likely to be more affluent and are likely to place a higher value on comfort than the other two age groups).

Now - unless you are utilizing special variable-data-printing technology - when it's time to print the 300 customized brochures, your computer will need to download the code for 300 pages of text and graphics to your printer/RIP instead of downloading the code for just one page, and the printer/RIP will need to rasterize 300 pages of code instead of rasterizing one page of code. Why? Because printers/RIPs are generally "page-oriented." In other words, a page is the smallest printed element that a printer/RIP deals with. Because of this, if you are printing multiple pages that are not 100% identical, your printer/RIP needs to get the entire description of each page to be printed.

It's a Problem of Redundancy Problem!

If you think about the situation described above, it becomes obvious that what's needed is some way to eliminate redundancy. In this example, only three different photos are being used (the economy car, the SUV, and the luxury sedan). Nevertheless, your computer has to download code for 300 photos, and your printer/RIP has to process all of this code. Furthermore, your computer has to download the code for the text on the brochure 300 times, and your printer/RIP has to process this code 300 times - even though exactly the same text is being used on all of the brochures.

So now you can understand why print speed is a major challenge when dealing with variable-data printing.

Print Optimization

Various hardware and software vendors have developed proprietary technologies to address the problem described above and thus make variable-data print jobs print faster. These technologies are sometimes known as "print-optimization technologies." Some of the print-optimization technologies in use currently are:
  • Diamond Merge from ColorAge
  • Fiery Free Form from EFI
  • Optimized PostScript from Atlas Software
  • VariScript from Varis
  • VIPP from Xerox
  • VPS from Scitex.

PODi Decides That a Common Technology is Needed

Sometime around 1998, several of the major PODi member organizations came to understand that the market potential of
(Color pages with high-quality, reusable content - such as photos - pose a special challenge for variable-data-printing projects. That's because large amounts of data are required to represent these color elements, and - as you've seen - the need to transfer data to the printer/RIP multiple times slows down the printing process.)

Although the print-optimization technologies listed above had gone a long way toward meeting the challenge of making variable-data jobs print faster by reducing redundancy, the lack of a common print-optimization technology made it difficult for interested developers of variable-data-printing applications and devices to anticipate a broad market. The PODi member organizations knew that the absence of a common print-optimization methodology also made it confusing and risky for printing companies to venture into the variable-data-printing marketplace.

To address this problem, several major PODi member organizations voted in 1999 to develop a new print language for personalized printing. PPML is the language that came out of this development effort.

How Does PPML Work?

PPML makes variable-data jobs print faster by allowing a printer to store text elements and graphic elements and re-use them as needed. This eliminates the need to send the same code to the printer/RIP multiple times during the same print job.

PPML accomplishes this in two ways:
  1. By allowing printers to understand and manipulate the components (objects) that make up a page. This concept is referred to as "object-level granularity."
  2. By allowing application developers to write code that attaches names to objects and re-uses the objects as needed during the process of printing a variable-data job.
Remember, we said earlier that printers generally don't understand anything smaller than a page. This change from "page-level granularity" to "object-level granularity" is a major step forward.

PPML Workflow

In a PPML workflow, there is a PPML Producer and a PPML Consumer.
A PPML Producer is anything that produces PPML code. Typically, a PPML Producer is an application or a driver.

A PPML Consumer is a device, process, or system that reads and interprets PPML code. Typically, a PPML Consumer is a printer, RIP or Digital Front End (DFE).

Is PPML Being Used by a Lot of Companies?

PPML is an emerging technology. It is not in widespread use yet, but thanks to support from high-profile organizations such as
  • Adobe Systems Incorporated
  • Atlas Software BV
  • Barco
  • Canon
  • CreoScitex
  • Datalogics, Inc.
  • Electronics for Imaging (EFI)
  • Epson
  • Hewlett-Packard
  • IBM
  • Indigo
  • Lexmark
  • Meadows Information Systems
  • NexPress
  • Nimblefish
  • Noosh
  • Oce
  • Pageflex
  • Scitex
  • Xeikon, and
  • Xerox
PPML is gaining momentum fast.

Which Hardware and Software Vendors are Supporting PPML or Planning to Support PPML?

As of this writing (May 2001), there are several vendors that offer products which support PPML and several other vendors that are current working toward supporting PPML. Here is some information about some of these vendors and products:
PPML Producers

  • The VIPLine software from Barco Graphics supports PPML. VIPLine is an authoring product for variable-data documents.
  • The Macintosh version of Atlas Software BV's PrintShop Mail application generates PPML output. PrintShop Mail is a variable-data-printing application.
  • Datalogics, Inc. is implementing support for PPML in its DL Formatter variable-data-publishing system.
  • The NewLeaf variable-data-printing solution from PrintSoft supports PPML.
  • The TUKANDA variable-data-printing solution from Solimar Systems, Inc. supports PPML.
  • DesignMerge variable-data-printing software. DesignMerge is a QuarkXPress XTension.
  • The Mpower and Persona variable-data-printing solutions from Pageflex both generate PPML output.
  • Elixir Technologies Corp. is adding PPML support to its Opus variable-data-publishing system.
PPML Consumers

  • The Barco Graphics PrintStreamer product accepts PPML as input. Barco's PrintStream is a workflow component known as a "press server." PrintStreamer provides storage of rasterized pages and transfers data to the print engine at a very fast rate. This maximizes the performance of the print engine, allowing variable-data documents to be printed quickly. Barco's PrintStreamer is used with different press/printer architectures, including the Xeikon DCP/320-D and DCP/500-D, the IBM InfoColor 130, and several models of Xerox printers.
  • The Xeikon eMerge digital front end (DFE) supports PPML. The Xeikon eMerge DFE is integrated with the Xeikon CSP 320 D cut-sheet digital color press.
  • In February 2001 at the On Demand Conference in New York City, IBM conducted a technology demonstration showing the ability of the IBM Infoprint Color 130 Plus to support PPML within the AFP (Advanced Function Presentation) workflow for printing variable-content color documents.
  • The EFI Fiery EX2000 variable-data server accepts PPML input.

How Should I Go About Setting Up a PPML-based Variable-Data-Printing System?

If you are thinking about using PPML technology in your workflow, your best bet is to go with a PPML Producer and PPML Consumer that were designed to work together or were at least tested together.


All PPML Producer implementations are not identical, nor are all PPML Consumer implementations identical. In some cases, the differences can be attributed to the fact that PPML technology is not yet mature. In other cases, there are differences among PPML systems from various vendors because some vendors have chosen not to support certain parts of the PPML specification. For example, some PPML Producers and PPML Consumers support imposition while others do not.

Bottom line (we've said this once, but we'll say it again because it bears repeating): to minimize compatibility problems when creating a PPML-based variable-data-printing system, invest in system components that were designed to work together or at least were tested together.

Several software and hardware vendors have formed PPML-related alliances. Details about some of these vendors and their products are given below.
Electronics For Imaging (EFI) and Pageflex: Last year, Electronics For Imaging (EFI) introduced the use of PPML in several RIPs for color machines running at 12 to 60 pages per minute (ppm). In February, 2001 EFI and Pageflex, Inc. announced a software-development and licensing agreement. Under the agreement, the companies will incorporate Pageflex's PPML-based variable-data-printing technology into EFI products to be distributed through EFI channels.

Xeikon and Pageflex, Inc./Meadows Information Systems: The Xeikon CSP 320-D cut-sheet printer with the Emerge font end accepts PPML as input. Xeikon supports Mpower and Persona from Pageflex. Xeikon also supports DesignMerge from Meadows Information Systems. (DesignMerge will support PPML in an upcoming release.)

EFI and Atlas Software BV: Atlas Software BV's PrintShop Mail software is being offered by EFI as part of EFI's Fiery Velocity Design product. (As mentioned earlier, the Macintosh version of PrintShop Mail produces PPML.)

Heidelberg and Atlas Software BV: Atlas Software BV's PrintShop Mail software is being offered by Heidelberg for printing on Heidelberg's black & white Digimaster 9110 System. (Again, the Macintosh version of PrintShop Mail generates PPML.)

For more information about PPML, visit

Let our Wizard help you find the right product!

• Products & Services   • Buy software   • Downloads   • Support
• Mailpiece-design site   • Our customers    • Company information   • Links
• Free newsletter   • FAQ   • Case studies   • Contact us
• News archives   • Press   • Customer testimonials   • Home


Copyright © 2001-2021 Citation Software Inc.
print on demand