117
® The Printer Working Group May 4, 2020 Working Draft IPP Enterprise Printing Extensions v2.0 (EPX) Status: Interim Abstract: This specification defines extensions to IPP/1.1 to support the IPP Job Proof Print Feature Release , Job Storage Feature , Print Policy and Job Protection Feature, to better enable authenticated release Proof Print features, to support printing workflows that are used in important to institutional IT environments such as corporate businesses, governments or and universities. This specification was previously titled "IPP Job and Printer Extensions - Set 2". This document is a PWG Working Draft. For a definition of a "PWG Working Draft", see: https://ftp.pwg.org/pub/pwg/general/pwg-process30.pdf Copyright © 2019-2020 The Printer Working Group. All rights reserved. 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27

ftp.pwg.orgftp.pwg.org/pub/pwg/ipp/wd/wd-ippepx20-20200504-rev.docx  · Web view5/4/2020  · The IEEE-ISTO takes no position regarding the validity or scope of any intellectual

  • Upload
    others

  • View
    3

  • Download
    0

Embed Size (px)

Citation preview

Page 1: ftp.pwg.orgftp.pwg.org/pub/pwg/ipp/wd/wd-ippepx20-20200504-rev.docx  · Web view5/4/2020  · The IEEE-ISTO takes no position regarding the validity or scope of any intellectual

®The Printer Working Group

May 4, 2020Working Draft

IPP Enterprise Printing Extensions v2.0(EPX)

Status: Interim

Abstract: This specification defines extensions to IPP/1.1 to support the IPP Job Proof Print FeatureRelease, Job Storage Feature, Print Policy and Job Protection Feature, to better enable authenticated releaseProof Print features, to support printing workflows that are used inimportant to institutional IT environments such as corporate businesses, governments orand universities.

This specification was previously titled "IPP Job and Printer Extensions - Set 2".

This document is a PWG Working Draft. For a definition of a "PWG Working Draft", see:

https://ftp.pwg.org/pub/pwg/general/pwg-process30.pdf

This document is available electronically at:

https://ftp.pwg.org/pub/pwg/ipp/wd/wd-ippepx20-20200504.docxhttps://ftp.pwg.org/pub/pwg/ipp/wd/wd-ippepx20-20200504.pdfhttps://ftp.pwg.org/pub/pwg/ipp/wd/wd-ippepx20-20200504-rev.docxhttps://ftp.pwg.org/pub/pwg/ipp/wd/wd-ippepx20-20200504-rev.pdf

Copyright © 2019-2020 The Printer Working Group. All rights reserved.

12345678910

11

12

13

14

15

1617181920

21

22

23

24

25262728

Page 2: ftp.pwg.orgftp.pwg.org/pub/pwg/ipp/wd/wd-ippepx20-20200504-rev.docx  · Web view5/4/2020  · The IEEE-ISTO takes no position regarding the validity or scope of any intellectual

Working Draft – IPP Enterprise Printing Extensions v2.0 (EPX) May 4, 2020

Copyright © 2019-2020 The Printer Working Group. All rights reserved.

This document may be copied and furnished to others, and derivative works that comment on, or otherwise explain it or assist in its implementation may be prepared, copied, published and distributed, in whole or in part, without restriction of any kind, provided that the above copyright notice, this paragraph and the title of the Document as referenced below are included on all such copies and derivative works. However, this document itself may not be modified in any way, such as by removing the copyright notice or references to the IEEE-ISTO and the Printer Working Group, a program of the IEEE-ISTO.

Title: IPP Enterprise Printing Extensions v2.0 (EPX)

The IEEE-ISTO and the Printer Working Group DISCLAIM ANY AND ALL WARRANTIES, WHETHER EXPRESS OR IMPLIED INCLUDING (WITHOUT LIMITATION) ANY IMPLIED WARRANTIES OF MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE.

The Printer Working Group, a program of the IEEE-ISTO, reserves the right to make changes to the document without further notice. The document may be updated, replaced or made obsolete by other documents at any time.

The IEEE-ISTO takes no position regarding the validity or scope of any intellectual property or other rights that might be claimed to pertain to the implementation or use of the technology described in this document or the extent to which any license under such rights might or might not be available; neither does it represent that it has made any effort to identify any such rights.

The IEEE-ISTO invites any interested party to bring to its attention any copyrights, patents, or patent applications, or other proprietary rights which may cover technology that may be required to implement the contents of this document. The IEEE-ISTO and its programs shall not be responsible for identifying patents for which a license may be required by a document and/or IEEE-ISTO Industry Group Standard or for conducting inquiries into the legal validity or scope of those patents that are brought to its attention. Inquiries may be submitted to the IEEE-ISTO by e-mail at: [email protected].

The Printer Working Group acknowledges that the IEEE-ISTO (acting itself or through its designees) is, and shall at all times, be the sole entity that may authorize the use of certification marks, trademarks, or other special designations to indicate compliance with these materials.

Use of this document is wholly voluntary. The existence of this document does not imply that there are no other ways to produce, test, measure, purchase, market, or provide other goods and services related to its scope.

Page 2 of 79 Copyright © 2019-2020 The Printer Working Group. All rights reserved.

12

29

30313233343536

37

383940

414243

4445464748

49505152535455

56575859

60616263

3

Page 3: ftp.pwg.orgftp.pwg.org/pub/pwg/ipp/wd/wd-ippepx20-20200504-rev.docx  · Web view5/4/2020  · The IEEE-ISTO takes no position regarding the validity or scope of any intellectual

Working Draft – IPP Enterprise Printing Extensions v2.0 (EPX) May 4, 2020

About the IEEE-ISTO

The IEEE-ISTO is a not-for-profit corporation offering industry groups an innovative and flexible operational forum and support services. The IEEE-ISTO provides a forum not only to develop standards, but also to facilitate activities that support the implementation and acceptance of standards in the marketplace. The organization is affiliated with the IEEE (http://www.ieee.org/) and the IEEE Standards Association (http://standards.ieee.org/).

For additional information regarding the IEEE-ISTO and its industry programs visit:

http://www.ieee-isto.org

About the IEEE-ISTO PWG

The Printer Working Group (or PWG) is a Program of the IEEE Industry Standards and Technology Organization (ISTO) with member organizations including printer manufacturers, print server developers, operating system providers, network operating system providers, network connectivity vendors, and print management application developers. The group is chartered to make printers and the applications and operating systems supporting them work together better. All references to the PWG in this document implicitly mean “The Printer Working Group, a Program of the IEEE ISTO.” In order to meet this objective, the PWG will document the results of their work as open standards that define print related protocols, interfaces, procedures and conventions. Printer manufacturers and vendors of printer related software will benefit from the interoperability provided by voluntary conformance to these standards.

In general, a PWG standard is a specification that is stable, well understood, and is technically competent, has multiple, independent and interoperable implementations with substantial operational experience, and enjoys significant public support.

For additional information regarding the Printer Working Group visit:

http://www.pwg.org

Contact information:

The Printer Working Groupc/o The IEEE Industry Standards and Technology Organization445 Hoes LanePiscataway, NJ 08854USA

Page 3 of 79 Copyright © 2019-2020 The Printer Working Group. All rights reserved.

45

64

6566676869

70

71

72

7374757677787980818283

848586

87

88

89

909192939495

6

Page 4: ftp.pwg.orgftp.pwg.org/pub/pwg/ipp/wd/wd-ippepx20-20200504-rev.docx  · Web view5/4/2020  · The IEEE-ISTO takes no position regarding the validity or scope of any intellectual

Working Draft – IPP Enterprise Printing Extensions v2.0 (EPX) May 4, 2020

Table of Contents1. Introduction.......................................................................................................................82. Terminology......................................................................................................................8

2.1 Conformance Terminology..........................................................................................82.2 Printing Terminology...................................................................................................82.3 Protocol Role Terminology..........................................................................................92.4 Other Terminology......................................................................................................92.5 Acronyms and Organizations....................................................................................10

3. Requirements.................................................................................................................113.1 Rationale for IPP Enterprise Printing Extensions v2.0..............................................113.2 Use Cases................................................................................................................11

3.2.1 Protecting a Job with Button Press Release......................................................113.2.2 Protecting a Job with Job Password Release....................................................123.2.3 Protecting a Job with User Authorized Release.................................................123.2.4 Storing a Job for Later Reprinting.......................................................................123.2.5 Reprinting a Stored Job......................................................................................123.2.6 Proof Printing......................................................................................................133.2.7 Print Policy for Some Users Limits Print Capabilities.........................................133.2.8 User Not Listed in Print Policy Denied Ability to Print in Color...........................15

3.3 Exceptions................................................................................................................173.3.1 Incorrect Job Password Prevents Release.........................................................173.3.2 Incorrect User Credentials Prevents Release....................................................17

3.4 Out of Scope.............................................................................................................173.5 Design Requirements...............................................................................................17

4. IPP Model.......................................................................................................................194.1 Job Release..............................................................................................................194.2 Job Storage...............................................................................................................21

4.2.1 Creating Stored Jobs..........................................................................................214.2.2 Identifying and Listing Stored Jobs.....................................................................224.2.3 Reprinting Stored Jobs.......................................................................................23

4.3 Print Policy................................................................................................................234.4 Proof Print.................................................................................................................24

5. New Operations..............................................................................................................245.1 Get-User-Printer-Attributes.......................................................................................24

5.1.1 Get-User-Printer-Attributes Request..................................................................245.1.2 Get-User-Printer-Attributes Response................................................................25

6. New Attributes................................................................................................................266.1 Operation Attributes..................................................................................................26

6.1.1 job-password (octetString(255)) for Job Creation operations.............................266.1.2 job-password-encryption (type2 keyword) for Job Creation operations..............286.1.3 job-storage (collection).......................................................................................28

6.2 Job Template Attributes............................................................................................296.2.1 job-cancel-after (integer(1:MAX)).......................................................................296.2.2 job-phone-number (uri).......................................................................................296.2.3 job-recipient-name (name(MAX)).......................................................................306.2.4 proof-print (collection).........................................................................................30

Page 4 of 79 Copyright © 2019-2020 The Printer Working Group. All rights reserved.

78

96979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141

9

Page 5: ftp.pwg.orgftp.pwg.org/pub/pwg/ipp/wd/wd-ippepx20-20200504-rev.docx  · Web view5/4/2020  · The IEEE-ISTO takes no position regarding the validity or scope of any intellectual

Working Draft – IPP Enterprise Printing Extensions v2.0 (EPX) May 4, 2020

6.3 Job Status Attributes.................................................................................................316.3.1 job-storage (collection).......................................................................................316.3.2 proof-print (collection).........................................................................................32

6.4 Printer Description Attributes....................................................................................326.4.1 job-cancel-after-default (integer(1:MAX) | no-value)...........................................326.4.2 job-cancel-after-supported (rangeOfInteger(1:MAX)).........................................336.4.3 job-password-encryption-supported (1setOf (type2 keyword))...........................336.4.4 job-password-length-supported (rangeOfInteger (0:255))..................................346.4.5 job-password-repertoire-configured (type2 keyword).........................................356.4.6 job-password-repertoire-supported (1setOf (type2 keyword))............................356.4.7 job-password-supported (integer(0:255))...........................................................366.4.8 job-phone-number-default (uri)...........................................................................366.4.9 job-phone-number-supported (boolean).............................................................366.4.10 job-recipient-name-default (name(MAX)).........................................................366.4.11 job-recipient-name-supported (boolean)..........................................................376.4.12 job-storage-access-supported (1setOf type2 keyword)....................................376.4.13 job-storage-disposition-supported (1setOf type2 keyword)..............................376.4.14 job-storage-group-supported (1setOf name(MAX))..........................................386.4.15 job-storage-supported (1setOf keyword)..........................................................386.4.16 printer-detailed-status-messages (1setOf text(MAX))......................................386.4.17 proof-print-copies-supported (rangeOfInteger(0:MAX))....................................396.4.18 proof-print-default (collection)...........................................................................396.4.19 proof-print-supported (1setOf keyword)............................................................396.4.20 which-jobs-supported (1setOf type2 keyword).................................................39

7. Additional Semantics for Existing Operations.................................................................397.1 Create-Job, Print-Job, and Print-URI Operations: "job-password" and "job-password-encryption"......................................................................................................................397.2 Create-Job, Print-Job, and Print-URI Operations: "job-storage"...............................407.3 Get-Jobs: "job-storage-group"...................................................................................407.4 Validate-Job Operation: "job-password" and "job-password-encryption"..................40

8. Additional Values and Semantics for Existing IPP Attributes..........................................408.1 ipp-features-supported (1setOf type2 keyword)........................................................408.2 job-hold-until (type2 keyword | name(MAX)).............................................................418.3 job-state-reasons (1setOf type2 keyword) Job Description attribute.........................42

8.3.1 Additional Semantics for "job-state-reasons" and "job-storage-disposition".......468.4 which-jobs (type2 keyword).......................................................................................46

9. Obsolete Attributes and Values......................................................................................479.1 Obsolete Attributes...................................................................................................479.2 Obsolete Values........................................................................................................49

10. Conformance Requirements.........................................................................................4910.1 Printer Conformance Requirements........................................................................50

10.1.1 Job Release.....................................................................................................5010.1.2 Job Storage......................................................................................................5010.1.3 Print Policy.......................................................................................................5110.1.4 Proof Print........................................................................................................51

10.2 Client Conformance Requirements.........................................................................51

Page 5 of 79 Copyright © 2019-2020 The Printer Working Group. All rights reserved.

1011142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187

12

Page 6: ftp.pwg.orgftp.pwg.org/pub/pwg/ipp/wd/wd-ippepx20-20200504-rev.docx  · Web view5/4/2020  · The IEEE-ISTO takes no position regarding the validity or scope of any intellectual

Working Draft – IPP Enterprise Printing Extensions v2.0 (EPX) May 4, 2020

10.2.1 Job Release.....................................................................................................5110.2.2 Job Storage......................................................................................................5210.2.3 Print Policy.......................................................................................................5210.2.4 Proof Print........................................................................................................52

11. Internationalization Considerations...............................................................................5312. Security Considerations................................................................................................5313. IANA Considerations....................................................................................................54

13.1 Attribute Registrations.............................................................................................5413.2 Type2 keyword Registrations..................................................................................5513.3 Type2 enum Registrations......................................................................................5613.4 Operation Registrations..........................................................................................57

14. Overview of Changes...................................................................................................5714.1 IPP Enterprise Printing Extensions v2.0.................................................................57

15. References...................................................................................................................5815.1 Normative References............................................................................................5815.2 Informative References...........................................................................................60

16. Authors' Addresses.......................................................................................................6117. Change History.............................................................................................................61

17.1 May 4, 2020............................................................................................................6117.2 April 28, 2020..........................................................................................................6117.3 October 10, 2019....................................................................................................6217.4 September 11, 2019...............................................................................................6217.5 September 3, 2019.................................................................................................6217.6 June 14, 2019.........................................................................................................6317.7 March 27, 2019.......................................................................................................63

List of FiguresFigure 1 - Use Case 3.2.7 Sequence Diagram...................................................................15Figure 2 - Use Case 3.2.8 Sequence Diagram...................................................................17Figure 3 - IPP Job States and Transitions..........................................................................19

List of TablesTable 1 - IPP Job Release Methods...................................................................................20Table 2 - "job-state-reasons" keywords for Job Storage conditions...................................22Table 3 - New Operation Attributes....................................................................................26Table 4 - New Job and Document Template Attributes......................................................29Table 5 - "proof-print" Member Attributes...........................................................................31Table 6 - New Printer Description Attributes.......................................................................32Table 7 - "job-password-encryption-supported" Standard Keywords.................................33Table 8 - "job-password-repertoire-supported" Standard Keywords...................................35Table 9 - "job-storage-access-supported" Standard Keywords..........................................37Table 10 - "job-storage-disposition-supported" Standard Keywords..................................37Table 11 - "job-storage-supported" Standard Keywords....................................................38

Page 6 of 79 Copyright © 2019-2020 The Printer Working Group. All rights reserved.

1314188189190191192193194195196197198199200201202203204205206207208209210211212213214

215216217218

219220

221222223224225226227228229230231232

15

Page 7: ftp.pwg.orgftp.pwg.org/pub/pwg/ipp/wd/wd-ippepx20-20200504-rev.docx  · Web view5/4/2020  · The IEEE-ISTO takes no position regarding the validity or scope of any intellectual

Working Draft – IPP Enterprise Printing Extensions v2.0 (EPX) May 4, 2020

Table 12 - "ipp-features-supported" Additional Keywords..................................................40Table 13 - "job-hold-until" Additional Keywords..................................................................41Table 14 - "job-state-reasons" Additional Keywords...........................................................42Table 15 - Values of "job-state-reasons" attribute for various Job conditions.....................45Table 16 - "which-jobs" Additional Keywords.....................................................................46Table 17 - Obsolete Attributes............................................................................................47Table 18 - Obsolete Values................................................................................................49

Page 7 of 79 Copyright © 2019-2020 The Printer Working Group. All rights reserved.

1617233234235236237238239240

18

Page 8: ftp.pwg.orgftp.pwg.org/pub/pwg/ipp/wd/wd-ippepx20-20200504-rev.docx  · Web view5/4/2020  · The IEEE-ISTO takes no position regarding the validity or scope of any intellectual

Working Draft – IPP Enterprise Printing Extensions v2.0 (EPX) May 4, 2020

1. IntroductionThis specification defines extensions to IPP/1.1 to support the IPP Proof Job FeatureRelease, Job Storage Feature and Job Protection Feature, to better enable authenticated release, Print Policy and Proof Print features, to support printing workflows that are used inimportant to institutional IT environments such as corporate businesses or , governments and universities.

This specification updates "IPP Job and Printer Extensions - Set 2" [PWG5100.11-2010]. Section 16.3The Proof Print, Job Save and Secure Print features defined in "Internet Printing Protocol (IPP): Job and Printer Extensions – Set 2 (JPS2)" were not interoperable with one another, and were not defined in such a way that they could interoperate in practice. The Proof Print and Job Save features are deprecated, to be replaced by Job Proof Print Feature and Job Storage Feature. The Secure Print feature has been refactored and extended to become the Job Protection Feature, which can interoperate with the Job Proof Print Feature and Job Storage Feature to enable more complex print workflow solutions to be created.

lists the changes since that earlier revision of this specification.

2. TerminologyThis section defines the following additional terms that are used throughout this document.

2.1[1.1] Conformance Terminology

Capitalized terms, such as MUST, MUST NOT, RECOMMENDED, REQUIRED, SHOULD, SHOULD NOT, MAY, and OPTIONAL, have special meaning relating to conformance as defined in Key words for use in RFCs to Indicate Requirement Levels [BCP14]. The term CONDITIONALLY REQUIRED is additionally defined for a conformance requirement that applies when a specified condition is true.

The term DEPRECATED is used for previously defined and approved protocol elements that SHOULD NOT be used or implemented. The term OBSOLETE is used for previously defined and approved protocol elements that MUST NOT be used or implemented.

2.2 Printing Terminology

Normative definitions and semantics of printing terms are imported from IETF Printer MIB v2 [RFC3805], IETF Finisher MIB [RFC3806], and IETF Internet Printing Protocol/1.1: Model and Semantics [STD92].

Page 8 of 79 Copyright © 2019-2020 The Printer Working Group. All rights reserved.

1920

241

242243244245246

247248249250251252253254255

256

257

258

259

260261262263264

265266267268

269

270271272

21

Page 9: ftp.pwg.orgftp.pwg.org/pub/pwg/ipp/wd/wd-ippepx20-20200504-rev.docx  · Web view5/4/2020  · The IEEE-ISTO takes no position regarding the validity or scope of any intellectual

Working Draft – IPP Enterprise Printing Extensions v2.0 (EPX) May 4, 2020

Administrator: An End User who is also authorized to manage all aspects of an Output Device or Printer, including creating the printer instances and controlling the authorization of other End Users and Operators [RFC2567].

Document: An object created and managed by a Printer that contains the description, processing, and status information. A Document object may have attached data and is bound to a single Job.

Job: An object created and managed by a Printer that contains description, processing, and status information. The Job also contains zero or more Document objects.

Logical Device: a print server, software service, or gateway that processes Jobs and either forwards or stores the processed Job or uses one or more Physical Devices to render output.

Operator: An End User that also has special rights on the Output Device or Printer. The Operator typically monitors the status of the Printer and manages and controls the Jobs at the Output Device [RFC2567]. The Operator can query and control the Printer, Jobs, and Documents based on site policy.

Output Device: a single Logical or Physical Device

Physical Device: a hardware implementation of an endpoint device, e.g., a marking engine, a fax modem, etc.

PIN Printing: Printing where the User/Client provides a numerical password in the print request that is later used to release the Job at the Printer's console or control panel. Some Printers only supported a numerical password repertoire.

Release Job: A Job submitted to a print service with annotations indicating that the receiving Printer is to withhold the Job from processing until the Printer receives some input action, such as a button press on its control panel, a Job password, or user authentication credentials, to authorize the Printer to "release" the Job into the processing queue.

Release Printing: A workflow where Release Jobs are submitted to a print service and held until the User provides necessary information to release it to processing. The necessary information may depend on the solution but might include information such as a username and password, swiping an identification card or credit card in a card reader on the Printer, or simply pushing a button. The print service may be a Physical Printer or a Logical Printer such as a centralized print service or print service provider.

2.3 Protocol Role Terminology

This document also defines the following protocol roles in order to specify unambiguous conformance requirements:

Page 9 of 79 Copyright © 2019-2020 The Printer Working Group. All rights reserved.

2223273274275

276277278

279280

281282283

284285286287

288

289290

291292293

294295296297298

299300301302303304

305

306307

24

Page 10: ftp.pwg.orgftp.pwg.org/pub/pwg/ipp/wd/wd-ippepx20-20200504-rev.docx  · Web view5/4/2020  · The IEEE-ISTO takes no position regarding the validity or scope of any intellectual

Working Draft – IPP Enterprise Printing Extensions v2.0 (EPX) May 4, 2020

Client: Initiator of outgoing connections and sender of outgoing operation requests (Hypertext Transfer Protocol -- HTTP/1.1 [RFC7230] User Agent).

Printer: Listener for incoming connections and receiver of incoming operation requests (Hypertext Transfer Protocol -- HTTP/1.1 [RFC7230] Server) that represents one or more Physical Devices or a Logical Device.

[1.2] Job State Terminology

This document defines features that influence the trajectory of a Job through the various Job states. The states defined for "job-state" and the transitions between these states are illustrated in . THIS SUB-SECTION SHOULD BE REMOVED BEFORE FINAL PUBLICATION.

Job Not Completed: The phase when a Job is in the ’pending’, ’pending-held’, ’processing’, or ’processing-stopped’ state.

Job Retention: The phase when a Job is in its terminal state ('canceled', 'aborted', or 'completed') before it has been stripped of its Document data.

Job History: After the Job Retention phase expires for a Job, the Printer deletes the Document data for the Job and the Job becomes part of the Job History. The Printer MAY also delete any number of the Job attributes.

Job Removal: After the Job has remained in the Job History for an implementation-defined time, such as when the number of Jobs exceeds a fixed number or after a fixed time period (which MAY be zero seconds), the IPP Printer removes the Job from the system.

'pending': The Job is a candidate to start processing but is not yet processing.

'pending-held': The Job is not a candidate for processing for any number of reasons but will return to the ’pending’ state as soon as the reasons are no longer present.

'processing': One or more of the following: (1) the Job is using, or is attempting to use, one or more purely software processes that are analyzing, creating, or interpreting a PDL, etc.; (2) the Job is using, or is attempting to use, one or more hardware devices that are interpreting a PDL; making marks on a medium; and/or performing finishing, such as stapling, etc.; (3) the Printer has made the Job ready for printing, but the Output Device is not yet printing it, either because the Job hasn't reached the Output Device or because the Job is queued in the Output Device or some other spooler, waiting for the Output Device to print it.

'processing-stopped': The Job has stopped while processing for any number of reasons and will return to the 'processing' state as soon as the reasons are no longer present.

Page 10 of 79 Copyright © 2019-2020 The Printer Working Group. All rights reserved.

2526308309

310311312

313

314315316317

318319

320321

322323324

325326327

328

329330

331332333334335336337338

339340

27

Page 11: ftp.pwg.orgftp.pwg.org/pub/pwg/ipp/wd/wd-ippepx20-20200504-rev.docx  · Web view5/4/2020  · The IEEE-ISTO takes no position regarding the validity or scope of any intellectual

Working Draft – IPP Enterprise Printing Extensions v2.0 (EPX) May 4, 2020

’canceled’: The Job has been canceled by a User-initiated action such as a Cancel-Job operation or some non-IPP method, the Printer has completed canceling the Job, and all Job Status attributes have reached their final values for the Job.

’aborted’: The Job has been aborted by the system, usually while the Job was in the ’processing’ or ’processing-stopped’ state, the Printer has completed aborting the Job, and all Job Status attributes have reached their final values for the Job.

’completed’: The Job has completed successfully or with warnings or errors after processing, all of the Job Media Sheets have been successfully stacked in the appropriate output bin(s), and all Job Status attributes have reached their final values for the Job.

Page 11 of 79 Copyright © 2019-2020 The Printer Working Group. All rights reserved.

2829341342343

344345346

347348349

30

Page 12: ftp.pwg.orgftp.pwg.org/pub/pwg/ipp/wd/wd-ippepx20-20200504-rev.docx  · Web view5/4/2020  · The IEEE-ISTO takes no position regarding the validity or scope of any intellectual

Working Draft – IPP Enterprise Printing Extensions v2.0 (EPX) May 4, 2020

Figure - IPP Job States and Transitions

Page 12 of 79 Copyright © 2019-2020 The Printer Working Group. All rights reserved.

3132

350

351

33

Page 13: ftp.pwg.orgftp.pwg.org/pub/pwg/ipp/wd/wd-ippepx20-20200504-rev.docx  · Web view5/4/2020  · The IEEE-ISTO takes no position regarding the validity or scope of any intellectual

Working Draft – IPP Enterprise Printing Extensions v2.0 (EPX) May 4, 2020

[1.3] Other Terminology

Document Creation Operations: The operations that create Document objects: Print-Job, Print-URI, Send-Document and Sent-URI [STD92].

Input Page: A page according to the definition of "pages" in the language used to express the Document data [STD92].

Job Creation operation: One of the operationsAn IPP operation that creates a Job object: Print-Job, Print-URI and Create-Job. The Restart-Job operation [STD92] is not considered a Job Creation operation, since the Printer re-uses the existing Job object. The Validate-Job operation is not considered a Job Creation operation because no Job object is created. Therefore, when a statement also applies to either the Restart-Job and/or the Validate-Job operation, they are mentioned explicitly.

Job Instructions: Information that affects how the Job and its associated documents are to be processed. This includes the Job Template Attributes, some Operation Request Attributes, and other attributes (such as defaults) that are applied to a job.

Job Submission Operations: The Job Submission Operations are the IPP operations that create Jobs and Documents: Print-Job, Print-URI, Create-Job, Send-Document and Send-URI [STD92].

Password ProtectedRelease Job: The Job that has a password permanently attached to it that must be provided to the Printer to authorize its printing. If the Job is duplicated, either via an IPP Reprocess-Job or Resubmit-Job operation, or out of band of IPP via control panel-initiated reprinting or some otherwhatever method, the duplication process includes the password is included from the old Job in the new Job to requirepreserve the authorization for the new Jobprotection.

Precedence: The specification of the order or ranking of a series of instructions or attributes from multiple sources referring to the same functionality. See section 4.2 of this specification for a description of the Attribute Precedence model.

Production Printer: A Printer that produces large quantities of high-quality output, that often requires operator participation to make decisions as to the choice of jJob and its parameters.

Proof Job: A Retained Job that the Printer retains (until removed by a Delete-Job or Purge-Jobs operation or aged out by the Printer using a different policy than for ordinary completed Jobs) after printing a the initial "proof so that a copy" set of it cancopies has been produced, to enable the remaining copies to be printed anyat some later time after it has been proofed using the Reprocess-Job or Resubmit-Job operations, rather than aging the jJob out after an implementation-defined period.

Raster image: A binary bitmap representation of an image.

Page 13 of 79 Copyright © 2019-2020 The Printer Working Group. All rights reserved.

3435

352

353354

355356

357358359360361362

363364365

366367368

369370371372373374

375376377

378379380

381382383384385386

387

36

Page 14: ftp.pwg.orgftp.pwg.org/pub/pwg/ipp/wd/wd-ippepx20-20200504-rev.docx  · Web view5/4/2020  · The IEEE-ISTO takes no position regarding the validity or scope of any intellectual

Working Draft – IPP Enterprise Printing Extensions v2.0 (EPX) May 4, 2020

Retained Job: A Job that the Printer retains in the so-called Job Retention Phase (see [STD92] section 5.3.7.2 Partitioning of Job States) inonce the Job’sJob has reached its terminal state (‘completed’, ‘aborted’, or ‘canceled’) after processing it,), for an implementation-defined period (including zero seconds). An exact copy of a Retained Job can be created using a Reprocess-Job operation. A modifiable copy of a Retained Job can be created using a Resubmit-Job operation.

