Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.
Introduction to             JDF / JMFStefan Meißner (stefan.meissner@saxoprint.de)
Glossar• JDF – Job Definition Format  (Technical description of a print job or process step)• JMF – Job Messaging Format  ...
JDF Requirements and Goals• Automation raises Efficiency• Process Integration / Prozess Transparency   – Supervision of Jo...
JDF – Job Definition Format• Specification for a detailed Job- and Process step description in  Graphical Artwork Industry...
JMF – Job Messaging Format• Infrastructure / Communication system of JDF• JMF Message Families: Query, Command, Signal...•...
Sample: JMF Status Signal<JMF MaxVersion="1.4" SenderID="03-SpeedmasterXL105-1" TimeStamp="2011-05-30T10:07:19-04:00"   Ve...
Typically JDF Architecture                   Native                Communication                                JDF Device...
Architecture: Heidelberg                   Native                Communication                                JDF Device  ...
Architecture: KBA                   Native                Communication                                       JDF Device  ...
Disadvantages Architecture          Sketch „Typically Architecture“:                                                Device...
Prefered Architecture                                      JDF Device                                        Device 1     ...
JDF Dialects• JDF is just a specification. Parts and depth of implementation  for each JDF Device depends on vendor.• ICS ...
JDF – Technology of the 1990sThe fundamental JDF Concepts were designed in the 1990s as apart of prepress digitalization:•...
Problem: Job BagJDF is common known as „Digital Job Bag“ .But:Job Bags are data storage, defines workflow logic and even c...
Problem: Job BagTheory:    One managed, archived and central File           per Job ?!?!?But what about...       • … Concu...
Best Practice: Job Bag• Extract Job Data to Database• Extract PDA to Database• Extract Workflow-Logic to a Workflow-Engine...
Best Practice: JDF / JMFJDF is only a Technology for Communication!                           → No Data Storage – No Workf...
Best Practice: Architecture(self made)   MIS                    Advantages Architecture:                       – Clear and...
Communication: JMF Families• JMF Command  – Recipient has to run actions or change the status.• JMF Query  – Recipient has...
Communication: JMF Families• JMF Acknowledge   – Submission asynchronous Messages.   – Will be referenced in synchronous R...
JMF Samples• JMF Command   – SubmitQueueEntry (Job Submission)   – ReturnQueueEntry (Returns a Job from a Device)   – Hold...
JMF Families – Practical ExampleFollowing a structural example of a PDA using the JMF FamililesJMF Query and JMF Signal.• ...
Structure JMF Message <?xml version="1.0" encoding="UTF-8"?> <JMF xmlns="http://www.CIP4.org/JDFSchema_1_1" SenderID="Alce...
Structure ICS / JDF SpecSection of JMF ICS:w    MUST be written. JDF only is valid when Parameter is     written.w?   MAY ...
JMF Query: KnownMessagesQuery and Response KnownMessages: <?xml version="1.0" encoding="UTF-8"?> <JMF xmlns="http://www.CI...
JMF Cmd: SubmitQueueEntryJob Transmission (JDF / QueueEntry) to an Target Device <?xml version="1.0" encoding="UTF-8"?> <J...
More JDF / JMF Samples   More helpful JDF / JMF   Samples you can find in JDF   Specification:       Appendix S -         ...
Overview CIP4 ToolsCIP4 JDF Tools:• CIP4 Bambi 2 (JDF Device Simulator)• CIP4 Alces (JDF Integration Tool / MIS Simulator)...
Typically JDF Architecutre                   Native                Communication                                JDF Device...
CIP4 Tools - ArchitectureAlces                Bambi                             JDF Device                               D...
CIP4 Tooling: Bambi 2               • JDF Device Simulator                  („Virtual Print Production“)                  ...
CIP4 Tools: Bambi 2            Bambi 2 - Basic            •   Extended Functionality            •   URL:                ht...
Bambi 2 – JMF Interface • Communication via HTTP • JMF Interface is aURL    – Each Device one URL        (DeviceId extract...
CIP4 Tools: Alces
Alces: Process Map „Connect“                  Alces (MIS)                        Bambi (SpeedmasterXL105-1)     Button „Co...
JMF Query: KnownMessagesQuery and Response KnownMessages: <?xml version="1.0" encoding="UTF-8"?> <JMF xmlns="http://www.CI...
Alces: Overview                                                     JMF Interface:    DeviceInfo:                         ...
Alces: GoalsGoals Alces:• Basic Functionality Test of JMF Interfaces• Simplify Integration of JDF Devices• Fault Analysis•...
HowTo: KnownMessages                  1. Press Connect:                     Connect to JDF Device2. JMF Query KnownMessage...
HowTo: Queue Operations                              1. JMF Query KnownMessages:                                   Execute...
HowTo: SubmitQueueEntry                          1. JMF Query KnownMessages:                               Execute JMF Que...
JDF-VM – The Virtual MachineThe Virtual Machine preinstalled with CIP4 JDF Tools.                                         ...
JDF-VM - InstallationInstallation Guide JDF-VM:1) Installation and start of Oracle VirtualBox2) Download and extract JDF-V...
Upcoming SlideShare
Loading in …5
×

