SlideShare a Scribd company logo
1 of 43
Introduction to
             JDF / JMF




Stefan Meißner (stefan.meissner@saxoprint.de)
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)
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
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.
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
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>
Typically JDF Architecture


                   Native
                Communication
                                JDF Device

                                  Device 1


      JDF Controller            JDF Device

MIS     Controller                Device 2


                                JDF Device

                                  Device 3
Architecture: Heidelberg


                   Native
                Communication
                                JDF Device

                                  SM 105-4


      JDF Controller            JDF Device

      PressRoom
MIS                             SM 105-5+L
       Manager


                                JDF Device

                                SM 105-8+P
Architecture: KBA


                   Native
                Communication
                                       JDF Device

                                          Rapida
                                          106-5


      JDF Controller                   JDF Device

                                          Rapida
MIS     Logotronic
                                          106-5


                                       JDF Device

                                          Rapida
                                          105-8

                       + Option:
                       MIS Interface
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).
Prefered Architecture



                                      JDF Device

                                        Device 1


                                      JDF Device

MIS                                     Device 2


                                      JDF Device

                                        Device 3



      ➔ JDF Devices allow to be connected directly
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.
JDF – Technology of the 1990s

The fundamental JDF Concepts were designed in the 1990s as a
part 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...
Problem: Job Bag

JDF is common known as „Digital Job Bag“ .
But:
Job Bags are data storage, defines workflow logic and even can
be archived.

      Job Bag                          Archive

          Job Data:   PDA:




         Workflow-Logic:
Problem: Job Bag

Theory:    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) ??
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:
Best Practice: JDF / JMF

JDF 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
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
Communication: JMF Families

• JMF Command
  – Recipient has to run actions or change the status.
• JMF Query
  – Recipient has to return information.
  – No action; Status doesn't change.
• JMF Response
  – Synchronous response on JMF Command or JMF Query.
  – Using synchronous messages, request and response are using the
    same http channel.
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
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)
JMF Families – Practical Example

Following a structural example of a PDA using the JMF Famililes
JMF 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
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
Structure ICS / JDF Spec

Section 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.
JMF Query: KnownMessages
Query 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>
JMF Cmd: SubmitQueueEntry

Job 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
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.)
Overview CIP4 Tools

CIP4 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.
Typically JDF Architecutre


                   Native
                Communication
                                JDF Device

                                  Device 1


      JDF Controller            JDF Device

MIS     Controller                Device 2


                                JDF Device

                                  Device 3
CIP4 Tools - Architecture


Alces                Bambi
                             JDF Device

                               Device 1


         JDF Controller      JDF Device

   MIS     Controller          Device 2


                             JDF Device

                               Device 3
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.
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.
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
CIP4 Tools: Alces
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.
JMF Query: KnownMessages
Query 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>
Alces: Overview
                                                     JMF Interface:
    DeviceInfo:                                      URL of JMF Interface
    Common Device Details




                                                                            JMF History:
                                                                            Overview sent and
                                                                            received messages.

KnownMessages:
Liste of supported
JMF Messages

                                                                            QueueStatus:
                                                                            Queue Details




                            ➔ Alces is a very useful Tool for connecting and
                              integrating JDF Devices.
Alces: Goals

Goals 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.
HowTo: KnownMessages
                  1. Press Connect:
                     Connect to JDF Device




2. JMF Query KnownMessages:
   Run by click
                                             3. Messagetransfered messages.
                                                Displays all
                                                             History:




                     ➔ Query for supported Messages of a JDF Device.
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.
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.
JDF-VM – The Virtual Machine

The 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...
JDF-VM - Installation

Installation Guide JDF-VM:
1) Installation and start of Oracle VirtualBox

2) Download and extract JDF-VM

3) Import Appliance by choosing „jdf-vm.ovf“ in Oracle Virtual Box

4) Go through the Import Wizard

                                                                     Choose File
                                                                     „jdf-vm.ovf“




                                                                     Wizard Controlling

More Related Content

What's hot

Nightmare with ceph : Recovery from ceph cluster total failure
Nightmare with ceph : Recovery from ceph cluster total failureNightmare with ceph : Recovery from ceph cluster total failure
Nightmare with ceph : Recovery from ceph cluster total failureAndrew Yongjoon Kong
 
IBM Spectrum Scale Networking Flow
IBM Spectrum Scale Networking FlowIBM Spectrum Scale Networking Flow
IBM Spectrum Scale Networking FlowSandeep Patil
 