RIP: Raster Image Processor - a page description language interpreter.

Stored Job: A Retained Job that has reached the 'completed' state and that has identifying characteristics marking it as a Stored Job instead of simply as a previously processed Job. The Documents in a Stored Job are maintained in their originally submitted state and format. The Printer retains a Stored Job indefinitelyfor an implementation-defined period, unless otherwise configured, so that it can be listed and selected for reprinting at some time in the future.

2.4[1.4] Acronyms and Organizations

IANA: Internet Assigned Numbers Authority, http s ://www.iana.org/

IETF: Internet Engineering Task Force, https://www.ietf.org/

ISO: International Organization for Standardization, https://www.iso.org/

PIN: Personal Identification Number

PWG: Printer Working Group, https://www.pwg.org/

3.[2.] Requirements

3.1[2.1] Rationale for IPP Enterprise Printing Extensions v2.0

IETF and PWG IPP printing standards define an abstract model of a Print Service (i.e., ISO DPA Logical Printer) and a Print Device (i.e., ISO DPA Physical Printer) in section 3.1 of IETF IPP/1.1 [STD92]. Some IPP Printers already support proofing, saving, and reprinting of large Print Jobs via vendor proprietary operations and attributes.

Therefore, this IPP Enterprise Printing Extensions v2.0 specification shouldSHOULD extend IPP so that it supports:

[1.] SupportCreating a Proof Jobs using IPP Job Creation operations; [2.] SupportCreating a Stored Jobs using IPP Job Creation operations;[3.] Support creatingCreating a new Jobs Job using IPP from storeda Stored Job or

proofed JobsProof Job, with the new Job having possibly different processing instructions;

[4.] Support PasswordCreating a Protected Jobs using IPP Job Creation operations;

Page 14 of 79 Copyright © 2019-2020 The Printer Working Group. All rights reserved.

3738388389390391392393

394

395396397398399400

401

402

403

404

405

406

407

408

409410411412

413414

415416417418419420

39

Page 15: ftp.pwg.orgftp.pwg.org/pub/pwg/ipp/wd/wd-ippepx20-20200504-rev.docx  · Web view5/4/2020  · The IEEE-ISTO takes no position regarding the validity or scope of any intellectual

Working Draft – IPP Enterprise Printing Extensions v2.0 (EPX) May 4, 2020

[5.] Support interoperability betweenReleasing a Protected Job using IPP Job operations;

These extensions to IPP SHOULD be designed in such a way that Proof Jobs, Stored Jobs and Password Protected Jobs suchcan interoperate, so that a single Job cancould be any combination of the 3 including all 3 (e.g. a "Password Protected Job, a Stored Job and a Proof Job")..

3.2[2.2] Use Cases

[2.2.1] Job Protection ViaProtecting a Job with Button Press Release

Lisa is a high school student. She has finished writing a paper for her Ancient History class and wants to print a copy to turn into her teacher. She wants to have the Printer hold the Job until she releases it so that it isn't sitting in the output tray. She selects the "Button Press" option in the print options dialog window and clicks "Print" to submit the Job. The printer holds the Job. When Lisa goes to the Printer, it is listed on the control panel. She pushes the "OK" button and the Job prints.

3.2.1 Protecting a Job with Job Password Release

Frank works in a sales office that is large enough for him to have privacy concerns, but not so large that the printers are integrated into the IT infrastructure in a sophisticated manner. He is editing a sensitive business report that contains financial data. He wants to make sure that, if he prints it to the office's workgroup printer, he can be confident only people with the original password can pick it up or re-print it. Frank sees that the workgroup printer supports Password Protected Jobs, so he specifies a "Job Password" when he prints it.Release Jobs, so he selects the "Job Password" option in the print options dialog window, overrides the automatically generated unique password with one of his choosing, and clicks "Print" to submit the Job. The workgroup printer delays printing the Job until someone first provides the matching password. Frank goes to the workgroup printer, observes that his Password ProtectedRelease Job is listed on the control panel, selects it, and enters the job's password at the prompt. The printer prints the Password ProtectedRelease Job, and Frank can relax knowing the printed Job was safe from others' view.

[2.2.2] Protecting a Job Protection Viawith User AuthenticationAuthorized Release

James works in a large law office where the printers are integrated into the IT AAA (Authentication, Authorization, Accounting) infrastructure. He is editing a set of documents for a client. He wants to make sure that, he will be the only one able to collect the printed copy or reprint it if he printssubmits it to the office's workgroup printer, he can be confident he will be the only one that will be able to pick it up or re-.

Page 15 of 79 Copyright © 2019-2020 The Printer Working Group. All rights reserved.

4041421422

423424425426

427

428

429430431432433434

435

436437438439440441442443444445446447448449

450

451452453454455

42

Page 16: ftp.pwg.orgftp.pwg.org/pub/pwg/ipp/wd/wd-ippepx20-20200504-rev.docx  · Web view5/4/2020  · The IEEE-ISTO takes no position regarding the validity or scope of any intellectual

Working Draft – IPP Enterprise Printing Extensions v2.0 (EPX) May 4, 2020

James selects the "Authorized Release" option in the print it.options dialog window and clicks "Print" to submit the Job. The workgroup printer supports Authenticated Job Release, so James selects "Authenticated Release" when he prints it. The Printer challenges James' laptop for authentication credentials, and James provides them to the Client. The Job is submitted to the workgroup printer waits to print, which holds the Job until someone has provide the matching password. FrankJames logs into it and releases it.

James goes to the workgroup printer, findslogs into it with his identity badge and selects the held job, enters the matching password at the prompt, and the Job is printedJob to release it. The workgroup printer prints the Job and James takes it back to his desk.

[2.2.3] Job Storage

[2.2.4] Storing a Job for Later Reprinting

Vincent is an administrative assistant for a school. The school provides its teachers with paper forms for documenting their class assignments and attendance. Vincent makes these forms available on the school's web site and also on the school's workgroup printer as a Stored Job accessible by any accounts in the Faculty user group. He sends an email to the school faculty letting them know that the Stored Job is available for reprinting.

3.2.2[2.2.5] Reprinting a Stored Job

Lily is a teacher. She has run out of her supply of the assignment tracking forms. She goes to the school's office, logs in using her faculty account, and selects Stored Jobs. on its control panel. Among the Stored Jobs visible to her accountlisted, she finds and chooses the assignment tracking form from the workgroup printer's Stored Jobs list on its control panel, choosesthat had been stored by Vincent. She selects that Stored Job for reprinting, choosing to have 30 copies made, and taps Print. The copies are printed, and she returns to her classroom with the newly printed copies.

3.2.3[2.2.6] Proof Printing

Alice, BobAbby, Brian, and CharlieCyrus work in the system engineering department of a large software vendor. They collaborate to find, describe, and evaluate software feature requirements for financial management tools in their requirements database.

AliceAbby is an artist and chooses their standard fonts and writes style sheets and layout guides for their software requirements specifications. BobBrian is a quiet, steady worker and an excellent proofreader. CharlieCyrus is a good talker who does the interviewing of the marketers and engineers.

Once a month, CharlieCyrus extracts from their database all of the detailed software requirements for each project into a spreadsheet. He also extracts all the high-level software requirements into a word processing document. CharlieCyrus then submits a single Print Job with two Documents [PWG5100.5] (the spreadsheet and the word processing document) for a proof print of 3 copies (single-sided and portrait).

Page 16 of 79 Copyright © 2019-2020 The Printer Working Group. All rights reserved.

4344456457458459460461

462463464

465

466

467468469470471

472

473474475476477478479

480

481482483

484485486487

488489490491492

45

Page 17: ftp.pwg.orgftp.pwg.org/pub/pwg/ipp/wd/wd-ippepx20-20200504-rev.docx  · Web view5/4/2020  · The IEEE-ISTO takes no position regarding the validity or scope of any intellectual

Working Draft – IPP Enterprise Printing Extensions v2.0 (EPX) May 4, 2020

AliceAbby searches for layout and visual content errors, while BobBrian looks for typos and missing words. CharlieCyrus commits their fixes to the database, regenerates the source documents, and does another cycle of proof print.

Finally, CharlieCyrus wants to produce 60 copies (2-up, two-sided, and landscape) of the retained proof Print Jobjob. So, he reprints the saved Print Job (without sending the document data again) but specifying overrides of some processing instructions.

3.2.4[2.2.7] Print Policy for Some Users Limits Print Capabilities

Sue wants to print her report on her department's workgroup printer. She wants to print it in color to make the color graphs look best. However, she has abused her printing privileges, so her department head has instructed the network administrator to restrict her user account's ability to print in color.

Sue opens the document on her laptop, chooses to print, and selects the department's workgroup printer. The Printer authenticates the laptop using Sue's credentials, and then provides the laptop with the print choices available for Sue's account, which does not include color printing. Sue decides whether to print it in black-and-white anyway or to print from one of the campus printing centers, where she can pay to print in color.

Bob is an associate professor in the same department as Sue. His account has no limitations for color printing. He opens a document on his tablet, taps to print, and selects the department's workgroup printer. His tablet presents print options including the option of printing in color. Bob chooses to print in color, and prints his document, which prints in color as he expects.

Figure 1 illustrates this use case with a sequence diagram.

Page 17 of 79 Copyright © 2019-2020 The Printer Working Group. All rights reserved.

4647493494495

496497498

499

500501502503

504505506507508

509510511512513

514

48

Page 18: ftp.pwg.orgftp.pwg.org/pub/pwg/ipp/wd/wd-ippepx20-20200504-rev.docx  · Web view5/4/2020  · The IEEE-ISTO takes no position regarding the validity or scope of any intellectual

Working Draft – IPP Enterprise Printing Extensions v2.0 (EPX) May 4, 2020

Page 18 of 79 Copyright © 2019-2020 The Printer Working Group. All rights reserved.

4950

515

51

Page 19: ftp.pwg.orgftp.pwg.org/pub/pwg/ipp/wd/wd-ippepx20-20200504-rev.docx  · Web view5/4/2020  · The IEEE-ISTO takes no position regarding the validity or scope of any intellectual

Working Draft – IPP Enterprise Printing Extensions v2.0 (EPX) May 4, 2020

Figure 1 - Use Case 3.2.7 Sequence Diagram

3.2.5 User Not Listed in Print Policy Denied Ability to Print in Color

Duncan is at the office and needs to print a 5-page report that contains color diagrams before his next meeting. His office user account has been granted permission by his office network administrator to print in color. Duncan opens the document on his tablet, taps to print, and selects the desired Printer. The tablet fetches the Printer's default capabilities, and then authenticates using Duncan's user account to retrieve the print options available to him as per his account's print policy, including the option to print in color or monochrome. He prints the document using the color option, retrieves the hardcopy from the printer, and then goes on to his meeting.

Ed is visiting Duncan's office and needs to print a 3-page document. Ed is not listed as a user in the print policy. Ed opens the document on his laptop, clicks to print, and selects the Printer Duncan pointed out to him. The laptop does not support print policies or does but has no valid credentials. The Printer provides Ed's laptop with the default print capabilities. When the Job is submitted to the Printer, the Printer rejects the Job or identifies the setting that were adjusted, since unknown users don't have the right to print in color on this printer.

Figure 2 illustrates this use case with a sequence diagram.

Page 19 of 79 Copyright © 2019-2020 The Printer Working Group. All rights reserved.

5253516

517

518519520521522523524525

526527528529530531532

533

54

Page 20: ftp.pwg.orgftp.pwg.org/pub/pwg/ipp/wd/wd-ippepx20-20200504-rev.docx  · Web view5/4/2020  · The IEEE-ISTO takes no position regarding the validity or scope of any intellectual

Working Draft – IPP Enterprise Printing Extensions v2.0 (EPX) May 4, 2020

Page 20 of 79 Copyright © 2019-2020 The Printer Working Group. All rights reserved.

5556

534

57

Page 21: ftp.pwg.orgftp.pwg.org/pub/pwg/ipp/wd/wd-ippepx20-20200504-rev.docx  · Web view5/4/2020  · The IEEE-ISTO takes no position regarding the validity or scope of any intellectual

Working Draft – IPP Enterprise Printing Extensions v2.0 (EPX) May 4, 2020

Figure 2 - Use Case 3.2.8 Sequence Diagram

3.3 Exceptions

[2.2.8] Unauthorized Access Job Protection Using aIncorrect Job Password Prevents Release

Velma is one of Frank's co-workers. She is very competitive and also has questionable business ethics. She goes to the department's workgroup printer to see if she can re-print any of Frank's reports. She jobs. Many of Frank's jobs are submitted as requiring user account authorization to release or reprint and are not visible to her, but she finds his one Job Frank submitted using password release. She suspects this Job is the latest draft of a key report and tries to re-print it. The Job Velmashe selected is a Password ProtectedRelease Job. The, so the workgroup printer presents a password challenge UI to request the Job Password.authorize re-printing. Velma doesn't know it, so she clicks "Cancel"guesses a few times, gives up, and goes to the break room to brood.

3.3.1[2.2.9] Incorrect User Credentials Prevents Release

Wilbur is a corporate spy who has infiltrated the offices of James' law firm. He is hoping that he can acquire documents pertaining to a case, but he cannot access the documents on the law firm's computers. He hopes he will be able to reprint documents on the printers since they are not as carefully protected. He goes to the control panel and looks for the printer's Job History. The printer does allow listing the Job history to unauthenticated users, so he looks through the past jobs, selects one and taps "Print". He is challenged to log into the printer using matching account credentials, but he doesn't have credentials that are authorized access to any of the jobs in the history. Wilbur gives up and goes looking for a recycle bin to plunder.

3.4 Out of Scope

The following are considered out of scope for this documentspecification:

[1.] HowSpecifying the methods used by the Printer managesto manage its storage for stored jobsStored Jobs or pending jJobs;

[2.] HowDefining specific methods for multi-factor authentication for PIN and Release Printing, e.g., smart cards;

1. Specifying the methods used by the Printer implementsto implement authentication and authorization;

2. Specifying the methods used by the Printer to present features on its control panel.

3.5 Design Requirements

This IPP Enterprise Printing Extensions v2.0 design should:

Page 21 of 79 Copyright © 2019-2020 The Printer Working Group. All rights reserved.

5859535

536

537538

539540541542543544545546547

548

549550551552553554555556557

558

559

560561562563564565566567

568

569

60

Page 22: ftp.pwg.orgftp.pwg.org/pub/pwg/ipp/wd/wd-ippepx20-20200504-rev.docx  · Web view5/4/2020  · The IEEE-ISTO takes no position regarding the validity or scope of any intellectual

Working Draft – IPP Enterprise Printing Extensions v2.0 (EPX) May 4, 2020

1. Follow the naming conventions defined in IETF IPP/1.1 [STD92], including keyword value (lowercase) and hyphenation requirements;

[2.] Optimize compatibility with existing IETF and PWG IPP operations when making design decisions in defining new operations and attributes;

2.[3.] Define an IPP operation to allow a Client to obtain supported Printer capabilities for a particular User;

3. Define new attributes into support of the Job Protection FeatureRelease feature;

[4.] Define new attributes into support of the Job Storage feature;

[5.] Define new attributes into support of the Job Proof Print Ffeature;

[6.] Define additional attributes . to support other minor enhancements to IPP that relate to the significant features defined in this specification.

Page 22 of 79 Copyright © 2019-2020 The Printer Working Group. All rights reserved.

6162570571

572573

574575

576

577

578

579580

581

63

Page 23: ftp.pwg.orgftp.pwg.org/pub/pwg/ipp/wd/wd-ippepx20-20200504-rev.docx  · Web view5/4/2020  · The IEEE-ISTO takes no position regarding the validity or scope of any intellectual

Working Draft – IPP Enterprise Printing Extensions v2.0 (EPX) May 4, 2020

4.[3.] IPP ModelThis specification extends the Internet Printing Protocol/1.1 [STD92] model to add support for the Proof Print, Job Release, and Job Storage features. All of these features involve the definition of conditions under which a Job may move between different Job States. Figure 3 illustrates the IPP Job States defined in IPP/1.1 [STD92].

This specification defines the Get-User-Printer-Attributes operation to support per-user print feature filtering based on the most authenticated user. A number of new IPP attributes to support enterprise printers are also defined to better satisfy the use cases in section 3.2.

Page 23 of 79 Copyright © 2019-2020 The Printer Working Group. All rights reserved.

6465

582

583584585586

587588589590

591

66

