Integrating JDF and PPML

Download Report

Transcript Integrating JDF and PPML

HP Digital Publishing Solutions

Integrating JDF and PPML

Marrying a Job Ticket to a Page Description Language Steve Hiebert Software Design Engineer Hewlett-Packard Company Steve Hiebert Integrating JDF and PPML September 11, 2002 Page 1

HP Digital Publishing Solutions

motivation

• JDF is a job ticketing and workflow description language that is gaining rapid acceptance in the commercial and enterprise printing arena. JDF has an active body, CIP4, working on maintaining and improving the language over time.

• PPML is a page description language (PDL) targeted at variable data printing jobs and maximizing the re-use of assets to minimize transport and printing costs.

• JDF is, for the most part, PDL agnostic. PPML is, for the most part, job ticket agnostic. They each do their own job and have avoided cluttering their vocabulary with elements from the others domain.

• As such, integration of these two XML vocabularies to allow cooperation and interoperation would seem to be a marriage made in heaven.

Steve Hiebert Integrating JDF and PPML September 11, 2002 Page 2

HP Digital Publishing Solutions

topics to be covered

• PPML • Origins • Basic Structure • JDF • Origins • Basic Structure • Process types considered • IDPrinting • Combined process • Resource modifications, issues and solutions • Variable Data Printing • Partitioning • Resource updates • Resource modification from the data stream • TICKET_REF • TICKET Steve Hiebert Integrating JDF and PPML September 11, 2002 Page 3

HP Digital Publishing Solutions

origins of PPML

• Personalized Print Markup Language • PODi – Print On Demand initiative • PPML conceived: March, 1999 • PPML project initiated: April, 1999 • Versions • Version 1.0: March, 2000 • Version 1.5: May, 2001 • Version 2.0: April, 2002 • Version 2.1: July, 2002 Steve Hiebert Integrating JDF and PPML September 11, 2002 Page 4

HP Digital Publishing Solutions

PPML

• Page Description Language (PDL) • Specifies how to manipulate and arrange images on a page • XML based • Mostly hierarchical • Content format agnostic • PDF • TIFF • PostScript • SVG • XSL/FO • Etc.

Steve Hiebert Integrating JDF and PPML September 11, 2002 Page 5

HP Digital Publishing Solutions

basic structure of PPML

PPML DOCUMENT_SET DOCUMENT_SET ...

DOCUMENT DOCUMENT ...

PAGE PAGE ...

MARK MARK

Steve Hiebert

...

Integrating JDF and PPML September 11, 2002 Page 6

HP Digital Publishing Solutions

origins of JDF

• Job Definition Format • Describes prepress, press and post-press processes • Built upon PPF (CIP3) and PJTF (Adobe) • CIP4 – Cooperation for the Integration of Processes in Prepress, Press and Post-press • JDF initiated: late 1999 • Versions: • Version 1.0: April, 2001 • Version 1.1: April, 2002 • Version 1.1 Revision A: September 2002 Steve Hiebert Integrating JDF and PPML September 11, 2002 Page 7

HP Digital Publishing Solutions

JDF

• Job Ticketing and Workflow Language • XML based • Hierarchy of processes • Web of resources • PDL agnostic • PDF • PPML • Etc.

Steve Hiebert Integrating JDF and PPML September 11, 2002 Page 8

HP Digital Publishing Solutions

basic structure of JDF

JDF Resource Resource Resource Resource Links JDF Resource Links JDF

Steve Hiebert

Resource Links JDF

Integrating JDF and PPML September 11, 2002 Page 9

HP Digital Publishing Solutions

choosing a JDF process model

• IDPrinting • Pro: close mapping to Internet Printing Protocol (IPP) • Con: resource model different from typical JDF – Many resources referred to directly – The missing link • Combined Process • Follows existing JDF model – Resource/ResourceLink • Divide and conquer – Mix and match processes – Model a wider variety of print workflows – Scalable and extensible • Tightly coupled processes – Inner inputs and outputs implied Steve Hiebert Integrating JDF and PPML September 11, 2002 Page 10