Automation in Jira for beginners
Automation in Jira for beginnersAutomation in Jira for beginners
Automation in Jira for beginnersElad Ben-Noam
 
HDFS on Kubernetes—Lessons Learned with Kimoon Kim
HDFS on Kubernetes—Lessons Learned with Kimoon KimHDFS on Kubernetes—Lessons Learned with Kimoon Kim
HDFS on Kubernetes—Lessons Learned with Kimoon KimDatabricks
 
Capture the Streams of Database Changes
Capture the Streams of Database ChangesCapture the Streams of Database Changes
Capture the Streams of Database Changesconfluent
 
USENIX Vault'19: Performance analysis in Linux storage stack with BPF
USENIX Vault'19: Performance analysis in Linux storage stack with BPFUSENIX Vault'19: Performance analysis in Linux storage stack with BPF
USENIX Vault'19: Performance analysis in Linux storage stack with BPFTaeung Song
 
Batch Processing at Scale with Flink & Iceberg
Batch Processing at Scale with Flink & IcebergBatch Processing at Scale with Flink & Iceberg
Batch Processing at Scale with Flink & IcebergFlink Forward
 
Change Data Streaming Patterns for Microservices With Debezium
Change Data Streaming Patterns for Microservices With Debezium Change Data Streaming Patterns for Microservices With Debezium
Change Data Streaming Patterns for Microservices With Debezium confluent
 
Flink and NiFi, Two Stars in the Apache Big Data Constellation
Flink and NiFi, Two Stars in the Apache Big Data ConstellationFlink and NiFi, Two Stars in the Apache Big Data Constellation
Flink and NiFi, Two Stars in the Apache Big Data ConstellationMatthew Ring
 
Tuning Apache Spark for Large-Scale Workloads Gaoxiang Liu and Sital Kedia
Tuning Apache Spark for Large-Scale Workloads Gaoxiang Liu and Sital KediaTuning Apache Spark for Large-Scale Workloads Gaoxiang Liu and Sital Kedia
Tuning Apache Spark for Large-Scale Workloads Gaoxiang Liu and Sital KediaDatabricks
 
Performance Wins with eBPF: Getting Started (2021)
Performance Wins with eBPF: Getting Started (2021)Performance Wins with eBPF: Getting Started (2021)
Performance Wins with eBPF: Getting Started (2021)Brendan Gregg
 
Unified Batch & Stream Processing with Apache Samza
Unified Batch & Stream Processing with Apache SamzaUnified Batch & Stream Processing with Apache Samza
Unified Batch & Stream Processing with Apache SamzaDataWorks Summit
 
Spark SQL Deep Dive @ Melbourne Spark Meetup
Spark SQL Deep Dive @ Melbourne Spark MeetupSpark SQL Deep Dive @ Melbourne Spark Meetup
Spark SQL Deep Dive @ Melbourne Spark MeetupDatabricks
 
Advancing GPU Analytics with RAPIDS Accelerator for Spark and Alluxio
Advancing GPU Analytics with RAPIDS Accelerator for Spark and AlluxioAdvancing GPU Analytics with RAPIDS Accelerator for Spark and Alluxio
Advancing GPU Analytics with RAPIDS Accelerator for Spark and AlluxioAlluxio, Inc.
 
Troubleshooting Apache® Ignite™
Troubleshooting Apache® Ignite™Troubleshooting Apache® Ignite™
Troubleshooting Apache® Ignite™Tom Diederich
 
[Main Session] 카프카, 데이터 플랫폼의 최강자
[Main Session] 카프카, 데이터 플랫폼의 최강자[Main Session] 카프카, 데이터 플랫폼의 최강자
[Main Session] 카프카, 데이터 플랫폼의 최강자Oracle Korea
 

What's hot (20)

Nightmare with ceph : Recovery from ceph cluster total failure
Nightmare with ceph : Recovery from ceph cluster total failureNightmare with ceph : Recovery from ceph cluster total failure
Nightmare with ceph : Recovery from ceph cluster total failure
 
IBM Spectrum Scale Networking Flow
IBM Spectrum Scale Networking FlowIBM Spectrum Scale Networking Flow
IBM Spectrum Scale Networking Flow
 
Automation in Jira for beginners
Automation in Jira for beginnersAutomation in Jira for beginners
Automation in Jira for beginners
 