Page 24: ftp.pwg.orgftp.pwg.org/pub/pwg/ipp/wd/wd-ippepx20-20200504-rev.docx  · Web view5/4/2020  · The IEEE-ISTO takes no position regarding the validity or scope of any intellectual

Working Draft – IPP Enterprise Printing Extensions v2.0 (EPX) May 4, 2020

5. Figure 3Semantics Common to More Than One Attribute

[3.1] Overview

[3.2] Authenticated Release Feature

The Authenticated - IPP Job States and Transitions

5.1 Job Release Feature

Job Release enables a Client to provide authentication credentialsrequest that the Printer create a Release Job, which will cause the Printer to withhold processing the Job until the Printer has received the specified supported User input used as the "release method". The Client specifies this release method at Job Creation Time, and request that time to indicate the Job is a Release Job.

This specification defines 3 release methods: Button Press release; Job Password release; and User Authorized release. Table 1be held by lists the IPP operation or Job Template attribute(s) a Client includes in a Job Creation operation request to specify the release method. A Client MUST only specify one release method for a given Job. A Printer MUST reject a Job Creation operation request that includes more than one of the release methods in Table 1. The table also lists the corresponding "job-state-reasons" keyword (section 9.3until matching credentials are provided at the Printer to authorize) indicating the Job's release. method.

Table 1 - IPP Job Release Methods

Feature Attribute(s) in Job Creation operation

"job-state-reasons" indicators

Button Press Release

"job-hold-until" = 'button-press' (9.2) 'job-held-for-button-press''job-release-wait'

Job Password Release

"job-password" (7.1.1)"job-password-encryption" (7.1.2)

'job-password-wait'

User Authorized Release

"job-hold-until" = 'owner-authorized' (9.2)

'job-held-for-authorization''job-release-wait'

The release method is durable and persistent, which means the Job Status attributes specifying the release method MUST persist in the Job at least until the Job's Document Content is removed (e.g. when the Job enters the Job History phase [STD92]). If the Job is copied, as in the case of reprinting a Stored Job or completing a Proof Job, the Job Status attributes specifying the release method MUST be preserved in the new copy to maintain the release protection.

Page 24 of 79 Copyright © 2019-2020 The Printer Working Group. All rights reserved.

6768

592

593

594

595

596

597598599600601

602603604605606607608609

610

611612613614615616

69

Page 25: ftp.pwg.orgftp.pwg.org/pub/pwg/ipp/wd/wd-ippepx20-20200504-rev.docx  · Web view5/4/2020  · The IEEE-ISTO takes no position regarding the validity or scope of any intellectual

Working Draft – IPP Enterprise Printing Extensions v2.0 (EPX) May 4, 2020

The Printer initially places the Release Job into the 'pending-held' state when processing will result in the immediate production of physical output (Media Sheets). A Physical Device supporting Job Release MUST hold the newly created Release Job by initially placing it in the ‘pending-held’ state, unless the Release Job is also a Stored Job with "job-storage-disposition" set to 'store-only'. If the Release Job is also a Stored Job with "job-storage-disposition" set to 'store-only', the Printer MUST place the Job into the 'pending' or 'processing' state and process it immediately, since this processing will not produce physical output.

A Logical Device supporting Job Release MAY place the new Release Job in the 'pending-held' state, depending on how many Physical Devices it represents, whether the Physical Device has been selected, whether the Printer is an Infrastructure Printer taking part in an Infrastructure System [PWG5100.18], and other factors.

All Printers supporting Job Release MUST also support the "job-spooling-supported" Printer Description attribute [PWG5100.7]This feature provides functionality similar to the Job Protection Feature (section ). It differs mainly in the nature of the credential used to release the Job; whereas the Job Protection Feature uses a "job password", this feature uses user credentials to release the Job to processing. The Client uses this feature by specifying "job-hold-until" = 'owner-authorized'.

[3.3] Job Storage Feature

The . A Client supporting Job Release SHOULD support multiple Job spooling when the target Printer's "job-spooling-supported" Printer Description attribute is set to 'spool' or 'automatic'. If the Printer's "job-spooling-supported" Printer Description attribute is set to 'stream', the Printer might be unable to receive additional Jobs until the Release Job has been released, or the Client might have to keep open the TCP connection until the Job has been released, which could cause an adverse use of resources on the Client.

When the User later releases the Job at a Physical Device, the keyword indicating the retention method is removed from the “job-state-reasons” Job Status attribute, and the Job is placed in the ‘pending’ or ‘processing’ state unless there are other dependencies that prevent its immediate processing.

Page 25 of 79 Copyright © 2019-2020 The Printer Working Group. All rights reserved.

7071617618619620621622623624

625626627628

629630631632633634

635

636637638639640641

642643644645

72

Page 26: ftp.pwg.orgftp.pwg.org/pub/pwg/ipp/wd/wd-ippepx20-20200504-rev.docx  · Web view5/4/2020  · The IEEE-ISTO takes no position regarding the validity or scope of any intellectual

Working Draft – IPP Enterprise Printing Extensions v2.0 (EPX) May 4, 2020

5.2 Job Storage Feature