Introduction to JDF / JMF

10,924 views

Published on

Introduction in JDF / JMF Technology.
More details on http://jdf4you.org/JDF-Introduction

Published in: Technology, Business

Introduction to JDF / JMF

  1. 1. Introduction to JDF / JMFStefan Meißner (stefan.meissner@saxoprint.de)
  2. 2. Glossar• JDF – Job Definition Format (Technical description of a print job or process step)• JMF – Job Messaging Format (Infrastructure for communication)• MIS – Management Information System (Controlling unit where JDF Devices can be connected and maintained)• JDF Device (A device or application which directly works on a print job)• JDF Controller (A logical set of JDF Devices)
  3. 3. JDF Requirements and Goals• Automation raises Efficiency• Process Integration / Prozess Transparency – Supervision of Jobs – Production Data Acquisition (PDA) – Consistently Interface for all Devices and Applications• Vendor Independent Standard• Digital automated Information decreases Transcription Errors
  4. 4. JDF – Job Definition Format• Specification for a detailed Job- and Process step description in Graphical Artwork Industry (similar to „JobTicket“) → JDF is NOT a Software and is NOT a System• Vendor independent Standard• JDF is based on XML• Binary Data (like Graphics...) are referenced, NOT embeded.
  5. 5. JMF – Job Messaging Format• Infrastructure / Communication system of JDF• JMF Message Families: Query, Command, Signal...• JMF is based on XML and HTTP• Usage: • Real-time job and device status enqueries • Dynamic job updates • Job submission and queueing• Typically used on Intranets
  6. 6. Sample: JMF Status Signal<JMF MaxVersion="1.4" SenderID="03-SpeedmasterXL105-1" TimeStamp="2011-05-30T10:07:19-04:00" Version="1.4"> <Signal ID="m_101221_15541420_002604" Type="Status"> […] <DeviceInfo DeviceID="03-SpeedmasterXL105-1" DeviceOperationMode="Productive" DeviceStatus="Running" Speed="12586" StatusDetails="Good"> <JobPhase Amount="219" JobID="JB-002" JobPartID="1" PercentCompleted="21.96933333" PhaseAmount="22" PhaseStartTime="2011-05-30T10:07:14-04:00" PhaseWaste="0" QueueEntryID="QE-002" Status="InProgress" StatusDetails="producing node" TotalAmount="1000" Waste="12" /> <Employee ProductID="E6" Roles="Operator"> <Person DescriptiveName="Stefan Meissner" /> </Employee> </DeviceInfo> <Queue DescriptiveName="Speedmaster XL 105-8-P Nr. 1" DeviceID="03-SpeedmasterXL105-1" Status="Running"> <QueueEntry DescriptiveName="4/4 Perfecting" DeviceID="03-SpeedmasterXL105-1" JobPartID="1" JobID="JB-002" QueueEntryID="QE-002" StartTime="2011-05-30T10:06:21-04:00" Status="Running" SubmissionTime="2011-05-30T10:06:20-04:00" /> </Queue> </Signal></JMF>
  7. 7. Typically JDF Architecture Native Communication JDF Device Device 1 JDF Controller JDF DeviceMIS Controller Device 2 JDF Device Device 3
  8. 8. Architecture: Heidelberg Native Communication JDF Device SM 105-4 JDF Controller JDF Device PressRoomMIS SM 105-5+L Manager JDF Device SM 105-8+P
  9. 9. Architecture: KBA Native Communication JDF Device Rapida 106-5 JDF Controller JDF Device RapidaMIS Logotronic 106-5 JDF Device Rapida 105-8 + Option: MIS Interface
  10. 10. Disadvantages Architecture Sketch „Typically Architecture“: Device 1 MIS Controller Device 2 Device 3• MIS is not able to connect the JDF Device directly → JDF Controller is „Single Point of Failure“• An additional pice of software is required (JDF Controller).
  11. 11. Prefered Architecture JDF Device Device 1 JDF DeviceMIS Device 2 JDF Device Device 3 ➔ JDF Devices allow to be connected directly
  12. 12. JDF Dialects• JDF is just a specification. Parts and depth of implementation for each JDF Device depends on vendor.• ICS (Interoperability Conformance Specifications) are the Lowest Common Denominator.
  13. 13. JDF – Technology of the 1990sThe fundamental JDF Concepts were designed in the 1990s as apart of prepress digitalization:• Replacement of Job Bags; One JDF File per Job• Communication via Hotfolder / MIME• Concurrency management via „spawn“ and „merge“• JDF also includes Workflow-Logic• JDF is based on an early version of XML ➔ Enhancements in framework requires some updates in JDF Concepts...
  14. 14. Problem: Job BagJDF is common known as „Digital Job Bag“ .But:Job Bags are data storage, defines workflow logic and even canbe archived. Job Bag Archive Job Data: PDA: Workflow-Logic:
  15. 15. Problem: Job BagTheory: One managed, archived and central File per Job ?!?!?But what about... • … Concurrency (Transactions) ?? • … Fail Over / Load Balancing (Clustering) ?? • … Data Analysis (Data Mining) ?? • … Online Backup (Live Backup Systems) ??
  16. 16. Best Practice: Job Bag• Extract Job Data to Database• Extract PDA to Database• Extract Workflow-Logic to a Workflow-Engine Database: Workflow-Engine: Job Bag: PDA:
  17. 17. Best Practice: JDF / JMFJDF is only a Technology for Communication! → No Data Storage – No Workflow-Logic! Generate, optimized for Target-Device (Dialect) Database Extract details and write to DB ➔ JDF as Interface Technology
  18. 18. Best Practice: Architecture(self made) MIS Advantages Architecture: – Clear and simple JDF Documents – JDF is optimized for Target-Device Database (Handling of JDF Dialects) – Workflow Transparency – High Performance / Scalability
  19. 19. Communication: JMF Families• JMF Command – Recipient has to run actions or change the status.• JMF Query – Recipient has to return information. – No action; Status doesnt change.• JMF Response – Synchronous response on JMF Command or JMF Query. – Using synchronous messages, request and response are using the same http channel.
  20. 20. Communication: JMF Families• JMF Acknowledge – Submission asynchronous Messages. – Will be referenced in synchronous Response message.• JMF Signal – Publish device status changes or events. – „Fire and Forget“ – Configuration via Subscription Messages• JMF Registration – Request for a Command – e.g. triangle relationship between MIS ↔ Prepress ↔ Press
  21. 21. JMF Samples• JMF Command – SubmitQueueEntry (Job Submission) – ReturnQueueEntry (Returns a Job from a Device) – HoldQueue / ResumeQueue (Queue controlling)• JMF Query – KnownMessages (Request for supported JMF Messages)• JMF Signal – Status (Publication of device status e.q. Setup, Processing,...) – Notification (Publication of device events e. q. Faults)
  22. 22. JMF Families – Practical ExampleFollowing a structural example of a PDA using the JMF FamililesJMF Query and JMF Signal.• JMF Query (Subscription of Status- and Notification Signals)• JMF Signal (Status- and Notification Signals for PDA) MIS (BDE) JDF Device JMF Status Query JMF Status Query Resp. JMF Status Signal e. q. 10 Seconds JMF Status Signal JMF Status Signal
  23. 23. Structure JMF Message <?xml version="1.0" encoding="UTF-8"?> <JMF xmlns="http://www.CIP4.org/JDFSchema_1_1" SenderID="Alces" MaxVersion="1.4" TimeStamp="2011-06-30T17:23:00+01:00" Version="1.4"> [...] </JMF>• JMF Root-Tag• Attributes required: SenderID, TimeStamp, Version, MaxVer.• For more (optional) Attributes look at JDF Spec or ICS JMF. ➔ Fundamental Structure of a JMF Message
  24. 24. Structure ICS / JDF SpecSection of JMF ICS:w MUST be written. JDF only is valid when Parameter is written.w? MAY written. No Conformance Requirements.w← MUST be written if some rutime condition is met.!w MUST NOT be written. JDF is invalid when Parameter is written.r MUST be read and supported.r← MUST be read and supported, if some runtime condition is met.r? MAY be read and supported.
  25. 25. JMF Query: KnownMessagesQuery and Response KnownMessages: <?xml version="1.0" encoding="UTF-8"?> <JMF xmlns="http://www.CIP4.org/JDFSchema_1_1" SenderID="Alces" MaxVersion="1.4" TimeStamp="2011-05-30T17:23:00+01:00" Version="1.4"> <Query ID="Q001" Type="KnownMessages"/> </JMF> <?xml version="1.0" encoding="UTF-8"?> <JMF xmlns="http://www.CIP4.org/JDFSchema_1_1" MaxVersion="1.4" SenderID="03-SpeedmasterXL105-1" TimeStamp="2011-05-30T08:23:49-04:00" Version="1.4" > <Response ID="m_110530_082349354_000019" Type="KnownMessages"> <MessageService Acknowledge="false" Command="true" JMFRole="Receiver" Persistent="false" Query="false" Registration="false" Signal="false" Type="HoldQueue" URLSchemes="http" /> [...] </Response> </JMF>
  26. 26. JMF Cmd: SubmitQueueEntryJob Transmission (JDF / QueueEntry) to an Target Device <?xml version="1.0" encoding="UTF-8"?> <JMF xmlns="http://www.CIP4.org/JDFSchema_1_1" SenderID="Alces" TimeStamp="2011-08-30T17:23:00+01:00" Version="1.2"> <Command ID="M001" Type="SubmitQueueEntry"> <QueueSubmissionParams URL="http://127.0.0.1:9090/jdf/Elk_ConventionalPrinting.jdf" ReturnJMF="http://127.0.0.1:9090/alces/jmf" /> <QueueFilter MaxEntries="4" QueueEntryDetails="Brief" /> </Command> </JMF>Significant Nodes / Attributes//QueueSubmissionParams[@URL] (RESTful) URL of Job JDF File//QueueSubmissionParams[@ReturnJMF] Target URL for ReturnQueueEntry Command
  27. 27. More JDF / JMF Samples More helpful JDF / JMF Samples you can find in JDF Specification: Appendix S - „List of Examples“ (JDF Spec 1.4a, p1119 ff.)
  28. 28. Overview CIP4 ToolsCIP4 JDF Tools:• CIP4 Bambi 2 (JDF Device Simulator)• CIP4 Alces (JDF Integration Tool / MIS Simulator)• JDF-VM (Virtual Machine preinstalled with CIP4 Tools)• …Please note the CIP4 License! ➔ CIP4 provides several JDF / JMF developer tools.
  29. 29. Typically JDF Architecutre Native Communication JDF Device Device 1 JDF Controller JDF DeviceMIS Controller Device 2 JDF Device Device 3
  30. 30. CIP4 Tools - ArchitectureAlces Bambi JDF Device Device 1 JDF Controller JDF Device MIS Controller Device 2 JDF Device Device 3
  31. 31. CIP4 Tooling: Bambi 2 • JDF Device Simulator („Virtual Print Production“) – Developer test framework – Simulations • Online Demo: http://bambi.jdf4you.org➔ Bambi 2 is a JDF Device Simulatior.
  32. 32. CIP4 Tools: Bambi 2 Bambi 2 - Basic • Extended Functionality • URL: http://localhost:8080/bambi-2/overview Bambi App • Bambi 2 as Executable File (can be started by a double click) • Includes „Bambi 2“ as well as „Bambi 2 - Basic“➔ Bambi 2 is available in several versions.
  33. 33. Bambi 2 – JMF Interface • Communication via HTTP • JMF Interface is aURL – Each Device one URL (DeviceId extracted from URL) – One URL for all Devices (DeviceId extracted from JDF File) JMF Interface: http://127.0.1.1:8080/bambi-2/jmf/03-SpeedmasterXL105-1
  34. 34. CIP4 Tools: Alces
  35. 35. Alces: Process Map „Connect“ Alces (MIS) Bambi (SpeedmasterXL105-1) Button „Connect“Generate JMF Query „KnownMessages“ JMF: QueryKnownMessages Message Received Interpretation Message Generate JMF Response JMF: ResponseKnownMessages „KnownMessages“Interpretation Response Generate and Display Button ➔ „Connect“ Functionality is based on JMF Queries: Status, DeviceInfo, QueueStatus etc.
  36. 36. JMF Query: KnownMessagesQuery and Response KnownMessages: <?xml version="1.0" encoding="UTF-8"?> <JMF xmlns="http://www.CIP4.org/JDFSchema_1_1" SenderID="Alces" MaxVersion="1.4" TimeStamp="2011-08-30T17:23:00+01:00" Version="1.4"> <Query ID="Q001" Type="KnownMessages"/> </JMF> <?xml version="1.0" encoding="UTF-8"?> <JMF xmlns="http://www.CIP4.org/JDFSchema_1_1" MaxVersion="1.4" SenderID="03-SpeedmasterXL105-1" TimeStamp="2011-05-30T08:23:49-04:00" Version="1.4" > <Response ID="m_110530_082349354_000019" Type="KnownMessages"> <MessageService Acknowledge="false" Command="true" JMFRole="Receiver" Persistent="false" Query="false" Registration="false" Signal="false" Type="HoldQueue" URLSchemes="http" /> [...] </Response> </JMF>
  37. 37. Alces: Overview JMF Interface: DeviceInfo: URL of JMF Interface Common Device Details JMF History: Overview sent and received messages.KnownMessages:Liste of supportedJMF Messages QueueStatus: Queue Details ➔ Alces is a very useful Tool for connecting and integrating JDF Devices.
  38. 38. Alces: GoalsGoals Alces:• Basic Functionality Test of JMF Interfaces• Simplify Integration of JDF Devices• Fault Analysis• MIS Simulator (Management Information System)• „Status-Ping“• ... ➔ CIP4 Alces is a very common tool which meets many requirements when integrating JDF Devices.
  39. 39. HowTo: KnownMessages 1. Press Connect: Connect to JDF Device2. JMF Query KnownMessages: Run by click 3. Messagetransfered messages. Displays all History: ➔ Query for supported Messages of a JDF Device.
  40. 40. HowTo: Queue Operations 1. JMF Query KnownMessages: Execute JMF Query like describe in slide before.2. JMF Queue Commands: Run JMF Queue Commands. 3. Queue JDF Device: Queue Details of JDF Device Deactivate queue Reset queue Info: The Queue also will be displayed in Bambi. Activate queue ➔ Queue controlling and supervising for a JDF Device.
  41. 41. HowTo: SubmitQueueEntry 1. JMF Query KnownMessages: Execute JMF Query like descibed before.2. JMF Command SubmitQE: Run JMF Command SubmitQueueEntry. 3. Choose specific Job-JDF: Path JDF Samples: „[Desktop]/workshop/jdf“ ➔ Job Transmission to a JDF Device.
  42. 42. JDF-VM – The Virtual MachineThe Virtual Machine preinstalled with CIP4 JDF Tools. Download Address: http://download.jdf4you.org ➔ Perfect for JDF Beginners: Just download, import into Oracle Virtual Box and start...
  43. 43. JDF-VM - InstallationInstallation Guide JDF-VM:1) Installation and start of Oracle VirtualBox2) Download and extract JDF-VM3) Import Appliance by choosing „jdf-vm.ovf“ in Oracle Virtual Box4) Go through the Import Wizard Choose File „jdf-vm.ovf“ Wizard Controlling

×