HDFS on Kubernetes—Lessons Learned with Kimoon Kim
HDFS on Kubernetes—Lessons Learned with Kimoon KimHDFS on Kubernetes—Lessons Learned with Kimoon Kim
HDFS on Kubernetes—Lessons Learned with Kimoon Kim
 
Capture the Streams of Database Changes
Capture the Streams of Database ChangesCapture the Streams of Database Changes
Capture the Streams of Database Changes
 
USENIX Vault'19: Performance analysis in Linux storage stack with BPF
USENIX Vault'19: Performance analysis in Linux storage stack with BPFUSENIX Vault'19: Performance analysis in Linux storage stack with BPF
USENIX Vault'19: Performance analysis in Linux storage stack with BPF
 
Tuned
TunedTuned
Tuned
 
RDMA on ARM
RDMA on ARMRDMA on ARM
RDMA on ARM
 
Intro to Apache Spark
Intro to Apache SparkIntro to Apache Spark
Intro to Apache Spark
 
Batch Processing at Scale with Flink & Iceberg
Batch Processing at Scale with Flink & IcebergBatch Processing at Scale with Flink & Iceberg
Batch Processing at Scale with Flink & Iceberg
 
Change Data Streaming Patterns for Microservices With Debezium
Change Data Streaming Patterns for Microservices With Debezium Change Data Streaming Patterns for Microservices With Debezium
Change Data Streaming Patterns for Microservices With Debezium
 
Flink and NiFi, Two Stars in the Apache Big Data Constellation
Flink and NiFi, Two Stars in the Apache Big Data ConstellationFlink and NiFi, Two Stars in the Apache Big Data Constellation
Flink and NiFi, Two Stars in the Apache Big Data Constellation
 
Tuning Apache Spark for Large-Scale Workloads Gaoxiang Liu and Sital Kedia
Tuning Apache Spark for Large-Scale Workloads Gaoxiang Liu and Sital KediaTuning Apache Spark for Large-Scale Workloads Gaoxiang Liu and Sital Kedia
Tuning Apache Spark for Large-Scale Workloads Gaoxiang Liu and Sital Kedia
 
Performance Wins with eBPF: Getting Started (2021)
Performance Wins with eBPF: Getting Started (2021)Performance Wins with eBPF: Getting Started (2021)
Performance Wins with eBPF: Getting Started (2021)
 
Unified Batch & Stream Processing with Apache Samza
Unified Batch & Stream Processing with Apache SamzaUnified Batch & Stream Processing with Apache Samza
Unified Batch & Stream Processing with Apache Samza
 
Spark SQL Deep Dive @ Melbourne Spark Meetup
Spark SQL Deep Dive @ Melbourne Spark MeetupSpark SQL Deep Dive @ Melbourne Spark Meetup
Spark SQL Deep Dive @ Melbourne Spark Meetup
 
Advancing GPU Analytics with RAPIDS Accelerator for Spark and Alluxio
Advancing GPU Analytics with RAPIDS Accelerator for Spark and AlluxioAdvancing GPU Analytics with RAPIDS Accelerator for Spark and Alluxio
Advancing GPU Analytics with RAPIDS Accelerator for Spark and Alluxio
 
Troubleshooting Apache® Ignite™
Troubleshooting Apache® Ignite™Troubleshooting Apache® Ignite™
Troubleshooting Apache® Ignite™
 
[Main Session] 카프카, 데이터 플랫폼의 최강자
[Main Session] 카프카, 데이터 플랫폼의 최강자[Main Session] 카프카, 데이터 플랫폼의 최강자
[Main Session] 카프카, 데이터 플랫폼의 최강자
 
Flink vs. Spark
Flink vs. SparkFlink vs. Spark
Flink vs. Spark
 

Similar to Introduction to JDF / JMF

Nokia Asha App Development - Part 1
Nokia Asha App Development - Part 1Nokia Asha App Development - Part 1
Nokia Asha App Development - Part 1Marlon Luz
 
JavaME Development Workflow - JMDF 2007
JavaME Development Workflow - JMDF 2007JavaME Development Workflow - JMDF 2007
JavaME Development Workflow - JMDF 2007Edoardo Schepis
 
WebLogic Developer Webcast 5: Troubleshooting and Testing with WebLogic, Soap...
WebLogic Developer Webcast 5: Troubleshooting and Testing with WebLogic, Soap...WebLogic Developer Webcast 5: Troubleshooting and Testing with WebLogic, Soap...
WebLogic Developer Webcast 5: Troubleshooting and Testing with WebLogic, Soap...Jeffrey West
 