HP Digital Publishing Solutions

IDPrinting

• Integrated Digital Printing • Designed with IPP in mind • Interpreting + Rendering + Screening + DigitalPrinting • Input Resources mapping to IPP • Appendix F of JDF Specification details mapping • IDPrintingParams – Several sub-elements and references • Media • Runlist Steve Hiebert Integrating JDF and PPML September 11, 2002 Page 11

HP Digital Publishing Solutions

IDPrinting

• Other Input Resources • ColorantControl • Component (Cover, Input, Proof) • ExposedMedia • FontPolicy • InterpretingParams • RenderingParams • ScreeningParams • TransferFunctionControl Steve Hiebert Integrating JDF and PPML September 11, 2002 Page 12

HP Digital Publishing Solutions

comparing IPP to IDPrintingParams IPP IDPrintingParams

• attributes-natural-lang • ipp-attribute-fidelity • job-priority • output-bin • page-delivery • print-quality • sheet-collate • AttributesNaturalLang • IDPAttributeFidelity • IPPJobPriority • OutputBin • PageDelivery • PrintQuality • SheetCollate Steve Hiebert Integrating JDF and PPML September 11, 2002 Page 13

HP Digital Publishing Solutions

sub-elements of IDPrintingParams

• Cover • IDPFinishing, IDPLayout, MediaIntent, MediaSource • IDPFinishing • IDPFolding, IDPHolemaking, IDPStitching, IDPTrimming – IDPHolemaking contains or refers to HoleMakingParams • IDPLayout • Very simple layout • JobSheet • IDPFinishing, IDPLayout, MediaIntent, MediaSource • MediaIntent • Linked to Product nodes, referenced by IDPrintingParams • MediaSource Steve Hiebert Integrating JDF and PPML September 11, 2002 Page 14

HP Digital Publishing Solutions

but …

• From the JDF Specification: • Controls for IDPrinting are provided in the IDPrintingParams resource. These controls are somewhat limited in their scope. If greater control over various aspects of the printing process is required, IDPrinting should not be used.

Steve Hiebert Integrating JDF and PPML September 11, 2002 Page 15

HP Digital Publishing Solutions

JDF Combined process

• From the JDF Specification: • For example, a digital printer may be able to execute the

Interpreting

,

Rendering

, and

DigitalPrinting

processes. To accommodate such devices, JDF allows processes to be grouped within a node whose

Type

=

Combined

Steve Hiebert Integrating JDF and PPML September 11, 2002 Page 16

HP Digital Publishing Solutions

A Combined process node

• JDF Node • Type="Combined" • Types="list of processes making up combined node" • Ordering is significant • May repeat, e.g., Types="Trimming Folding Trimming" • Resource and ResourceLink pools are merged • Links specify the target process(es) • All resources must be available/complete to start • Input and Output resources of inner processes are implied Steve Hiebert Integrating JDF and PPML September 11, 2002 Page 17

HP Digital Publishing Solutions

processes to model a digital print workflow – mix and match

• LayoutPreparation • Imposition • Interpreting • Rendering • Screening • DigitalPrinting • Stitching • Folding • Trimming • HoleMaking Steve Hiebert Integrating JDF and PPML September 11, 2002 Page 18

HP Digital Publishing Solutions

JDF Combined process assumptions

• The processes in a combined process are tightly coupled.

• The processes in a combined process have knowledge of one another.

• The processes in a combined process can inform each other about values obtained from their resources.

Steve Hiebert Integrating JDF and PPML September 11, 2002 Page 19

HP Digital Publishing Solutions

A JDF Combined Process Node