Job Storage enables a Client to request that the Printer "store" a Job and its Documents in their originally submitted and unprocessed form to make itthem available for later reprinting. A Client requests a Job be a Stored Job by supplying the “job-storage” operation attribute (section 7.1.3reprinting at a later time. A Stored Job's discoverability will depend on its) in the Job Creation operation request. Job Storage access settings; it might be discoverable to determine whether the Job is accessible by all users, to only the originating user, or to users that are part of a particular group. A Client requests a Job be treated as a Stored Job by supplyingThe Printer lists the “supported groups in its "job-storage” Job Template-group-supported" Printer Description attribute (section 7.10.3) when submitting the Job Creation operation.).

As with the DEPRECATED Job Save and Reprint feature [PWG5100.11-2010]Feature,, the Printer retains the Job indefinitelyStored Job for an implementation-defined period in the Job Retention Phase (see [STD92] section 5.3.7.2 "Partitioning of Job States") in the Job’s terminal state (‘completed’, ‘aborted’, or ‘canceled’) after processing it, rather than aging the Job out after an implementation-defined period (which can be overridden using the "job-retain-until" / "job-retain-until-interval" / ""job-retain-until-time" attributes [PWG5100.7].).

5.2.1[3.3.1] Creating Stored Jobs

A Printer states support for Job Storage by supporting the "job-storage-supported" Printer Description attribute (section 7.11.1A Job becomes a Stored Job when ) and related Printer Description attributes. A Client creates a Stored Job using the "job-storage" Job Template attribute (section 7.1.3is specified) in the Job Creation operation, and that Job. That Job becomes a Stored Job when it has reached the 'completed' state [STD92]. The Job's storage status is indicated by the "job-state-reasons" Job Status attribute [STD92] if the "job-state-reasons" Job Status attribute includes the 'job-stored-successfully', 'job-stored-with-errors', 'job-stored-with-warnings', or 'job-storing' keywords defined in section 9.3. for the Job Storage feature.

5.2.2[3.3.2] Identifying and Listing Stored Jobs

A Client can acquire a list of Stored Jobs using a Get-Jobs operation request [STD92] that includes either the 'stored-public', 'stored-group' or 'stored-owner' keyword for the "which-jobs" operation attribute (section 9.4A) in a Get-Jobs request. A Client can also detect that a Job is a Stored Job if itsthe "job-state-reasons" Job Status attribute includes one of thethe 'job-stored-successfully', 'job-stored-with-errors', 'job-stored-with-warnings', or 'job-storing' keywords defined in section 9.3 for the Job Storage Feature defined in section . A Client can get a listing of Stored Jobs feature.

Page 26 of 79 Copyright © 2019-2020 The Printer Working Group. All rights reserved.

7374

646

647648649650651652653654655656

657658659660661662663

664

665666667668669670671672673

674

675676677678679680681

75

Page 27: ftp.pwg.orgftp.pwg.org/pub/pwg/ipp/wd/wd-ippepx20-20200504-rev.docx  · Web view5/4/2020  · The IEEE-ISTO takes no position regarding the validity or scope of any intellectual

Working Draft – IPP Enterprise Printing Extensions v2.0 (EPX) May 4, 2020

Many of the "job-state-reasons" keywords can apply to a ‘store-only’ Stored Job as well as a Job submitted for printing. If the value of the “job-storage-disposition” attribute is 'store-only', the "job-state-reasons" attribute MAY include 'job-incoming', 'resources-are-not-ready' (perhaps if a font is missing), 'job-interpreting', and 'job-queued'. Likewise, errors that occur on a Stored Job MAY be indicated by the 'job-data-insufficient', 'document-access-error', 'submission-interrupted', 'job-canceled-by-user', 'aborted-by-system', or other "job-state-reasons" keywords. Table 2 lists the possible combinations of print and save success, warning, and error conditions. Note that two values occur only when there are print warnings/errors and a save error.

Table 2specifying either the 'stored-public' or 'stored-owner' keyword for the "which-jobs" attribute (section ) in a Get-Jobs operation request . - "job-state-reasons" keywords for Job

Storage conditions

Not storing Store was successful

Store was unsuccessful

Not printing <not possible> 'job-completed-successfully'

'job-stored-with-errors'

Print successful

'job-completed-successfully'

'job-completed-successfully'

'job-stored-with-errors'

Print warnings

'job-completed-with-warnings'

'job-completed-with-warnings'

'job-completed-with-warnings','job-stored-with-errors'

Print errors 'job-completed-with-errors'

'job-completed-with-errors'

'job-completed-with-errors','job-stored-with-errors'

Print warnings and errors

'job-completed-with-errors'

'job-completed-with-errors'

'job-completed-with-errors','job-stored-with-errors'

5.2.3[3.3.3] Reprinting Stored Jobs

There are two methods defined to reprint a copy of the Saved Job: using the Resubmit-Job operation [PWG5100.7]; and by direct interaction with the Printer's control panel. The Reprocess-Job operation [RFC3998] has been deprecated. If the Printer supports the Stored Job feature in this specification and the Reprocess-Job operation, the Reprocess-Job operation MUST support reprocessing a Stored Job.

Page 27 of 79 Copyright © 2019-2020 The Printer Working Group. All rights reserved.

7677682683684685686687688689690

691692693

694

695

696697698699700

78

Page 28: ftp.pwg.orgftp.pwg.org/pub/pwg/ipp/wd/wd-ippepx20-20200504-rev.docx  · Web view5/4/2020  · The IEEE-ISTO takes no position regarding the validity or scope of any intellectual

Working Draft – IPP Enterprise Printing Extensions v2.0 (EPX) May 4, 2020

5.2.3.1[3.3.3.1] Reprinting Stored Jobs using the Resubmit-Job operation

The Resubmit-Job operation [PWG5100.7] re-processes a copy of any Retained Job with the ability to supply additional operation and Job Template attributes that will affect the processing of that copy of the Job by either overriding the values of existing attributes or providing additional attributes. The Resubmit-Job operation has the same structure as the Print-URI operation (see section 4.2.2) except that the “job-id” (integer(1:MAX)) operation attribute MUST take the place of the “document-uri” (uri) operation attributeThe Client MUST be prepared for an authentication challenge.

5.2.3.2[3.3.3.2] Reprinting Stored Jobs using the Printer Control Panel

Stored Jobs can be reprinted using the Printer's control panel (control console). The details of the user experience and presentation are beyond the scope of this document, but ought to reflect the semantics of the Job Storage feature defined in this IPP Enterprise Printing Extensions v2.0 specification.

5.3[3.4] Print Policy

Print Policy enables a Client to retrieve the Printer's attributes and capabilities that are available specifically to the Client's most authenticated User. The Client does this using the Get-User-Printer-Attributes operation (section 6.1) The Get-User-Printer-Attributes operation is semantically analogous to the existing Get-Printer-Attributes IPP operation [STD92], with the key difference that the Printer will likely respond with an authentication challenge. If authentication succeeds, the Printer will return the authorized set of Printer Description attributes available to the authenticated user.

A Printer declares its support for the Print Policy feature by including the 'Get-User-Printer-Attributes' keyword in its "operations-supported" Printer Description attribute [STD92].

5.4 Proof PrintJob Protection Feature

The Job Protection Feature enables a User to protect a Job with a password that is required for authorizing printing or reprinting the Job. A Client requests a Job be treated as a Password Protected Job by supplying the “job-password”, "job-password-action" and "job-password-encryption" Job Template attributes (sections , , and ) when submitting the Job Creation operation.

The password is permanently attached to the Job and persists with the Job until it enters the Job History phase . If the Job is copied, as in the case of reprinting a Stored Job, the password is preserved in the new copy. This feature can be combined with the Job Storage Feature and/or the Job Proof Print Feature.

Page 28 of 79 Copyright © 2019-2020 The Printer Working Group. All rights reserved.

7980701

702703704705706707708

709

710711712713

714

715716717718719720721

722723

724

725726727728729

730731732733

81

Page 29: ftp.pwg.orgftp.pwg.org/pub/pwg/ipp/wd/wd-ippepx20-20200504-rev.docx  · Web view5/4/2020  · The IEEE-ISTO takes no position regarding the validity or scope of any intellectual

Working Draft – IPP Enterprise Printing Extensions v2.0 (EPX) May 4, 2020

[3.5] Job

5.5 Proof Print Feature

The Job Proof Print Feature enables a User to printsubmit a Job as a Proof Job, indicating to the Printer that it is to produce a certain small number of copies and tothen save it as part of job processing in such a way that usersa User can submit a request to print a copythe completion of the Proof Job at a later time., with possibly different Job Ticket selections. A Client requests a Printer to print and save a Proof Job by supplying the “proof-print” Job Template attribute (section 7.4.6) when submitting the job. In this case, the Printer retains the Proof Job indefinitely in the so-called Job Retention Phase (see [STD92] section 5.3.7.2 Partitioning of Job Sates) in the jJob’s terminal state (‘completed’, ‘aborted’, or ‘canceled’) after processing it, rather than aging the jJob out after an implementation-defined period. In other words, a Proof Job is just a Retained Job that the Printer is retaining indefinitely. A Client can then request the Printer to reprint a copy of the Proof Job using the Resubmit-Job operation [PWG5100.7]. See section 12.5 to complete the Proof Job. If a reprint is not desired by the User, it SHOULD be cleaned up by the Printer after an implementation-defined length of timeConformance Requirements for the REQUIRED "proof-print" Job Template attribute for additional conformance requirements for Clients and Printers.

[4.] New Operation Attributes for Existing Operations

5.6[4.1] Get-User-Printer-Attributes

This RECOMMENDED operation is semantically analogous to the Get-Printer-Attributes operation [STD92] but the set of attributes in the response is filtered based on the most authenticated user. The authenticated user (see [STD92] RFC 8011 section 9.3) performing this operation MUST be either a User permitted to create Print Jobs or an Operator or Administrator of the Printer. Otherwise, the Printer MUST reject the operation and return 'client-error-forbidden', 'client-error-not-authenticated', or 'client-error-not-authorized' as appropriate.

The Client MUST be prepared to handle an HTTP authentication challenge in response to a Get-User-Printer-Attributes operation request. If the Client initiates the Get-User-Printer- Attributes operation over an HTTP connection without TLS, the Client MUST be prepared to receive an HTTP 426 response to upgrade the connection to TLS [RFC3380] T. Hastings, R. Herriot, C. Kugler, H. Lewis, "Internet Printing Protocol (IPP): Job and Printer Set Operations", RFC 3380, September 2002, [RFC8446]. A Printer MUST send a Get-User-Printer-Attributes response over Secure Transport for authentication methods that require a secure channel, as defined in [STD92].

Page 29 of 79 Copyright © 2019-2020 The Printer Working Group. All rights reserved.

8283

734

735

736737738739740741742743744745746747748749750751

752

753

754755756757758759760

761762763764765766767768

84

Page 30: ftp.pwg.orgftp.pwg.org/pub/pwg/ipp/wd/wd-ippepx20-20200504-rev.docx  · Web view5/4/2020  · The IEEE-ISTO takes no position regarding the validity or scope of any intellectual

Working Draft – IPP Enterprise Printing Extensions v2.0 (EPX) May 4, 2020

A Printer MUST support all the same operation attributes for a Get-User-Printer-Attributes operation that it supports with a Get-Printer-Attributes operation, including those a Client can use to request a filtered response: “document-format” [STD92]; “first-index” [PWG5100.13]; “limit” [PWG5100.13]; and any of the attributes named by “printer-get-attributes-supported” [PWG5100.13].

5.6.1 Get-User-Printer-Attributes Request

The following groups of attributes are supplied as part of the Get-User-Printer-Attributes request:

Group 1: Operation Attributes

"attributes-charset" (charset) and "attributes-natural-language" (naturalLanguage):

The Client MUST supply and the Printer MUST support both of these attributes, as described in [RFC8011] Section 4.1.4.1.

"printer-uri" (uri):

The Client MUST supply and the Printer MUST support this attribute, which specifies the target for this operation, as described in [RFC8011] Section 4.1.5.

"requesting-user-name" (name(MAX)):

The Client MUST supply and the Printer MUST support this attribute, as described in [RFC8011] Section 9.3.

“requesting-user-uri” (uri):

The Client SHOULD supply and the Printer MUST support this attribute, as described in [PWG5100.13] section 5.1.6.

“requesting-user-vcard” (1setOf text(MAX)):

The Client SHOULD supply and the Printer MUST support this attribute, as described in [PWG5100.SYSTEM] section 7.1.6.

"requested-attributes" (1setOf keyword):

This attribute MAY be supplied by the Client and MUST be supported by the Printer as described in [RFC8011] Section 4.2.5.1.

"document-format" (mimeMediaType):

This attribute SHOULD be supplied by the Client as described in [RFC8011] Section 4.2.5.1.

Page 30 of 79 Copyright © 2019-2020 The Printer Working Group. All rights reserved.

8586768769770771772

773

774775

776

777

778779

780

781782783

784

785786

787

788789

790

791792

793

794795

796

797798

87

Page 31: ftp.pwg.orgftp.pwg.org/pub/pwg/ipp/wd/wd-ippepx20-20200504-rev.docx  · Web view5/4/2020  · The IEEE-ISTO takes no position regarding the validity or scope of any intellectual

Working Draft – IPP Enterprise Printing Extensions v2.0 (EPX) May 4, 2020

5.6.2 Get-User-Printer-Attributes Response

The Printer returns the following sets of attributes as part of the Get-User-Printer-Attributes response:

Group 1: Operation Attributes

"attributes-charset" (charset) and "attributes-natural-language" (naturalLanguage) :

The Client MUST support and the Printer MUST supply both of these attributes, as described in [RFC8011] Section 4.1.4.1.

Status Message:

In addition to the REQUIRED status-code returned in every IPP operation response, the response MAY include a "status-message" (text(255)) and/or a "detailed- status-message" (text(MAX)) operation attribute as described in [RFC8011] Appendix B and Section 4.1.6.

Group 2: Unsupported Attributes

See [RFC8011] Section 4.1.7 for details on returning unsupported attributes.

Group 3: Printer Attributes

This is the set of requested attributes and their current values. See [RFC8011] Section 4.2.5.2 for details.

6. New Attributes

6.1 Operation Attributes

Table 3 lists the operation attributes defined in this specification, each with its corresponding conformance requirements. The conformance requirements pertain to the need for the attribute to be supported by the Printer, not that its support is required for all operations.

Table 3This section defines additional Operation attributes for existing IPP operations.

- New Operation Attributes

Attribute Conformancejob-password CONDITIONALLY REQUIREDjob-password-encryption CONDITIONALLY REQUIREDjob-storage CONDITIONALLY REQUIRED

Page 31 of 79 Copyright © 2019-2020 The Printer Working Group. All rights reserved.

8889799

800801

802

803

804805

806

807808809810

811

812

813

814815

816

817

818819820821

822

823

90

Page 32: ftp.pwg.orgftp.pwg.org/pub/pwg/ipp/wd/wd-ippepx20-20200504-rev.docx  · Web view5/4/2020  · The IEEE-ISTO takes no position regarding the validity or scope of any intellectual

Working Draft – IPP Enterprise Printing Extensions v2.0 (EPX) May 4, 2020

6.1.1 job-password (octetString(255)) for Job Creation operations

This CONDITIONALLY REQUIRED operation attribute allows a User to specify a password for that Job, causing the Job to become a Password ProtectedRelease Job. Printers that support the Password Release method for the Job Release feature MUST support this attribute. The Printer will only print a Password ProtectedRelease Job afteronce the samematching password value has been entered intoprovided on the Printer's control panel.

Printers and Clients that support this attribute SHOULD support Secure Transport. Printers SHOULD negotiate a TLS session prior to accepting a Validate-Job or Job Creation request containing this attribute. Clients SHOULD negotiate a TLS session prior to sending a Validate-Job or Job Creation request containing this attribute.

The Client "encrypts" the password acquired by the job submitting applicationstring using one of the methods specified bylisted in the Printer's "job-password-encryption-supported" Printer Description attribute (section 7.7.). The encrypted password value is sent to the Printer as the value of the "job-password" attribute. If a "job-password" value is provided, other than a zero-length string, the Printer MUST disposition the Job according to the "job-password-action" operation attribute; if , and the method used is sent as the value of the "job-password-encryption" operation attribute.

When the Printer receives a password on its the "job-control panel to release the Job, it encrypts the password-action" attribute is absent, the Printer MUST put the Job in the 'pending-held' state and add the 'job-password-wait' value to the Job's "job-state-reason" attribute.

The Printer uses using the same encryption method specified inby the Job's "job-password-encryption" attribute on this password. When the locally supplied encrypted password. If that value matches the value of the Job's "job-password" attribute, the Job removes the 'job-password-wait' value from its "job-state-reasons"Job Status attribute to indicate that that condition is no longer preventing, the Printer releases the Job to processing. The method in which the password is entered and validated at the Printer is implementation dependent.

If the Password ProtectedRelease Job is released by the User while another Job is printing, the Password ProtectedRelease Job SHOULD be the next Job printed after the current Job, unless the Printer has another Job which has a higher priority than the Password ProtectedRelease Job as determined by the "job-priority" attribute.

If the Printer's "job-password-repertoire-configured" Printer Description attribute (section 7.7.3) specifies one of the UTF-8 repertoires, the Client and the Printer MUST normalize the encoding of the provided password value to use Network Unicode UTF-8 encoding [RFC5198] [UAX15] to prevent binary differences in the cleartext password values, which will cause differences in the outputs of the chosen hashing function specified by the associated "job-password-encryption" attribute (section 7.1.2).

Page 32 of 79 Copyright © 2019-2020 The Printer Working Group. All rights reserved.

9192824

825826827828829830

831832833834

835836837838839840841

842843844845

846847848849850851852

853854855856

857858859860861862

93

Page 33: ftp.pwg.orgftp.pwg.org/pub/pwg/ipp/wd/wd-ippepx20-20200504-rev.docx  · Web view5/4/2020  · The IEEE-ISTO takes no position regarding the validity or scope of any intellectual

Working Draft – IPP Enterprise Printing Extensions v2.0 (EPX) May 4, 2020

The Printer MUST set the Job's initial state according to the methodology specified in section 5.3. The Job MUST add the 'job-password-wait' keyword to its "job-state-reasons" attribute at the time the Job is created. When the Printer has received the matching password and the Job is released to processing, the Job removes the 'job-password-wait' keyword its "job-state-reasons" attribute to indicate that that condition is no longer preventing processing.

A Client MAY include this operation attribute in a Job Creation operation (Print-Job, Print-URI, and Create-Job) request, as per section 8.1. A Client MUST NOT include this operation attribute in a Validate-Job operation request, as per section 8.3This Operation attribute may OPTIONALLY be included in the request of the following Job Creation operations: Print-Job, Print-URI, and Create-Job.

The "job-password" attribute value MUST NOT be returned in a Get-Job-Attributes response or be provided via any non-IPP protocol.

.

The Job MUST preserve its "job-password" attribute, if it has one, for its entire lifespan. If a copy of a Job is created by a Resubmit-Job operation or via some mechanism out-of-band of IPP, the new copy MUST have a copy of the "job-password" attribute so that that new copy is also a Password Protected Jobthe new copy is also a Password Release Job. The "job-password" Job Status attribute value MUST NOT be returned in any IPP operation response. The "job-password" Job Status attribute value MUST NOT be accessible via any non-IPP protocol.

[4.1.1] job-password-aencryption (type2 keyword) for Job Creation operations

The "job-password-action"This CONDITIONALLY REQUIRED operation attribute specifies how a Job is processed whenthe cryptographic hash method the Client used to obfuscate the value of the "job-password" operation attribute (section ) is included sent in a Job Creation (Print-Job, Print-URI, or Create-Job) operation request. If the Client supplies the "job-password" attribute but does not supply the "job-password-action" attribute, the Client and theA Printer that supports the Job Password Release feature MUST support this attribute. The Client MUST supply this operation attribute whenever the Client supplies a "job-password" operation attribute in a Job Creation operation request. The value MUST be one of the values listed by the Printer's "job-password-encryption-supported" attribute (section 7.7).

Note: The original definition of this attribute also included the "name(MAX)" syntax in its syntax definition, but site-local or vendor-unique hashing algorithms were never used and are of little value, so that syntax is now DEPRECATED.

Page 33 of 79 Copyright © 2019-2020 The Printer Working Group. All rights reserved.

9495863864865866867868

869870871872873

874875

876

877878879880881882883

884

885886887888889890891892893894

895896897

96

Page 34: ftp.pwg.orgftp.pwg.org/pub/pwg/ipp/wd/wd-ippepx20-20200504-rev.docx  · Web view5/4/2020  · The IEEE-ISTO takes no position regarding the validity or scope of any intellectual

Working Draft – IPP Enterprise Printing Extensions v2.0 (EPX) May 4, 2020

6.1.2 job-storage (collection)

This CONDITIONALLY REQUIRED operation attribute is a collection whose members specify how a Printer processes a Job to become a Stored Job. A Printer that supports the Job Storage feature MUST support this attribute. See section for a full description of the Job Storage feature. The Printer copies the "job-storage" attribute received in a Job Creation request into the corresponding Job as a Job Status attribute (section 7.5.1MUST assume the value is 'hold-job', to preserve backward compatibility).

This attribute MAY be used with the "job-password" attribute (section 7.1.1) or the "job-hold-until" attribute (section 9.2) to create a Release Job that is also a Stored Job. A Client determines whether a Printer supports Stored Jobs that are also Release Jobs by first finding the 'job-storage' keyword in the Printer's "printer-get-attributes-supported" Printer Description attribute, then sending an empty "job-storage" collection as an operation attribute in a new Get-Printer-Attributes request, and finally detecting that the response contains both "job-storage-supported" (section 7.11.1) and one of the release methods discussed in section 5.3earlier definition of " ("job-password" . The value -supported" and/or "job-hold-until").

6.1.2.1 job-storage-access (type2 keyword)

This member attribute specifies the access restrictions on the Stored Job. The value MUST be one of the keywords specified by the Printer's "job-storage-access-supported" Printer Description attribute (section 7.10.1). The "job-storage-access" member attribute MUST be preserved by the Job as a member of the "job-storage" Job Status attribute (section 7.5.1this operation attribute ).

6.1.2.2 job-storage-disposition (type2 keyword)

This member attribute specifies how the Job is to be handled by the Printer during the ‘processing’ state. The value MUST be one of the values specified by the Printer's "job-password-actionstorage-disposition-supported" Printer Description attribute (section Error: Reference source not found).

If the Client specifies 'save-only' for this member attribute and specifies operation attribute or Job Template attributes requesting that this Job be a Release Job, a newly created Job MUST be processed immediately to allow it to become a Stored Job, since processing will not produce any physical output.

The "job-storage-disposition" member attribute MUST NOT be preserved by the Job as a member of the "job-storage" Job Status attribute (section 7.5.1).

6.1.2.3 job-storage-group (name(MAX))

This member attribute specifies the group, if any, in which the Stored Job is listed. The value specified by the "job-storage-access" attribute (section 7.1.3.1Standard keyword values include:

Page 34 of 79 Copyright © 2019-2020 The Printer Working Group. All rights reserved.

9798898

899900901902903904

905906907908909910911912913

914

915916917918919

920

921922923924

925926927928

929930

931

932933934

99

Page 35: ftp.pwg.orgftp.pwg.org/pub/pwg/ipp/wd/wd-ippepx20-20200504-rev.docx  · Web view5/4/2020  · The IEEE-ISTO takes no position regarding the validity or scope of any intellectual

Working Draft – IPP Enterprise Printing Extensions v2.0 (EPX) May 4, 2020

'hold-job': The Job is placed in the 'pending-held' state and is released when the "job-password" value is entered at the Printer's console. The Job MUST NOT be retained once it has reached its terminal state ('completed', aborted' or 'canceled').This is the semantic originally specified for the "job-password" operation attribute (section ).

'process-and-retain': The Job is placed in the 'pending' state and it scheduled for processing without waiting for) coordinates with the User to entervalue of this attribute. If the "job-password" value atstorage-access" attribute is 'group', then the Printer's console.

'retain-only': The Job is placed in the 'completed' state as soon as all Documents are received by the Printer. The Printer will require a matching password for all reprints.

Once in a terminating state, the Job is retained according to the current value of its "job-retain-until-xxx" attributes.

[4.2] job-password-encryption (type2 keyword) for Job Creation operations

The "job-password-encryption" Operation attribute specifies the type of encryption used to create the value specified by the "job-password" operation attribute in the request of the following Job Creation operations: Print-Job, Print-URI, and Create-Job. The Client MUST supply this operation attribute whenever the "job-password" attribute is supplied. The valuethis attribute MUST be one of the values specified inby the Printer's "job-password-encryptionstorage-group-supported" Printer Description attribute (section 7.11.3).

6.2[4.3] Job Template Attributes

Table 4 lists the Job and Document Template attributes describe job processing behavior and conform to a set of rules. See for the complete text of the rules that apply todefined in this specification, each with its corresponding conformance requirements.

Table 4 - New Job and Document Template attribute called "xxx".Attributes

Attribute Conformancejob-cancel-after OPTIONALjob-phone-number OPTIONALjob-recipient-name OPTIONALproof-print CONDITIONALLY REQUIRED

Page 35 of 79 Copyright © 2019-2020 The Printer Working Group. All rights reserved.

100101935936937938939

940941942943

944945946

947948

949

950

951952953954955956

957

958959960

961

102

Kennedy, Smith (Wireless & Standards Architect), 03/15/19,
'hold-and-retain'? This seems a bit too close to the "print-and-store" semantic of the "job-storage-disposition" member of "job-storage". It seems like the choice should be either 'hold' (password applies to the first printing only), 'retain' (password required for all reprintings but does not apply to the first printing) or 'hold-and-retain' (password required for all printings)
Kennedy, Smith (Wireless & Standards Architect), 06/14/19,
No need for site-local encryption types, so having the "name(MAX)" syntax alternative doesn't provide any value
Page 36: ftp.pwg.orgftp.pwg.org/pub/pwg/ipp/wd/wd-ippepx20-20200504-rev.docx  · Web view5/4/2020  · The IEEE-ISTO takes no position regarding the validity or scope of any intellectual

Working Draft – IPP Enterprise Printing Extensions v2.0 (EPX) May 4, 2020

6.2.1 job-cancel-after (integer(1:MAX))

This OPTIONAL Job Template attribute specifies the maximum number of seconds that are allowed for processing a Job. The cancel timer does not begin until the Job enters the 'processing' state. If the Job is canceled because of this timer, the Printer MUST add the 'job-canceled-after-timeout' keyword to the "job-state-reasons" Job Status attribute (section 9.3).

[4.4] job-pause-after (integer(1:MAX))

This Job Template attribute specifies after how many pages the Printer should pause processing a Job.

[4.4.1] job-phone-number (uri)

This OPTIONAL Job Template attribute contains the contact telephone number for the Job. If supported, the Printer MUST accept the ‘tel:’ URI scheme [RFC2806] and MAY accept other schemes, such as the ‘fax:’ scheme [RFC2806]. Any processing by the Printer of the “job-phone-number” attribute is implementation-dependent.

6.2.2[4.4.2] job-recipient-name (name(MAX))

This OPTIONAL Job Template attribute contains the name of the person that is to receive the output of the Job. The value of the "job-recipient-name" attribute is commonly printed on job sheets printed with the job. An example of another use of the "job-recipient-name" attribute is if the Printer accesses a database to get job delivery instructions for the recipient of a job. A zero-length value indicates that there is no job recipient name.

If the Client omits this attribute in a Job Creation request, the Printer MAY use the value held by the Printer's “job-recipient-name-default” Printer Description attribute value, unless it has not been configured by the administrator, or MAY use the “authenticated user” name [STD92](see [MOD1.1] section 8.3),, depending on implementation.

[4.4.3] job-storage (collection)

The "job-storage" Job Template attribute is a collection whose members specify how a Printer processes a Job to become a Stored Job. See section for a full description of the Job Storage Feature.

This attribute MAY be used with the "job-password" attribute for a Password Protected Job that is also a Stored Job.

Page 36 of 79 Copyright © 2019-2020 The Printer Working Group. All rights reserved.

103104962

963964965966967

968

969970

971

972973974975

976

977978979980981

982983984985

986

987988989

990991

105

Kennedy, Smith (Wireless & Standards Architect), 08/29/19,
Do we want to keep this? I'm thinking not...it might have been tied to the HP Proof and Hold feature, which we have abandoned.
Page 37: ftp.pwg.orgftp.pwg.org/pub/pwg/ipp/wd/wd-ippepx20-20200504-rev.docx  · Web view5/4/2020  · The IEEE-ISTO takes no position regarding the validity or scope of any intellectual

Working Draft – IPP Enterprise Printing Extensions v2.0 (EPX) May 4, 2020

[4.4.4] job-storage-access (type2 keyword)

The "job-storage-access" member attribute specifies the access restrictions on the Stored Job. The value MUST be one of the keywords specified by the Printer's "job-storage-access-supported" Printer Description attribute (section ). The "job-storage-access" member attribute MUST be preserved by the Job as a member of the "job-storage" Job Status attribute (section ).

[4.4.5] job-storage-disposition (type2 keyword)

The "job-storage-disposition" member attribute specifies how the Job is to be handled by the Printer during the ‘processing’ state. The value MUST be one of the values specified by the Printer's "job-storage-disposition-supported" Printer Description attribute (section ).

The "job-storage-disposition" member attribute MUST NOT be preserved by the Job as a member of the "job-storage" Job Status attribute (section ).

[4.4.5.1] job-storage-group (name(MAX))

This member attribute specifies the group, if any, in which the Stored Job is listed. The value specified by the "job-storage-access" attribute (section ) coordinates with the value of this attribute. If the "job-storage-access" attribute is 'group', then the value of this attribute MUST be one of the values specified by the Printer's "job-storage-group-supported" Printer Description attribute (section ).

[4.4.6] proof-print (collection)

This CONDITIONALLY REQUIRED Job Template attribute indicates to the Printer that this Job is a Proof Job. This The members of this collection indicate the number of "proof" copies to produce and any of the attributes the Printer names in its "proof-print-supported" Printer Description attribute (section 7.11.5allows a user to specify the attributes of the proof print(s) of ). Printers that support the job that are to be printed prior to the Proof Print feature MUST support this attribute.

When printing the full run of the job.proof copies, the Printer prioritizes the Job member attributes in the "proof-print" collection over the other Job Template attributes, to allow for special processing to be performed with the proof copies. After the proof prints have been produced, the Printer MUST retain the completed jJob as a Proof Job for a to allow the proof prints to be reviewed. This time period of time sufficient to allow users to proof the job, rather than aging it out after an implementation-defined period which SHOULD be longer than the period for ordinary completed Jobs [STD92]. The implementation-defined period can be overridden using the "job-retain-until", "job-retain-until-interval", or "job-retain-until-time" attribute [PWG5100.7](see Job Retention phase in section 5.3.7.2 Partitioning of Job States). .

Page 37 of 79 Copyright © 2019-2020 The Printer Working Group. All rights reserved.

106107992

993994995996997

998

99910001001

10021003

1004

10051006100710081009

1010

101110121013101410151016

1017101810191020102110221023102410251026

108

Page 38: ftp.pwg.orgftp.pwg.org/pub/pwg/ipp/wd/wd-ippepx20-20200504-rev.docx  · Web view5/4/2020  · The IEEE-ISTO takes no position regarding the validity or scope of any intellectual

Working Draft – IPP Enterprise Printing Extensions v2.0 (EPX) May 4, 2020

When a Proof Job is reprintedconcluded, using any of the operations that reprint a Retained Job (e.g., Reprocess-Job or Resubmit-Job), the Printer MUST NOT copyremove the “proof-print” attribute from the Proof Job to the copy of the Proof Job so that the jJob is not re-proofed again. Only if the Resubmit-Job operation supplies its own “proof-print” attribute, will the copied jJob be re-proofed.

A Client MUST be able to supply and a Printer MUST support this attribute in order to claim support of this Specification, respectively. See section 12.5 Conformance Requirements for the REQUIRED "proof-print" Job Template attribute for additional conformance requirements for Clients and Printers.

This attribute MAY be used with the "job-password" attribute (section 7.1.1) or the "job-hold-until" attribute (section 9.2for a Password Protected) to create a Release Job that is also a Proof Job. A Printer indicates its support for thisA Client determines whether a Printer supports Proof Jobs that are also Release Jobs by listing "job-password" and "job-password-encryption"first finding the 'proof-print' keyword in its "proof-printthe Printer's "printer-get-attributes-supported" Printer Description attribute, then sending an empty "proof-print" collection as an operation attribute in a new Get-Printer-Attributes request, and finally detecting that the response contains both "proof-print-supported" (section 7.11.5) and one of the release methods discussed in section 5.3 (section ). ("job-password-supported" and/or "job-hold-until").

Table 5 lists the member attributes of the "proof-print" collection attribute.

Table 5 - "proof-print" member attributesMember Attributes

Member Attribute Name Request Printer Support

proof-print-copies MUST MUST

media MUST beinclude one or the other, but MUST NOT include both

MUST

media-col MAY

{Any attributes listed in "proof-print-supported" (7.11.5)} MAY MAY

Page 38 of 79 Copyright © 2019-2020 The Printer Working Group. All rights reserved.

10911010271028102910301031

1032103310341035

1036103710381039104010411042104310441045

1046

1047

1048

1049

1050

111

Kennedy, Smith (Wireless & Standards Architect), 08/29/19,
Does this cause normative problems? Do we need to define "proof-print-job-password-supported (boolean)" and if absent then proof-print and job-password are incongruent as per 5100.11? But we WANT to enable this with this specification.
Page 39: ftp.pwg.orgftp.pwg.org/pub/pwg/ipp/wd/wd-ippepx20-20200504-rev.docx  · Web view5/4/2020  · The IEEE-ISTO takes no position regarding the validity or scope of any intellectual

Working Draft – IPP Enterprise Printing Extensions v2.0 (EPX) May 4, 2020

6.2.2.1 proof-print-copies (integer (0:MAX))

The "proof-print-copies"This REQUIRED member attribute specifies the number of proof copies the Printer MUST produce in the proof job. The proof print(s) are produced using produces when the Job Template is processed. The range of allowed values is reported by the Printer's "proof-print-copies-supported" Printer Description attributes (section 7.11.3specified with the Job, except any overridden by member attributes in this collection). This number is separate from the "copies" Job Template attribute. A Proof Job where "proof-print-copies" is 4 and "copies" is 10 will ultimately produce 14 copies.

If the "proof-print-copies" value is 0, (zero), then no proof prints are produced.

After the requested number of proof prints have been successfully produced by the Printer, then the Printer transitions the job to the ‘completed’ state and retains the job for a period of time There are legacy environments that provide a simple short-lived "job storage" feature using Proof Print using this [PWG5100.11-2010], but the preferred method for doing "job-storage" is using the Job Storage feature described in section 5.5is long enough for the users to proof the output of the Proof Job, rather than aging the job out..

6.2.2.2[4.4.6.1] media (type2 keyword | name(MAX)) or media-col (collection)

Either the "media" (see ) or the "media-col"These CONDITIONALLY REQUIRED member attribute isattributes are used to indicate the media that the Printer MUST use for the specified "proof-print-copies" of the Proof Job. The member attributes are the same as those for the "media-col" attribute defined in [PWG5100.3] and in section 11.5 of this specification.

The Client MUST supply either the "media" or the "media-col" member attribute, but MUST NOT supply both. If the Client supplies such a malformedPrinter receives a Job Creation request by supplyingthat includes neither or both in a "proof-print" Job Template attribute, the Printer MUST (depending on implementation) either (1) reject the request and return the 'client-error-bad-request' status code [STD92](see ), or (2)accept the request and use either the "media" or the "media-col" member attribute, independent of the value of the "ipp-attribute-fidelity" attribute [STD92] supplied by the Client, depending on implementation.

Since this "media" member attribute has the same name as the "media" Job Template attribute (defined ), the "media-supported" (1setOf (type2 keyword | name(MAX))) Printer attribute identifies the values of this "media" member attribute (as well as the values of the "media" Job Template attribute) that the Printer supports, i.e., the names of the supported media. A value that is provided for the "media" member attribute in the collection would have the same effect as if the job were submitted with that value as the value of the "media" Job Template attribute.

Page 39 of 79 Copyright © 2019-2020 The Printer Working Group. All rights reserved.

1121131051

1052105310541055105610571058

1059

106010611062106310641065

1066

10671068106910701071

10721073107410751076107710781079

1080108110821083108410851086

114

Kennedy, Smith (Wireless & Standards Architect), 08/29/19,
Is it required that zero be supported?
Page 40: ftp.pwg.orgftp.pwg.org/pub/pwg/ipp/wd/wd-ippepx20-20200504-rev.docx  · Web view5/4/2020  · The IEEE-ISTO takes no position regarding the validity or scope of any intellectual

Working Draft – IPP Enterprise Printing Extensions v2.0 (EPX) May 4, 2020

Since this "media-col" member attribute has the same name as the "media-col" Job Template attribute (defined in [PWG5100.3] and in section 11.5 of this specification), the "media-col-supported" Printer attribute identifies the keyword names of the member attributes supported in this "media-col" member attribute (as well as the keyword names of the "media-col" Job Template attribute), i.e., the names of the member attributes that the Printer supports.

[4.5] Job Status Attributes

6.2.3[4.5.1] job-storage (collection)

The "job-storage" This CONDITIONALLY REQUIRED Job Status attribute contains a complete copy of the "job-storage" operation attribute (section 7.1.3labels the Job as a Stored Job and specifies the storage handling requirements the Printer MUST follow. All the), including all its members of this Job Storage attribute are. If the same as those specified forPrinter supports the "job-storage" operation attribute, then it MUST support this Job Status attribute.

6.2.4 proof-print (collection)

This CONDITIONALLY REQUIRED Job Status attribute contains a complete copy of the "proof-print" Job Template attribute (section 7.4.6).), including all its members. If the Printer supports the "proof-print" Job Template attribute, then it MUST support this Job Status attribute.

6.3[4.6] Printer Description Attributes

Table 6 lists the Printer Description attributes defined in this specification, each with its corresponding conformance requirement. The extensions to the "job-hold-until" attribute [STD92] used for Button Press Release and Authenticated Release are discussed in section 9.2.

Table 6 - New Printer Description Attributes

Attribute Conformancejob-cancel-after-default CONDITIONALLY REQUIREDjob-cancel-after-supported CONDITIONALLY REQUIREDjob-password-encryption-supported CONDITIONALLY REQUIREDjob-password-length-supported CONDITIONALLY REQUIREDjob-password-repertoire-supported CONDITIONALLY REQUIREDjob-password-repertoire-configured CONDITIONALLY REQUIREDjob-password-supported CONDITIONALLY REQUIREDjob-phone-number-default CONDITIONALLY REQUIREDjob-phone-number-supported CONDITIONALLY REQUIREDjob-recipient-name-default CONDITIONALLY REQUIREDjob-recipient-name-supported CONDITIONALLY REQUIRED

Page 40 of 79 Copyright © 2019-2020 The Printer Working Group. All rights reserved.

115116108710881089109010911092

1093

1094

109510961097109810991100

1101

1102110311041105

1106

1107110811091110

1111

117

Page 41: ftp.pwg.orgftp.pwg.org/pub/pwg/ipp/wd/wd-ippepx20-20200504-rev.docx  · Web view5/4/2020  · The IEEE-ISTO takes no position regarding the validity or scope of any intellectual

Working Draft – IPP Enterprise Printing Extensions v2.0 (EPX) May 4, 2020

job-storage-access-supported CONDITIONALLY REQUIREDjob-storage-disposition-supported CONDITIONALLY REQUIREDjob-storage-group-supported CONDITIONALLY REQUIREDjob-storage-supported CONDITIONALLY REQUIREDprinter-detailed-status-messages OPTIONALproof-print-copies-supported CONDITIONALLY REQUIREDproof-print-default DEPRECATEDproof-print-supported CONDITIONALLY REQUIREDwhich-jobs-supported CONDITIONALLY REQUIRED

6.3.1 job-cancel-after-default (integer(1:MAX) | no-value)

ThisThis CONDITIONALLY REQUIRED Printer Description attribute provides the default value of the "job-cancel-after" Job Template attribute (section 7.3.1).). Printers that support the "job-cancel-after" Job Template attribute MUST support this attribute.

6.3.2[4.6.1] job-cancel-after-supported (rangeOfInteger(1:MAX))