Game Development for Nokia Asha Devices with Java ME #1
Game Development for Nokia Asha Devices with Java ME #1Game Development for Nokia Asha Devices with Java ME #1
Game Development for Nokia Asha Devices with Java ME #1Marlon Luz
 
Windows内核技术介绍
Windows内核技术介绍Windows内核技术介绍
Windows内核技术介绍jeffz
 
Zend con practical-zf1-zf2-migration
Zend con practical-zf1-zf2-migrationZend con practical-zf1-zf2-migration
Zend con practical-zf1-zf2-migrationClark Everetts
 
Sunshine php practical-zf1-zf2-migration
Sunshine php practical-zf1-zf2-migrationSunshine php practical-zf1-zf2-migration
Sunshine php practical-zf1-zf2-migrationClark Everetts
 
Java ME CLDC MIDP
Java ME CLDC MIDPJava ME CLDC MIDP
Java ME CLDC MIDPSMIJava
 
FieldMate - Versatile Device Management Wizard
FieldMate - Versatile Device Management WizardFieldMate - Versatile Device Management Wizard
FieldMate - Versatile Device Management WizardYokogawa
 
Java enterprise development framework
Java enterprise development frameworkJava enterprise development framework
Java enterprise development frameworkPavel Suvorov
 
MemVerge: The Software Stack for CXL Environments
MemVerge: The Software Stack for CXL EnvironmentsMemVerge: The Software Stack for CXL Environments
MemVerge: The Software Stack for CXL EnvironmentsMemory Fabric Forum
 
Migration Approaches for FDMEE
Migration Approaches for FDMEEMigration Approaches for FDMEE
Migration Approaches for FDMEEAlithya
 
Bringing Mainframe Security Information Into Your Splunk Security Operations ...
Bringing Mainframe Security Information Into Your Splunk Security Operations ...Bringing Mainframe Security Information Into Your Splunk Security Operations ...
Bringing Mainframe Security Information Into Your Splunk Security Operations ...Precisely
 

Similar to Introduction to JDF / JMF (20)

Nokia Asha App Development - Part 1
Nokia Asha App Development - Part 1Nokia Asha App Development - Part 1
Nokia Asha App Development - Part 1
 
JavaME Development Workflow - JMDF 2007
JavaME Development Workflow - JMDF 2007JavaME Development Workflow - JMDF 2007
JavaME Development Workflow - JMDF 2007
 
J2me Platform
J2me PlatformJ2me Platform
J2me Platform
 
03 midp
03 midp03 midp
03 midp
 
J2me
J2meJ2me
J2me
 
Java Profiling
Java ProfilingJava Profiling
Java Profiling
 
Deployment Day Session 2 MDT 2012 Advanced
Deployment Day Session 2 MDT 2012 AdvancedDeployment Day Session 2 MDT 2012 Advanced
Deployment Day Session 2 MDT 2012 Advanced
 
WebLogic Developer Webcast 5: Troubleshooting and Testing with WebLogic, Soap...
WebLogic Developer Webcast 5: Troubleshooting and Testing with WebLogic, Soap...WebLogic Developer Webcast 5: Troubleshooting and Testing with WebLogic, Soap...
WebLogic Developer Webcast 5: Troubleshooting and Testing with WebLogic, Soap...
 
Game Development for Nokia Asha Devices with Java ME #1
Game Development for Nokia Asha Devices with Java ME #1Game Development for Nokia Asha Devices with Java ME #1
Game Development for Nokia Asha Devices with Java ME #1
 
Windows内核技术介绍
Windows内核技术介绍Windows内核技术介绍
Windows内核技术介绍
 
Zend con practical-zf1-zf2-migration
Zend con practical-zf1-zf2-migrationZend con practical-zf1-zf2-migration
Zend con practical-zf1-zf2-migration
 
Sunshine php practical-zf1-zf2-migration
Sunshine php practical-zf1-zf2-migrationSunshine php practical-zf1-zf2-migration
Sunshine php practical-zf1-zf2-migration
 
Java ME CLDC MIDP
Java ME CLDC MIDPJava ME CLDC MIDP
Java ME CLDC MIDP
 
FieldMate - Versatile Device Management Wizard
FieldMate - Versatile Device Management WizardFieldMate - Versatile Device Management Wizard
FieldMate - Versatile Device Management Wizard
 
