how to convert pdf to jpg in c# windows application : Convert secure pdf to word application software tool html winforms web page online JDF_1.2.TBD.030926-WORD9-th-color-03100612-part354

Page 93 
Page 93 
Name 
Data Type 
Description 
Completed 
FailedTestRun 
Ready 
Stopped – The execution of the node is stopped and may commence at a later time, 
e.g., on another device. 
Start 
dateTime 
Date and time at which the process starts. 
Part * 
New in JDF 
1.1 
element 
Describes which parts of a process this ProcessRun belongs to.  If Part is not 
specified for a ProcessRun, it refers to all parts.  For example, imagine a print job 
that should produce three different sheets.  All sheets are described by one partitioned 
resource. The Part elements define, unambiguously, the processing of the sheet to 
which the ProcessRun refers. 
The second  function  of a ProcessRun  element is to delimit a  group of  audits for each individual process run.  
Every group of audits terminates with a ProcessRun element, which contains the information described above.  If a 
process must be repeated (as a result of a late change in the order, for example), all audits belonging to the new run 
will be appended after the last ProcessRun element that terminates the audits of the previous run.  The number of 
ProcessRun elements is, therefore, always equivalent to the number of process runs. 
If a node describes partitioned resources, one ProcessRun may be specified for each individual part.   
3.10.1.2 Notification 
This  element  contains  information  about  individual  events  that  occurred  during  processing.    For  a  detailed 
discussion of event properties, see Section 4.6  Error Handling . 
Table 3-32 Contents of the Notification element 
Name 
Data Type 
Description 
Class 
enumeration  Class of the notification.  Possible values, in order of severity from lowest to 
highest, are: 
Event – Indicates that a pure event due to any activity has occurred, for example, 
machine events, operator activities, etc.  This class is used for the transfer of 
conventional event messages.  In case of Class = Event, further event 
information should be provided by the Type attribute and NotificationDetails 
element. 
Information – Any information about a process which cannot be expressed by 
the other classes.  No user interaction is required. 
Warning – Indicates that a minor error has occurred and an automatic fix was 
applied.  Execution continues. 
Error – Indicates that an error has occurred that requires user interaction.  
Execution cannot continue. 
Fatal – Indicates that a fatal error led to abortion of the process. 
Type ? 
NMTOKEN  Identifies the type of notification.  Also defines the name of the abstract 
NotificationDetails element.
2
A list of predefined Notification types is 
compiled in Appendix J NotificationDetails. 
Comment * 
telem 
The Notification element may contain Comment elements with a verbose, 
human-readable description of the event.  If the value of the Class attribute is 
one of Information, Warning, Error, or Fatal, it should provide at least one 
Comment element.  In case of Class = Event, Comment elements are optional. 
CostCenter ? 
element 
The cost center to which this event should be charged. 
Employee * 
refelement 
The Employee(s) associated with this event. 
2
Type allows parsers that do not have access to the schema to find the instance of NotificationDetails. 
Convert secure pdf to word - C# PDF Digital Signature Library: add, remove, update PDF digital signatures in C#.net, ASP.NET, MVC, WPF
Help to Improve the Security of Your PDF File by Adding Digital Signatures
secure pdf file; secure pdf remove
Convert secure pdf to word - VB.NET PDF Digital Signature Library: add, remove, update PDF digital signatures in vb.net, ASP.NET, MVC, WPF
Guide VB.NET Programmers to Improve the Security of Your PDF File by Adding Digital Signatures
change security settings pdf; create pdf the security level is set to high
Page 94 
Page 94 
Name 
Data Type 
Description 
Notification-
Details ? 
element 
Abstract element which is a placeholder for additional structured information.  It 
provides additional information beyond the Class and Type attribute and 
beyond the Comment element.  For a list of supported NotificationDetails 
elements, see Appendix J NotificationDetails. 
Part * 
New in JDF 1.1 
element 
Describes which parts of a process this Notification belongs to.  If Part is not 
specified for a Notification, it refers to all parts.  For example, imagine a print 
job that should produce three different sheets.  All sheets are described by one 
partitioned resource. The Part elements define, unambiguously, the sheet to 
which the audit refers. 
Table 3-33 Redundant table removed 
Name 
Data Type 
Description 
3.10.1.2.1  NotificationDetails 
The abstract NotificationDetails element is a placeholder only with no additional attributes. For a list of supported 
NotificationDetails elements, see Appendix J NotificationDetails. 
3.10.1.3 PhaseTime 
This element contains audit information about the start and end times of any process states and substates, denoted as 
phases.  Phases may reflect any arbitrary subdivisions of a process, such as maintenance, washing, plate changing, 
failures, and breaks. 
PhaseTime elements may also be used to log the actual time spans when implementation resources are used by 
a process.  For example, the temporary necessity of a fork lift can be logged if a PhaseTime element is added that 
contains a link to the fork lift device resource and specifies the actual start and end time of the usage of that fork lift. 
The  times  specified  in  the  PhaseTime elements should  not  overlap with  each  other  and  should cover  the 
complete time range defined in the ProcessRun element that identifies the end of the run. 
Table 3-34 Contents of the PhaseTime element 
Name 
Data Type 
Description 
CostType ? 
enumeration  Whether or not this PhaseTime is chargeable to the customer or not. One of: 
Chargeable 
Nonchargeable 
If not specified, the cost type is unknown.
[RP150]
Duration ? 
duration 
Duration of the phase. If not specified the value of End-Start is implied. 
End 
dateTime 
Date and time of the end of the phase. 
Start 
dateTime 
Date and time of the beginning of the phase. 
Status 
enumeration  Status of the phase.  Possible values of JDF node states are: 
TestRunInProgress  
Setup 
InProgress 
Cleanup 
Spawned 
Stopped 
The states listed above are a subset of the possible states of a JDF node.  For all 
possible states of a JDF node see Table 3-3.  The remaining set of states, i.e. the 
end states — Ready, FailedTestRun, Aborted and Completed—must be logged by 
the ProcessRun audit element that terminates the list of audits for one process 
run. 
C# PDF Library SDK to view, edit, convert, process PDF file for C#
WPF PDF Viewer provides C# users abilities to view, annotate, convert and create PDF in XDoc.PDF SDK provides users secure methods to protect PDF document.
decrypt a pdf; pdf file security
C# HTML5 PDF Viewer SDK to view, annotate, create and convert PDF
C#.NET: Convert PDF Online in ASP.NET. RaterEdge HTML5 PDF Editor also provides C#.NET users secure solutions for PDF document protection.
add security to pdf document; add security to pdf in reader
Page 95 
Page 95 
Name 
Data Type 
Description 
StatusDetails ?  string 
Description of the status phase that provides details beyond the enumerative 
values given by the Status attribute.  For a list of supported values, see 
Appendix G. 
WorkType ? 
enumeration  Definition of the work type for this PhaseTime, i.e.  whether or not this 
PhaseTime relates to originally planned work, an alteration or rework. One of 
Original: Standard work that was originally planned for the job 
Alteration: Work done to accommodate change made to the job at the request of 
the customer 
Rework: Work done due to unforeseen problem with original work (bad plate, 
resource damaged, etc.) 
If not specified, the work type is undefined. 
WorkTypeDetails 
string 
Definition of the details of the work type for this PhaseTime, i.e. why the work 
was done.  
For WorkType=”Alteration”, values may include 
CustomerRequest: The customer requested change(s) requiring the work. 
InternalChange: Change was made for production efficiency or other internal 
reason. 
For WorkType=”Rework”, values may include 
ResourceDamaged: A resource needs to be created again to account for a 
damaged resource (damaged plate, etc.) 
EquipmentMalfunction: Equipment used to produce the resource malfunctioned, 
resource must be created again. 
UserError: Incorrect operation of equipment or incorrect creation of resource 
requires creating the resource again. 
If not specified, the work type details are unknown.
[RP151]
Device * 
refelement 
Links to Device resources that are working during this phase. 
Employee * 
refelement 
Links to Employee resources that are working during this phase. 
ModulePhase *  element 
Additional phase information of individual device modules, such as print units.   
Part * 
element 
Describes which parts of a job is currently being logged.  If Part is not specified 
for a node that modifies partitioned resources, PhaseTime refers to all parts.  
For example, imagine a print job that should produce 3 different sheets.  All 
sheets are described by one partitioned resource.  In order to separate the 
different print phases for each sheet, the Part elements define, unambiguously, 
the sheet to which the audit refers. 
ResourceLink * 
New in JDF 1.1 
element 
These resource links specify the actual consumption/usage or production of 
resources during this production phase. 
It is possible to monitor the states of individual modules of a complex device, such as a printer with multiple print 
units,  by  defining  ModulePhase  elements.    One  PhaseTime  element  may  contain  multiple  ModulePhase 
elements  and  can,  therefore,  record  the  status  of  multiple  units  in  a  device.    In  contrast  to  PhaseTime  audit 
elements ModulePhase elements are allowed to overlap in time with one another.  ModulePhase elements are 
defined in the following table. 
Table 3-35 Contents of the ModulePhase element 
Name 
Data Type 
Description 
DeviceID 
string 
Name of the device. This must be the DeviceID attribute of one of the Device 
elements specified in the PhaseTime audit. 
C# Create PDF Library SDK to convert PDF from other file formats
provides a reliable and quick approach for C# developers to create a highly-secure and industry Create PDF from Microsoft Word, Excel, PowerPoint.
decrypt pdf with password; convert locked pdf to word online
C# Word - Word Creating in C#.NET
& thread-safe .NET solution which provides a reliable and quick approach for C# developers to create a highly-secure and industry-standard Word document file.
copy locked pdf; change security settings on pdf
Page 96 
Page 96 
Name 
Data Type 
Description 
DeviceStatus 
enumeration  Status of the device module.  Possible values are: 
Unknown – The module status is unknown. 
Idle – The module is not used, for example, a color print module that is inactive 
during a black-and-white print. 
Down – The module cannot be used.  It may be broken, switched off etc. 
Setup – The module is currently being set up.   
Running – The module is currently executing. 
Cleanup –  The module is currently being cleaned.   
Stopped – The module has been stopped, but running may be resumed later.  This 
status may indicate any kind of break, including a pause, maintenance, or a 
breakdown, as long as running can be easy resumed. 
These states are analog to the device states of Table 5-46
Duration ? 
duration 
Duration of the ModulePhase. If not specified the value of End-Start is implied. 
End 
dateTime 
Date and time of the end of the module phase. 
ModuleIndex 
Modified in JDF 
1.2 
IntegerRange
List 
0-based indices of the module or modules.  The list is based on all modules of the 
Device.If multiple module types are available on one device, each must be unique 
in the scope of the device. 
ModuleType 
NMTOKEN  Module description.  The allowed values depend on the type of device that is 
described.  The predefined values are listed in Appendix A. 
Start 
dateTime 
Date and time of the beginning of the module phase. 
StatusDetails ?  string 
Description of the module status phase that provides details beyond the 
enumerative values given by the DeviceStatus attribute.  For a list of supported 
values, see Appendix G. 
Employee * 
refelement 
Links to Employee resources that are working during this module phase on this 
module (the module is specified by the attributes ModuleIndex and 
ModuleType). 
3.10.1.4 ResourceAudit 
The ResourceAudit element describes the usage of resources during execution of a node or the modification of the 
intended usage of a resource, in other words the modification of a resource link.  It logs consumption and production 
amounts of any quantifiable resources, accumulated over one process run or one part of a process run.  It contains one 
or two abstract ResourceLink elements.  The first is required and specifies the actual consumption/usage or production 
of the resource.  The second ResourceLink is optional and used to store information about the original resource link, 
which  also  refers  to  the  original  resource.    If  the  original  resource  does  not  need  to  be  saved,  a  boolean 
ContentsModified attribute in the ResourceAudit should be used to indicate that a change has been made. 
Table 3-36  Contents of the ResourceAudit element 
Name 
Data Type 
Description 
ContentsModified ?  boolean 
Specifies that a modification has occurred but that the original resource has been 
deleted. 
Reason ? 
New in JDF 1.1 
enumeration  Reason for the modification. One of: 
PlanChange –  The resource was modified due to a change of plan before actual 
processing. 
ProcessResult –  The default. 
ResourceLink  
element 
The first resource link specifies the actual consumption/usage or production of a 
resource. 
ResourceLink ? 
element 
The second optional resource link logs the modification of a resource link and the 
modification of the resource it refers to.  It holds the planned resource link which 
VB.NET Word: VB Tutorial to Convert Word to Other Formats in .NET
How to Convert & Render Word to PDF in VB.NET, with others across platforms, then converting Word to a more secure document format PDF will be greatly
convert secure webpage to pdf; change security on pdf
C# Word - Word Create or Build in C#.NET
& thread-safe .NET solution which provides a reliable and quick approach for C# developers to create a highly-secure and industry Create Word From PDF.
add security to pdf; convert locked pdf to word
Page 97 
Page 97 
Name 
Data Type 
Description 
also refers to the planned resource.  The planned and actual resource may be the 
same. 
For  details  on  ResourceLink  elements  and  ResourceLink  subclasses,  see  Section  3.8  Resource  Links.    The 
partitioning of resources using Part elements is defined in Section 3.9.2 Description of Partitionable Resources
3.10.1.4.1  Logging Machine Data by Using the ResourceAudit 
If a resource is modified during processing, any nodes that also reference the resource may also be affected.  The 
following logging procedure is recommended in order to track the resource modification and to insure consistency 
of the job: 
1.  Create a copy of the original resource with a new ID. 
2.  Modify the original resource to reflect the changes. 
3.  Insert a ResourceAudit element that references the modified original resource with the first 
ResourceLink and the copied resource with the second ResourceLink attribute. 
The following example describes the logging of a modification of the media weight and amount.  The JDF document 
before modification requests 400 copies of 80 gram media: 
<JDF … > 
<ResourceLinkPool> 
<MediaLink rRef="RLink" Usage="Input" Amount="400"/> 
</ResourceLinkPool> 
<ResourcePool> 
<Media Weight="80" ID="RLink" Amount="400" (…)/> 
<ResourcePool/> 
</JDF>
The JDF after modification specifies that 421 copies of 90-gram media have been consumed: 
<JDF … > 
<ResourceLinkPool> 
<MediaLink rRef="RLink" Usage="Input" Amount="400"/> 
<!—note that the ResourceLink has not changed --> 
</ResourceLinkPool> 
<ResourcePool> 
<Media Weight="80" ID="RPrev" Amount="400" (…) /> <!—Copy of the original 
resource--> 
<Media Weight="90" ID="RLink" Amount="421" (…)/> <!—modified resource--> 
<ResourcePool/> 
<AuditPool> 
<ResourceAudit (…)> 
<MediaLink rRef="RLink" Usage="Input" Amount="421"/> 
<MediaLink rRef="RPrev" Usage="Input" Amount="400"/> 
</ResourceAudit> 
</AuditPool> 
</JDF>
[RP152]
3.10.1.4.2  Logging Changes in Product Descriptions by Using the ResourceAudit 
ResourceAudit  elements  may also  be  used to store the original intent  resources of  a product specification  in a 
change order  or request for requote.   The mechanism is the same  as above.  The following  example shows  the 
structure of a MediaIntent with Option partitions, where a late change of options from Option1 (80 gram paper) to 
Option2 (90 gram paper) is requested. 
<JDF … > 
<ResourceLinkPool> 
<MediaIntentLink rRef="id" Usage="Input"> 
<Part Option=”Option2”/> 
</MediaIntentLink> 
</ResourceLinkPool> 
<ResourcePool> 
<MediaIntent PartIDKeys=”Option” (…)> 
<!— the common MediaIntent resource details --> 
C# PowerPoint - PowerPoint Creating in C#.NET
SDK for .NET, is a robust & thread-safe .NET solution which provides a reliable and quick approach for C# developers to create a highly-secure and industry
pdf secure; pdf password encryption
DocImage SDK for .NET: HTML Viewer, View, Annotate, Convert, Print
Convert Support converting to or from popular documents & NET, including Microsoft Word, Excel, PPT, PDF, Tiff, Dicom make an order in our secure online store
pdf security options; creating secure pdf files
Page 98 
Page 98 
<MediaIntent Option=”Option1” (…)> 
<Weight Preferred=”80”/> 
</MediaIntent> 
<MediaIntent Option=”Option2” (…)> 
<Weight Preferred=”90”/> 
</MediaIntent> 
</MediaIntent> 
<ResourcePool/> 
<AuditPool> 
<ResourceAudit (…)> 
<!— the actual MediaIntent resource link --> 
<MediaIntentLink rRef="id" Usage="Input"> 
<Part Option=”Option2”/> 
</MediaIntentLink> 
<!— the original MediaIntent resource link --> 
<MediaIntentLink rRef="id" Usage="Input"/> 
<Part Option=”Option1”/> 
</MediaIntentLink> 
</ResourceAudit> 
</AuditPool> 
</JDF>
3.10.1.5 Created 
This element allows the creation of a JDF node or resource to be logged.  If the element refers to a JDF node, it can 
be located in the AuditPool element of the node that has been created or in any ancestor node.  If the element refers 
to a resource it must be located in the node where the resource resides so that the spawning and merging mechanism 
can work effectively.  
Table 3-37 Contents of the Created element 
Name 
Data Type 
Description 
ref ? 
IDREF 
Represents the ID of the created element.  Defaults to the ID of the local JDF node.
TemplateID ? 
string 
Defines the Template JDF that was used as the template to create the node. 
TemplateVersio
n ? 
string 
Defines the version of Template JDF that was used as the template to create the 
node. 
3.10.1.6 Deleted 
This element allows any deletions of a JDF node or Resource to be logged.  The Deleted element must reside in the 
the same AuditPool as the corresponding Created element. 
Table 3-38  Contents of the Deleted element 
Name 
Data Type 
Description 
jRef ? 
string 
The ID of the modified node or resource.  The Deleted audit resides in a parent JDF of the 
deleted node or resource.  
XPath ?  xpath 
Location of the deleted element relative to the parent JDF node of the Deleted audit element.
3.10.1.7 Modified 
This element allows any modifications affecting a JDF node, such as changes made to the NodeInfo element or 
CustomerInfo element, to be logged.  Changes that can be logged by other audit element types, such as resource 
changes,  must not use this common log entry. The  modification can be described textually by adding  a generic 
Comment element to the Modified element. The Modified element must reside in the the same AuditPool as the 
corresponding Created element. 
Table 3-39  Contents of the Modified element 
Name 
Data Type 
Description 
jRef ?  IDREF 
The ID of the modified node.  The modified element resides in the modified node. Defaults to 
the ID of the local JDF node. 
XDoc.HTML5 Viewer for .NET, All Mature Features Introductions
You may convert supportive documents and image format files search text-based documents, like PDF, Microsoft Office text selecting in order to secure your web
copy paste encrypted pdf; can print pdf security
RasterEdge.com General FAQs for Products
not the product end user, please copy and email the secure download link are dedicated to provide powerful & profession imaging controls, PDF document, image
create pdf security; create encrypted pdf
Page 99 
Page 99 
3.10.1.8 Spawned 
This element allows a job that has been spawned to be logged in the AuditPool of the parent node of the spawned 
job-part or in the AuditPool of the node that has been spawned in case of spawning of individual partitions.  For 
details about spawning and merging, see Section 4.4  Spawning and Merging . 
Table 3-40  Contents of the Spawned element 
Name 
Data Type 
Description 
Independent ? 
boolean 
Declares that independent jobs that have previously been merged into a big job 
are spawned. 
If it is set to true, the attributes jRefDestination, rRefsROCopied and 
rRefsRWCopied have no meaning and should be omitted. 
Default = false 
jRef 
IDREF 
ID of the JDF node that has been spawned. 
jRefDestination ? 
NMTOKEN  ID of the JDF node to which the job has been spawned.
3
This attribute must be 
specified in the parent of the original node if independent jobs are spawned. 
NewSpawnID 
New in JDF 1.1 
NMTOKEN  Copy of the SpawnID of the newly spawned node. Note that a Spawned audit 
may also contain a SpawnID attribute, which is the SpawnID of the node that 
this audit is being placed into prior to spawning. 
rRefsROCopied ?  IDREFS  
List of IDs separated by whitespace.  Identifies the resources copied to the 
ResourcePool element of the spawned job during spawning.  These resources 
should NOT be modified by the spawned job. 
rRefsRWCopied ?  IDREFS  
List of IDs separated by white spaces.  Identifies the resources copied to the 
ResourcePool element of the spawned job during spawning.  These resources 
may be modified by the spawned job and must be copied back into their 
original location by the merging agent. 
Resource copying is required if resources are referenced simultaneously from 
spawned nodes and from nodes in the original JDF document. 
Status ? 
New in JDF 1.1 
enumeration  Status of the spawned node at the time of spawning. Allowed values are 
defined in Table 3-3  Contents of a JDF node, Status. 
URL ? 
New in JDF 1.1 
URL 
Locator that specifies the location where the spawned node was stored by the 
spawning process. 
Part * 
element 
Identifies the parts that were selected for spawning in case of parallel spawning 
of partitionable resources (see Section 4.4.3 ).   
3.10.1.9 Merged 
This element logs a merging event of a spawned node.  For more details, see Section 4.4  Spawning and Merging . 
Table 3-41 Contents of the Merged element 
Name 
Data Type 
Description 
Independent ? 
boolean 
Declares that independent jobs are merged into a big job for common 
production. 
If it is set to true, the attributes jRefSource and rRefsOverwritten have no 
meaning and should be omitted. 
Default = false 
jRef 
IDREF 
ID of the JDF node that has been returned or merged. 
jRefSource ? 
NMTOKEN  ID of the JDF root node of the big job from which the spawned structure has 
been returned.
4
3
The data type is NMTOKEN and not IDREF because the attribute refers to an external ID. 
4
The data type is NMTOKEN and not IDREF because the attribute refers to an external ID. 
Page 100 
Page 100 
Name 
Data Type 
Description 
MergeID 
New in JDF 1.1 
NMTOKEN  Copy of the SpawnID of the merged node. Note that a Merged audit may 
also contain a SpawnID attribute, which is the SpawnID of the node that this 
audit is being placed into prior to merging. 
rRefsOverwritten ?  IDREFS 
Identifies the copied resources that have been overwritten during merging.  
Resources are usually overwritten during return if they have been copied 
during spawning with read/write access. 
URL ? 
New in JDF 1.1 
URL 
Locator that specifies the location of the merged node prior to merging by the 
merging process. 
Part * 
element 
Specifies the selected parts of the resource that were merged in case of parallel 
spawning and merging of partitionable resources (see Section 4.4.3).   
3.11 JDF Extensibility 
JDF is meant to be flexible and therefore useful to any vendor, as each vendor will have specific data to include in 
the JDF files.  JDF is able to provide this kind of versatility by using the XML namespaces.  This chapter describes 
how JDF uses the XML extension mechanisms. 
3.11.1 Namespaces in XML 
JDF  Extensibility is  implemented  using XML Namespaces.   The Namespaces in  XML specification  is  found at 
http://www.w3.org/TR/REC-xml-names/
XML namespaces are defined by xmlns attributes.  A general example 
is  provided  below.    The  example  illustrates  how private  namespaces  are 
declared  and  used to  extend  an  existing JDF  resource  by  adding  private 
attributes and a private element. 
<JDF xmlns="http://www.CIP4.org/JDFSchema_1_1" 
xmlns:foo="fooschema URI" … > 
… 
<SomeJDFDefinedResource name="abc" 
foo:specialname="cba"> 
… 
<foo:PrivateStuff type=""/> 
… 
</SomeJDFDefinedResource> 
… 
</JDF> 
Namespaces are inserted in front of attribute and element names.  The associated namespace of element names with 
no prefix is the default namespace defined by the xmlns attribute.  The associated namespace of attributes with no 
prefix is that one of the element (see Appendix A.2 XML Namespace Partitions in the specification Namespaces in 
XML).  All namespaces prefixes must be declared using standard xmlns:xxx attributes.  
3.11.1.1 JDF Namespace 
The official namespace URI for JDF Version 1.0 is: "http://www.CIP4.org/JDFSchema_1".  
The official namespace URI for JDF Version 1.1 through 1.x 
[RP153]
is: "http://www.CIP4.org/JDFSchema_1_1". 
It is strongly recommended to use either the default namespace with no prefix or a prefix of “JDF” as the jdf 
namespace prefix. 
It  is  required  to  define  the
default  namespace  in a  JDF
document, even if no non-JDF
extensions are used.  JDF may
be defined either in the default
namespace  or  in  a  qualified
namespace. 
Using 
Namespaces 
In JDF 
Page 101 
Page 101 
3.11.1.2 JDF Extension Namespace 
CIP4 defines an extension namespace where new features that are anticipated to be included in a future version of 
the specification are defined. 
The official extension namespace URI for JDF Version 1.1 is: "http://www.CIP4.org/JDFSchema_1_1_X". 
It is strongly recommended to use a prefix of “JDFX” as the jdf extension namespace prefix. 
3.11.2 Extending Process Types 
JDF defines a basic set of process types.  Because JDF allows flexible encoding, however, this list, by definition, 
will not be complete.  Vendors that have specific processes that do not fit in the general JDF processes and that are 
not combinations of individual JDF processes (see Section 3.2.3 Combined Process Nodes ) can create JDF process 
nodes of their own type.  Then the content of the Type attribute may be specified with a prefix that identifies the 
organization.  The prefix and name must be separated by a single colon (‘:’) as shown in the following example: 
<JDF Type="myCompaniesNS:MyVeryImportantProcess" xmlns= 
"http://www.CIP4.org/JDFSchema_1_1" xmlns:myCompaniesNS="my companies namespace URI" … 
… 
</JDF> 
The use of namespace prefixes in the Type attribute is for extensions only. Standard JDF process types must be 
specified without a prefix in the Type attribute or the Types attribute of a combined node. 
If a process is simply an extension of an existing process, it is possible to describe the private data by extending the 
existing resource types.  This is described in greater detail in the sections below. 
Extending  the  NodeInfo  and  CustomerInfo  nodes  is  achieved  in  a  manner  analogous to  the  extension  of 
resources, which is described below.  On the other hand, extending the direct contents of JDF nodes by adding new 
elements or attributes is discouraged. 
3.11.3 Extending Existing Resources 
All resources defined by JDF may be extended by adding attributes and elements using one’s own namespace for 
these resource extensions.  This is useful when the predefined resource types need only a small amount of private 
data added, or if those resources are the only  appropriate place to put the data.   The  namespace of the resource 
extended must not be modified.  However, the mechanism for creating new resources in a separate namespace is 
provided in the next section. 
JDF’s  “Extensibility”  simply  means  that  you  can  add  your  own  XML  elements,  attributes,  and
enumerations to a JDF application. Although JDF is quite extensive, odds are you’ll find that your 
current databases and workflow systems use information elements that are unique to your client
market  or  company  …  they  may  have  even  been  defined  by  your  internal  MIS  staff.  CIP4 
acknowledges  that  it  can’t  define  everything,  nor  should  it  prevent  innovation  by  codifying 
everything  in  a  static  manner,  and  JDF’s  extensibility  provides  both  printers  and  technology
providers with the flexibility they need to make JDF a success. 
However,  if you or  your technology vendors extend  JDF, please do so with caution.  JDF’s 
success  depends on  the  ability  of MIS systems  and  JDF-enabled  devices to  write, read, parse, 
and use JDF. Extensions are custom integration applications and great care needs to be made to
ensure that extensions made for one systems or device will not jam the JDF workflow or other JDF 
enabled systems and devices. If they use extensions to JDF, your technology providers should be
able to provide you with a fully validated JDF schema and documentation that includes the use of 
their extensions. Extensions that are not documented, or that may not be disclosed to third parties
for integration purposes, should be viewed skeptically. 
Ext e n s i b i l i t y Caution 
Page 102 
Page 102 
This does not mean that duplicate functionality may be added into these resource types.  You must make sure to 
use the JDF-defined attributes and elements where possible and extend them with additional information that cannot 
be described using JDF-defined constructs.  For example, it is not allowed to extend the RIP resource that controls 
the resolution with a foo:Resolution or foo:Res attribute that overrides the JDF defined resolution parameter (see 
attribute Resolution of resource RenderingParams in Section 7.2.119). 
3.11.4 Extending NMTOKEN Lists 
Many  resources  contain  attributes  of  type  NMTOKEN  and  some  of  these  have  a  set  of  predefined,  suggested 
enumerative values. These lists may be extended with private keywords. In order to identify private keywords, it is 
strongly suggested to prefix these keywords with a namespace-like syntax, i.e., a namespace prefix separated by a 
single colon (‘:’).  Implementations that find an unknown NMTOKEN prefixed by a namespace prefix may then 
attempt to use the default value of that attribute.  For instance, if a JDF instruction contains the following text: 
<TrappingParams TrapEndStyle=”HDM:FooBar” (…)/> 
Based of the definition of TrappingParams, the best assumption is to use TrapEndStyle = “Miter”. 
Example from TrappingParams 
Name 
Data Type 
Description 
TrapEndStyle ?  NMTOKEN  Instructs the trap engine how to form the end of a trap that touches another object.  
Possible values include: 
Miter 
Overlap 
Other values may be added later as a result of customer requests. 
Default = Miter 
3.11.5 Creating New Resources 
There are certain process implementations that have functionality that cannot be specified by the predefined Resource 
types.  In these cases, it is necessary to create a new Resource-type element, which must be clearly specified using its 
own namespace.  These resource types may only be linked to custom type JDF process nodes. 
3.11.6 Future JDF Extensions 
In future  versions,  certain  private extensions  will  become more widely used, even by different vendors.   As  private 
extensions become more of a general rule, those extensions will be candidates for inclusion in the next version of the JDF 
specification. At that time the specific extensions will have to be described and will be included into the JDF namespace. 
3.11.7 Maintaining Extensions 
Given the mix of vendors that will use 
JDF,  it  is  likely  that  there  will  be  a 
number  of  private  extensions.  
Therefore,  JDF  controllers  must  be 
prepared to receive JDF files that have 
extensions.   These  controllers  can  and 
should ignore all extensions they don’t 
understand,  but under  no  circumstance 
are  they  allowed  to  remove  these 
extensions  when  making  modifications 
to the JDF.  If they do, it will break the 
extensibility mechanism.  For example, 
imagine that JDF Agent A creates a JDF 
and  inserts  private  information  for 
Writing JDF extensions? CIP4 encourages you to become part
of the standard and submit your private extensions for review 
and possible inclusion in future versions of the JDF standard.
Not  only  may  adoption  of  extensions  into  the  JDF  standard
help  make  it  easier  for  customers  to  decide  to  buy  your
products,  but  CIP4  is  also  considering  adopting  a  formal
review process for extensions with future  editions of the JDF
standard; by participating in JDF’s development now you could
save time and customer confusion in the future. 
Submit Your Extensions to CIP4
Documents you may be interested
Documents you may be interested