ThisThis CONDITIONALLY REQUIRED Printer Description attribute provides the allowed range of values the Printer will accept for the "job-cancel-after" Job Template attribute (section 7.3.1).). Printers that support the "job-cancel-after" Job Template attribute MUST support this attribute.

[4.7] job-password-action-supported (type2 keyword)

The "job-password-action-supported" Printer Description attribute specifies the Printer's supported password actions. A password action defines how a Job is processed when the "job-password" operation attribute (section ) is included in a Job Creation request.

Standard password action keyword values include:

'hold-job': The Job is placed in the 'pending-held' state and is released when the "job-password" value is entered at the Printer's console. The Job MUST NOT be retained once it has reached its terminal state ('completed', aborted' or 'canceled').This is the semantic originally specified for the "job-password" operation attribute (section ).

'process-and-retain': The Job is placed in the 'pending' state and it scheduled for processing without waiting for the User to enter the "job-password" value at the Printer's console.

'retain-only': The Job is placed in the 'completed' state as soon as all Documents are received by the Printer. The Printer will require a matching password for all reprints.

Once in a terminating state, the Job is retained according to the current value of its "job-retain-until" and/or "job-retain-until-time" attributes.

Page 41 of 79 Copyright © 2019-2020 The Printer Working Group. All rights reserved.

118119

1112

111311141115

1116

1117111811191120

1121

112211231124

1125

11261127112811291130

113111321133

113411351136

11371138

120

Kennedy, Smith (Wireless & Standards Architect), 03/15/19,
'hold-and-retain'? I'm a little unclear how this would work.
Page 42: ftp.pwg.orgftp.pwg.org/pub/pwg/ipp/wd/wd-ippepx20-20200504-rev.docx  · Web view5/4/2020  · The IEEE-ISTO takes no position regarding the validity or scope of any intellectual

Working Draft – IPP Enterprise Printing Extensions v2.0 (EPX) May 4, 2020

[4.7.1] job-password-encryption-supported (1setOf (type2 keyword | name(MAX)))))

The "job-password-encryption-supported"This CONDITIONALLY REQUIRED Printer Description attribute specifies which encryption methodscryptographic hashes the Printer supports for Secure Print.

Ifobfuscating the cleartext password value accepted from the User by the Client. Printers that support the "job-password-encryption" operation attribute (section 7.1.2is supported, then) MUST support this attribute.

Note: The original definition of this attribute also included the "name(MAX)" syntax in its syntax definition, but site-local or vendor-unique hashing algorithms were never used and are of little value, so that syntax is now DEPRECATED.

Table 7 MUST be supported. Standard lists the standard keyword values are in .. The 'md2', 'md4', 'md5', and 'sha' keywords have beenare DEPRECATED. Others may be deprecated in the future as the state of the art of cryptographycryptographic hashing evolves.

Table 7 - Standard keywords for - "job-password-encryption-supported" Standard Keywords

Keyword Description

'none' The "job-password" attribute value is passed in the clear. No encryptioncryptographic hashing has been applied. This value might alsomethod SHOULD NOT be used whenunless the entire Ooperation is sent over a secure connection.Secure Transport.

'md2' The encryption method uses the MD2 hash algorithm defined in [RFC 1319. [1]] - DEPRECATED

'md4' The encryption method uses the MD4 hash algorithm defined in [RFC 1320. [1]] - DEPRECATED

'md5' The encryption method uses the MD5 hash algorithm defined in [RFC 1321. [1]] - DEPRECATED

'sha' The encryption method uses theThe Secure Hash Algorithm 1 defined by the National Institute of Standards and Technology. [1]]. - DEPRECATED

'sha2-224' The encryption method uses the Secure Hash Algorithm 2 [FIPS180-4]defined by the National Institute of Standards and Technology,, with an output size of 224 bits.

'sha2-256' The encryption method uses the Secure Hash Algorithm 2 [FIPS180-4]defined by the National Institute of Standards and

Page 42 of 79 Copyright © 2019-2020 The Printer Working Group. All rights reserved.

1211221139

114011411142

114311441145

114611471148

1149115011511152

1153

123

Kennedy, Smith (Wireless & Standards Architect), 02/12/19,
Suggest we remove this...
Kennedy, Smith (Wireless & Standards Architect), 03/15/19,
Is it time for us to deprecate this?
Page 43: ftp.pwg.orgftp.pwg.org/pub/pwg/ipp/wd/wd-ippepx20-20200504-rev.docx  · Web view5/4/2020  · The IEEE-ISTO takes no position regarding the validity or scope of any intellectual

Working Draft – IPP Enterprise Printing Extensions v2.0 (EPX) May 4, 2020

Technology,, with an output size of 256 bits.

'sha2-384' The encryption method uses the Secure Hash Algorithm 2 [FIPS180-4]defined by the National Institute of Standards and Technology,, with an output size of 384 bits.

'sha2-512' The encryption method uses the Secure Hash Algorithm 2 [FIPS180-4]defined by the National Institute of Standards and Technology,, with an output size of 512 bits.

'sha2-512_224' The encryption method uses the Secure Hash Algorithm 2 [FIPS180-4]defined by the National Institute of Standards and Technology,, with an output size of 512 bits, truncated to 224 bits.

'sha2-512_256' The encryption method uses the Secure Hash Algorithm 2 [FIPS180-4]defined by the National Institute of Standards and Technology,, with an output size of 512 bits, truncated to 256 bits.

'sha3-224' The encryption method uses the Secure Hash Algorithm 3 [FIPS202]defined by the National Institute of Standards and Technology,, with an output size of 224 bits.

'sha3-256' The encryption method uses the Secure Hash Algorithm 3 [FIPS202]defined by the National Institute of Standards and Technology,, with an output size of 256 bits.

'sha3-384' The encryption method uses the Secure Hash Algorithm 3 [FIPS202]defined by the National Institute of Standards and Technology,, with an output size of 384 bits.

'sha3-512' The encryption method uses the Secure Hash Algorithm 3 [FIPS202]defined by the National Institute of Standards and Technology,, with an output size of 512 bits.

'sha3-512_224' The encryption method uses the Secure Hash Algorithm 3 [FIPS202]defined by the National Institute of Standards and Technology,, with an output size of 512 bits, truncated to 224 bits.

'sha3-512_256' The encryption method uses the Secure Hash Algorithm 3 [FIPS202]defined by the National Institute of Standards and Technology,, with an output size of 512 bits, truncated to 256 bits.

'shake-128' The encryption method uses the SHAKE128 method [FIPS202]defined by the National Institute of Standards and Technology,, with an output size of 128 bits.

'shake-256' The encryption method uses the SHAKE256 method

Page 43 of 79 Copyright © 2019-2020 The Printer Working Group. All rights reserved.

124125

126

Page 44: ftp.pwg.orgftp.pwg.org/pub/pwg/ipp/wd/wd-ippepx20-20200504-rev.docx  · Web view5/4/2020  · The IEEE-ISTO takes no position regarding the validity or scope of any intellectual

Working Draft – IPP Enterprise Printing Extensions v2.0 (EPX) May 4, 2020

[FIPS202]defined by the National Institute of Standards and Technology,, with an output size of 256 bits.

NOTES:[1] - DeprecatedNot clearly defined in [PWG5100.11-2010]

6.3.3[4.7.2] job-password-length-supported (rangeOfInteger (0:255))

The 4.1 "job-password-length-supported"This CONDITIONALLY REQUIRED Printer Description attribute specifies the minimum and maximum supported length of the unencrypted password, measured in characters. The character set encoding is specified by Printers that support the "job-password-repertoire-configured"" operation attribute (section 7.1.1Section XX). The Printer is configured to accept an empty password if the range's minimum value is 0 (zero).) MUST support this attribute.

The character set encoding is specified by the "job-password-repertoire-configured" attribute (section 7.7.3). The Printer is configured to accept an empty password if the range's minimum value is 0 (zero). This attribute complements the existing "job-password-supported" attribute (section 7.8.1,), which specifies the maximum password length supported before encryption, measured in octets.

6.3.4[4.7.3] job-password-repertoire-configured (type2 keyword)

This CONDITIONALLY REQUIRED Printer Description attribute indicates the Printer's currently configured password repertoire. Printers that support the "job-password" operation attribute (section 7.1.1) MUST support this attribute.

The value of this attribute MUST be one of the values specified in the Printer's "job-password-repertoire-supported" attribute (section 7.7.3). A supporting Client can use this attribute's value to limit User input so that the value in "job-password" will comply with the configured password repertoire.

6.3.5 job-password-repertoire-supported (1setOf (type2 keyword))

The "job-password-repertoire-supported"This CONDITIONALLY REQUIRED Printer Description attribute enumerates the jJob password repertoires (allowable characters, character sets and encodings) supported by the Printer. Printers that support the "job-password" operation attribute (section 7.1.1) MUST support this attribute. A Client intending to engage in printing should ignore this attribute and instead use the "job-password-repertoire-configured" attribute (section 7.7.3the Printer can be configured to use) to identify the Printer's currently configured Job password repertoire.

The keywords are named according tofollow a 'REGISTRY_ENCODING_RANGE' naming structure convention. Table 8 lists the standard keywords. The "utf-8" encoding element indicates the use of Network Unicode [RFC5198].

Page 44 of 79 Copyright © 2019-2020 The Printer Working Group. All rights reserved.

127128

11541155

1156

115711581159116011611162

11631164116511661167

1168

116911701171

1172117311741175

1176

1177117811791180118111821183

118411851186

129

Page 45: ftp.pwg.orgftp.pwg.org/pub/pwg/ipp/wd/wd-ippepx20-20200504-rev.docx  · Web view5/4/2020  · The IEEE-ISTO takes no position regarding the validity or scope of any intellectual

Working Draft – IPP Enterprise Printing Extensions v2.0 (EPX) May 4, 2020

Vendor repertoire keywords, prefixed with "vendor_" to indicate a vendor-specific registry, mayMAY also be used. Vendor repertoire keywords SHOULD be registered with the PWG to achieve interoperability. As an example, a vendor may choose to register the 'vendor_us-ascii_lowercase' keyword to specify a repertoire limited to using only lowercase characters from the US ASCII encoding.

The "utf-8" encoding name indicates the use of Network Unicode .

Table 8 - "job-password-repertoire-supported keyword definitions" Standard Keywords

Keyword Description

'iana_us-ascii_digits' Value must consist of only ASCII digits (0x30-0x39)

'iana_us-ascii_letters' Value must consist of only US ASCII letters (0x41-0x5A, 0x61-0x7A)

'iana_us-ascii_complex' Value must consist of US ASCII letters and numbers, with at least one uppercase letter, one lowercase letter, and one digit (0x30-0x39, 0x41-0x5A, 0x61-0x7A)

'iana_us-ascii_any' Value must consist of US ASCII printable characters (0x20-0x7e)

'iana_utf-8_digits' Value must consist of only UTF-8 numerical digits

'iana_utf-8_letters' Value must consist of UTF-8 letters

'iana_utf-8_any' Value must consist of UTF-8 printable characters

[4.8] job-password-repertoire-configured (type2 keyword)

The "job-password-repertoire-configured" attribute indicates the password repertoire currently configured for this Printer. The value of this attribute MUST be one of the values specified in the Printer's "job-password-repertoire-supported" attribute (section XX). A supporting Client can use this attribute's value to limit User input so that the value in "job-password" will comply with the configured password repertoire.

[4.8.1] job-password-supported (integer(0:255))

The "job-password-supported"This CONDITIONALLY REQUIRED Printer Description attribute indicates the maximum length that the Printer will accept for the unencrypted password which the Client will encrypt as the value of the "job-password" Operation Attribute. Printers that support the "job-password" operation attribute (section 7.1.1) MUST support this attribute.

Page 45 of 79 Copyright © 2019-2020 The Printer Working Group. All rights reserved.

13013111871188118911901191

1192

1193

1194

11951196119711981199

1200

12011202120312041205

132

Page 46: ftp.pwg.orgftp.pwg.org/pub/pwg/ipp/wd/wd-ippepx20-20200504-rev.docx  · Web view5/4/2020  · The IEEE-ISTO takes no position regarding the validity or scope of any intellectual

Working Draft – IPP Enterprise Printing Extensions v2.0 (EPX) May 4, 2020

A conforming Printer MUST be able to accept 255 octets without truncation. However, a Printer MAY be implemented as a gateway to another print system that cannot accept the full 255-octet range, in which case the Client MUST NOT allow an unencrypted password greater than the length specified by this attribute.

[4.9] job-pause-after-supported (1setOf type2 keyword)

This attribute lists the

[4.9.1] job-phone-number-default (uri)

TheThis CONDITIONALLY REQUIRED Printer Description attribute indicates the default value supplied by the Printer if the Client omits the ‘job-phone-number” Job Template attribute (section 7.4.1.). This attribute SHOULD use the 'tel:' scheme [RFC2806]. Printers that support the "job-phone-number" Job Template attribute (section 7.4.1) MUST support this attribute.

6.3.6[4.9.2] job-phone-number-supported (boolean)

This CONDITIONALLY REQUIRED Printer Description attribute indicates whether the "job-phone-number" attribute (section 7.4.1) is supported. A true value indicates that the Printer accepts the “job-phone-number” attribute. Printers that support the "job-phone-number" Job Template attribute (section 7.4.1) MUST support this attribute.

6.3.7[4.9.3] job-recipient-name-default (name(MAX))

The This CONDITIONALLY REQUIRED Printer Description attribute indicates the default valuerecipient name supplied by the Printer if the Client omits the ‘job-recipient-name” Job Template attribute. Printers that support the "job-recipient-name" Job Template attribute (section 7.4.2) MUST support this attribute.

6.3.8[4.9.4] job-recipient-name-supported (boolean)

ThisThis CONDITIONALLY REQUIRED Printer Description attribute indicates whether the Printer accepts the “job-recipient-name” attribute.

[4.10] Printers that support the "job-storage-supported (1setOf keyword)

This recipient-name" Job Template attribute (section 7.4.2indicates whether the Printer supports the Job Storage feature, and what members are supported by the Printer.

Page 46 of 79 Copyright © 2019-2020 The Printer Working Group. All rights reserved.

1331341206120712081209

1210

1211

1212

12131214121512161217

1218

1219122012211222

1223

1224122512261227

1228

12291230

1231

1232

12331234

135

Page 47: ftp.pwg.orgftp.pwg.org/pub/pwg/ipp/wd/wd-ippepx20-20200504-rev.docx  · Web view5/4/2020  · The IEEE-ISTO takes no position regarding the validity or scope of any intellectual

Working Draft – IPP Enterprise Printing Extensions v2.0 (EPX) May 4, 2020

The Printer indicates support for Stored Jobs that are also Protected Jobs by including both "job-password" and "job-password-encryption" in the set of keywords. If the Printer lists these two) MUST support this attribute name keywords, it MUST accept "job-password" and "job-password-encryption" with "job-storage". If "job-password" and "job-password-encryption" are both specified for the Job, the Job MUST NOT return these attributes in a Get-Job-Attributes request. The Printer MUST preserve the "job-password" and "job-password-encryption" Job Status attributes in all copies of the original Job to maintain Job Protection.

6.3.9[4.10.1] job-storage-access-supported (1setOf type2 keyword)

ThisThis CONDITIONALLY REQUIRED Printer Description attribute specifies the Job Storage access modes supported by the Printer. Printers that support Job Storage MUST support this attribute.

Standard keywords for the "job-storage-access" attribute are listed in Table 9.

Table 9 - Standard keywords for - "job-storage-access-supported" Standard Keywords

Keyword Meaning Conformance Requirements

"group" Visible to only the group to which the submitting most authenticated user is a member

MAY

"owner" Visible to only the submitting most authenticated user MUST

"public" Visible to all users (may still be password protected) MUST

[4.10.2] job-storage-disposition-supported (1setOf type2 keyword)

ThisThis CONDITIONALLY REQUIRED Printer Description attribute specifies the Job Storage dispositions supported by the Printer. Printers that support Job Storage MUST support this attribute.

Standard keywords for the "job-storage-access" attribute are listed in Table 10.

Table 10 - Standard keywords for - "job-storage-disposition-supported" Standard Keywords

Keyword Meaning Conformance Requirements

"'none"' The Printer MUST print the Job. The Printer MUST NOT retain the Job in the Job Retention phase; it

MAY

Page 47 of 79 Copyright © 2019-2020 The Printer Working Group. All rights reserved.

13613712351236123712381239124012411242

1243

124412451246

1247

1248

1249

1250

125112521253

1254

1255

138

Page 48: ftp.pwg.orgftp.pwg.org/pub/pwg/ipp/wd/wd-ippepx20-20200504-rev.docx  · Web view5/4/2020  · The IEEE-ISTO takes no position regarding the validity or scope of any intellectual

Working Draft – IPP Enterprise Printing Extensions v2.0 (EPX) May 4, 2020

MUST move it immediately to the Job History phase.

"'print-and-store"

The Printer MUST print the Job. If the Job reaches the 'completed' state, it MUST retain the Job in the Job Retention phase.

MUST

"store-only"'store-only'

The Printer MUST NOT print the Job. The Printer MUST retain the Job in the Job Retention phase.

MUST

6.3.10[4.10.3] job-storage-group-supported (1setOf name(MAX))

This CONDITIONALLY REQUIRED Printer Description attribute specifies the user groups tothe Printer supports with which a Stored Job could be made visible when it is storedassociated, using the "job-storage-group" member (section 7.1.3.3) of the "job-storage" attribute (section 7.1.3). The value of this attribute willcould list different values if returned in an authenticated Get-Printer-Attributes or Get-User-Printer-Attributes response.

[4.11] Printers that support Job Storage and that list the 'group' keyword in their "job-storage-access-supported" Printer Description attribute (section 7.10.1proof-print-default (collection)

This attribute specifies the default value of "proof-print" the Printer will use when the Client doesn't specify the "proof-print" Job Template attribute in a Job Creation request. A Printer MUST support the same member attributes for this default collection as it supports for the corresponding "proof-print" Job Template attribute.

proof-print) MUST support this attribute.

6.3.11 job-storage-supported (1setOf keyword)

This CONDITIONALLY REQUIRED Printer Description attribute indicates support for Job Storage and lists the supported member attributes of "proof-print"the "job-storage" operation attribute. Printers that support Job Storage MUST support this attribute. Table 11 lists the supported keywords.

Table 11the Printer - "job-storage-supported" Standard Keywords

Keyword Printer Conformance Requirements

'job-storage-access' MUST

'job-storage-disposition' MUST

'job-storage-group' MAY

Page 48 of 79 Copyright © 2019-2020 The Printer Working Group. All rights reserved.

139140

1256

12571258125912601261

1262

1263

1264

1265126612671268

1269

1270

1271127212731274

1275

141

Page 49: ftp.pwg.orgftp.pwg.org/pub/pwg/ipp/wd/wd-ippepx20-20200504-rev.docx  · Web view5/4/2020  · The IEEE-ISTO takes no position regarding the validity or scope of any intellectual

Working Draft – IPP Enterprise Printing Extensions v2.0 (EPX) May 4, 2020

6.3.12 printer-detailed-status-messages (1setOf text(MAX))

This OPTIONAL Printer Description attribute specifies additional detailed and technical information about the printer, in the same way “job-detailed-status-messages” provides additional information about a job. Printer-specific information such as fault and warning messages can be captured, and the 1setOf syntax supports multiple messages. The Printer MAY localize the message(s), but is not required to do so, since the message(s) are intended for consumption by the Administrator or other experienced technical persons. Clients MUST NOT attempt to parse the value(s) of this attribute.

The Printer indicates support for Proof Print Jobs that are also Protected Jobs by including both "job-password" and "job-password-encryption" in the set of keywords. If the Printer lists these two attribute name keywords, it MUST accept "job-password" and "job-password-encryption" with "proof-print". If "job-password" and "job-password-encryption" are both specified for the Job, the Job MUST NOT return these attributes in a Get-Job-Attributes request. The Printer MUST preserve the "job-password" and "job-password-encryption" Job Status attributes in all copies of the original Job to maintain Job Protection.

[4.11.1] proof-print-copies-supported (rangeOfInteger(0:MAX))

ThisThis CONDITIONALLY REQUIRED Printer Description attribute specifies the range of values the Printer supports for the "proof-print-copies" member attribute of the "proof-print" Job Template attribute (section 7.4.6.1).). Printers that support Proof Print MUST support this attribute.

6.3.13 proof-print-default (collection)

This DEPRECATED Printer Description attribute specifies the default value of "proof-print" the Printer will use when the Client doesn't specify the "proof-print" Job Template attribute in a Job Creation request. The semantics of this attribute was poorly defined in earlier versions of this specification [PWG5100.11-2010] and so this attribute is DEPRECATED and not recommended.

6.3.14 proof-print-supported (1setOf keyword)

This CONDITIONALLY REQUIRED Printer Description attribute lists the Job Template attributes the Printer supports as members of a "proof-print" Job Template attribute (section 7.4.6) that the Printer supports. Printers that support Proof Print MUST support this attribute.

6.3.15 which-jobs-supported (1setOf type2 keyword)

This CONDITIONALLY REQUIRED Printer Description attribute lists the keywords the Printer will accept for the “which-jobs” operation attribute for the Get-Jobs operation [STD92]. Printers that support Job Storage or Proof Print MUST support this attribute. If this attribute is supported, then the Printer MUST list both ‘completed’ and ‘not-completed’ [STD92].

Page 49 of 79 Copyright © 2019-2020 The Printer Working Group. All rights reserved.

1421431276

1277127812791280128112821283

1284128512861287128812891290

1291

1292129312941295

1296

12971298129913001301

1302

1303130413051306

1307

13081309131013111312

144

Page 50: ftp.pwg.orgftp.pwg.org/pub/pwg/ipp/wd/wd-ippepx20-20200504-rev.docx  · Web view5/4/2020  · The IEEE-ISTO takes no position regarding the validity or scope of any intellectual

Working Draft – IPP Enterprise Printing Extensions v2.0 (EPX) May 4, 2020

7. Additional Semantics for Existing Operations

7.1[4.12] Create-Job, Print-Job, and Print-URI Operations: "job-password" and "job-password-encryption"

A Printer that supports the "job-password" operation attribute (section 7.1.1) and the "job-password-encryption" operation attribute (section 7.1.2) MUST validate the values supplied and return the 'client-error-bad-request' status code if the values are invalid or not supported. A Printer MUST NOT return the "job-password" or "job-password-encryption" attributes in the Unsupported Attributes Group to prevent the leaking of security information.

7.2[4.13] Create-Job, Print-Job, and Print-URI Operations: "job-storage"

A Printer that supports the "job-storage" operation attribute (section 7.1.3) MUST validate the values supplied and return the 'client-error-bad-request' status code if the values are invalid or not supported. A Printer MAY return the "job-storage" attributes in the Unsupported Attributes Group.

7.3 Get-Jobs: "job-storage-group"