Java enterprise development framework
Java enterprise development frameworkJava enterprise development framework
Java enterprise development framework
 
Unit 1(sem-iv)
Unit 1(sem-iv)Unit 1(sem-iv)
Unit 1(sem-iv)
 
MemVerge: The Software Stack for CXL Environments
MemVerge: The Software Stack for CXL EnvironmentsMemVerge: The Software Stack for CXL Environments
MemVerge: The Software Stack for CXL Environments
 
Migration Approaches for FDMEE
Migration Approaches for FDMEEMigration Approaches for FDMEE
Migration Approaches for FDMEE
 
Bringing Mainframe Security Information Into Your Splunk Security Operations ...
Bringing Mainframe Security Information Into Your Splunk Security Operations ...Bringing Mainframe Security Information Into Your Splunk Security Operations ...
Bringing Mainframe Security Information Into Your Splunk Security Operations ...
 
KaranDeepSinghCV
KaranDeepSinghCVKaranDeepSinghCV
KaranDeepSinghCV
 

Recently uploaded

Corporate and higher education May webinar.pptx
Corporate and higher education May webinar.pptxCorporate and higher education May webinar.pptx
Corporate and higher education May webinar.pptxRustici Software
 
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law DevelopmentsTrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law DevelopmentsTrustArc
 
Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...apidays
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerThousandEyes
 
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost SavingRepurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost SavingEdi Saputra
 
GenAI Risks & Security Meetup 01052024.pdf
GenAI Risks & Security Meetup 01052024.pdfGenAI Risks & Security Meetup 01052024.pdf
GenAI Risks & Security Meetup 01052024.pdflior mazor
 
Manulife - Insurer Transformation Award 2024
Manulife - Insurer Transformation Award 2024Manulife - Insurer Transformation Award 2024
Manulife - Insurer Transformation Award 2024The Digital Insurer
 
Data Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonData Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonAnna Loughnan Colquhoun
 
"I see eyes in my soup": How Delivery Hero implemented the safety system for ...
"I see eyes in my soup": How Delivery Hero implemented the safety system for ..."I see eyes in my soup": How Delivery Hero implemented the safety system for ...
"I see eyes in my soup": How Delivery Hero implemented the safety system for ...Zilliz
 
Navi Mumbai Call Girls 🥰 8617370543 Service Offer VIP Hot Model
Navi Mumbai Call Girls 🥰 8617370543 Service Offer VIP Hot ModelNavi Mumbai Call Girls 🥰 8617370543 Service Offer VIP Hot Model
Navi Mumbai Call Girls 🥰 8617370543 Service Offer VIP Hot ModelDeepika Singh
 
presentation ICT roal in 21st century education
presentation ICT roal in 21st century educationpresentation ICT roal in 21st century education
presentation ICT roal in 21st century educationjfdjdjcjdnsjd
 
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot TakeoffStrategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoffsammart93
 
A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?Igalia
 
Polkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Polkadot JAM Slides - Token2049 - By Dr. Gavin WoodPolkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Polkadot JAM Slides - Token2049 - By Dr. Gavin WoodJuan lago vázquez
 
Real Time Object Detection Using Open CV
Real Time Object Detection Using Open CVReal Time Object Detection Using Open CV
Real Time Object Detection Using Open CVKhem
 
2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...Martijn de Jong
 
Why Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire businessWhy Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire businesspanagenda
 
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...apidays
 
Exploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone ProcessorsExploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone Processorsdebabhi2
 

Recently uploaded (20)

Corporate and higher education May webinar.pptx
Corporate and higher education May webinar.pptxCorporate and higher education May webinar.pptx
Corporate and higher education May webinar.pptx
 
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law DevelopmentsTrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
 
Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected Worker
 
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost SavingRepurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
 
GenAI Risks & Security Meetup 01052024.pdf
GenAI Risks & Security Meetup 01052024.pdfGenAI Risks & Security Meetup 01052024.pdf
GenAI Risks & Security Meetup 01052024.pdf
 
Manulife - Insurer Transformation Award 2024
Manulife - Insurer Transformation Award 2024Manulife - Insurer Transformation Award 2024
Manulife - Insurer Transformation Award 2024
 
Data Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonData Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt Robison
 
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
 
"I see eyes in my soup": How Delivery Hero implemented the safety system for ...
"I see eyes in my soup": How Delivery Hero implemented the safety system for ..."I see eyes in my soup": How Delivery Hero implemented the safety system for ...
"I see eyes in my soup": How Delivery Hero implemented the safety system for ...
 
