Title: Welcome to the Xplor JDF Tutorial
1Welcome to the Xplor JDF Tutorial
2Tutorial Session Speakers
- Doug Belkofer - Efi
- Rainer Prosi - Heidelberg
- Steve Hiebert HP
3Outline
- Architectural Overview of JDF
- Experience with JDF
4JDF on One Slide
- JDF is a Graphic Arts Job Ticket Data
Interchange Format Specification - JDF is not an
Application or System - JDF is encoded in XML
- Content is referenced, not embedded
- JDF is extensible
- JDF is based on semantic structures originally
defined by - Adobe PJTF
- CIP3 PPF
- JDF Job Definition JMF Messaging JDF
Capabilities ICS Documents define the JDF
Framework
5JDF on Another Slide- Goals and Requirements -
- Why?
- Automation increases Efficiency
- Information allows for informed decisions
- We have a digital content workflow with a paper
based management workflow that is not useful! - What?
- Describe a Job in the graphic arts from the view
point of - Technical Applications or Devices
- Management Information Systems
- Customers
- Collect data that is relevant to a Job from
origination to delivery - How?
- See next Slides
6CIP4 Reference Model
7JDF Encoding
- XML Encoding
- External references via URI/URL
- XML Schema for Data Type Definitions
- Extensibility using XML name spaces
8The Building Blocks of the JDF Framework
- JDF Node
- Description of a Process, Process Group, Gray Box
or Product - JDF Resource
- Description of a parameter set or physical entity
- JDF ResourceLink
- Link between JDF Nodes and Resources
- JDF Capabilities Descriptions
- Limitation of a JDF interface
- JMF Messages
- Real time data interchange format
- ICS Documents
- Specification of Limits of the JDF for individual
purposes
9The JDF Node
- Description of a generic Process
- The Verb in JDF
- Do something at a given time
- Structured container for Scheduling and Auditing
- One JDF node type for both Products and Processes
- Less Precise Product Intentat the Job Root Node
- Abstract ProcessGroup Nodes or Gray Box nodes
in between - Detailed individual or combined Processes in the
Leaf Nodes
10Product Intent vs. Process Modeling
- Goal of Product Intent Description
- Customers view of the thing they want to
manufacture - Contract Negotiation
- Process Independent
11Product Intent vs. Process Modeling
- Goal of Process Modeling
- Interface between MIS and Production
- Process interdependencies
- Manufacturing Instruction Details
12Gray Boxes
- Incomplete Model of a Process
- The MIS View of the process
- Its only important if it affects the cost!
- Thus, parameters not affecting costs are not
important - Exact Process execution is potentially undefined
- Ordering of steps is not necessarily predefined
- Detailed Work Steps may be left out
- E.g. MIS knows RIPping, but not Trapping or
ColorSpaceConversion
13Audit Objects
- Logging of Job Execution
- Actual times
- Start time
- End time
- Phases
- Logging of Late Changes
- Resources
- (used 85g Paper instead of 80g)
- Used Roll inventory 123, not 456
- Consumables
- Status Summary
- Event Log
14Job / Customer Information
- CustomerInfo
- Map Subcontracting via Localized Customer
Information in any JDF Node - Customer ID
- Addresses (Delivery, Invoice, )
- NodeInfo
- Scheduling
- Deadlines
- Processing Time Estimation
15JDF Node simple Example
- JobPartIDp1 StatusWaiting" Version1.3"
-
- StatusAvailable ID"Link0001" /
- Class"Parameter" StatusAvailable"/
- StatusUnavailable" DescriptiveName"SomeOutputRe
source"/ -
-
-
- UsageInput"/
- UsageOutput"/
-
-
-
16The JDF Node Node Type
- Individual process types and their respective
resources are defined e.g. - Interpreting
- Trapping
- ConventionalPrinting
- DigitalPrinting
- Cutting
- Folding
- Verification
- Delivery
17Combination of JDF Nodes
- Dont recreate a new Process Type for
Permutations of known Processes! - Create combinations of multiple defined processes
into one process, e.g. - online finishing printing folding cutting
- in-RIP trapping trapping RIPping
- Three types of Combination Nodes
- Combined Node All internal interfaces are hidden
- Smart multi-function device
- ProcessGroup Internal nodes are accessible
- Without Sub elements (Gray Box)
- MIS view
- With Sub elements
- Workflow group in a department
- Subcontract
18Combined vs. ProcessGroup
Combined Node
Res
Res
Res1
Res2
ProcessGroup
Res
Res
Res1
Res2
19JDF Resources
- Specification of Parameters of
- Product Intent description
- Logical Entities, e.g RIP Parameters, Imposition
setup - Physical Entities, e.g. Media, Devices, Plates
- Based on Adobe PJTF and CIP3 PPF
- Intent Resources for product intent nodes
- Prepress Adobe PJTF
- Press, Finishing CIP3 PPF
- Internal to JDF or External Links to well-defined
Formats - Thumbnails, Preview Files, ICC Profiles, Content
Data
20JDF RunList Resource Simple Example
- StatusAvailable PartIDKeysRun
-
-
- MimeType"application/PDF"/
-
-
-
-
- MimeType"application/PDF"/
-
-
-
21JDF Resources - Intent Resources
- Parameters are not attributes but rather
structured Span Elements with the following
attributes - Range list of allowed values
- Names
- Numbers
- Ranges of Numbers / Strings
- OfferRange list of proposed values
- Preferred one preferred value
- Actual The selected value from Range or
Preferred
22JDF Resources - Details
- Special handling of multiple Parts, e.g.
- Sheets
- Separations
- Waste
- Tiles
- Versions
- Redo one part of a large resource
- Only the yellow plate of the front surface of
sheet 17 - Parallel processing of partitioned resources
- Selection of devices / operators
23JDF Resources - Partitioning
- One Resource may specify multiple entities
- Multiple Partition type levels, e.g. Sheet,
Side, Separation - Inheritance model
- specify common attributes once
- Overwrite individual attributes / elements
- Select individual or multiple parts with a
ResourceLink
24Partitioning and Nodes
Partitioned Resources with matching partition
keys are connected.
25Partitioned Ink Resource Example
- Class"Consumable" StatusAvailable"
MediaType"Coated" PartIDKeys"Separation" -
-
-
-
-
-
-
-
-
-
-
-
- Spot Blau"
- ColorantUsage"spot"/
-
-
26ResourceLink
- Bind a Resource to a Node
- Define Resource Usage (input or output)
- Link to a Subset / Part of a Resource
- E.g. Cyan Plate of the Front of Sheet 1
- Define the Amount
- Allow reuse of Resources by multiple processes
- One resource may be linkedby multiple
ResourceLinks - Defines a process network
27ResourceRef
- Used to reference a Resource from within another
JDF Element - May contain one Part element to select individual
partition - Equivalent to an inline occurence of the
referenced resource - Name mangling ResourceRef
28JDF RunList Resource Simple Example with
ResourceRef
- StatusAvailable PartIDKeysRun
-
-
-
-
-
- MimeType"application/PDF"/
-
-
-
- Class"Parameter" StatusAvailable
- MimeType"application/PDF"/
29ConventionalPrinting JDF Node Example
ConventionalPrinting
ExposedMedia (Plate)
- NodeInfo
- Planned StartTime
- Planned EndTime
Media
AuditPool Actual Resource Usage Actual Time
Summary
Ink
InkZoneProfile
Resource Links
Component (including amount)
Parameters Layout (Control Marks)
30The JDF Node Execution Requirements
- A Node is executable when all required input
resources are available - Serial Processing -- Standard
- Parallel Processing -- Partial Resources
- Overlapping Processing -- Pipes
- Iterative Processing -- Draft Resources
- Node dependencies allow process configuration
- A proof node can create an Approval which is
needed for the press node to operate
31Node Executability
Resource ResourceLink JDF Node
Not Available
Not Executable
Available
Resource Links
Available
32Node Executability
Resource ResourceLink JDF Node
Available
Executable
Available
Resource Links
Available
33Node ExecutabilityAnd Networks
Waiting
Available
Not Available
Links
Not Executable
Available
Links
Available
Available
Not Available
34Node ExecutabilityAnd Networks
Running
Available
Not Available
Links
Not Executable
Links
Available
Available
Available
Available
35Node ExecutabilityAnd Networks
Completed
Available
Available
Links
Executable
Available
Links
Available
Available
Available
36Job Description Models supported by JDF I
- Product Definition
- No Process
- Abstract, customer view
- Segmentation by Product Components
- Serial Processing
RIP
Print
Bind
37Job Description Models supported by JDF II
- Parallel Processing
- Overlapping Processing
Print
Bind
RIP
Print
38Job Description Models supported by JDF III
- Iterative Processing
- Informal Iterative Processing using Draft
Resources - Formal Iterative Processing using JMF Messages
Edit
Touchup
Layout
39JDF Tree / Network Structure
40JDF - Spawning and Merging
- Spawn individual nodes of the JDF Tree for
independent processing - Parallel Processing
- Subcontracting
- Support for Partitioning e.g. only sheet 1
- Merge back after processing
- Retain information source Context
- Audits
- Modified Resources
41Spawning Merging
Master JDF
Executable Sub-JDF 1
Executable Sub-JDF 2
Step 1 - Prior to Spawning
42Spawning Merging
Master JDF
Executable Sub-JDF 1
Locked Sub-JDF 2
Step 2 - Spawned, Prior to Execution
Spawned Executable Sub-JDF
43Spawning Merging
Master JDF
Executable Sub-JDF 1
Locked Sub-JDF 2
Step 3 - Spawned, After independent Execution Pr
ior to merging
Spawned completed Sub-JDF
44Spawning Merging
Master JDF
Executable Sub-JDF 1
Merged Sub-JDF 2
Step 4 - After Execution After Merging
45JMF Messaging
- Real-time data interchange format
- Small XML structures
- JDF is referenced via URL, not bound into message
- Idea is to minimize network traffic and delay
transmission of data until it is actually needed - Send potentially interesting information as soon
as it is available
46JMF Messaging
- Used for
- Plug Play bootstrapping
- Snapshots of Job / Device status
- Dynamic job update
- Job submission and Queue/QueueEntry handling
- Capabilities discovery
- Generally used within an Intranet
47JMF Message Families
- JMF messages fall into six categories
- Command
- Receiver is instructed to take an action, or to
modify the state of something - Query
- Receiver is instructed to return information
about something. No action is taken, no states
are changed - Response
- Used to immediately return result of command or
query - Synchronous messaging command/query and
response are exchanged on same open connection
48JMF Message Families
- JMF message categories (contd)
- Acknowledge
- Used to return the result of a command after some
time has passed - Asynchronous messaging empty response returned
immediately on same connection as command with
indication that Acknowledgement will be sent
later - Signal
- Used to send notifications of events or change in
status - Typically result of a query with a subscription
embedded in it - Subscription sets up persistent channel
- Registration
- Request for commands
- Used to set up triangular workflows
- E.g. MIS tells prepress to send a Command to Press
49Example SubmitQueueEntry message
- 005-11-05T123248-0600"
-
- er/getJob?job10047"
- ReturnJMF"http//jobserver/jmfservice"
- Priority"50"/
-
-
50JMF Message Types
- Examples of JMF message that fall within the six
categories - Command
- SubmitQueueEntry, AbortQueueEntry,
ReturnQueueEntry, HoldQueue, ResumeQueue - Query
- KnownControllers, KnownDevices, Status
- Response
- Various related to various commands/queries
- Acknowledgement
- Various related to various commands/queries
- Signal
- Status, Resource, Occupation
- Registration
- Resource
51PrintTalk www.printtalk.org
- JDF describes the product to be produced
- PrintTalk describes the business context of the
product - Request For Quote
- Quotation
- Purchase Order
- Invoice
- Change Order
- PrintTalk also contains Pricing Information
52CIP4 Open Source Development Tools
- XML Schema
- C API
- Java API
- JDF Editor
- Visualise JDF JMF
- Send Messages
- Elk Project
- Reference Device
53History of JDF
- 1999 Adobe, Agfa, MAN and Heidelberg form the
GAT initiative with the goal of defining a job
ticket for the Graphic Arts that also integrates
MIS. - 2000 The CIP3 Consortium takes ownership of the
standard. - 2001 JDF 1.0 is released.
- 2002 JDF 1.1 is released.
- Ambiguities/Bugs found in implementation were
removed - Additional Processes were added
- Consistency between diverse areas was enhanced
- 2004 JDF 1.2 is released
- More additional processes
- Even more mature and consistent
- 2005 First set of ICS documents are published
- JDF 1.3 is released
54Experience with JDF - Advantages
- Single grammar for specifying job data in the
graphic arts industry - Integration of Production, Customer and MIS
- Multiple views for Production, Customer and MIS
- Definition of production networks
- Combined Processes
- Defined communication protocol, not only data
structures - Extensible Model
- Interaction with other Standards in GA
55Experience with JDF - Challenges / Obstacles
- Number of processes in the graphic arts
- Creative
- Prepress
- Press
- Finishing
- Fulfillment
- Complexity of the standard
- Size of the Specification
- Moving from the Abstract Idea to a Concrete
Implementation - Flexibility of the Specification
- Unclear Role of Production networks in
Interfacing with Devices - private extensions
- Definition of abstract coordinate systems
- Legacy System Longevity
56Why ICS ?
JDF A ICS JDF B
Product A
Product B
InteroperabilityConformanceSpecifications
57Interoperability Conformance Specifications
- Define a set of Interoperability Conformance
Specifications ICS - The term JDF Compliant does not immediately
imply that two arbitrary applications will
communicate. - Sending RIP instructions to a Folding Machine is
not useful - Two applications that comply with a given ICS
will communicate in a meaningful way. - Product Certification will be based on ICS
Compliance - Avoid multiple, incompatible JDF Dialects
58ICS Document Structure
59ICS documents
- Provide the basis for certification
- Ensure that products MUST read / write / accept
certain conditions - Interoperability between applications
- Limited functionality in the initial ICS versions
- Additional functionality is optional but not
certifiable - Multiple levels
- More functionality will be added in future ICS
versions
60Read Write Conformance
- JDF Specification Describes the valid
cardinality of parameters in a JDF or JMF
instance - ICS Specifies conformance requirements for an
application or device - W Must write. The application only conforms, if
it always writes the parameter - W? May Write. Not a Conformance requirement
- W? Conditional write conformance. External
conditions exist the require an application to
write. - !W Must NOT write. The application does not
conform, if it writes the parameter. - R Must read. The Information must be parsed and
appropriately processed - R? May Read. Not a Conformance requirement
61JDF Tutorial
Thank you very much for your attention!