When a Client includes the "which-jobs" attribute in a Get-Jobs request, and the value provided for "which-jobs" is 'stored-group', the Client MUST also include a "job-storage-group" attribute in the request with the value specifying one of the groups listed by the Printer's job-storage-group-supported" Printer Description attribute (section 7.10.3).

7.4 Validate-Job Operation: "job-password" and "job-password-encryption"

A Client MUST NOTMAY send the "job-password" operation attribute (section 7.1.1) ) and/or the "job-password-encryption" operation attribute (section 7.1.2) in a Validate-Job request [STD92].. Printers conforming to [PWG5100.11-2010]MUST will likely reject a Validate-Job request containing either a "job-password" and/or "job-password-encryption" operation attributes and return the 'client-error-bad-request' status code as this was disallowed in the previous version of this specification. A Printer MAY validate the received "job-password-encryption" and report unsupported attributes or values. A Printer MUST discard these attributes and values along with the rest of the values as per the semantics of the Validate-Job operation. A Printer MUST NOT return the "job-password" attribute in a Validate-Job response.

Page 50 of 79 Copyright © 2019-2020 The Printer Working Group. All rights reserved.

145146

1313

1314

1315

131613171318131913201321

1322

1323132413251326

1327

1328132913301331

1332

1333

1334133513361337133813391340134113421343

147

Page 51: ftp.pwg.orgftp.pwg.org/pub/pwg/ipp/wd/wd-ippepx20-20200504-rev.docx  · Web view5/4/2020  · The IEEE-ISTO takes no position regarding the validity or scope of any intellectual

Working Draft – IPP Enterprise Printing Extensions v2.0 (EPX) May 4, 2020

8.[5.] Additional Values and Semantics for Existing IPP AttributesThis section defines additional values for existing attributes. The existing text for those attributes is not reproduced here in order to prevent deviations.

8.1[5.1] ipp-features-supported (1setOf type2 keyword)

This IPP Enterprise Printing Extensions v2.0 specification defines the 'authenticated-release', 'job-protection', 'job-storage' and 'proof-print' keywordsnew keyword values for the "ipp-features-supported" Printer Description attribute [PWG5100.13] to letenable the Printer to indicate its support for one or more of the major features defined in this specification. The new values are in

Table 12 - "ipp-features-supported" Additional Keywords

Keyword Conformance Requirement

'job-release' CONDITIONALLY REQUIRED if the Printer supports the Job Release feature

'job-storage' CONDITIONALLY REQUIRED if the Printer supports the Job Storage feature

'proof-print' CONDITIONALLY REQUIRED if the Printer supports the Proof Print feature

8.2 job-hold-until (type2 keyword | name(MAX))

This IPP Enterprise Printing Extensions v2.0 specification defines additional keyword values for the "job-hold-until" Job Template attribute [STD92] to support workflow features specified elsewhere in this document.Button Press Release and Authenticated Release. Table 13 lists the new values and their uses.

The "job-password" (section 7.1.1) and "job-password-encryption" (section 7.1.2) operation attributes MUST NOT be provided in a Job Creation operation request if this attribute is specified with either the 'button-press' or 'owner-authorized' keyword values. The 'button-press' and 'owner-authorized' values for "job-hold-until" and the "job-password" / "job-password-encryption" attribute set each individually indicate a distinct and mutually exclusive user-initiated release method.

Table 13 - - "job-hold-until" Additional Keywords for "job-hold-until"

Keyword Description

Page 51 of 79 Copyright © 2019-2020 The Printer Working Group. All rights reserved.

148149

1344

1345

13461347

1348

13491350135113521353

1354

1355

1356135713581359

136013611362136313641365

1366

150

Page 52: ftp.pwg.orgftp.pwg.org/pub/pwg/ipp/wd/wd-ippepx20-20200504-rev.docx  · Web view5/4/2020  · The IEEE-ISTO takes no position regarding the validity or scope of any intellectual

Working Draft – IPP Enterprise Printing Extensions v2.0 (EPX) May 4, 2020

'owner-authorized''button-press'

Hold the Job until a button press on the Owner has authorizedOutput Device's control panel authorizes it to be released. A supporting Printer MAY challenge the Client for authentication credentials. A supporting Client MUST expect an authentication challenge from the Printer to processing.

'button-press''owner-authorized'

Hold the Job until a button press on the Output Device's control panel authorizes it to be released to processing.Hold the Job until the Owner has authorized it to be released. Job Creation MUST be authenticated, Release-Job MUST be authenticated, and release at Printer console MUST be authenticated (e.g. ID card, etc.). A supporting Printer MUST authenticate any Job Creation request or Release-Job request including this value for "job-hold-until". A supporting Client MUST be prepared to for an authentication challenge if it supplies this keyword in one of its Job Creation requests or a Release-Job request.

8.3[5.2] job-state-reasons (1setOf type2 keyword) Job Description attribute

This IPP Enterprise Printing Extensions v2.0section adds specification defines additional keywords to keyword values for the "job-cancel-afterstate-reasons" attribute [STD92](section ) in to support of the Job Storage FeatureRelease feature (section 5.3), the Job Protection FeatureStorage feature (section 5.5)), and the Job Proof Print Ffeature (section 5.7).

Many of the existing "job-state-reasons" attribute values can apply to a ‘save-only’ Job), as well as a Job submitted for printing. If the value of the “job-storage-disposition” attribute is store-only', the "job-state-reasons" attribute MAY be set with existing values such as 'job-incoming', 'resources-are-not-ready' (such as a font), 'job-interpreting', and 'job-queued'. Likewise, errors that occur on a Stored Job MAY have existing "job-state-reasons" attribute values such as 'job-data-insufficient', 'document-access-error', 'submission-interrupted', 'job-canceled-by-user', 'aborted-by-system', etc.

There are also new four new "job-state-reasons" keyword values REQUIRED that support a Stored Job: 'job-storing', 'job-stored-successfully', 'job-stored-with-warnings', and 'job-stored-with-errors'. The existing ‘job-completed-successfully’, job-completed-with-warnings’, and ‘job-completed-with-errors’ values are also clarified in the list above for implementations that support the "job-save-disposition" Job Template attribute, in such a way that these values remain compatible with Printers and Clients that do not support job saving.other keywords to report additional conditions. Table 14 defines the meanings of these 4the new "job-state-reasons" keywords.

Page 52 of 79 Copyright © 2019-2020 The Printer Working Group. All rights reserved.

151152

1367

1368

13691370137113721373

1374137513761377137813791380

13811382138313841385138613871388

153

Page 53: ftp.pwg.orgftp.pwg.org/pub/pwg/ipp/wd/wd-ippepx20-20200504-rev.docx  · Web view5/4/2020  · The IEEE-ISTO takes no position regarding the validity or scope of any intellectual

Working Draft – IPP Enterprise Printing Extensions v2.0 (EPX) May 4, 2020

Table 14 - - "job-state-reasons" Additional Keywords for "job-state-reasons"

Keyword Conformance RequirementsDescription

'conflicting-attributes' The Job Template or Document Template attributes contain conflicting values.

REQUIRED

'job-canceled-after-timeout' The Job was canceled because the timer with a durationtime span specified by the "job-cancel-after" Job Description attribute (section 7.4) toelapsed before the "job-state-reasons" Job Status attribute.Job could be processed.

CONDITIONALLY REQUIRED [1]

'job-held-for-authorization' The Job is being held in the 'pending-held' state until the Printer receives authenticated authorization to release it to processing.

CONDITIONALLY REQUIRED [4]

'job-awaiting-password'held-for-button-press'

The Job is being held in the 'pending-held' state awaitinguntil the Printer receives a passwordbutton press or similar physical input to be entered to allowrelease it to be released to processing.

CONDITIONALLY REQUIRED [3]

'job-awaitingheld-for-proof-release' The Job is in the 'processing-stopped' state following the printing of the first copy, awaiting a signal of approval to allow the remaining copies to be produced. The initial copies of the Proof Job have been processed and the Proof Job has reached its terminal state and is ready to be released for final processing or cancellation.

CONDITIONALLY REQUIRED [6]

Page 53 of 79 Copyright © 2019-2020 The Printer Working Group. All rights reserved.

1541551389

156

Page 54: ftp.pwg.orgftp.pwg.org/pub/pwg/ipp/wd/wd-ippepx20-20200504-rev.docx  · Web view5/4/2020  · The IEEE-ISTO takes no position regarding the validity or scope of any intellectual

Working Draft – IPP Enterprise Printing Extensions v2.0 (EPX) May 4, 2020

'job-password-timeout'wait' The Job is being held in the 'aborted''pending-held' state being retained and stored byuntil the Printer, ready receives a password value that matches the Job's "job-password" value to be duplicatedrelease it to produce a new reprint Job.processing.

CONDITIONALLY REQUIRED [2]

'job-storedprinted-successfully' The jJob was successfully saved. Theprinted but was not successfully stored as indicated by ‘job-stored-with-warnings’ or ‘job-stored-with-errors’. If the Job was not requested to be stored, the Printer MUST also supplyuse the ‘job- completed-successfully’, except when “job-storage-disposition” = ‘store-only’. If the "job-storage" Job Template attribute is supported, this value MUST be supported. keyword instead.

CONDITIONALLY REQUIRED [5]

'job-storedprinted-with-errors' The job did not save successfully (whether or not it Job was printed successfully, printed with warnings, printed with errors, or not printed). The Printer MUST ensure that none of the but was successfully stored as indicated by ‘job-stored-successfully’ or was not successfully saved as indicated by ‘job is accessible, if it was unable to successfully save all of the -stored-with-warnings’ or ‘job.-stored-with-errors’. If the "Job was not requested to be stored, the Printer MUST use the ‘job-storage" Job Template attribute is supported, this value MUST be supported.completed-with-errors’ keyword instead.

CONDITIONALLY REQUIRED [5]

'job-storedprinted-with-warnings' The job was saved with warnings. If the "job-storage" Job Template attribute is supported, this value MUST be supported.The Job was printed with warnings but was successfully stored as indicated by ‘job-stored-successfully’ or was not successfully stored as indicated by ‘job-stored-with-warnings’ or ‘job-stored-with-errors’. If the Job was not requested to be stored, the Printer

Page 54 of 79 Copyright © 2019-2020 The Printer Working Group. All rights reserved.

157158

159

Page 55: ftp.pwg.orgftp.pwg.org/pub/pwg/ipp/wd/wd-ippepx20-20200504-rev.docx  · Web view5/4/2020  · The IEEE-ISTO takes no position regarding the validity or scope of any intellectual

Working Draft – IPP Enterprise Printing Extensions v2.0 (EPX) May 4, 2020

MUST use the ‘job-completed-with-warnings’ value instead.

CONDITIONALLY REQUIRED [5]

'job-release-wait' The Job is held until released for printing on a particular output device.

CONDITIONALLY REQUIRED [2] or [3] or [4]

'job-resuming' The Printer is in the process of moving the Job from the 'processing-stopped' state to the 'processing' state.

CONDITIONALLY REQUIRED [9]

'job-stored-successfully' The Job was successfully stored. The Printer MUST also supply ‘job-completed-successfully’, except when “job-storage-disposition” = ‘save-only’.

CONDITIONALLY REQUIRED [5]

'job-stored-with-errors' The Job was not stored successfully. Whether it was printed successfully, printed with warnings, printed with errors, or not printed is indicated by other keywords. The Printer MUST ensure that none of the Stored Job is accessible, if it was unable to successfully store all of the Job.

CONDITIONALLY REQUIRED [5]

'job-stored-with-warnings' The Job was stored with warnings.

CONDITIONALLY REQUIRED [5]

'job-storing' The Printer is transmittingin the job to process of storing the saveJob to its storage location. This is, similar to how the 'job-printing' value. If the "job-storage" Job Template attribute is supported, this value MUST be supported.keyword indicates that printing is in progress.

CONDITIONALLY REQUIRED [5]

'job-suspended-by-operator' The Job has been indefinitely suspended by the Printer operator.

Page 55 of 79 Copyright © 2019-2020 The Printer Working Group. All rights reserved.

160161

162

Page 56: ftp.pwg.orgftp.pwg.org/pub/pwg/ipp/wd/wd-ippepx20-20200504-rev.docx  · Web view5/4/2020  · The IEEE-ISTO takes no position regarding the validity or scope of any intellectual

Working Draft – IPP Enterprise Printing Extensions v2.0 (EPX) May 4, 2020

CONDITIONALLY REQUIRED [8]

'job-suspended-by-system' The Job has been indefinitely suspended by the Printer’s system software during normal processing of the Job.

CONDITIONALLY REQUIRED [8]

'job-suspended-by-user' The Job has been indefinitely suspended by the user.

CONDITIONALLY REQUIRED [8]

'job-suspending' The Printer is in the process of moving the Job from the 'processing' state to the 'processing-stopped' state.

CONDITIONALLY REQUIRED [8]

'unsupported-attributes-or-values' The Job Template or Document Template attributes contain unsupported attributes or values.

REQUIRED

Notes:

[1] REQUIRED if the Printer supports the "job-cancel-after" Job Template attribute[2] REQUIRED if the Printer supports the Password release method for Job Release[3] REQUIRED if the Printer supports the Button release method for Job Release[4] REQUIRED if the Printer supports the User Authorized release method for Job Release[5] REQUIRED if the Printer supports Job Storage[6] REQUIRED if the Printer supports Proof Print[7] REQUIRED if the Printer supports "job-spooling-supported"[8] REQUIRED if the Printer supports the Suspend-Current-Job operation [RFC3998][9] REQUIRED if the Printer supports the Resume-Job operation [RFC3998]

The semantics of the ‘job-completed-successfully’, 'job-completed-with-warnings’, and ‘job-completed-with-errors’ keywords [STD92] are also clarified in the list above for implementations that support the "job-storage-disposition" member attribute of "job-storage" (section 7.1.3.2), in such a way that these values remain compatible with Printers and Clients that do not support Job Storage.

Table 15 enumerates the possible combinations of print and savestore success, warning, and error conditions. Note that two values occur only when there are print warnings/errors and a savestore error.

Page 56 of 79 Copyright © 2019-2020 The Printer Working Group. All rights reserved.

163164

1390

139113921393139413951396139713981399

14001401140214031404

140514061407

165

Page 57: ftp.pwg.orgftp.pwg.org/pub/pwg/ipp/wd/wd-ippepx20-20200504-rev.docx  · Web view5/4/2020  · The IEEE-ISTO takes no position regarding the validity or scope of any intellectual

Working Draft – IPP Enterprise Printing Extensions v2.0 (EPX) May 4, 2020

Table 15 - Values of "job-state-reasons" attribute for various jJob conditions

Not storing Store was successful Store was unsuccessful

Not storing Store successful Store unsuccessful

Not printing <not possible> 'job-completed-successfully' 'job-stored-with-errors'

Print successful 'job-completed-successfully' 'job-completed-successfully' 'job-stored-with-errors'

Print warnings 'job-completed-with-warnings' 'job-completed-with-warnings' 'job-completed-with-

warnings', 'job-stored-with-errors'

Print errors 'job-completed-with-errors' 'job-completed-with-errors' 'job-completed-with-

errors', 'job-stored-with-errors'

Print warnings and errors

'job-completed-with-errors' 'job-completed-with-errors' 'job-completed-with-

errors', 'job-stored-with-errors'

8.3.1[5.2.1] Additional Semantics for "job-state-reasons" and "job-storage-disposition"

Many of the existing "job-state-reasons" attribute values can apply to a ‘save-only’ job as well as a Job submitted for printing. If the value of the “job-storage-disposition” member attribute is 'save-only', the "job-state-reasons" attribute MAY include commonly used standard keywords such as 'job-incoming', 'resources-are-not-ready' (such as a font), 'job-interpreting', and 'job-queued'. Likewise, errors that occur on a Stored Job MAY have existing "job-state-reasons" attribute values such as 'job-data-insufficient', 'document-access-error', 'submission-interrupted', 'job-canceled-by-user', 'aborted-by- system', etc.

This IPP Enterprise Printing Extensions v2.0 specification defines four new CONDITIONALLY REQUIRED "job-state-reasons" keyword values that a Printer MUST support if it supports Job Storage: 'job-storing', 'job-stored-successfully', 'job-stored-with-warnings', and 'job-stored-with-errors'. The existing ‘job-completed-successfully’, job-completed-with-warnings’, and ‘job- completed-with-errors’ values are also clarified in the list above for Printers that support Job Storage, in such a way that these values remain compatible with Printers and clients that do not support Job Storage.

Page 57 of 79 Copyright © 2019-2020 The Printer Working Group. All rights reserved.

1661671408

14091410

1411141214131414141514161417

1418141914201421142214231424

168

Page 58: ftp.pwg.orgftp.pwg.org/pub/pwg/ipp/wd/wd-ippepx20-20200504-rev.docx  · Web view5/4/2020  · The IEEE-ISTO takes no position regarding the validity or scope of any intellectual

Working Draft – IPP Enterprise Printing Extensions v2.0 (EPX) May 4, 2020

8.4 which-jobs (type2 keyword) and which-jobs-supported (1setOf type2 keyword)

This IPP Enterprise Printing Extensions v2.0 specification defines additional keyword values for the IPP "which-jobs" operation attribute offor the Get-Jobs operation [STD92], and the “which-jobs-supported” Printer Description attribute [PWG5100.7], to support filtering for Proof Jobs and as well as different accessibility levels of Stored Jobs. Table 16 lists the new values and their uses.

Table 16 - - "which-jobs" Additional Keywords for "which-jobs" and "which-jobs-supported"

Keyword Description

'proof-print' Proof Jobs, i.e., Jobs that have been submitted using the "proof-print" Job Template attribute and which are in the ‘completed’, ‘canceled’, or ‘aborted’ state. If the "proof-print" Job Template attribute is supported, this value MUST be supported.

'stored-public' Public Stored Jobs, i.e., Jobs that have been stored using the "job-storage " Job Template attribute where the "job-storage-access" member attribute specifies 'public', and which are in the ‘completed’ state. If the "job-storage" Job Template attribute is supported, this value MUST be supported.

'stored-owner' Private Stored Jobs, i.e., Jobs that have been stored using the "job-storage " Job Template attribute where the "job-storage-access" member attribute specifies 'owner', and which have reached the ‘completed’ state. If the "job-storage" Job Template attribute is supported, this value MUST be supported.

A Client that specifies the 'stored-owner' keyword for "which-jobs" MUST be prepared to handle an authentication challenge from the Printer.

Keyword Description

'proof-print' Proof Jobs, i.e., Jobs that have been submitted using the "proof-print" Job Template attribute and which are in the ‘completed’, ‘canceled’, or ‘aborted’ state. If the Printer supports the "proof-print" Job Template attribute, the Printer MUST support this keyword.

'stored-group' Group Stored Jobs, i.e., Jobs that have been stored using the "job-storage " operation attribute where the "job-storage-access" member attribute specifies 'group', and which have reached the ‘completed’ state. If the Printer's "job-storage-access-supported" Printer Description attribute lists the "group" keyword, the Printer MUST support this

Page 58 of 79 Copyright © 2019-2020 The Printer Working Group. All rights reserved.

169170

1425

1426

14271428142914301431

1432

14331434

171

Page 59: ftp.pwg.orgftp.pwg.org/pub/pwg/ipp/wd/wd-ippepx20-20200504-rev.docx  · Web view5/4/2020  · The IEEE-ISTO takes no position regarding the validity or scope of any intellectual

Working Draft – IPP Enterprise Printing Extensions v2.0 (EPX) May 4, 2020

keyword. A Client specifying this keyword for "which-jobs" MUST be prepared to handle an authentication challenge from the Printer. A Client specifying this keyword for "which-jobs" MUST also provide the "job-storage-group" operation attribute in the Get-Jobs request (section 8.3).

'stored-owner' Private Stored Jobs, i.e., Jobs that have been stored using the "job-storage " operation attribute where the "job-storage-access" member attribute specifies 'owner', and which have reached the ‘completed’ state. If the Printer supports the "job-storage" Job Template attribute and the "job-storage-access-supported" Printer Description attribute, and the latter attribute includes the "owner" keyword, the Printer MUST support this keyword. A Client that specifies the 'stored-owner' keyword for "which-jobs" MUST be prepared to handle an authentication challenge from the Printer.

'stored-public' Public Stored Jobs, i.e., Jobs that have been stored using the "job-storage " operation attribute where the "job-storage-access" member attribute specifies 'public', and which are in the ‘completed’ state. If the Printer supports the "job-storage" Job Template attribute, it MUST support this keyword.

9. Obsolete Attributes and Values

9.1[5.3] Obsolete Attributes

Table 17 lists the attributes defined in [PWG5100.11-2010] that are OBSOLETE.

Table 17 - Obsolete Attributes

Attribute Explanation

job-save-disposition The Job Save and Reprint Ffeature [PWG5100.11-2010] has been deprecatedmade obsolete.

pages-per-subsetpdl-init-file The "pdl-init-file" attribute [PWG5100.11-2010]Redundant with "job-pages-per-set" has been made obsolete.

Page 59 of 79 Copyright © 2019-2020 The Printer Working Group. All rights reserved.

172173

1435

1436

1437

1438

1439

174

Page 60: ftp.pwg.orgftp.pwg.org/pub/pwg/ipp/wd/wd-ippepx20-20200504-rev.docx  · Web view5/4/2020  · The IEEE-ISTO takes no position regarding the validity or scope of any intellectual

Working Draft – IPP Enterprise Printing Extensions v2.0 (EPX) May 4, 2020

sheet-collatepdl-init-file-default The "pdl-init-file" attribute [PWG5100.11-2010] has been made obsolete.

pdl-init-file-entry The "pdl-init-file" attribute [PWG5100.11-2010] has been made obsolete.

pdl-init-file-entry-supported The "pdl-init-file" attribute [PWG5100.11-2010] has been made obsolete.

pdl-init-file-location The "pdl-init-file" attribute [PWG5100.11-2010] has been made obsolete.

pdl-init-file-location-supported The "pdl-init-file" attribute [PWG5100.11-2010] has been made obsolete.

pdl-init-file-name The "pdl-init-file" attribute [PWG5100.11-2010] has been made obsolete.

pdl-init-file-name-supported The "pdl-init-file" attribute [PWG5100.11-2010] has been made obsolete.

pdl-init-file-name-subdirectory-supported

The "pdl-init-file" attribute [PWG5100.11-2010] has been made obsolete.

save-disposition The Job Save and Reprint feature [PWG5100.11-2010] has been made obsolete.

save-disposition-supported The Job Save and Reprint feature [PWG5100.11-2010] has been made obsolete.

save-document-format The Job Save and Reprint feature [PWG5100.11-2010] has been made obsolete.

save-document-format-default The Job Save and Reprint feature [PWG5100.11-2010] has been made obsolete.

save-document-format-supported