Navi Mumbai Call Girls 🥰 8617370543 Service Offer VIP Hot Model
Navi Mumbai Call Girls 🥰 8617370543 Service Offer VIP Hot ModelNavi Mumbai Call Girls 🥰 8617370543 Service Offer VIP Hot Model
Navi Mumbai Call Girls 🥰 8617370543 Service Offer VIP Hot Model
 
presentation ICT roal in 21st century education
presentation ICT roal in 21st century educationpresentation ICT roal in 21st century education
presentation ICT roal in 21st century education
 
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot TakeoffStrategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
 
A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?
 
Polkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Polkadot JAM Slides - Token2049 - By Dr. Gavin WoodPolkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Polkadot JAM Slides - Token2049 - By Dr. Gavin Wood
 
Real Time Object Detection Using Open CV
Real Time Object Detection Using Open CVReal Time Object Detection Using Open CV
Real Time Object Detection Using Open CV
 
2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...
 
Why Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire businessWhy Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire business
 
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
 
Exploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone ProcessorsExploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone Processors
 

Introduction to JDF / JMF

  • 1. Introduction to JDF / JMF Stefan Meißner (stefan.meissner@saxoprint.de)
  • 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. 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. 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. 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. 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. Typically JDF Architecture Native Communication JDF Device Device 1 JDF Controller JDF Device MIS Controller Device 2 JDF Device Device 3
  • 8. Architecture: Heidelberg Native Communication JDF Device SM 105-4 JDF Controller JDF Device PressRoom MIS SM 105-5+L Manager JDF Device SM 105-8+P
  • 9. Architecture: KBA Native Communication JDF Device Rapida 106-5 JDF Controller JDF Device Rapida MIS Logotronic 106-5 JDF Device Rapida 105-8 + Option: MIS Interface
  • 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. Prefered Architecture JDF Device Device 1 JDF Device MIS Device 2 JDF Device Device 3 ➔ JDF Devices allow to be connected directly
  • 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. JDF – Technology of the 1990s The fundamental JDF Concepts were designed in the 1990s as a part 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. Problem: Job Bag JDF is common known as „Digital Job Bag“ . But: Job Bags are data storage, defines workflow logic and even can be archived. Job Bag Archive Job Data: PDA: Workflow-Logic:
  • 15. Problem: Job Bag Theory: 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. 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. Best Practice: JDF / JMF JDF 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. 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. Communication: JMF Families • JMF Command – Recipient has to run actions or change the status. • JMF Query – Recipient has to return information. – No action; Status doesn't change. • JMF Response – Synchronous response on JMF Command or JMF Query. – Using synchronous messages, request and response are using the same http channel.
  • 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. 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. JMF Families – Practical Example Following a structural example of a PDA using the JMF Famililes JMF 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. 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. Structure ICS / JDF Spec Section 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. JMF Query: KnownMessages Query 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. JMF Cmd: SubmitQueueEntry Job 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. 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. Overview CIP4 Tools CIP4 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. Typically JDF Architecutre Native Communication JDF Device Device 1 JDF Controller JDF Device MIS Controller Device 2 JDF Device Device 3
  • 30. CIP4 Tools - Architecture Alces Bambi JDF Device Device 1 JDF Controller JDF Device MIS Controller Device 2 JDF Device Device 3
  • 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. 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. 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
  • 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. JMF Query: KnownMessages Query 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. Alces: Overview JMF Interface: DeviceInfo: URL of JMF Interface Common Device Details JMF History: Overview sent and received messages. KnownMessages: Liste of supported JMF Messages QueueStatus: Queue Details ➔ Alces is a very useful Tool for connecting and integrating JDF Devices.
  • 38. Alces: Goals Goals 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. HowTo: KnownMessages 1. Press Connect: Connect to JDF Device 2. JMF Query KnownMessages: Run by click 3. Messagetransfered messages. Displays all History: ➔ Query for supported Messages of a JDF Device.
  • 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. 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. JDF-VM – The Virtual Machine The 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. JDF-VM - Installation Installation Guide JDF-VM: 1) Installation and start of Oracle VirtualBox 2) Download and extract JDF-VM 3) Import Appliance by choosing „jdf-vm.ovf“ in Oracle Virtual Box 4) Go through the Import Wizard Choose File „jdf-vm.ovf“ Wizard Controlling