JDF (Interpreting, Rendering, DigitalPrinting Resource Resource Pool Resource Resource Resource Links (Interpreting) Resource Links (Rendering) Resource Link Pool Resource Links (DigitalPrinting)

Steve Hiebert Integrating JDF and PPML September 11, 2002 Page 20

HP Digital Publishing Solutions

Combined process example

Steve Hiebert Integrating JDF and PPML September 11, 2002 Page 21

HP Digital Publishing Solutions

modifying resources at runtime

• Traditional challenges • Challenges added by Variable Data Printing (VDP) • Traditional JDF • Partitioning • Part • Features added to JDF for VDP • Resource updates Steve Hiebert Integrating JDF and PPML September 11, 2002 Page 22

HP Digital Publishing Solutions

traditional challenges

• Repetitive processes applied to similar but different entities • Files • Sheets • Surfaces • Separations • Concise representation • Avoid multiple Nodes of same process each with its own resources • Avoid repeating the common portions of resource definitions Steve Hiebert Integrating JDF and PPML September 11, 2002 Page 23

HP Digital Publishing Solutions

variable data printing challenges

• Database driven • Text • Images • Media!

• Etc.

• Streams, in particular transactional processing • A job without end Steve Hiebert Integrating JDF and PPML September 11, 2002 Page 24

HP Digital Publishing Solutions

varying resources - traditional

• Partitions • Nested resources with selection criteria – E.g., a Media resource may contain 0 or more Media resources – Outer resource is root – Inner resources are leaves – Inner resources may nest • PartIDKeys in root – Define selection types – Enumeration, defined for each partitionable resource • PartIDKeys in leaves – Each key becomes an attribute name – Define values for those types – Based on up front knowledge – Assumes an algorithm to select – Algorithm becomes value of attribute Steve Hiebert Integrating JDF and PPML September 11, 2002 Page 25

HP Digital Publishing Solutions

possible PartIDKeys values (1 or more)

• • • • • • • • • • • •

BlockName DocCopies DocIndex DocRunIndex DocSheetIndex FountainNumber LayerIDs Location Option PageNumber PartVersion PreviewType

• • • • • • • • • • • • •

RibbonName Run RunIndex RunTags RunPage Separation SetIndex SheetIndex SheetName Side SignatureName TileID WebName

Steve Hiebert Integrating JDF and PPML September 11, 2002 Page 26

HP Digital Publishing Solutions

partitioning a RunList

(JDF 1.1 specification excerpts)

7.2.115 RunList RunList

resources describe an ordered set of LayoutElement or ByteMap elements. Ordering and structure are defined using the generic partitioning mechanisms as described in 3.9.2 Description of Partitionable Resources.

Resource Properties Resource class: Resource referenced by: Partition:

DocIndex, PartVersion,

Parameter

Run , RunPage, Separation

Input of processes: Output of processes:

RunLists are used as input resources by most processes that act on content data RunLists are used as output resources by most processes that act on content data

Table 3.25 Contents of the Part element

Run The

Run

attribute selects a set of partitioned RunList elements from a

RunList

resource.

Steve Hiebert Integrating JDF and PPML September 11, 2002 Page 27

HP Digital Publishing Solutions

a partitioned RunList

< RunList ID =" < RunList Link0003 Run =" 1 " " Class =" Parameter " Pages =" 0~-1 "> Status =" Available " PartIDKeys =" Run "> < LayoutElement > < FileSpec URL =" File://File1.pdf

"/> < RunList Run =" 2 " Pages =" 0~-1 "> < LayoutElement > < FileSpec URL =" File://File2.pdf

"/> Steve Hiebert Integrating JDF and PPML September 11, 2002 Page 28

HP Digital Publishing Solutions

referencing a partitioned RunList

< ResourceLinkPool > < RunListLink < Part Run =" rRef 1 "/> =" Link003 " < RunListLink < Part Run =" rRef 2 "/> =" Link003 " Usage =" Input "> Usage =" Input "> Explicit references to partitions < ResourceLinkPool > < RunListLink rRef =" Link003 " Usage =" Input “/> Implicit reference to partitions Steve Hiebert Integrating JDF and PPML September 11, 2002 Page 29

HP Digital Publishing Solutions

varying resources - VDP

• Respond to non-algorithmic events • Three attempts • Direct setting of resource value – Causes addressing problems (nested resources) – Uncontrolled, anything can happen • Update messages – Double indirection to ease addressing problems – Address the message by ID – ID of receiving process in the message – Allowable messages listed in UpdateMessagePool • Update resources – One level of addressing – Allowable updates contained within the resource itself – Very clear which update goes with which resource – Very clear what updates may happen to a resource Steve Hiebert Integrating JDF and PPML September 11, 2002 Page 30

HP Digital Publishing Solutions

resource updates

• Available for all process input resources • Resource Update named after containing resource with "Update" appended • E.g., DigitalPrintingParams may contain 0 or more DigitalPrintingParamsUpdate elements • Update has same content and attributes as parent • All attributes and content are optional in Update • Update does not inherit from parent • Updates set processor state Steve Hiebert Integrating JDF and PPML September 11, 2002 Page 31

HP Digital Publishing Solutions

a resource with updates

< DigitalPrintingParams ID =" InitialDigitalPrintingParams " Class =" Parameter " Status =" Available " Collate =" None "> < DigitalPrintingParamsUpdate UpdateID =" CollateEnabled " Collate =" Sheet "/> < DigitalPrintingParamsUpdate UpdateID =" CollateDisabled " Collate =" None "/> Note: all IDs must be unique Steve Hiebert Integrating JDF and PPML September 11, 2002 Page 32

HP Digital Publishing Solutions

activating a resource update

• PPML • TICKET_REF – Placed within PPML data stream – May occur before or within a PPML construct – An update, once activated, remains in effect until overridden or out of scope – Activates a resource update – Address outer (containing) resource to reset to initial state • TICKET – Placed at start of PPML data stream – Contains or refers to job ticket – May or may not be JDF Steve Hiebert Integrating JDF and PPML September 11, 2002 Page 33

HP Digital Publishing Solutions

activating a resource update with TICKET_REF

• May occur within: • PPML • DOCUMENT_SET • DOCUMENT • PAGE • MARK • REUSABLE_OBJECT, OCCURRENCE_LIST • No content • Single attribute: ExtRefID • Updates processor state Steve Hiebert Integrating JDF and PPML September 11, 2002 Page 34

HP Digital Publishing Solutions

resource update before

...

... ... ... ...

...

Steve Hiebert Integrating JDF and PPML September 11, 2002 Page 35

HP Digital Publishing Solutions

resource update within

...

... ... ... ...

...

Steve Hiebert Integrating JDF and PPML September 11, 2002 Page 36

HP Digital Publishing Solutions

PPML TICKET

• May contain or refer to the JDF job ticket • INTERNAL_DATA • EXTERNAL_DATA • Format attribute • E.g., application/vnd.cip4-jdf+xml – Not yet registered with the IANA – +xml described in IETF RFC 3023 – http://www.rfc-editor.org/rfc/rfc3023.txt

Steve Hiebert Integrating JDF and PPML September 11, 2002 Page 37

HP Digital Publishing Solutions

job ticket embedded in PPML

...

...

Steve Hiebert Integrating JDF and PPML September 11, 2002 Page 38

HP Digital Publishing Solutions

job ticket referenced from PPML

Steve Hiebert Integrating JDF and PPML September 11, 2002 Page 39

HP Digital Publishing Solutions

for further reading

• JDF 1.1a Specification • http://www.cip4.org/documents/jdf_specifications/index.html

• PPML 2.1 Specification (on request) • http://www.podi.org

• PPML Job Ticket 1.1 Specification (on request) • http://www.podi.org

• Internet Printing Protocol (IPP) • http://www.pwg.org/ipp/ Steve Hiebert Integrating JDF and PPML September 11, 2002 Page 40