The Job Save and Reprint feature [PWG5100.11-2010] has been made obsolete.

save-info The Job Save and Reprint feature [PWG5100.11-2010] has been made obsolete.

save-info-supported The Job Save and Reprint feature [PWG5100.11-2010] has been made obsolete.

save-location The Job Save and Reprint feature [PWG5100.11-2010] has been made obsolete.

Page 60 of 79 Copyright © 2019-2020 The Printer Working Group. All rights reserved.

175176

177

Page 61: ftp.pwg.orgftp.pwg.org/pub/pwg/ipp/wd/wd-ippepx20-20200504-rev.docx  · Web view5/4/2020  · The IEEE-ISTO takes no position regarding the validity or scope of any intellectual

Working Draft – IPP Enterprise Printing Extensions v2.0 (EPX) May 4, 2020

save-location-default The Job Save and Reprint feature [PWG5100.11-2010] has been made obsolete.

save-location-supported The Job Save and Reprint feature [PWG5100.11-2010] has been made obsolete.

save-name The Job Save and Reprint feature [PWG5100.11-2010] has been made obsolete.

save-name-supported The Job Save and Reprint feature [PWG5100.11-2010] has been made obsolete.

save-name-subdirectory-supported

The Job Save and Reprint feature [PWG5100.11-2010] has been made obsolete.

9.2 Obsolete Values

Table 18 lists the values defined in [PWG5100.11-2010] that are OBSOLETE.

Table 18 - Obsolete Values

Attribute Value Explanation

job-state-reasons 'job-saved-successfully' The Job Save and Reprint Feature [PWG5100.11-2010] has been deprecated

job-state-reasons 'job-saved-with-errors' The Job Save and Reprint Feature [PWG5100.11-2010] has been deprecated

job-state-reasons 'job-saved-with-warnings' The Job Save and Reprint Feature [PWG5100.11-2010] has been deprecated

job-state-reasons 'job-saving' The Job Save and Reprint Feature [PWG5100.11-2010] has been deprecated

which-jobs 'saved' The Job Save and Reprint Feature

Page 61 of 79 Copyright © 2019-2020 The Printer Working Group. All rights reserved.

178179

1440

1441

1442

180

Page 62: ftp.pwg.orgftp.pwg.org/pub/pwg/ipp/wd/wd-ippepx20-20200504-rev.docx  · Web view5/4/2020  · The IEEE-ISTO takes no position regarding the validity or scope of any intellectual

Working Draft – IPP Enterprise Printing Extensions v2.0 (EPX) May 4, 2020

[PWG5100.11-2010] has been deprecated

10.[6.] Conformance RequirementsThis section summarizes the Conformance Requirements detailed in the definitions in this document for Client and Printer objects (servers or devices).

[6.1] Authenticated Release Feature

[6.1.1] Printer Conformance Requirements

In order for a Printer to claim conformance with the Authenticated Release Feature defined in this specification, a Printer MUST support:

[3.] The "job-hold-until" attribute defined in ;[4.] The required operations defined in section ;[5.] The additional semantics defined in section ;[6.] The additional values defined in section ;[7.] The status codes defined in section ;[8.] The internationalization considerations defined in section ; and[9.] The security considerations defined in section .

[6.1.2] Client Conformance Requirements

In order for a Client to claim conformance with the Authenticated Release Feature defined in this specification, a Client MUST support:

[10.] The required attributes and values defined in section ;[11.] The required operations defined in section ;[12.] The additional semantics defined in section ;[13.] The additional values defined in section ;[14.] The status codes defined in section ;[15.] The internationalization considerations defined in section ; and[16.] The security considerations defined in section .

[6.2] Job Protection Feature

[6.3] Printer Conformance Requirements

In order for aA Printer to claimclaiming conformance with the Job Protection Feature defined in this IPP Enterprise Printing Extensions v2.0 specification, a Printer MUST support:

Page 62 of 79 Copyright © 2019-2020 The Printer Working Group. All rights reserved.

181182

1443

14441445

1446

1447

14481449

1450145114521453145414551456

1457

14581459

1460146114621463146414651466

1467

1468

146914701471

183

Page 63: ftp.pwg.orgftp.pwg.org/pub/pwg/ipp/wd/wd-ippepx20-20200504-rev.docx  · Web view5/4/2020  · The IEEE-ISTO takes no position regarding the validity or scope of any intellectual

Working Draft – IPP Enterprise Printing Extensions v2.0 (EPX) May 4, 2020

[17.] The required attributes and values defined in section ;[18.] The required operations defined in section ;[19.] The additional semantics defined in section ;[20.] The additional values defined in section ;[21.] The status codes defined in section ;[1.] The internationalization considerations defined in section 12;; and[2.] The security considerations defined in section 13..

The Printer MUST also support at least one of the features defined in this specification:

10.1.1 Job Release

A Printer supporting the Button Press method for the Job Release feature defined in section 5.3 MUST support:

1. The "job-hold-until" attribute defined in [STD92] and the 'button-press' keyword defined in section 9.2;

2. The 'job-release' keyword for the "ipp-features-supported" Printer Description attribute defined in section 9.1;

3. The status codes defined in section 9.3.

A Printer supporting the Owner Authorized method for the Job Release feature defined in section 5.3 MUST support:

1. The "job-hold-until" attribute defined in [STD92] and the 'owner-authorized' keyword defined in section 9.2;

2. The 'job-release' keyword for the "ipp-features-supported" Printer Description attribute defined in section 9.1;

3. The status codes defined in section 9.3.

A Printer supporting the Job Password method for the Job Release feature defined in section 5.3 MUST support:

4. The "job-password" operation attribute defined in section 7.1.1 and the "job-password-encryption" operation attribute defined in section 7.1.2;

5. The "job-password-supported", "job-password-encryption-supported", "job-password-length-supported", "job-password-repertoire-configured", and "job-password-repertoire-supported" Printer Description attributes defined in section 7.6;

6. The 'job-release' keyword for the "ipp-features-supported" Printer Description attribute defined in section 9.1;

7. The status codes defined in section 9.3.

10.1.2 Job Storage

A Printer claiming support for the Job Storage feature defined in section 5.5 MUST support:

Page 63 of 79 Copyright © 2019-2020 The Printer Working Group. All rights reserved.

1841851472147314741475147614771478

1479

1480

14811482

14831484148514861487

14881489

14901491149214931494

14951496

149714981499150015011502150315041505

1506

15071508

186

Page 64: ftp.pwg.orgftp.pwg.org/pub/pwg/ipp/wd/wd-ippepx20-20200504-rev.docx  · Web view5/4/2020  · The IEEE-ISTO takes no position regarding the validity or scope of any intellectual

Working Draft – IPP Enterprise Printing Extensions v2.0 (EPX) May 4, 2020

1. The "job-storage" operation attribute defined in section 7.1.3;2. The 'job-storage' keyword for the "ipp-features-supported" Printer Description

attribute defined in section 9.1;3. The 'stored-public' and 'stored-owner' keywords defined in section 9.4 for the

"which-jobs" operation attribute defined in [STD92];4. The status codes defined in section 9.3.

10.1.3 Print Policy

A Printer claiming support for the Print Policy feature defined in section 5.6 MUST support:

1. The Get-User-Printer-Attributes operation defined in section 6.1.

10.1.4 Proof Print

A Printer claiming support for the Proof Print feature defined in section 5.7 MUST support:

1. The "proof-print" Job Template attribute defined in section 7.4.6;2. The 'proof-print' keyword for the "ipp-features-supported" Printer Description

attribute defined in section 9.1;3. The status codes defined in section 9.3.

10.2 Client Conformance Requirements

In order for aA Client to claimclaiming conformance with the Job Protection Feature defined in this IPP Enterprise Printing Extensions v2.0 specification, a Client MUST support:

[3.] The required attributes and values defined in section ;[4.] The required operations defined in section ;[5.] The additional semantics defined in section ;[6.] The additional values defined in section ;[7.] The status codes defined in section ;[1.] The internationalization considerations defined in section 12;; and[2.] The security considerations defined in section 13..

10.3 The Client MUST also support at least one of the featuresJob Storage Feature

[6.3.1] Printer Conformance Requirements

In order for a Printer to claim conformance with the Job Storage Feature defined in this specification, a Printer MUST support::

Page 64 of 79 Copyright © 2019-2020 The Printer Working Group. All rights reserved.

187188150915101511151215131514

1515

1516

1517

1518

1519

1520152115221523

1524

152515261527

1528152915301531153215331534

1535

1536

1537

15381539

189

Page 65: ftp.pwg.orgftp.pwg.org/pub/pwg/ipp/wd/wd-ippepx20-20200504-rev.docx  · Web view5/4/2020  · The IEEE-ISTO takes no position regarding the validity or scope of any intellectual

Working Draft – IPP Enterprise Printing Extensions v2.0 (EPX) May 4, 2020

[6.3.2] The required attributes and valuesJob Release

A Client supporting the Button Press method for the Job Release feature defined in section 5.3; MUST support:

1. The "job-hold-until" attribute defined in [STD92]The required operations and the 'button-press' keyword defined in section 9.2;;

[3.] The additional semanticsThe 'job-release' keyword for the "ipp-features-supported" Printer Description attribute defined in section 9.1;;

[4.] The additional valuesstatus codes defined in section 9.3;.

A Client supporting the Owner Authorized method for the Job Release feature defined in section 5.3 MUST support:

1. The "job-hold-until" attribute defined in [STD92] and the 'owner-authorized' keyword defined in section 9.2;

2. The 'job-release' keyword for the "ipp-features-supported" Printer Description attribute defined in section 9.1;

3. The status codes defined in section 9.3;.

The internationalization considerationsA Client supporting the Job Password method for the Job Release feature defined in section 5.3; and MUST support:

[5.] The security considerationsThe "job-password" operation attribute defined in section 7.1.1.

[6.3.3] Client Conformance Requirements

In order for a Client to claim conformance with the Job Storage Feature defined in this specification, a Client MUST support:

[1.] The required attributes and values and the "job-password-encryption" operation attribute defined in section 7.1.2;;

4. The "job-password-supported", "job-password-encryption-supported", "job-password-length-supported", "job-password-repertoire-configured", and "job-password-repertoire-supported" Printer Description attributes defined in section 7.6The required operations defined in section ;

[2.] The additional semantics;5. The 'job-release' keyword for the "ipp-features-supported" Printer Description

attribute defined in section 9.1;;[3.] The additional values defined in section ;[4.] The status codes defined in section 9.3;.

[6.3.4] The internationalization considerationsJob Storage

A Client claiming support for the Job Storage feature defined in section 5.5 MUST support:

1. The "job-storage" operation attribute defined in section 7.1.3;

Page 65 of 79 Copyright © 2019-2020 The Printer Working Group. All rights reserved.

1901911540

15411542

15431544154515461547

15481549

15501551155215531554

15551556

15571558

1559

15601561

15621563156415651566156715681569157015711572

1573

1574

1575

192

Page 66: ftp.pwg.orgftp.pwg.org/pub/pwg/ipp/wd/wd-ippepx20-20200504-rev.docx  · Web view5/4/2020  · The IEEE-ISTO takes no position regarding the validity or scope of any intellectual

Working Draft – IPP Enterprise Printing Extensions v2.0 (EPX) May 4, 2020

2. The 'job-storage' keyword for the "ipp-features-supported" Printer Description attribute defined in section 9.1;

3. The 'stored-public' and 'stored-owner' keywords defined in section 9.4 for the "which-jobs" operation attribute defined in [STD92]; and;

[5.] The security considerationsstatus codes defined in section 9.3..

10.3.1 Print Policy

A Client claiming support for the Print Policy feature defined in section 5.6 MUST support:

1. The Get-User-Printer-Attributes operation defined in section 6.1.

10.3.2 Proof Print

A Client claiming support for the Proof Print feature defined in section 5.7 MUST support:

1. The "proof-print" Job Template attribute defined in section 7.4.6;2. The 'proof-print' keyword for the "ipp-features-supported" Printer Description

attribute defined in section 9.1;3. The status codes defined in section 9.3.

11. Internationalization ConsiderationsFor interoperability and basic support for multiple languages, conforming implementations MUST support the Universal Character Set (UCS) Transformation Format -- 8 bit (UTF-8) [STD63] encoding of Unicode [UNICODE] [ISO10646] and the Unicode Format for Network Interchange [RFC5198].

Implementations of this specification SHOULD conform to the following standards on processing of human-readable Unicode text strings, see:

Unicode Bidirectional Algorithm [UAX9][UAX9] – left-to-right, right-to-left, and vertical

Unicode Line Breaking Algorithm [UAX14][UAX14] – character classes and wrapping

Unicode Normalization Forms [UAX15][UAX15] – especially NFC for [RFC5198][RFC 5198]

Unicode Text Segmentation [UAX29][UAX29] – grapheme clusters, words, sentences

Unicode Identifier and Pattern Syntax [UAX31][UAX31] – identifier use and normalization

Unicode Collation Algorithm [UTS10][UTS10] – sorting

Page 66 of 79 Copyright © 2019-2020 The Printer Working Group. All rights reserved.

19319415761577157815791580

1581

1582

1583

1584

1585

1586158715881589

1590

1591159215931594

15951596

15971598

15991600

16011602

16031604

16051606

1607

195

Page 67: ftp.pwg.orgftp.pwg.org/pub/pwg/ipp/wd/wd-ippepx20-20200504-rev.docx  · Web view5/4/2020  · The IEEE-ISTO takes no position regarding the validity or scope of any intellectual

Working Draft – IPP Enterprise Printing Extensions v2.0 (EPX) May 4, 2020

Unicode Locale Data Markup Language [UTS35][UTS35] – locale databases

Implementations of this specification are advised to also review the following informational documents on processing of human-readable Unicode text strings:

Unicode Character Encoding Model [RFC2568] S. Zilles, " Rationale for the Structure of the Model and Protocol for the Internet Printing Protocol", RFC 2568, April 1999, [UTR17] – multi-layer character model

Unicode in XML and other Markup Languages [UTR20] – XML usage

Unicode Character Property Model [UTR23][UTR23] – character properties

Unicode Conformance Model [UTR33][UTR33] – Unicode conformance basis

12.[7.] Security Considerations

13. Security ConsiderationsIn addition to the security considerations described in the IPP/1.1: Model and Semantics [STD92][STD92],, implementations of this specification SHOULD conform to the following standards on processing of human-readable Unicode text strings:

Unicode Security Mechanisms [UTS39][UTS39] – detecting and avoiding security attacks

Unicode Security FAQ [UNISECFAQ][UNISECFAQ] – common Unicode security issues

14.[8.] IANA Considerations

15. IANA Considerations

[8.1] IPP Attribute and Keyword Value Registrations

This section contains the exact registration information forThe attributes defined in this specification will be published by IANA to update according to the procedures in the Internet Printing Protocol/1.1 [STD92]defined in . in the following file:

https://www.iana.org/assignments/ipp-registrations

The registry entries will contain the following information:

The registry entries will contain the following information:

Page 67 of 79 Copyright © 2019-2020 The Printer Working Group. All rights reserved.

1961971608

16091610

161116121613

1614

1615

1616

1617

1618

161916201621

16221623

16241625

1626

1627

1628

162916301631

1632

1633

1634

198

Page 68: ftp.pwg.orgftp.pwg.org/pub/pwg/ipp/wd/wd-ippepx20-20200504-rev.docx  · Web view5/4/2020  · The IEEE-ISTO takes no position regarding the validity or scope of any intellectual

Working Draft – IPP Enterprise Printing Extensions v2.0 (EPX) May 4, 2020

Operation attributes: Reference ---------------------------------------- ------------job-password (octetString(255)) [IPPEPX]job-password-encryption (deprecated) (type2 keyword | name(MAX)) [IPPEPX]job-password-encryption (type2 keyword) [IPPEPX]job-storage (collection) [IPPEPX] job-storage-access (type2 keyword) [IPPEPX] job-storage-disposition (type2 keyword) [IPPEPX] job-storage-group (name(MAX)) [IPPEPX]

Job Template attributes: Reference ---------------------------------------- ------------job-cancel-after (integer(1:MAX)) [IPPEPX]job-phone-number (uri) [IPPEPX]job-recipient-name (name(MAX)) [IPPEPX]job-storage (collection) [IPPEPX] job-storage-access (type2 keyword) [IPPEPX] job-storage-disposition (type2 keyword) [IPPEPX] job-storage-group (name(MAX)) [IPPEPX]proof-print (collection) [IPPEPX] media (type2 keyword | name(MAX)) [IPPEPX] media-col (collection) [IPPEPX] proof-print-copies (integer (0:MAX)) [IPPEPX]

Operation attributes: Reference ---------------------------------------- ------------job-password (octetString(255)) [IPPEPX]job-password-action (type2 keyword) [IPPEPX]job-password-encryption (type2 keyword | name(MAX)) [IPPEPX]

Job Status attributes: Reference ---------------------------------------- ------------job-storage (collection) [IPPEPX] <Any "job-storage" member attribute> [IPPEPX]proof-print (collection) [IPPEPX] <Any "proof-print" member attribute> [IPPEPX]

Printer Description attributes: Reference ---------------------------------------- ------------job-cancel-after-default (integer(1:MAX)) [IPPEPX]job-password-aencryption-supported (deprecated) (1setOf (type2 keyword)) [IPPEPX] | name(MAX))) [IPPEPX]job-password-encryption-supported (1setOf (type2 keyword | name(MAX))) )) [IPPEPX]job-password-length-supported (rangeOfInteger(0:255)) [IPPEPX]job-password-repertoire-configured (1setOf (type2 keyword | name(MAX))) [IPPEPX]job-password-repertoire-supported (1setOf (type2 keyword | name(MAX))) [IPPEPX]job-password-supported (integer(0:255)) [IPPEPX]job-phone-number-default (uri) [IPPEPX]job-phone-number-supported (boolean) [IPPEPX]job-print-password-supported (octetString(256)) [IPPEPX]job-print-password-encryption-supported (type2 keyword) [IPPEPX]job-print-password-repertoire-supported (type2 keyword) [IPPEPX]job-recipient-name-default (name(MAX)) [IPPEPX]job-recipient-name-supported (boolean) [IPPEPX]

Page 68 of 79 Copyright © 2019-2020 The Printer Working Group. All rights reserved.

19920016351636163716381639164016411642164316441645164616471648164916501651165216531654165516561657165816591660166116621663166416651666166716681669167016711672167316741675167616771678167916801681168216831684168516861687168816891690169116921693169416951696

201

Page 69: ftp.pwg.orgftp.pwg.org/pub/pwg/ipp/wd/wd-ippepx20-20200504-rev.docx  · Web view5/4/2020  · The IEEE-ISTO takes no position regarding the validity or scope of any intellectual

Working Draft – IPP Enterprise Printing Extensions v2.0 (EPX) May 4, 2020

job-storage-access-supported (1setOf type2 keyword) [IPPEPX]job-storage-disposition-supported (1setOf type2 keyword) [IPPEPX]job-storage-group-supported (1setOf type2 keyword) name(MAX)) [IPPEPX]job-storage-supported (1setOf type2 keyword) [IPPEPX]printer-detailed-status-messages (1setOf text(MAX)) [IPPEPX]proof-print-copies-supported (rangeOfInteger(0:MAX)) [IPPEPX]proof-print-default (collection) [IPPEPX]proof-print-supported (1setOf type2 keyword) [IPPEPX]proof-print-copies-supported (rangeOfInteger(0:MAX)) [IPPEPX]proof-print-password-supported (1setOf type2 keyword) [IPPEPX]

[8.2] Attribute ValueType2 keyword Registrations

The attributeskeyword values defined in this specification will be published by IANA according to the procedures in IPP/1.1 Model and Semantics [STD92][STD92] section 7.1 in the following file:

https://www.iana.org/assignments/ipp-registrations

The registry entries will contain the following information:

Attribute (attribute syntax)

Keyword Attribute Value The registry entries will contain the following information:

Attribute (attribute syntax) Keyword Attribute Value Reference------------------------------- -------------ipp-features-supported (1setOf (type2 keyword)) [PWG5100.13] authenticatedjob-release [IPPEPX] job-protection [IPPEPX] job-storage [IPPEPX] proof-print [IPPEPX]

job-hold-until (type2 keyword) [RFC8011]job-hold-until-supported (1setOf (type2 keyword)) [RFC8011] owner-authorized [IPPEPX] button-press [IPPEPX]

job-password-action (type2 keyword) [IPPEPX]job-password-action-supported (1setOf (type2 keyword)) [IPPEPX] hold-job [IPPEPX] process-and-retain [IPPEPX] retain-only [IPPEPX]

job-password-encryption (type2 keyword | name(MAX)) [IPPEPX]job-password-encryption-supported (1setOf (type2 keyword | name(MAX))) [IPPEPX] md2 (deprecated) [IPPEPX] md4 (deprecated) [IPPEPX] md5 (deprecated) [IPPEPX] none [IPPEPX]

Page 69 of 79 Copyright © 2019-2020 The Printer Working Group. All rights reserved.

20220316971698169917001701170217031704170517061707

1708

170917101711

1712

1713

1714

1715

1716171717181719172017211722172317241725172617271728172917301731173217331734173517361737173817391740174117421743174417451746

204

Page 70: ftp.pwg.orgftp.pwg.org/pub/pwg/ipp/wd/wd-ippepx20-20200504-rev.docx  · Web view5/4/2020  · The IEEE-ISTO takes no position regarding the validity or scope of any intellectual

Working Draft – IPP Enterprise Printing Extensions v2.0 (EPX) May 4, 2020

sha (deprecated) [IPPEPX] sha2-224 [IPPEPX] sha2-256 [IPPEPX] sha2-384 [IPPEPX] sha2-512 [IPPEPX] sha2-512_224 [IPPEPX] sha2-512_256 [IPPEPX] sha3-224 [IPPEPX] sha3-256 [IPPEPX] sha3-384 [IPPEPX] sha3-512 [IPPEPX] sha3-512_224 [IPPEPX] sha3-512_256 [IPPEPX] shake-256 [IPPEPX] shake-512 [IPPEPX]

job-storage-access-supported (1setOf type2 keyword) [IPPEPX] save-disposition [IPPEPX] save-info [IPPEPX]

group [IPPEPX] owner [IPPEPX] public [IPPEPX]

job-storage-disposition-supported (1setOf type2 keyword) [IPPEPX] save-disposition [IPPEPX] save-info [IPPEPX]

none [IPPEPX] print-and-store [IPPEPX] store-only [IPPEPX]

job-storage-group-supported (1setOf type2 keyword) [IPPEPX] save-disposition [IPPEPX] save-info [IPPEPX]

job-storage-supported (1setOf type2 keyword) [IPPEPX] save-disposition [IPPEPX] save-info [IPPEPX]

job-state-reasons (type2 keyword) [RFC8011] job-delay-output-until-specified [IPPEPX] job-password-wait [IPPEPX] job-printed-successfully [IPPEPX] job-printed-with-errors [IPPEPX] job-printed-with-warnings [IPPEPX] job-resuming [IPPEPX] job-retain-until-specified [IPPEPX] job-saved-successfully [IPPEPX] job-saved-with-errors [IPPEPX] job-saved-with-warnings [IPPEPX] job-saving [IPPEPX] job-spooling [IPPEPX] job-streaming [IPPEPX] job-suspended-by-operator [IPPEPX] job-suspended-by-system [IPPEPX] job-suspended-by-user [IPPEPX] job-suspending [IPPEPX]

job-storage-supported (type2 keyword) [IPPEPX] job-storage-access [IPPEPX]

Page 70 of 79 Copyright © 2019-2020 The Printer Working Group. All rights reserved.

20520617471748174917501751175217531754175517561757175817591760176117621763176417651766176717681769177017711772177317741775177617771778177917801781178217831784178517861787178817891790179117921793179417951796179717981799180018011802180318041805180618071808

207

Page 71: ftp.pwg.orgftp.pwg.org/pub/pwg/ipp/wd/wd-ippepx20-20200504-rev.docx  · Web view5/4/2020  · The IEEE-ISTO takes no position regarding the validity or scope of any intellectual

Working Draft – IPP Enterprise Printing Extensions v2.0 (EPX) May 4, 2020

job-storage-disposition [IPPEPX] job-storage-group [IPPEPX]

job-state-reasons (type2 keyword) [RFC8011] conflicting-attributes [IPPEPX] job-canceled-after-timeout [IPPEPX] job-held-for-authorization [IPPEPX] job-held-for-button-press [IPPEPX] job-held-for-proof-print-supported (1setOf type2 keyword) release [IPPEPX] job-password-wait [IPPEPX] job-printed-successfully [IPPEPX] job-printed-with-errors [IPPEPX] job-printed-with-warnings [IPPEPX] job-resuming [IPPEPX] job-release-wait [IPPEPX] job-saved-successfully (deprecated) [IPPEPX] job-saved-with-errors (deprecated) [IPPEPX] job-saved-with-warnings (deprecated) [IPPEPX] job-saving (deprecated) [IPPEPX] job-stored-successfully [IPPEPX] job-stored-with-errors [IPPEPX] job-stored-with-warnings [IPPEPX] job-storing [IPPEPX] job-suspended-by-operator [IPPEPX] job-suspended-by-system [IPPEPX] job-suspended-by-user [IPPEPX] media [IPPEPX] media-col [IPPEPX] job-suspending [IPPEPX] unsupported-attributes-or-values [IPPEPX]

job-storage-supported (type2 keyword) [IPPEPX] job-storage-access [IPPEPX] job-storage-disposition [IPPEPX] job-storage-group [IPPEPX]

proof-print-supported (1setOf type2 keyword) [IPPEPX] proof-print-copies [IPPEPX] media [IPPEPX] media-col [IPPEPX]

which-jobs (type2 keyword) [RFC8011] proof-print [IPPEPX] stored -group [IPPEPX] stored-owner [IPPEPX] stored-public [IPPEPX]

15.1 Type2 enum Registrations

The enum values defined in this specification will be published by IANA according to the procedures in the Internet Printing Protocol/1.1 [STD92] in the following file:

https://www.iana.org/assignments/ipp-registrations

The registry entries will contain the following information:

Attributes (attribute syntax)

Page 71 of 79 Copyright © 2019-2020 The Printer Working Group. All rights reserved.

208209180918101811181218131814181518161817181818191820182118221823182418251826182718281829183018311832183318341835183618371838183918401841184218431844184518461847184818491850185118521853185418551856

1857

18581859

1860

1861

1862

210

Page 72: ftp.pwg.orgftp.pwg.org/pub/pwg/ipp/wd/wd-ippepx20-20200504-rev.docx  · Web view5/4/2020  · The IEEE-ISTO takes no position regarding the validity or scope of any intellectual

Working Draft – IPP Enterprise Printing Extensions v2.0 (EPX) May 4, 2020

Enum Value Enum Symbolic Name Reference ---------- ------------------ ---------operations-supported (1setOf type2 enum) [STD92] 0x0066 Get-User-Printer-Attributes [IPPEPX]

15.2 Operation Registrations

The operations defined in this specification will be published by IANA according to the procedures in the Internet Printing Protocol/1.1 [STD92] in the following file:

https://www.iana.org/assignments/ipp-registrations

The registry entries will contain the following information:

Operation Name Reference-------------- ---------Create-Job (Extension) [EPX]Get-Jobs (Extension) [EPX]Get-User-Printer-Attributes [EPX]Print-Job (Extension) [EPX]Print-URI (Extension) [EPX]Validate-Job (Extension) [EPX]

16. Overview of Changes

16.1 IPP Enterprise Printing Extensions v2.0

The Proof Print, Job Save and Secure Print features defined in "Internet Printing Protocol (IPP): Job and Printer Extensions – Set 2 (JPS2)" [PWG5100.11-2010] were not defined in such a way that they could interoperate in practice. The Job Save and Reprint feature is OBSOLETE, replaced by the Job Storage feature (section 5.5). The Secure Print feature has been refactored and extended to become the Job Release feature (section 5.3), which interoperates with the Job Storage feature and the Proof Print feature (section 5.7) to enable more complex print workflow solutions to be created.

The Print Policy feature (section 5.6) was added by adopting the Get-User-Printer-Attributes operation registered in 2017.

The following additional changes were made to the previous version of this specification:

Defined keywords for "ipp-features-supported" for Job Release, Job Storage, and Proof Print features

Deprecated the "name(MAX)" syntax from the original definition of the "job-password-encryption" attribute since the "type2 keyword" syntax allows for site-local or -vendor-unique hashing algorithms, which were never observed to have been used in practice.

Page 72 of 79 Copyright © 2019-2020 The Printer Working Group. All rights reserved.

2112121863186418651866

1867

18681869

1870

1871

18721873187418751876187718781879

1880

1881

1882188318841885188618871888

18891890

1891

18921893

1894189518961897

213

Page 73: ftp.pwg.orgftp.pwg.org/pub/pwg/ipp/wd/wd-ippepx20-20200504-rev.docx  · Web view5/4/2020  · The IEEE-ISTO takes no position regarding the validity or scope of any intellectual

Working Draft – IPP Enterprise Printing Extensions v2.0 (EPX) May 4, 2020

A Client can now include the "job-password" and "job-password-encryption" attributes in a Validate-Job request. This was disallowed in the previous version of this specification [PWG5100.11-2010].

"proof-print-default" is DEPRECATED because its semantics were not clearly defined and its value is unclear.

Many attributes and keywords were moved to "IPP Job Extensions v2.0" [PWG5100.7] because they don't specifically apply to "enterprise printing".

17. References

17.1[8.3] Normative References

[BCP14] S. Bradner, "Key words for use in RFCs to Indicate Requirement Levels", RFC 2119/BCP 14, March 1997, https://tools.ietf.org/html/bcp14

[IANA-IPP] "IANA IPP Registry", IANA Registry, https://www.iana.org/assignments/ipp-registrationshttp://www.iana.org/assignments/ipp-registrations

[ISO10646] "Information technology -- Universal Coded Character Set (UCS)", ISO/IEC 10646:2011

[FIPS180-4] National Institute of Standards and Technology, "Secure Hash Standard (SHS)", FIPS PUB 180-4, August 2015, https://dx.doi.org/10.6028/NIST.FIPS.180-4[PWG5100.1] S. Kennedy, M. Sweet, "IPP Finishings v2.1 (FIN)", PWG 5100.1- 2017, February 2017,

[FIPS202] National Institute of Standards and Technology, "SHA-3 Standard: Permutation-Based Hash and Extendable-Output Functions", FIPS PUB 202, August 2015, https://dx.doi.org/10.6028/NIST.FIPS.202

[PWG5100.3] K. Ocke, T. Hastings, "Internet Printing Protocol (IPP): Production Printing Attributes – Set1", PWG 5100.3-2001, February 2001, https://ftp.pwg.org/pub/pwg/candidates/cs-ippprodprint10-20010212- 5100.3.pdf

[PWG5100.5] D. Carney, T. Hastings, P. Zehler, "IPP: Document Object", PWG 5100.5-2003, October 2003,

[PWG5100.6] P. Zehler, R. Herriot, K. Ocke, "Internet Printing Protocol: Page Overrides", PWG 5100.6, October 2003,

Page 73 of 79 Copyright © 2019-2020 The Printer Working Group. All rights reserved.

214215189818991900

19011902

19031904

1905

1906

190719081909

191019111912

19131914

19151916191719181919

192019211922

1923192419251926

19271928

19291930

216

Page 74: ftp.pwg.orgftp.pwg.org/pub/pwg/ipp/wd/wd-ippepx20-20200504-rev.docx  · Web view5/4/2020  · The IEEE-ISTO takes no position regarding the validity or scope of any intellectual

Working Draft – IPP Enterprise Printing Extensions v2.0 (EPX) May 4, 2020

[PWG5100.7] M. Sweet, "IPP Job Extensions v2.0", August 2019, https://ftp.pwg.org/pub/pwg/candidates/cs-ippjobext20-20190816-5100.7.pdf

[PWG5100.12] M. Sweet, I. McDonald, "IPP Version 2.0, 2.1, and 2.2", PWG 5100.12-2015, October 2015, https://ftp.pwg.org/pub/pwg/standards/std-ipp20-20151030-5100.12.pdf

[PWG5100.13] M. Sweet, I. McDonald, P. Zehler, "IPP: Job and Printer Extensions - Set 3 (JPS3)", PWG 5100.13-2012, July 2012, https://ftp.pwg.org/pub/pwg/candidates/cs-ippjobprinterext3v10- 20120727-5100.13.pdf

[RFC2119] S. Bradner, “Key words for use in RFCs to Indicate Requirement Levels", RFC 2119/BCP 14, March 1997,

[RFC2806] A. Vaha-Sipila, "URLs for Telephone Calls", RFC 2806, April 2000, https://tools.ietf.org/html/rfc2806

[RFC3380] T. Hastings, R. Herriot, C. Kugler, H. Lewis, "Internet Printing Protocol (IPP): Job and Printer Set Operations", RFC 3380, September 2002,

[RFC3382] R. deBry, R. Herriot, T. Hastings, K. Ocke, P. Zehler, "Internet Printing Protocol (IPP): The 'collection' attribute syntax", RFC 3382, September 2002,

[RFC3629] F. Yergeau, “UTF-8, a transformation format of ISO 10646”, RFC 3629, November 2003, [RFC2817] R. Khare, S. Lawrence, “Upgrading to TLS Within HTTP/1.1”, RFC 2817, May 2000, https://tools.ietf.org/html/rfc2817

[RFC3805] R. Bergman, H. Lewis, I. McDonald, "Printer MIB v2", RFC 3805, June 2004, https://tools.ietf.org/html/rfc3805

[RFC3806] R. Bergman, H. Lewis, I. McDonald, "Printer Finishing MIB", RFC 3806, June 2004, https://tools.ietf.org/html/rfc3806

[RFC3998] C. Kugler, H. Lewis, T. Hastings, "Internet Printing Protocol (IPP): Job and Printer Administrative Operations", RFC 3998, March 2005, https://tools.ietf.org/html/rfc3998

[RFC5198] J. Klensin, M. Padlipsky, "Unicode Format for Network Interchange", RFC 5198, March 2008, https://tools.ietf.org/html/rfc5198

[RFC7230] R. Fielding, J. Reschke, "Hypertext Transfer Protocol (HTTP/1.1): Message Syntax and Routing", RFC 7230, June 2014, https://tools.ietf.org/html/rfc7230

Page 74 of 79 Copyright © 2019-2020 The Printer Working Group. All rights reserved.

217218193119321933

1934193519361937

1938193919401941

19421943

19441945

19461947

194819491950

1951195219531954

19551956

19571958

195919601961

19621963

196419651966

219

Page 75: ftp.pwg.orgftp.pwg.org/pub/pwg/ipp/wd/wd-ippepx20-20200504-rev.docx  · Web view5/4/2020  · The IEEE-ISTO takes no position regarding the validity or scope of any intellectual

Working Draft – IPP Enterprise Printing Extensions v2.0 (EPX) May 4, 2020

[RFC8446] E. Rescorla, "The Transport Layer Security (TLS) Protocol Version 1.3", RFC 8446, August 2018, https://tools.ietf.org/html/rfc8446

[STD63] F. Yergeau, "UTF-8, a transformation format of ISO 10646", RFC 3629/STD 63, November 2003, https://tools.ietf.org/html/rfc3629

[STD66] T. Berners-Lee, R. Fielding, L. Masinter, "Uniform Resource Identifier (URI): Generic Syntax", RFC 3986/STD 66, January 2005, https://tools.ietf.org/html/rfc3986

[STD92] M. Sweet, I. McDonald, "Internet Printing Protocol/1.1", STD 92, June 2018, https://tools.ietf.org/html/std92

[UAX9] Unicode Consortium, “Unicode Bidirectional Algorithm”, UAX#9, May 2018, https://www.unicode.org/reports/tr9

[UAX14] Unicode Consortium, “Unicode Line Breaking Algorithm”, UAX#14, May 2018, https://www.unicode.org/reports/tr14

[UAX15] M. Davis, M. Duerst, "Unicode Normalization Forms", Unicode Standard Annex 15, May 2018, https://www.unicode.org/reports/tr15

[UAX29] Unicode Consortium, “Unicode Text Segmentation”, UAX#29, May 2018, https://www.unicode.org/reports/tr29

[UAX31] Unicode Consortium, “Unicode Identifier and Pattern Syntax”, UAX#31, June 2018, https://www.unicode.org/reports/tr31

[UNICODE] Unicode Consortium, "Unicode Standard", Version 11.0.0, June 2018, https://www.unicode.org/versions/Unicode11.0.0/

[UTS10] Unicode Consortium, “Unicode Collation Algorithm”, UTS#10, May 2018, https://www.unicode.org/reports/tr10

[UTS35] Unicode Consortium, “Unicode Locale Data Markup Language”, UTS#35, March 2018, https://www.unicode.org/reports/tr35

[UTS39] Unicode Consortium, “Unicode Security Mechanisms”, UTS#39, May 2018, https://www.unicode.org/reports/tr39

17.2[8.4] Informative References

[PROCESS3PWG5100.5] D. FullmanCarney, T. Hastings, " The Printer Working Group Definition of the Standards Development Process Version 3.0 ", January 2009P. Zehler, "IPP: Document Object", PWG 5100.5-2003, October 2003, https://ftp.pwg.org/pub/pwg/candidates/cs-ippdocobject10-20031031-5100.5.pdf

Page 75 of 79 Copyright © 2019-2020 The Printer Working Group. All rights reserved.

22022119671968

19691970

197119721973

19741975

19761977

19781979

19801981

19821983

19841985

19861987

19881989

19901991

19921993

1994

19951996199719981999

222

Page 76: ftp.pwg.orgftp.pwg.org/pub/pwg/ipp/wd/wd-ippepx20-20200504-rev.docx  · Web view5/4/2020  · The IEEE-ISTO takes no position regarding the validity or scope of any intellectual

Working Draft – IPP Enterprise Printing Extensions v2.0 (EPX) May 4, 2020

[PWG5100.11-2010] T. Hastings, D. Fullman, "IPP Job and Printer Extensions - Set 2 (JPS2)", PWG 5100.11-2010, October 2010, https://ftp.pwg.org/pub/pwg/candidates/cs-ippjobprinterext10-20101030-5100.11.pdf

[PWG5100.18] M. Sweet, I. McDonald, “IPP Shared Infrastructure Extensions”, 5100.18-2015, June 2015, https://ftp.pwg.org/pub/pwg/candidates/cs-ippinfra10-20150619-5100.18.pdf[RFC1759] R. Smith, F. Wright, T. Hastings, S. Zilles, J. Gyllenskog, “IETF Printer MIB”, RFC 1759, March 1995,

[RFC2567] F.D. Wright, "IETF “Design Goals for an Internet Printing Protocol",”, RFC 2567, April 1999, https://tools.ietf.org/html/rfc2567

[RFC2568] S. Zilles, " Rationale for the Structure of the Model and Protocol for the Internet Printing Protocol", RFC 2568, April 1999,

[RFC2707] R. Bergman, T. Hastings, S. Isaacson, H. Lewis, "IETF Job Monitoring MIB - V1.0", RFC 2707, September 1999,

[UTR17] Unicode Consortium “Unicode Character Encoding Model”, UTR#17, November 2008, https://www.unicode.org/reports/tr17

[UTR23] Unicode Consortium “Unicode Character Property Model”, UTR#23, May 2015, https://www.unicode.org/reports/tr23

[UTR33] Unicode Consortium “Unicode Conformance Model”, UTR#33, November 2008, https://www.unicode.org/reports/tr33

[UNISECFAQ] Unicode Consortium “Unicode Security FAQ”, November 2013,https://www.unicode.org/faq/security.html

18.[9.] Authors' Addresses

Smith KennedyHP Inc.11311 Chinden Blvd.Boise ID 83714USA

Michael SweetApple Inc.One Apple Park WayM/S 111-HOMC

Page 76 of 79 Copyright © 2019-2020 The Printer Working Group. All rights reserved.

2232242000200120022003

20042005200620072008

2009

20102011

20122013

20142015

20162017

20182019

20202021

20222023

2024

20252026202720282029203020312032203320342035

225

Page 77: ftp.pwg.orgftp.pwg.org/pub/pwg/ipp/wd/wd-ippepx20-20200504-rev.docx  · Web view5/4/2020  · The IEEE-ISTO takes no position regarding the validity or scope of any intellectual

Working Draft – IPP Enterprise Printing Extensions v2.0 (EPX) May 4, 2020

Cupertino, CA 95014USALakeside Robotics

Send comments to the PWG IPP Mailing List:

[email protected] (subscribers only)

To subscribe, see the PWG IPP workgroup web page:

https://www.pwg.org/ipp/

Implementers of this specification document are encouraged to join the IPP Mailing List in order to participate in any discussions of clarification issues and review of registration proposals for additional attributes and values.

The editors would like to especially thank the following individuals who also contributed significantly to the development of this document:

Ira McDonald High North, Inc.Chris Rizzo Xerox

19.[10.] Change History

19.1[10.1] May 4, 2020

Updated to add in the 'conflicting-attributes', 'job-release-wait', and 'unsupported-attributes-or-values' keywords for the "job-state-reasons" Job Status attribute moved from "IPP Transaction-Based Printing Extensions (2016)" that was overlooked in the April 28, 2020 draft.

19.2 April 28, 2020

Updated as per review from 2019-09-26 and 2019-10-24 IPP WG teleconferences, the November 2019 F2F, and from other sources:

Moved "Additional Semantics for Existing Operations" subsections relating to "job-password" from JPS3v2 to new section 9 / 9.1 / 9.2

Updated IANA Considerations section with many editorial fixes

Expanded the model feature descriptions in section 4 to tie together the disparate elements defined in other parts of the specification.

Page 77 of 79 Copyright © 2019-2020 The Printer Working Group. All rights reserved.

226227203620372038

2039

2040

2041

2042

204320442045

20462047

20482049

2050

2051

2052205320542055

2056

20572058

20592060

2061

20622063

228

Page 78: ftp.pwg.orgftp.pwg.org/pub/pwg/ipp/wd/wd-ippepx20-20200504-rev.docx  · Web view5/4/2020  · The IEEE-ISTO takes no position regarding the validity or scope of any intellectual

Working Draft – IPP Enterprise Printing Extensions v2.0 (EPX) May 4, 2020

Expanded the "Job Release" feature description substantially, and as a result added section 7.3 'Get-Jobs: "job-storage-group"' to provide a Client with a way to filter on a particular group

Removed "job-password-action" and instead defined more clear semantics about when a new Job is to be placed in the 'pending-held' state and when it should proceed to the 'pending' or 'processing' state, depending on context.

Added query semantics enabling a Client to discover whether the Printer supports Job Release with Job Storage and/or Proof Print, resolving a shortcoming of 5100.11-2010.

Updated Obsolete Attributes and Obsolete Values with complete list

Updated "job-state-reasons", conformance requirements, and IANA Considerations to hopefully correctly list all the definitions from sections 5-9.

19.3 October 10, 2019

Updated as per brief review from 2019-09-26 and from other sources:

Moved "Additional Semantics for Existing Operations" subsections relating to "job-password" from JPS3v2 to new section 9 / 9.1 / 9.2

Updated IANA Considerations section with many editorial fixes

Expanded the "Authorized Release Feature" feature description

19.4[10.2] September 11, 2019

Added definition of the 'enterprise' keyword for "ipp-features-supported" as per agenda for 2019-09-12 IPP WG meeting and added reference to PWG 5100.13. Also made all URLs in references use the "https" scheme.

19.5[10.3] September 3, 2019

Updated as per feedback from the July 18 IPP Workgroup teleconference review and other feedback:

Added version number ("v2.0") to title and name

Updated abstract and other references to use new feature names

Restored IPP Proof Print from 5100.11 and "rebranded" it as the Job Proof Print Ffeature in this document. Abandoned the proposed new Proof Print feature from HP.

Page 78 of 79 Copyright © 2019-2020 The Printer Working Group. All rights reserved.

229230206420652066

206720682069

207020712072

2073

20742075

2076

2077

20782079

2080

2081

2082

208320842085

2086

20872088

2089

2090

209120922093

231

Page 79: ftp.pwg.orgftp.pwg.org/pub/pwg/ipp/wd/wd-ippepx20-20200504-rev.docx  · Web view5/4/2020  · The IEEE-ISTO takes no position regarding the validity or scope of any intellectual

Working Draft – IPP Enterprise Printing Extensions v2.0 (EPX) May 4, 2020

Removed the " | name(MAX)" from the syntax definition for job-password-encryption, since site-defined localized strings in that context would seem to be unlikely and of limited value

Added "job-pause-after" and then questioned whether we ought to be adding it

Added a MAY statement allowing "job-password" to be used with "proof-print", with corresponding conditional requirements, so that the Job Proof Print Ffeature and Job Protection Ffeature can be used with a single Job to make a Protected Proof Print Job.

Added "proof-print-password-supported" and "proof-print-copies-supported"

Various questions still to be resolved are in comments

19.6[10.4] June 14, 2019

Updated to resolve issues identified in the April 2019 PWG F2F and to align with IPP Job Extensions v2.0.

19.7[10.5] March 27, 2019

Initial revision based on an abandoned update to JPS2v2 and discussions on the IPP WG reflector.

Page 79 of 79 Copyright © 2019-2020 The Printer Working Group. All rights reserved.

232233209420952096

2097

2098209921002101

2102

2103

2104

21052106

2107

21082109

234