126
® The Printer Working Group 29 November 2016 Working Draft Copyright © 2014-2016 The Printer Working Group. All rights reserved. IPP System Service v1.0 (SYSTEM) Status: Interim Abstract: This document defines an IPP System Service binding of the PWG Semantic Model root System object and associated System Control Service that are defined in (PWG 5108.06) and the PWG Resource Service that is defined in (PWG 5108.03). This document defines IPP objects, operations, and attributes to support management and status monitoring of all configured Services, Subunits, and Resources on an Imaging System. This document also defines IPP operations and attributes to support registration of an IPP System, through its IPP Proxy, with one or more Cloud Imaging Systems. This document is technically aligned with the abstract PWG Cloud Imaging Requirements and Model (PWG 5109.1) and concrete PWG IPP Shared Infrastructure Extensions (PWG 5100.18). This document is a PWG Working Draft. For a definition of a "PWG Working Draft", see: http://ftp.pwg.org/pub/pwg/general/pwg-process30.pdf This document is available electronically at: http://ftp.pwg.org/pub/pwg/ipp/wd/wd-ippsystem10-20161129.pdf

The Printer Working GroupThe Printer Working Group 29 November 2016 Working Draft Copyright © 2014-2016 The Printer Working Group. All rights reserved. IPP System Service v1.0 (SYSTEM)

  • Upload
    others

  • View
    1

  • Download
    0

Embed Size (px)

Citation preview

Page 1: The Printer Working GroupThe Printer Working Group 29 November 2016 Working Draft Copyright © 2014-2016 The Printer Working Group. All rights reserved. IPP System Service v1.0 (SYSTEM)

®

The Printer Working Group

29 November 2016 Working Draft

Copyright © 2014-2016 The Printer Working Group. All rights reserved.

IPP System Service v1.0 (SYSTEM)

Status: Interim

Abstract: This document defines an IPP System Service binding of the PWG Semantic Model root System object and associated System Control Service that are defined in (PWG 5108.06) and the PWG Resource Service that is defined in (PWG 5108.03). This document defines IPP objects, operations, and attributes to support management and status monitoring of all configured Services, Subunits, and Resources on an Imaging System. This document also defines IPP operations and attributes to support registration of an IPP System, through its IPP Proxy, with one or more Cloud Imaging Systems. This document is technically aligned with the abstract PWG Cloud Imaging Requirements and Model (PWG 5109.1) and concrete PWG IPP Shared Infrastructure Extensions (PWG 5100.18).

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

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

This document is available electronically at:

http://ftp.pwg.org/pub/pwg/ipp/wd/wd-ippsystem10-20161129.pdf

Page 2: The Printer Working GroupThe Printer Working Group 29 November 2016 Working Draft Copyright © 2014-2016 The Printer Working Group. All rights reserved. IPP System Service v1.0 (SYSTEM)

Working Draft – IPP System Service v1.0 (SYSTEM) 29 November 2016

Page 2 of 126 Copyright © 2014-2016 The Printer Working Group. All rights reserved.

Copyright © 2014-2016 The Printer Working Group. All rights reserved. 1

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

Title: IPP System Service v1.0 (SYSTEM) 9

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

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

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

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

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

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

Page 3: The Printer Working GroupThe Printer Working Group 29 November 2016 Working Draft Copyright © 2014-2016 The Printer Working Group. All rights reserved. IPP System Service v1.0 (SYSTEM)

Working Draft – IPP System Service v1.0 (SYSTEM) 29 November 2016

Page 3 of 126 Copyright © 2014-2016 The Printer Working Group. All rights reserved.

About the IEEE-ISTO 36

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

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

http://www.ieee-isto.org 43

About the IEEE-ISTO PWG 44

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

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

For additional information regarding the Printer Working Group visit: 59

http://www.pwg.org 60

Contact information: 61

The Printer Working Group 62 c/o The IEEE Industry Standards and Technology Organization 63 445 Hoes Lane 64 Piscataway, NJ 08854 65 USA 66

67

Page 4: The Printer Working GroupThe Printer Working Group 29 November 2016 Working Draft Copyright © 2014-2016 The Printer Working Group. All rights reserved. IPP System Service v1.0 (SYSTEM)

Working Draft – IPP System Service v1.0 (SYSTEM) 29 November 2016

Page 4 of 126 Copyright © 2014-2016 The Printer Working Group. All rights reserved.

About the Internet Printing Protocol Work Group 68

The Internet Printing Protocol (IPP) working group has developed a modern, full-featured 69 network printing protocol, which is the industry standard. IPP allows a print client to query 70 a printer for its supported capabilities, features, and parameters to allow the selection of an 71 appropriate printer for each print job. IPP also provides job information prior to, during, and 72 at the end of job processing. 73

For additional information regarding IPP visit: 74

http://www.pwg.org/ipp/ 75

Implementers of this specification are encouraged to join the IPP mailing list in order to 76 participate in any discussions of the specification. Suggested additions, changes, or 77 clarification to this specification, should be sent to the IPP mailing list for consideration. 78

79

Page 5: The Printer Working GroupThe Printer Working Group 29 November 2016 Working Draft Copyright © 2014-2016 The Printer Working Group. All rights reserved. IPP System Service v1.0 (SYSTEM)

Working Draft – IPP System Service v1.0 (SYSTEM) 29 November 2016

Page 5 of 126 Copyright © 2014-2016 The Printer Working Group. All rights reserved.

Table of Contents 80

1. Introduction .................................................................................................................... 11 81 1.1 Rationale for two IPP Protocol Endpoints ................................................................. 11 82 1.2 Get-Printer-Attributes Extension ............................................................................... 11 83 1.3 Printer Identifier Extension ....................................................................................... 11 84

2. Terminology ................................................................................................................... 12 85 2.1 Conformance Terminology ....................................................................................... 12 86 2.2 Protocol Role Terminology ....................................................................................... 13 87 2.3 Printing Terminology................................................................................................. 14 88 2.4 Abbreviations ............................................................................................................ 17 89

3. Requirements for the IPP System Service ..................................................................... 18 90 3.1 Rationale for the IPP System Service....................................................................... 18 91 3.2 Use Cases ................................................................................................................ 19 92

3.2.1 Imaging System Service Enumeration ............................................................... 19 93 3.2.2 Imaging System Monitoring ............................................................................... 19 94 3.2.3 Imaging System Management ........................................................................... 19 95 3.2.4 Resource Management ...................................................................................... 20 96 3.2.5 Bootstrap Client Access to Default Print Service ............................................... 20 97

3.3 Exceptions ................................................................................................................ 20 98 3.4 Out of Scope ............................................................................................................ 20 99 3.5 Design Requirements ............................................................................................... 20 100

4. IPP Object Model ........................................................................................................... 21 101 4.1 System Object .......................................................................................................... 21 102 4.2 Subunit Object .......................................................................................................... 21 103 4.3 Printer Object ........................................................................................................... 21 104 4.4 Job Object ................................................................................................................ 21 105 4.5 Document Object ...................................................................................................... 22 106 4.6 Resource Object ....................................................................................................... 22 107

4.6.1 Resource History ............................................................................................... 22 108

4.7 Subscription Object .................................................................................................. 23 109 5. IPP Objects and Operations Summary .......................................................................... 24 110

5.1 System Attribute Group ............................................................................................ 25 111 5.2 System Description Attributes .................................................................................. 25 112 5.3 System Status Attributes .......................................................................................... 26 113 5.4 System Operations ................................................................................................... 27 114 5.5 Resource Attribute Group ......................................................................................... 30 115 5.6 Resource Description Attributes ............................................................................... 30 116 5.7 Resource Status Attributes ....................................................................................... 30 117 5.8 Printer Description Attributes .................................................................................... 32 118 5.9 Printer Status Attributes ............................................................................................ 32 119 5.10 Job Status Attributes .............................................................................................. 33 120

6. IPP Operations ............................................................................................................... 34 121 6.1 Printer Operations .................................................................................................... 34 122

6.1.1 Allocate-Printer-Resources ................................................................................ 34 123 6.1.2 Create-Printer .................................................................................................... 34 124 6.1.3 Deallocate-Printer-Resources ............................................................................ 37 125

Page 6: The Printer Working GroupThe Printer Working Group 29 November 2016 Working Draft Copyright © 2014-2016 The Printer Working Group. All rights reserved. IPP System Service v1.0 (SYSTEM)

Working Draft – IPP System Service v1.0 (SYSTEM) 29 November 2016

Page 6 of 126 Copyright © 2014-2016 The Printer Working Group. All rights reserved.

6.1.4 Delete-Printer ..................................................................................................... 37 126 6.1.5 Get-Printers ....................................................................................................... 38 127 6.1.6 Get-Printer-Attributes ......................................................................................... 40 128 6.1.7 Shutdown-One-Printer ....................................................................................... 43 129 6.1.8 Startup-One-Printer ............................................................................................ 43 130

6.2 Resource Operations................................................................................................ 45 131 6.2.1 Cancel-Resource ............................................................................................... 45 132 6.2.2 Create-Resource................................................................................................ 46 133 6.2.3 Get-Resources ................................................................................................... 49 134 6.2.4 Get-Resource-Attributes .................................................................................... 49 135 6.2.5 Install-Resource ................................................................................................. 49 136 6.2.6 Send-Resource-Data ......................................................................................... 50 137 6.2.7 Set-Resource-Attributes ..................................................................................... 51 138

6.3 Subscription Operations ........................................................................................... 51 139 6.3.1 Create-Resource-Subscriptions ......................................................................... 51 140 6.3.2 Create-System-Subscriptions ............................................................................ 52 141

6.4 System Operations ................................................................................................... 54 142 6.4.1 Disable-All-Printers ............................................................................................ 54 143 6.4.2 Enable-All-Printers ............................................................................................. 54 144 6.4.3 Get-System-Attributes ........................................................................................ 55 145 6.4.4 Get-System-Supported-Values .......................................................................... 55 146 6.4.5 Pause-All-Printers .............................................................................................. 55 147 6.4.6 Pause-All-Printers-After-Current-Job ................................................................. 56 148 6.4.7 Register-Output-Device ..................................................................................... 56 149 6.4.8 Restart-System .................................................................................................. 56 150 6.4.9 Resume-All-Printers ........................................................................................... 56 151 6.4.10 Set-System-Attributes ...................................................................................... 57 152 6.4.11 Shutdown-All-Printers ...................................................................................... 57 153 6.4.12 Startup-All-Printers ........................................................................................... 58 154

7. IPP Attributes ................................................................................................................. 60 155 7.1 IPP Operation Attributes ........................................................................................... 60 156

7.1.1 printer-id (integer(1:MAX)) ................................................................................. 60 157 7.1.2 printer-ids (1setOf (integer(1:MAX))) .................................................................. 60 158 7.1.3 printer-geo-location (uri) ..................................................................................... 60 159 7.1.4 printer-location (text(127)) .................................................................................. 60 160 7.1.5 printer-service-type (1setOf (type2 keyword)) .................................................... 60 161 7.1.6 requesting-user-vcard (1setOf text(1023)) ......................................................... 60 162 7.1.7 resource-format (1setOf (mimeMediaType)) ...................................................... 61 163 7.1.8 resource-id (integer(1:MAX)).............................................................................. 61 164 7.1.9 resource-ids (1setOf integer(1:MAX)) ................................................................ 61 165 7.1.10 resource-k-octets (integer(0:MAX)) .................................................................. 61 166 7.1.11 resource-state (type1 enum) ............................................................................ 61 167 7.1.12 resource-type (type2 keyword)......................................................................... 62 168 7.1.13 system-uri (uri) ................................................................................................. 62 169 7.1.14 which-printers (type2 keyword): ....................................................................... 62 170

7.2 System Description Attributes .................................................................................. 62 171

Page 7: The Printer Working GroupThe Printer Working Group 29 November 2016 Working Draft Copyright © 2014-2016 The Printer Working Group. All rights reserved. IPP System Service v1.0 (SYSTEM)

Working Draft – IPP System Service v1.0 (SYSTEM) 29 November 2016

Page 7 of 126 Copyright © 2014-2016 The Printer Working Group. All rights reserved.

7.2.1 Power States and Policies ................................................................................. 63 172 7.2.2 charset-configured (charset) .............................................................................. 67 173 7.2.3 charset-supported (1setOf charset) ................................................................... 67 174 7.2.4 ipp-versions-supported (1setOf type2 keyword)................................................. 67 175 7.2.5 natural-language-configured (naturalLanguage) ................................................ 67 176 7.2.6 generated-natural-language-supported (1setOf naturalLanguage) .................... 67 177 7.2.7 operations-supported (1setOf type2 enum) ....................................................... 68 178 7.2.8 power-calendar-policy-col (1setOf collection) .................................................... 68 179 7.2.9 power-event-policy-col (1setOf collection) ......................................................... 70 180 7.2.10 power-timeout-policy-col (1setOf collection) .................................................... 71 181 7.2.11 printer-creation-attributes-supported (1setOf type2 keyword) .......................... 72 182 7.2.12 resource-settable-attributes-supported (1setOf type2 keyword) ...................... 72 183 7.2.13 system-current-time (dateTime) ....................................................................... 72 184 7.2.14 system-default-printer-id (integer (1:MAX) | no-value) ..................................... 72 185 7.2.15 system-device-id (text(1023))........................................................................... 73 186 7.2.16 system-geo-location (uri | unknown) ................................................................ 73 187 7.2.17 system-info (text(127)) ..................................................................................... 73 188 7.2.18 system-location (text(127)) .............................................................................. 73 189 7.2.19 system-mandatory-printer-attributes (1setOf type2 keyword) .......................... 73 190 7.2.20 system-make-and-model (text(127)) ................................................................ 74 191 7.2.21 system-message-from-operator (text(127)) ..................................................... 74 192 7.2.22 system-name (name(127)) ............................................................................... 74 193 7.2.23 system-owner-col (collection)........................................................................... 74 194 7.2.24 system-settable-attributes-supported (1setOf type2 keyword) ......................... 75 195 7.2.25 system-strings-languages-supported (1setOf naturalLanguage) ..................... 75 196 7.2.26 system-strings-uri (uri | no-value) ..................................................................... 75 197 7.2.27 system-xri-supported (1setOf collection) .......................................................... 75 198

7.3 System Status Attributes .......................................................................................... 77 199 7.3.1 power-log-col (1setOf collection)........................................................................ 77 200 7.3.2 power-state-capabilities-col (1setOf collection) .................................................. 78 201 7.3.3 power-state-counters-col (1setOf collection) ...................................................... 79 202 7.3.4 power-state-monitor-col (collection) ................................................................... 79 203 7.3.5 power-state-transitions-col (1setOf collection) ................................................... 81 204 7.3.6 system-config-change-date-time (dateTime) ..................................................... 81 205 7.3.7 system-config-change-time (integer(0:MAX)) .................................................... 82 206 7.3.8 system-config-changes (integer(0:MAX)) ........................................................... 82 207 7.3.9 system-configured-printers (1setOf collection) ................................................... 82 208 7.3.10 system-configured-resources (1setOf collection) ............................................. 83 209 7.3.11 system-serial-number (text(255)) ..................................................................... 85 210 7.3.12 system-state (type1 enum) .............................................................................. 85 211 7.3.13 system-state-change-date-time (dateTime) ..................................................... 85 212 7.3.14 system-state-change-time (integer(0:MAX)) .................................................... 85 213 7.3.15 system-state-message (1setOf (text(MAX))) .................................................... 85 214 7.3.16 system-state-reasons (1setOf type2 keyword) ................................................ 85 215 7.3.17 system-up-time (integer(1:MAX)) ..................................................................... 86 216 7.3.18 system-uuid (uri(45)) ........................................................................................ 86 217

Page 8: The Printer Working GroupThe Printer Working Group 29 November 2016 Working Draft Copyright © 2014-2016 The Printer Working Group. All rights reserved. IPP System Service v1.0 (SYSTEM)

Working Draft – IPP System Service v1.0 (SYSTEM) 29 November 2016

Page 8 of 126 Copyright © 2014-2016 The Printer Working Group. All rights reserved.

7.4 Printer Description Attributes .................................................................................... 86 218 7.4.1 printer-owner-col (collection) .............................................................................. 86 219

7.5 Printer Status Attributes ............................................................................................ 86 220 7.5.1 printer-config-changes (integer(0:MAX)) ............................................................ 86 221 7.5.2 printer-id (integer(1:MAX)) ................................................................................. 87 222 7.5.3 printer-service-type (type2 keyword) .................................................................. 87 223

7.6 Resource Description Attributes ............................................................................... 87 224 7.6.1 resource-info (text(127)) .................................................................................... 87 225 7.6.2 resource-name (name(127)) .............................................................................. 88 226 7.6.3 resource-owner-col (collection) .......................................................................... 88 227

7.7 Resource Status Attributes ....................................................................................... 88 228 7.7.1 date-time-at-canceled (dateTime) ...................................................................... 88 229 7.7.2 date-time-at-creation (dateTime)........................................................................ 88 230 7.7.3 date-time-at-installed (dateTime) ....................................................................... 89 231 7.7.4 resource-data-uri (uri | no-value)) ...................................................................... 89 232 7.7.5 resource-format (mimeMediaType) .................................................................... 89 233 7.7.6 resource-id (integer(1:MAX)).............................................................................. 89 234 7.7.7 resource-k-octets (integer(0:MAX)) .................................................................... 89 235 7.7.8 resource-state (type1 enum) .............................................................................. 89 236 7.7.9 resource-state-message (text(MAX)) ................................................................. 91 237 7.7.10 resource-state-reasons (1setOf type2 keyword) .............................................. 91 238 7.7.11 resource-string-version (text(127)) ................................................................... 91 239 7.7.12 resource-type (type2 keyword)......................................................................... 91 240 7.7.13 resource-use-count (integer(0:MAX)) ............................................................... 92 241 7.7.14 resource-uuid (uri(45)) ..................................................................................... 92 242 7.7.15 resource-version (octetString(16)) ................................................................... 92 243 7.7.16 time-at-canceled (integer(MIN:MAX)) .............................................................. 92 244 7.7.17 time-at-creation (integer(MIN:MAX)) ................................................................ 93 245 7.7.18 time-at-installed (integer(MIN:MAX)) ................................................................ 93 246

7.8 Job Status Attributes ................................................................................................ 93 247 7.8.1 job-owner-col (collection) ................................................................................... 93 248

8. Additional Semantics for Existing Operations ................................................................ 94 249 8.1 Cancel-Subscription, Get-Notifications, and Renew-Subscription: system-uri (uri) and 250 resource-id (integer(1:MAX)) .......................................................................................... 94 251 8.2 Get-Printer-Attributes: printer-resource-ids (1setOf integer(1:MAX)) ........................ 94 252 8.3 Create-Job, Get-Job-Attributes: job-resource-ids (1setOf integer(1:MAX)) .............. 94 253

9. Additional Values for Existing Attributes......................................................................... 94 254 9.1 notify-events (1setOf type2 keyword) ....................................................................... 94 255

10. Conformance Requirements ........................................................................................ 95 256 10.1 Conformance Requirements for Clients .................................................................. 95 257 10.2 Conformance Requirements for Infrastructure Systems ......................................... 95 258 10.3 Conformance Requirements for Systems ............................................................... 95 259

11. Internationalization Considerations .............................................................................. 95 260 12. Security Considerations ............................................................................................... 96 261 13. IANA and PWG Considerations ................................................................................... 96 262 14. References ................................................................................................................... 96 263

Page 9: The Printer Working GroupThe Printer Working Group 29 November 2016 Working Draft Copyright © 2014-2016 The Printer Working Group. All rights reserved. IPP System Service v1.0 (SYSTEM)

Working Draft – IPP System Service v1.0 (SYSTEM) 29 November 2016

Page 9 of 126 Copyright © 2014-2016 The Printer Working Group. All rights reserved.

14.1 Normative References ............................................................................................ 96 264 14.2 Informative References ........................................................................................ 100 265

15. Authors' Addresses .................................................................................................... 101 266 16. Appendix A – Rationale for Design Choices .............................................................. 102 267

16.1 Resource Object ................................................................................................... 102 268 16.1.1 Move Resource Service operations into System Service ............................... 102 269 16.1.2 Remove some Resource operations .............................................................. 102 270 16.1.3 Decompose some Resource operations ........................................................ 102 271 16.1.4 Replace Resource lease with Resource state................................................ 103 272

17. Change History .......................................................................................................... 104 273 17.1 29 November 2016 ............................................................................................... 104 274 17.2 1 November 2016 ................................................................................................. 105 275 17.3 18 October 2016 ................................................................................................... 106 276 17.4 4 October 2016 ..................................................................................................... 106 277 17.5 15 September 2016 .............................................................................................. 106 278 17.6 18 August 2016 .................................................................................................... 109 279 17.7 10 August 2016 .................................................................................................... 110 280 17.8 20 July 2016 ......................................................................................................... 111 281 17.9 6 July 2016 ........................................................................................................... 111 282 17.10 23 June 2016 ...................................................................................................... 113 283 17.11 12 June 2016 ...................................................................................................... 114 284 17.12 9 May 2016 ......................................................................................................... 115 285 17.13 8 May 2016 ......................................................................................................... 115 286 17.14 25 April 2016 ...................................................................................................... 116 287 17.15 28 February 2016 ............................................................................................... 117 288 17.16 17 January 2016 ................................................................................................. 117 289 17.17 6 December 2015 ............................................................................................... 118 290 17.18 2 November 2015 ............................................................................................... 118 291 17.19 18 October 2015 ................................................................................................. 119 292 17.20 20 September 2015 ............................................................................................ 119 293 17.21 31 August 2015 .................................................................................................. 120 294 17.22 10 August 2015 .................................................................................................. 121 295 17.23 28 April 2015 ...................................................................................................... 122 296 17.24 15 March 2015.................................................................................................... 123 297 17.25 2 November 2014 ............................................................................................... 124 298 17.26 24 August 2014 .................................................................................................. 125 299 17.27 11 August 2014 .................................................................................................. 126 300

301

Page 10: The Printer Working GroupThe Printer Working Group 29 November 2016 Working Draft Copyright © 2014-2016 The Printer Working Group. All rights reserved. IPP System Service v1.0 (SYSTEM)

Working Draft – IPP System Service v1.0 (SYSTEM) 29 November 2016

Page 10 of 126 Copyright © 2014-2016 The Printer Working Group. All rights reserved.

List of Figures 302

Figure 1 – IPP Resource Object Life Cycle ........................................................................ 90 303

304

305

List of Tables 306

Table 1 – IPP System Description Attributes ..................................................................... 25 307 Table 2 – IPP System Status Attributes ............................................................................. 26 308 Table 3 – IPP System Service Operations ......................................................................... 28 309 Table 4 – IPP Resource Description Attributes .................................................................. 30 310 Table 5 – IPP Resource Status Attributes .......................................................................... 31 311 Table 6 – IPP Printer Description Attributes ....................................................................... 32 312 Table 7 – IPP Printer Status Attributes .............................................................................. 32 313 Table 8 – IPP Job Status Attributes ................................................................................... 33 314 Table 9 – Recommended-to-Supply Printer Creation Attributes ........................................ 73 315 Table 10 – Member Attributes of system-configured-printers............................................. 82 316 Table 11 – Member attributes of system-configured-resources ......................................... 83 317 318

319

Page 11: The Printer Working GroupThe Printer Working Group 29 November 2016 Working Draft Copyright © 2014-2016 The Printer Working Group. All rights reserved. IPP System Service v1.0 (SYSTEM)

Working Draft – IPP System Service v1.0 (SYSTEM) 29 November 2016

Page 11 of 126 Copyright © 2014-2016 The Printer Working Group. All rights reserved.

1. Introduction 320

This document defines an IPP System Service binding of the PWG Semantic Model root 321 System object and associated System Control Service that are defined in [PWG 5108.06] 322 and the PWG Resource Service that is defined in [PWG5108.03]. This document defines 323 IPP objects, operations, and attributes to support management and status monitoring of all 324 configured Services, Subunits, and Resources on an Imaging System. This document 325 also defines IPP operations and attributes to support registration of an IPP System, 326 through its IPP Proxy, with one or more Cloud Imaging Systems. This document is 327 technically aligned with the abstract PWG Cloud Imaging Requirements and Model 328 [PWG5109.1] and concrete PWG IPP Shared Infrastructure Extensions [PWG5100.18]. 329

1.1 Rationale for two IPP Protocol Endpoints 330

This document defines the IPP System object that represents the IPP System Service. 331 The IPP operations on this System object and the IPP attributes defined for this System 332 object are disjoint from those defined for the Printer object in [RFC2911]. An IPP Imaging 333 System that conforms to this document supports both an IPP System object and (via a 334 System response to the Get-Printers operation) one or more IPP Printer objects, each of 335 which has a separate IPP Protocol Endpoint – i.e., separate values of IPP URI [RFC3510] 336 or IPPS URI [RFC7472]. 337

1.2 Get-Printer-Attributes Extension 338

For the convenience of existing IPP Clients, this document also includes the original Get-339 Printer-Attributes operation defined in IPP/1.1 Model and Semantics [RFC2911] with an 340 extension to automatically select the implementation-defined or site-defined “default” IPP 341 Printer object, unless the IPP Client explicitly specifies a given target Printer object in the 342 Get-Printer-Attributes request. 343

1.3 Printer Identifier Extension 344

This document defines a new IPP attribute “printer-id” that contains an integer unique 345 identifier for each Printer object within the IPP Imaging System. This extension simplifies 346 references to Printer objects, each of which can potentially support multiple Protocol 347 Endpoints in “printer-xri-supported” with different Client authentication and Printer security 348 policies. The use of a “printer-uri” operation attribute to identify a Printer object therefore 349 has some ambiguity about available operations and attributes via a specific Protocol 350 Endpoint. 351 352

Page 12: The Printer Working GroupThe Printer Working Group 29 November 2016 Working Draft Copyright © 2014-2016 The Printer Working Group. All rights reserved. IPP System Service v1.0 (SYSTEM)

Working Draft – IPP System Service v1.0 (SYSTEM) 29 November 2016

Page 12 of 126 Copyright © 2014-2016 The Printer Working Group. All rights reserved.

2. Terminology 353

2.1 Conformance Terminology 354

Capitalized terms, such as MUST, MUST NOT, RECOMMENDED, REQUIRED, SHOULD, 355 SHOULD NOT, MAY, and OPTIONAL, have special meaning relating to conformance as 356 defined in Key words for use in RFCs to Indicate Requirement Levels [RFC2119]. The 357 term CONDITIONALLY REQUIRED is additionally defined for a conformance requirement 358 that applies to a particular capability or feature. 359

360

Page 13: The Printer Working GroupThe Printer Working Group 29 November 2016 Working Draft Copyright © 2014-2016 The Printer Working Group. All rights reserved. IPP System Service v1.0 (SYSTEM)

Working Draft – IPP System Service v1.0 (SYSTEM) 29 November 2016

Page 13 of 126 Copyright © 2014-2016 The Printer Working Group. All rights reserved.

2.2 Protocol Role Terminology 361

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

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

Endpoint: Any computing device that can be connected to a network. Such devices 366 normally are associated with a particular link layer address before joining the network and 367 potentially an IP address once on the network. This includes: laptops, desktops, servers, 368 cell phones, or any device that may have an IP address (or any other network layer 369 address) [RFC5209]. 370

Infrastructure Printer: A Printer that represents a Logical Device associated with both a 371 Client and Proxy [PWG5100.18]. For Cloud-based implementations, the Infrastructure 372 Printer corresponds to a Cloud Imaging Service [PWG5019.1]. 373

Infrastructure System: A System that represents an entire Imaging System and accepts 374 incoming requests and connections from both Clients and Proxies and contains zero or 375 more Infrastructure Printers [PWG5100.18]. For Cloud-based implementations, the 376 Infrastructure System corresponds to a Cloud Imaging System [PWG5019.1]. 377

Printer: Listener for incoming IPP session requests and receiver of incoming IPP 378 operation requests (Hypertext Transfer Protocol -- HTTP/1.1 [RFC7230] Server) that 379 exposes a Printer object and implements an Imaging Service. 380

Protocol Endpoint: An application interface, typically at the transport layer or session 381 layer, that supports: a) initiating outgoing connection requests and operation requests; b) 382 listening for incoming connection requests and operation requests; or c) both initiating and 383 listening. Every Client, Printer, Proxy, and System supports at least one Protocol 384 Endpoint. 385

Proxy: A Client that sends configuration and status information to and retrieves and 386 manages Jobs and Documents from an Infrastructure Printer [PWG5100.18] on behalf of 387 one or more Output Devices and also communicates internally with an Infrastructure 388 System to register the local System and get back Infrastructure Printer URIs. 389

System: Listener for incoming IPP session requests and receiver of incoming IPP 390 operation requests (Hypertext Transfer Protocol -- HTTP/1.1 [RFC7230] Server) that 391 exposes a System object and implements a System Service. 392

393

Page 14: The Printer Working GroupThe Printer Working Group 29 November 2016 Working Draft Copyright © 2014-2016 The Printer Working Group. All rights reserved. IPP System Service v1.0 (SYSTEM)

Working Draft – IPP System Service v1.0 (SYSTEM) 29 November 2016

Page 14 of 126 Copyright © 2014-2016 The Printer Working Group. All rights reserved.

2.3 Printing Terminology 394

Normative definitions and semantics of printing terms are imported from IETF Design 395 Goals for an Internet Printing Protocol [RFC2567], IETF Printer MIB v2 [RFC3805], IETF 396 Printer Finishing MIB [RFC3806], IETF Internet Printing Protocol: Event Notifications and 397 Subscriptions [RFC3995], PWG IPP FaxOut Service [PWG5100.15], PWG IPP Scan 398 Service [PWG5100.17], PWG IPP Shared Infrastructure Extensions (INFRA) 399 [PWG5100.18], PWG MFD Model and Common Semantics [PWG5108.01], PWG Network 400 Resource Service Semantic Model and Service Interface [PWG5108.03], PWG System 401 Object and System Control Service Semantics [PWG5108.06], and IETF Internet Printing 402 Protocol/1.1: Model and Semantics [RFC2911]. 403

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

Delivery Method: The mechanism by which a System or Printer delivers an Event 407 Notification [RFC3995]. 408

Document: An object created and managed by an Imaging Service that contains the 409 description, processing, and status information. A Document object may have attached 410 data and is bound to a single Job object [RFC2911]. 411

End User: A person or software process that is authorized to perform basic printing 412 functions, including finding/locating a printer, creating a local instance of a printer, viewing 413 printer status, viewing printer capabilities, submitting a print job, viewing print job status, 414 and altering the attributes of a print job [RFC2567]. 415

Event: An occurrence (either expected or unexpected) within a System of a change of 416 state, condition, or configuration of a System, Printer, or Job. An Event occurs only at one 417 instant in time and does not span the time the physical Event takes place [RFC3995]. 418

Event Notification: The information about an Event that the Printer delivers when an Event 419 occurs [RFC3995]. 420

FaxOut Job: An object created and managed by a FaxOut Service that contains 421 description, processing, and status information. The FaxOut Job also contains zero or 422 more Document objects [PWG5100.15]. 423

FaxOut Service: An Imaging Service that accepts incoming IPP operation requests for 424 creation of FaxOut Jobs and management of FaxOut Jobs and the service itself 425 [PWG5100.15]. 426

IPP Binding: The Internet Printing Protocol implementation of an abstract information 427 model and associated set of abstract operations and data elements [RFC2911]. 428

Page 15: The Printer Working GroupThe Printer Working Group 29 November 2016 Working Draft Copyright © 2014-2016 The Printer Working Group. All rights reserved. IPP System Service v1.0 (SYSTEM)

Working Draft – IPP System Service v1.0 (SYSTEM) 29 November 2016

Page 15 of 126 Copyright © 2014-2016 The Printer Working Group. All rights reserved.

Imaging Device: A physical hardware entity (stand-alone) or logical software entity (hosted 429 on a network server) that supports one or more Imaging Services (e.g., Print, Scan, 430 FaxOut, etc.) [PWG5108.01]. 431

Imaging Service: A software entity that supports document or image processing (e.g., 432 Print, Scan, FaxOut, etc.) [PWG5108.01]. 433

Imaging System: A logical or physical system supports a System object and a System 434 Service for monitoring and management of one or more Imaging Services (e.g., Print, 435 Scan, FaxOut, etc.) [PWG5108.01]. 436

ith: Referring to a specific IPP ‘1setOf’ value - the first value, the second value, and so 437 forth. 438

Job: An object created and managed by an Imaging Service that contains the description, 439 processing, and status information. A Job object also contains zero or more Document 440 objects [RFC2911]. 441

Logical Device: a print server, software service, or gateway that processes jobs and either 442 forwards or stores the processed job or uses one or more Physical Devices to render 443 output [RFC2911]. 444

Notification: Synonym for Event Notification [RFC3995]. 445

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

Output Device: a single Logical or Physical Device [PWG5100.18]. 450

Owner: The End User or Administrator who owns and manages (and typically created) a 451 Job, Printer, Resource, Subscription, or System [PWG5108.06]. 452

Physical Device: a hardware implementation of an endpoint device, e.g., a marking engine, 453 a fax modem, etc [RFC2911]. 454

Print Job: An object created and managed by a Print Service that contains description, 455 processing, and status information. The Print Job also contains zero or more Document 456 objects [RFC2911]. 457

Print Service: An Imaging Service that accepts incoming IPP operation requests for 458 creation of Print Jobs and management of Print Jobs and the service itself [PWG5108.01]. 459

Printer: Synonym for Imaging Service – an object that accepts incoming IPP operation 460 requests for creation of Imaging Jobs and management of Imaging Jobs [RFC2911]. 461

Page 16: The Printer Working GroupThe Printer Working Group 29 November 2016 Working Draft Copyright © 2014-2016 The Printer Working Group. All rights reserved. IPP System Service v1.0 (SYSTEM)

Working Draft – IPP System Service v1.0 (SYSTEM) 29 November 2016

Page 16 of 126 Copyright © 2014-2016 The Printer Working Group. All rights reserved.

Resource: A data object (e.g., firmware, font, logo, etc.) that can be configured on an 462 Imaging System for use by one or more Imaging Services and has a System, Printer, or 463 Job scope [PWG5108.01]. 464

Scan Job: An object created and managed by a Scan Service that contains description, 465 processing, and status information. The Scan Job also contains zero or more Document 466 objects [PWG5100.17]. 467

Scan Service: An Imaging Service that accepts incoming IPP operation requests for 468 creation of Scan Jobs and management of Scan Jobs and the service itself 469 [PWG5100.17]. 470

Spooling Service: An Imaging Service that stores all of a Job's document data so that it 471 can be reprocessed as needed [PWG5100.18]. 472

Streaming Service: An Imaging Service that stores some of a Job's document data as it is 473 processed, output, and/or delivered [PWG5100.18]. 474

Subscription: An object containing a set of attributes that indicate: the Notification 475 Recipient (for Push Delivery Method only), the Delivery Method, the Subscribed Events 476 that cause the Printer to deliver an Event Notification, and the information to include in an 477 Event Notification [RFC3995]. 478

Subunit: A hardware component (e.g., input tray or marker) or software component (e.g., 479 input channel or interpreter) of an Imaging System [RFC3995] [PWG5108.01]. 480

System Service: A software entity that supports management of all hardware and software 481 components of an Imaging System and the System object defined in this specification 482 [PWG5108.06]. 483

Transform Job: An object created and managed by a Transform Service that contains 484 description, processing, and status information. The Transform Job also contains zero or 485 more Document objects [PWG5108.01]. 486

Transform Service: An Imaging Service that accepts incoming IPP operation requests for 487 creation of Transform Jobs and management of Transform Jobs and the service itself 488 [PWG5108.01]. 489

490

491

Page 17: The Printer Working GroupThe Printer Working Group 29 November 2016 Working Draft Copyright © 2014-2016 The Printer Working Group. All rights reserved. IPP System Service v1.0 (SYSTEM)

Working Draft – IPP System Service v1.0 (SYSTEM) 29 November 2016

Page 17 of 126 Copyright © 2014-2016 The Printer Working Group. All rights reserved.

2.4 Abbreviations 492

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

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

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

PWG: Printer Working Group, http://www.pwg.org/ 496

497

Page 18: The Printer Working GroupThe Printer Working Group 29 November 2016 Working Draft Copyright © 2014-2016 The Printer Working Group. All rights reserved. IPP System Service v1.0 (SYSTEM)

Working Draft – IPP System Service v1.0 (SYSTEM) 29 November 2016

Page 18 of 126 Copyright © 2014-2016 The Printer Working Group. All rights reserved.

3. Requirements for the IPP System Service 498

3.1 Rationale for the IPP System Service 499

Existing IPP specifications define the following features and functionality: 500

1) IPP Version 2.0, 2.1, and 2.2 [PWG5100.12] defines: 501 (a) Three profiles that cover all previous IETF and PWG IPP specifications; 502 (b) Existing Printer and Job operations and attributes required for each profile; 503 (c) Standard IPP version numbers for each profile (2.0, 2.1, and 2.2); and 504 (d) Specific interoperability requirements, such as HTTP/1.1 support with chunking 505 and IPP collection attribute support; 506

2) IPP: Job and Printer Extensions – Set 3 [PWG5100.13] defines operations and 507 attributes required for mobile printing and printing with generic drivers; 508

3) IPP Everywhere [PWG5100.14] defines an IPP extension to support network 509 printing without vendor-specific driver software, including transport protocols, 510 various discovery protocols, and standard document formats; 511

4) IPP FaxOut Service [PWG5100.15] defines an IPP extension to support the PWG 512 Semantic Model FaxOut Service [PWG5108.05] over IPP; 513

5) IPP Scan Service [PWG5100.17] defines an IPP extension to support the PWG 514 Semantic Model Scan Service [PWG5108.02] over IPP; and 515

6) IPP Shared Infrastructure Extensions [PWG5100.18] defines operations and 516 attributes required to allow IPP Printers to interface with shared services based in 517 the network infrastructure, i.e., software-defined networks, and/or through Cloud-518 based solutions to remotely obtain and process Jobs and Documents, and provide 519 state and configuration changes to those services. 520

521

Existing PWG Semantic Model specifications define the following features and 522 functionality: 523

1) PWG MFD Model and Common Semantics [PWG5801.01] defines: 524 (a) A PWG System object as the root of the PWG Semantic Model (including the 525 associated XML Schema); and 526 (b) An extension of the original PWG Semantic Model [PWG5105.1] (abstract print 527 service) to support all of the typical multifunction services (Print, Scan, FaxOut, 528 etc.); 529

2) PWG System object and System Control Service [PWG5108.05] defines the 530 elements of the PWG System object and system operations of the PWG System 531 Control Service; 532

Page 19: The Printer Working GroupThe Printer Working Group 29 November 2016 Working Draft Copyright © 2014-2016 The Printer Working Group. All rights reserved. IPP System Service v1.0 (SYSTEM)

Working Draft – IPP System Service v1.0 (SYSTEM) 29 November 2016

Page 19 of 126 Copyright © 2014-2016 The Printer Working Group. All rights reserved.

3) PWG Resource Service [PWG5108.3] defines the elements of the PWG Resource 533 object and resource operations of the PWG Resource Service; and 534

4) PWG Cloud Imaging Requirements and Model [PWG5109.1] defines an abstract 535 model to support Imaging Services using the Cloud, based on the PWG Semantic 536 Model. The IPP Binding for this abstract model is described in IPP Shared 537 Infrastructure Extensions [PWG5100.18]. 538

539

Therefore, this IPP System Service specification should define: 540

1) An IPP binding of the PWG System object; 541

2) An IPP binding of the PWG System Control Service to support management and 542 monitoring of Imaging Systems and their configured Imaging Services; and 543

3) An IPP binding of the PWG Resource object and the PWG Resource Service. 544

3.2 Use Cases 545

3.2.1 Imaging System Service Enumeration 546

Jane wants to determine what services are available on an Imaging System and their 547 capabilities. After Jane initiates service enumeration by using the IPP Client on her laptop 548 to send a query to the Imaging System for the list of available services. After receiving the 549 response from the Imaging System, the IPP Client sends further queries to each Imaging 550 Service for its capabilities and configuration. Finally, the IPP Client displays the list of 551 available Imaging Services and their capabilities. 552

3.2.2 Imaging System Monitoring 553

Jane wants to monitor the usage and supply levels of an Imaging System. She uses the 554 IPP Client on her laptop to periodically query the input trays and the supply levels of 555 relevant components on the Imaging System and the usage counters for each Imaging 556 Service supported by the Imaging System. 557

3.2.3 Imaging System Management 558

Jane needs to periodically pause and resume all of the services supported by an Imaging 559 System in order to perform maintenance. She uses the IPP Client on her laptop to send 560 pause and resume requests to the Imaging System as needed. 561

Page 20: The Printer Working GroupThe Printer Working Group 29 November 2016 Working Draft Copyright © 2014-2016 The Printer Working Group. All rights reserved. IPP System Service v1.0 (SYSTEM)

Working Draft – IPP System Service v1.0 (SYSTEM) 29 November 2016

Page 20 of 126 Copyright © 2014-2016 The Printer Working Group. All rights reserved.

3.2.4 Resource Management 562

Jane wants to install a resource (firmware, font, logo, etc.) on an Imaging System in order 563 to extend the functionality of the Imaging System. She uses the IPP Client on her laptop to 564 create and upload the desired resource to the Imaging System. 565

3.2.5 Bootstrap Client Access to Default Print Service 566

Jane sees that there’s a new network printer installed in the hall near her office that has an 567 IPv4 address written on the top (e.g., “10.1.2.3”). She wants to use that network printer, 568 but doesn’t know how to find the specific URI of a running print service on that machine. 569 She uses the IPP Client on her laptop to query the IPP System Service that listens on the 570 standard IPP port (e.g., “ipp://10.1.2.3:631”) on that machine to find the default print 571 service URI on that machine (e.g., “ipp://printer12.example.com/ipp/print”). 572

3.3 Exceptions 573

There are no exceptions to the use cases defined in section 3.2. 574

3.4 Out of Scope 575

The out-of-scope requirements for this IPP System Service specification are: 576

1) Configuration of Imaging Services directly through the System Service (e.g., 577 defaults or assigned Subunits). 578

2) Pause/Resume or Enable/Disable of a sparse list of specific Imaging Services on an 579 Imaging System (because the resulting operation status would be complicated 580 and/or ambiguous). 581

3) Migration of Imaging Services and/or Jobs to another Imaging System. 582 4) Support for any non-IPP Cloud Imaging System. 583

3.5 Design Requirements 584

The design requirements for this IPP System Service specification are: 585

1) Follow the naming conventions defined in IPP/1.1: Model and Semantics 586 [RFC2911], including keyword value case (lower) and hyphenation requirements. 587

2) Define objects, attribute groups, attributes, and values to support the System object, 588 Resource object, and System Service. 589

3) Define operations to support the System Service and the use cases defined in 590 section 3.2. 591

592

Page 21: The Printer Working GroupThe Printer Working Group 29 November 2016 Working Draft Copyright © 2014-2016 The Printer Working Group. All rights reserved. IPP System Service v1.0 (SYSTEM)

Working Draft – IPP System Service v1.0 (SYSTEM) 29 November 2016

Page 21 of 126 Copyright © 2014-2016 The Printer Working Group. All rights reserved.

4. IPP Object Model 593

This specification extends the original IPP Model defined in section 2 of IETF IPP/1.1 594 Model and Semantics [RFC2911] from the original print service scope to include all 595 Imaging Services on a managed Imaging System. 596

4.1 System Object 597

This specification defines a root object called a “System” that is an IPP binding of the 598 System object defined in PWG System object and System Control Service [PWG5108.06]. 599

This object contains: (a) description (e.g., name and manufacturer) including summaries 600 of configured services, subunits, and resources; and (b) overall status (e.g., state and 601 counters). 602

Note: Since Systems are typically long-lived objects, System Owners are mutable (i.e., 603 System Description attributes). 604

4.2 Subunit Object 605

This specification identifies a component object called a “Subunit” that is an IPP binding of 606 the Subunit object defined in PWG MFD Model and Common Semantics [PWG5801.01] 607 and is based on the Subunit (hardware or software component) defined in IETF Printer 608 MIB v2 [RFC3805]. This specification does not define any explicit System object attributes 609 to refer to Subunit objects. Instead, existing IPP Printer object attributes (e.g., “printer-610 input-tray” defined in [PWG 5100.13]) can be used to convey information about Subunit 611 objects. 612

4.3 Printer Object 613

This specification extends the original IPP Printer object defined in IETF IPP/1.1 Model 614 and Semantics [RFC2911] to represent any Imaging Service (print, scan, etc.), in order to 615 reuse existing IPP Printer operations and attributes in the individual Imaging Services, but 616 NOT directly in this specification. 617

Note: Since Printers are typically long-lived objects, Printer Owners are mutable (i.e., 618 Printer Description attributes). 619

4.4 Job Object 620

This specification extends the original IPP Job object defined in IETF IPP/1.1 Model and 621 Semantics [RFC2911] to represent a Job on any Imaging Service (Print, Scan, etc.), in 622 order to reuse existing IPP Job operations and attributes in the individual Imaging 623 Services, but NOT directly in this specification. 624

Page 22: The Printer Working GroupThe Printer Working Group 29 November 2016 Working Draft Copyright © 2014-2016 The Printer Working Group. All rights reserved. IPP System Service v1.0 (SYSTEM)

Working Draft – IPP System Service v1.0 (SYSTEM) 29 November 2016

Page 22 of 126 Copyright © 2014-2016 The Printer Working Group. All rights reserved.

Note: Since Jobs are typically short-lived objects, Job Owners are immutable (i.e., Job 625 Status attributes). 626

4.5 Document Object 627

This specification extends the original IPP Document object defined in IETF IPP/1.1 Model 628 and Semantics [RFC2911] to represent a Document contained in a Job on any Imaging 629 Service (Print, Scan, etc.), in order to reuse existing IPP Document operations and 630 attributes in the individual Imaging Services, but NOT directly in this specification. 631

4.6 Resource Object 632

This specification extends the original Resource object defined in PWG Network Resource 633 Service [PWG5108.03], in order to incorporate Resource operations directly into the IPP 634 System Service. Resources are managed by the System and each Resource has a 635 system-wide unique status attribute “resource-id”. Resources are persistent until they are 636 explicitly canceled by an Administrator or aborted by the System. Creation of a new 637 Resource is supported via the Create-Resource operation and “resource-use-count” will be 638 set to zero. Upload of Resource data is supported via the Send-Resource-Data operation. 639 Subsequent installation of a Resource (for use) is supported via the Install-Resource 640 operation. For a System-scope Resource, “resource-use-count” will be set to one after the 641 Resource is successfully installed. For a Printer-scope or Job-scope Resource, “resource-642 use-count” will be incremented by one each time that the Resource is allocated to a Printer 643 or a Job (e.g., via Allocate-Printer-Resource or a Create-Job operation that includes a 644 “resource-ids” operation attribute. When an allocated Resource is busy at the time of a 645 Cancel-Resource request, ‘cancel-requested’ will be added to the “resource-state-reasons” 646 and the Resource will not transition to a “resource-state” of ‘canceled’ until the allocated 647 Resource is no longer busy, as indicated by a “resource-use-count” value of zero. 648

See Figure 1 in section 0 resource-state for a diagram of normal Resource state 649 transitions. Resources in this specification do not have leases and expiration times (as 650 they formerly did in the original Resource object defined in [PWG5108.03]). 651

IPP System Service implementations SHOULD support System-scope executable 652 resources (e.g., for firmware update). System Service implementations MAY support 653 Printer-scope and/or Job-scope executable resources in an implementation-defined 654 manner. 655

Note: Since Resources are typically long-lived objects, Resource Owners are mutable 656 (i.e., Resource Description attributes). 657

4.6.1 Resource History 658

The System MUST support an implementation-defined Resource History phase of at least 659 300 seconds, to preserve the integrity of system log files. The System SHOULD “age” out 660 (i.e., delete) Resource objects with “resource-state” of ‘canceled’ or ‘aborted’ from the 661

Page 23: The Printer Working GroupThe Printer Working Group 29 November 2016 Working Draft Copyright © 2014-2016 The Printer Working Group. All rights reserved. IPP System Service v1.0 (SYSTEM)

Working Draft – IPP System Service v1.0 (SYSTEM) 29 November 2016

Page 23 of 126 Copyright © 2014-2016 The Printer Working Group. All rights reserved.

Resource History when they have exceeded the implementation-defined Resource History 662 period. This is analogous to the handling of Job objects in a terminal state as discussed in 663 the section “Partitioning of Job States” in [RFC2911]. However, unlike Job objects, the 664 Resource object associated data referenced by “resource-data-uri” SHOULD be discarded 665 as soon as the Resource transitions to the ‘canceled’ or ‘aborted’ terminal state (instead of 666 at the end of the Resource History phase). 667

4.7 Subscription Object 668

This specification extends the original IPP Subscription object defined in IPP Event 669 Notifications and Subscriptions [RFC3995] to allow subscriptions to the IPP System object 670 for event notifications. 671

Note: Since Subscriptions are typically short-lived objects, Subscription Owners are 672 immutable (i.e., Subscription Status attributes). 673

Page 24: The Printer Working GroupThe Printer Working Group 29 November 2016 Working Draft Copyright © 2014-2016 The Printer Working Group. All rights reserved. IPP System Service v1.0 (SYSTEM)

Working Draft – IPP System Service v1.0 (SYSTEM) 29 November 2016

Page 24 of 126 Copyright © 2014-2016 The Printer Working Group. All rights reserved.

5. IPP Objects and Operations Summary 674

This specification combines and maps the PWG SM System and PWG System Control 675 Service objects [PWG5801.01] into the IPP System object, which is the target of all IPP 676 system-level and resource-level operations. This is consistent with Print Service 677 operations targeted at original IPP Printer object. 678

This specification maps the PWG SM Resource object [PWG5108.03] into the IPP 679 Resource object and defines a set of resource-level operations. 680

This specification defines additional attributes for the Printer and Job objects [RFC2911]. 681

Note: All tables in this section list only top-level attributes. Collection member attributes 682 are not listed here and are described in detail in section 7 IPP Attributes below their 683 enclosing collection attributes. 684

685

Page 25: The Printer Working GroupThe Printer Working Group 29 November 2016 Working Draft Copyright © 2014-2016 The Printer Working Group. All rights reserved. IPP System Service v1.0 (SYSTEM)

Working Draft – IPP System Service v1.0 (SYSTEM) 29 November 2016

Page 25 of 126 Copyright © 2014-2016 The Printer Working Group. All rights reserved.

5.1 System Attribute Group 686

This document defines the system-attributes-tag (0x0A) for a System attribute group. 687

5.2 System Description Attributes 688

The potentially READ-WRITE attributes in the IPP System Description group are listed in 689 Table 1. 690

Table 1 – IPP System Description Attributes 691

Conformance IPP Attribute Name SM Element Name Reference

REQUIRED charset-configured CharsetConfigured[1] [PWG5108.06] REQUIRED charset-supported CharsetSupported[1] [PWG5108.06] REQUIRED generated-natural-language-

supported NaturalLanguageSupported[1] [PWG5108.06]

REQUIRED ipp-versions-supported VersionsSupported[1] [PWG5108.06] REQUIRED natural-language-configured NaturalLanguageConfigured[1] [PWG5108.06] REQUIRED operations-supported OperationsSupported[1] [PWG5108.06] OPTIONAL power-calendar-policy-col PowerCalendar [PWG5108.06] OPTIONAL power-event-policy-col PowerEvent [PWG5108.06] RECOMMENDED power-timeout-policy-col PowerTimeout[3] [PWG5108.06] REQUIRED printer-creation-attributes-

supported <none>[8] <none>

REQUIRED resource-settable-attributes-supported

<none>[7] <none>

REQUIRED system-current-time CurrentTime[2] [PWG5108.06] REQUIRED system-default-printer-id <none>[5] <none> REQUIRED system-device-id DeviceId[2] [PWG5108.06] REQUIRED system-geo-location SystemGeoLocation[2] [PWG5108.06] REQUIRED system-info SystemInfo[2] [PWG5108.06] REQUIRED system-location SystemLocation[2] [PWG5108.06] REQUIRED system-make-and-model MakeAndModel[2] [PWG5108.06] OPTIONAL system-message-from-operator MessageFromOperator [PWG5108.06] REQUIRED system-name SystemName[2] [PWG5108.06] REQUIRED system-owner-col OwnerUri, OwnerVCard[4] [PWG5108.06] REQUIRED system-settable-attributes-

supported <none>[6] <none>

REQUIRED system-xri-supported XriSupported [PWG5108.06]

Notes: 692

1) REQUIRED for a Printer per IETF IPP/1.1 Model and Semantics [RFC2911]. 693

2) REQUIRED for a Printer per PWG IPP Everywhere [PWG5100.14]. 694

3) REQUIRED or RECOMMENDED for a System per PWG Power Management 695 Model [PWG5106.4]. 696

Page 26: The Printer Working GroupThe Printer Working Group 29 November 2016 Working Draft Copyright © 2014-2016 The Printer Working Group. All rights reserved. IPP System Service v1.0 (SYSTEM)

Working Draft – IPP System Service v1.0 (SYSTEM) 29 November 2016

Page 26 of 126 Copyright © 2014-2016 The Printer Working Group. All rights reserved.

4) REQUIRED for all Systems since they MUST support the Set-System-Attributes 697 operation – also “owner-uri” and “owner-vcard” MUST be updated simultaneously if 698 specified in a Set-System-Attributes operation (to preserve consistency). 699

5) REQUIRED for a System to support the Get-Printer-Attributes operation which can 700 use the implementation-defined or administratively-configured “default” Printer 701 object as a target. 702

6) REQUIRED for System support of the REQUIRED Set-System-Attributes operation 703 and semantically analogous to the “printer-settable-attributes-supported” Printer 704 Description attribute defined in Internet Printing Protocol (IPP): Job and Printer Set 705 Operations [RFC3380]. 706

7) REQUIRED for System support of the REQUIRED Set-Resource-Attributes 707 operation and semantically analogous to the “printer-settable-attributes-supported” 708 Printer Description attribute defined in Internet Printing Protocol (IPP): Job and 709 Printer Set Operations [RFC3380]. 710

8) REQUIRED for System support of the REQUIRED Create-Printer operation and 711 semantically analogous to the “job-creation-attributes-supported” Printer Description 712 attribute defined in Internet Printing Protocol (IPP): Job and Printer Extensions – Set 713 2 [PWG5100.11]. 714

5.3 System Status Attributes 715

The READ-ONLY attributes in the IPP System Status group are listed in Table 2. These 716 attributes are inherently READ-ONLY and can only be modified indirectly as a side effect 717 of one or more IPP System Service operations, but NOT by a Set-System-Attributes 718 operation. 719

Table 2 – IPP System Status Attributes 720

Conformance IPP Attribute Name SM Element Name Reference RECOMMENDED power-log-col PowerLog[3] [PWG5108.06] OPTIONAL power-state-capabilities-col PowerSupport [PWG5108.06] OPTIONAL power-state-counters-col PowerCounters [PWG5108.06] RECOMMENDED power-state-monitor-col PowerMonitor[3] [PWG5108.06] OPTIONAL power-state-transitions-col PowerTransition [PWG5108.06] REQUIRED system-config-change-date-

time <none>[8] <none>

REQUIRED system-config-change-time <none>[8] <none> REQUIRED system-config-changes SystemConfigChangeNumber[5] [PWG5108.06] REQUIRED system-configured-printers ConfiguredServices [PWG5108.06] REQUIRED system-configured-resources ConfiguredResources [PWG5108.06] OPTIONAL system-serial-number SerialNumber[5] [PWG5108.06] REQUIRED system-state State[1] [PWG5108.06] REQUIRED system-state-change-date-

time <none>[8] <none>

REQUIRED system-state-change-time <none>[8] <none>

Page 27: The Printer Working GroupThe Printer Working Group 29 November 2016 Working Draft Copyright © 2014-2016 The Printer Working Group. All rights reserved. IPP System Service v1.0 (SYSTEM)

Working Draft – IPP System Service v1.0 (SYSTEM) 29 November 2016

Page 27 of 126 Copyright © 2014-2016 The Printer Working Group. All rights reserved.

REQUIRED system-state-message StateMessages[2] [PWG5108.06] REQUIRED system-state-reasons StateReasons[2] [PWG5108.06] RECOMMENDED system-strings-languages-

supported <none>[9] <none>

RECOMMENDED system-strings-uri <none>[9] <none> RECOMMENDED system-totals SystemTotals[6] [PWG5108.06] REQUIRED system-up-time UpTime[2] [PWG5108.06] REQUIRED system-uuid ServiceUuid[2] [7] [PWG5108.01]

Notes: 721

1) REQUIRED for a Printer per IETF IPP/1.1 Model and Semantics [RFC2911]. 722

2) REQUIRED for a Printer per PWG IPP Everywhere [PWG5100.14]. 723

3) REQUIRED or RECOMMENDED for a System per PWG Power Management 724 Model [PWG5106.4] – Power General, Meters, and Monitor groups have been 725 combined into the “power-state-monitor-col” System attribute. 726

4) Summary of SystemConfiguration group (subunits) – similar to ConfiguredServices 727 in [PWG5108.06]. 728

5) REQUIRED for a Printer per IETF Printer MIB v2 [RFC3805]. 729

6) REQUIRED for a System per PWG Imaging System Counters [PWG5106.1]. 730

7) The System object “system-uuid” attribute identifies the System Serviceand is 731 semantically analogous to the Printer object “printer-uuid” defined in IPP Job and 732 Printer Extensions – Set 3 (JPS3) [PWG5100.13] that identifies a specific Imaging 733 Service (e.g., Print, Scan, FaxOut, etc.). 734

8) The System object “system-config-change-[date-time|time]” and “system-state-735 change-[date-time|time] attributes are necessary to support System event 736 notifications per IPP: Events Notifications and Subscriptions [RFC3995] and are 737 semantically analogous to the Printer object “printer-config-change-[date-time|time]” 738 attributes defined in [PWG5100.13] and “printer-state-change-[date-time|time]” 739 attributes defined in [RFC3995]. 740

9) The System object “system-strings-languages-supported” and “system-strings-uri” 741 attributes are necessary to support Client-side localizations and are semantically 742 analogous to the Printer object “printer-strings-languages-supported” and “printer-743 strings-uri” attributes defined in IPP Job and Printer Extensions – Set 3 (JPS3) 744 [PWG5100.13]. 745

5.4 System Operations 746

The operations for an IPP System Service conforming to this specification are listed in 747 Table 3. 748

Page 28: The Printer Working GroupThe Printer Working Group 29 November 2016 Working Draft Copyright © 2014-2016 The Printer Working Group. All rights reserved. IPP System Service v1.0 (SYSTEM)

Working Draft – IPP System Service v1.0 (SYSTEM) 29 November 2016

Page 28 of 126 Copyright © 2014-2016 The Printer Working Group. All rights reserved.

Table 3 – IPP System Service Operations 749

Code IPP Operation Name SM Operation Name Reference 0x00nn Allocate-Printer-Resources <none> <none> 0x00nn Cancel-Resource DeleteResource [PWG5108.03] 0x00nn Cancel-

Subscription <none>[8] <none>

0x00nn Create-Printer <none>[5] <none> 0x00nn Create-Resource StoreResource[3] [PWG5108.03] 0x00nn Create-Resource-

Subscriptions <none>[8] <none>

0x00nn Create-System- Subscriptions

<none>[8] <none>

0x00nn Deallocate-Printer-Resources

<none> <none>

0x00nn Delete-Printer DeleteService [PWG5108.06] 0x00nn Disable-All-Printers DisableAllServices[2] [PWG5108.06] 0x00nn Enable-All-Printers EnableAllServices[2] [PWG5108.06] 0x00nn Get-Notifications <none>[8] <none> 0x00nn Get-Printers ListAllServices [PWG5108.06] 0x00nn Get-Printer-Attributes GetServiceElements[4] [PWG5108.06] 0x00nn Get-Resources ListResources [PWG5108.03] 0x00nn Get-Resource-Attributes GetResourceElements [PWG5108.03] 0x00nn Get-Subscriptions <none>[8] <none> 0x00nn Get-Subscription-Attributes <none>[8] <none> 0x00nn Get-System-Attributes GetSystemElements [PWG5108.06] 0x00nn Get-System-Supported-

Values <none>[7] <none>

0x00nn Install-Resource <none>[3][4] <none> 0x00nn Pause-All-Printers PauseAllServices [PWG5108.06] 0x00nn Pause-All-Printers-After-

Current-Job PauseAllServices AfterCurrentJob[1]

[PWG5108.06]

0x00nn Register-Output-Device <none>[6] <none> 0x00nn Renew-Subscription <none>[8] <none> 0x00nn Restart-System <none>[9] <none> 0x00nn Resume-All-Printers ResumeAllServices [PWG5108.06] 0x00nn Send-Resource-Data StoreResource[3] [PWG5108.03] <none> Set-Resource-Attributes SetResourceElements [PWG5108.03] <none> Set-System-Attributes SetSystemElements [PWG5108.06] 0x00nn Shutdown-All-Printers ShutdownAllServices [PWG5108.06] <none> Shutdown-One-Printer ShutdownService [PWG5108.06] 0x00nn Startup-All-Printers StartupAllServices [PWG5108.06] <none> Startup-One-Printer StartupService [PWG5108.06]

Notes: 750

1) Pause-All-Printers-After-Current-Job is a useful operation for graceful stopping of all 751 Printers (Imaging Services) on an Imaging System, but it can be an arbitrarily long 752 duration operation. 753

2) [Enable/Disable]-Printer and [Pause/Resume]-Printer are intentionally left out of this 754 specification – they should be directed to the specific Imaging Service that is 755

Page 29: The Printer Working GroupThe Printer Working Group 29 November 2016 Working Draft Copyright © 2014-2016 The Printer Working Group. All rights reserved. IPP System Service v1.0 (SYSTEM)

Working Draft – IPP System Service v1.0 (SYSTEM) 29 November 2016

Page 29 of 126 Copyright © 2014-2016 The Printer Working Group. All rights reserved.

enumerated in the “system-configured-printers” attribute defined in section 5.x 756 above. 757

3) Create-Resource, Send-Resource-Data, and Install-Resource are intentionally 758 decomposed from the original ambiguously scoped StoreResource operation 759 specified in PWG Resource Service [PWG5108.03]. Create-Resource is 760 semantically equivalent to Create (for a Resource object) defined in ISO Document 761 Printing Application (DPA) Part 3: Management Abstract Service Definition and 762 Procedures [ISO10175-3] where a newly created Resource object has the special 763 initial state of ‘unknown’ (which is NOT defined or used in this specification). 764

4) Install-Resource is used to install (for subsequent use) a Resource for use after 765 Create-Resource (metadata) and Send-Resource-Data (upload data) have 766 completed. 767

5) Create-Printer is semantically equivalent to Create (for a Printer object) defined in 768 ISO Document Printing Application (DPA) Part 3: Management Abstract Service 769 Definition and Procedures [ISO10175-3] (where a newly created Printer object had 770 the special initial state of ‘unknown’, which is NOT defined or used in this 771 specification). 772

6) Register-Output-Device is semantically equivalent to Register-System defined in 773 PWG Cloud Imaging Model [PWG5109.1] with the difference that the System itself 774 is not registered, but rather the associated Output Devices are registered. 775

7) Get-System-Supported-Values is semantically equivalent to Get-Printer-Supported-776 Values in IPP: Job and Printer Set Operations [RFC3380] and is necessary for 777 support of the REQUIRED Set-System-Attributes operation. 778

8) REQUIRED for a System and/or Resource and analogous to the operations defined 779 in IPP: Event Notifications and Subscriptions [RFC3995]. 780

9) REQUIRED for a System and analogous to the Restart-Printer operation defined in 781 IPP: Job and Printer Administrative Operations [RFC3998]. 782

783

Page 30: The Printer Working GroupThe Printer Working Group 29 November 2016 Working Draft Copyright © 2014-2016 The Printer Working Group. All rights reserved. IPP System Service v1.0 (SYSTEM)

Working Draft – IPP System Service v1.0 (SYSTEM) 29 November 2016

Page 30 of 126 Copyright © 2014-2016 The Printer Working Group. All rights reserved.

5.5 Resource Attribute Group 784

This document defines the resource-attributes-tag (0x08) for a Resource attribute group. 785

5.6 Resource Description Attributes 786

The potentially READ-WRITE attributes in the IPP Resource Description group are listed in 787 Table 4. 788

Note: Printer-scope Resource objects MAY be: 789

1) Created before the related Create-Printer operation and then associated with a 790 given Printer using a Create-Printer operation via the “resource-ids” operation 791 attribute to update the “printer-resource-ids” Printer Status attribute; 792

2) Created after the related Create-Printer operation and then associated with a given 793

Printer using an Allocate-Printer-Resources operation via the “resource-ids” 794 operation attribute to update the “printer-resource-ids” Printer Status attribute; or 795

3) Created after the related Create-Printer operation and then associated with a given 796 Printer using an HTTP PUT request [RFC7230] as defined in section 4.1.9 797 Resources of IPP Shared Infrastructure Extensions [PWG5100.18] to update the 798 “printer-resource-ids” Printer Status attribute. 799

Note: Job-scope Resource objects MUST be created before the Job creation operation 800 and then associated with a given Job via the “resource-ids” Job creation operation attribute 801 to update the “job-resource-ids” Job Status attribute. 802

Table 4 – IPP Resource Description Attributes 803

Conformance IPP Attribute Name SM Element Name Reference REQUIRED resource-info ResourceInfo [PWG5108.03] REQUIRED resource-name ResourceName [PWG5108.03] REQUIRED resource-owner-col OwnerUri, OwnerVCard[1] [PWG5108.06]

804 Notes: 805

1) REQUIRED for a Resource by analogy to “system-owner-col” in System. 806

5.7 Resource Status Attributes 807

The READ-ONLY attributes in the IPP Resource Status group are listed in Table 5. These 808 attributes are inherently READ-ONLY and can only be modified indirectly as a side effect 809 of one or more IPP System Service operations, but NOT by a Set-Resource-Attributes 810 operation. See Figure 1 in section 0 resource-state for a diagram of normal Resource 811 state transitions. 812

Page 31: The Printer Working GroupThe Printer Working Group 29 November 2016 Working Draft Copyright © 2014-2016 The Printer Working Group. All rights reserved. IPP System Service v1.0 (SYSTEM)

Working Draft – IPP System Service v1.0 (SYSTEM) 29 November 2016

Page 31 of 126 Copyright © 2014-2016 The Printer Working Group. All rights reserved.

Table 5 – IPP Resource Status Attributes 813

Conformance IPP Attribute Name SM Element Name Reference

REQUIRED date-time-at-canceled DateTimeOfExpiration[1] [PWG5108.03] REQUIRED date-time-at-creation DateTimeAtCreation[1] [PWG5108.03] REQUIRED date-time-at-installed <none>[7] <none> REQUIRED resource-data-uri <none> <none> REQUIRED resource-format ResourceFormat [PWG5108.03] REQUIRED resource-id ResourceId[4] [PWG5108.03] REQUIRED resource-k-octets <none>[2][5] <none> REQUIRED resource-state <none>[2] <none> REQUIRED resource-state-reasons <none>[2] <none> REQUIRED resource-string-version XxxStringVersion[7] [PWG5110.1] REQUIRED resource-type ResourceType [PWG5108.03] REQUIRED resource-use-count <none> <none> REQUIRED resource-uuid <none>[3] [PWG5100.13] REQUIRED resource-version XxxVersion[7] [PWG5110.1] REQUIRED time-at-canceled <none>[2] <none> REQUIRED time-at-creation <none>[2] <none> REQUIRED time-at-installed <none>[6] <none>

Notes: 814

1) REQUIRED for a Resource by analogy to PWG Network Resource Service 815 Semantic Model and Service Interface [PWG5108.03]. 816

2) REQUIRED for a Resource by analogy to a Job in IETF IPP/1.1 Model and 817 Semantics [RFC2911]. 818

3) REQUIRED for a Resource by analogy to a Job in PWG IPP: Job and Printer 819 Extensions – Set 3 (JPS3) [PWG5100.13]. 820

4) REQUIRED for a Resource by analogy to a Job in IETF IPP/1.1 Model and 821 Semantics [RFC2911]. See section 7.6 of this specification for details of the 822 “resource-id” attribute which MUST be monotonically increasing (as is “job-id”) to 823 avoid re-use of a “resource-id” values and resulting ambiguity in log files. 824

5) REQUIRED for a Resource by analogy to a “job-k-octets” in a Job in IETF IPP/1.1 825 Model and Semantics [RFC2911]. 826

6) REQUIRED for a Resource by analogy to ”date-time-at-creation” and “time-creation” 827 and set by System during an Install-Resource operation and analogous to “date-828 time-at-processing” and “time-at-Processing” Job attributes defined in [RFC2911]. 829

7) REQUIRED for a Resource by analogy to the functionally equivalent 830 [Firmware|ResidentApplication|UserApplication]StringVersion and 831 [Firmware|ResidentApplication|UserApplication]Version elements defined in PWG 832 Hardcopy Device Health Assessment Attributes [PWG5110.1] and PWG Hardcopy 833 Device Health Assessment Trusted Network Connect Binding [PWG5110.4]. 834

Page 32: The Printer Working GroupThe Printer Working Group 29 November 2016 Working Draft Copyright © 2014-2016 The Printer Working Group. All rights reserved. IPP System Service v1.0 (SYSTEM)

Working Draft – IPP System Service v1.0 (SYSTEM) 29 November 2016

Page 32 of 126 Copyright © 2014-2016 The Printer Working Group. All rights reserved.

5.8 Printer Description Attributes 835

Additional potentially READ-WRITE attributes in the IPP Printer Description group are 836 listed in Table 6. 837

Table 6 – IPP Printer Description Attributes 838

Conformance IPP Attribute Name SM Element Name Reference REQUIRED printer-owner-col OwnerUri, OwnerVCard[1] [PWG5108.06]

839 Notes: 840

1) REQUIRED for all Systems since they MUST support the Set-Printer-Attributes 841 operation to conform to this IPP System Service specification – also “owner-uri” and 842 “owner-vcard” MUST be updated simultaneously if specified in a Set-Printer-843 Attributes operation (to preserve consistency). 844

5.9 Printer Status Attributes 845

Additional READ-ONLY attributes in the IPP Printer Status group are listed in Table 7. 846

Table 7 – IPP Printer Status Attributes 847

Conformance IPP Attribute Name SM Element Name Reference REQUIRED printer-config-changes ConfigChanges[1] [PWG5106.1] REQUIRED printer-id ID[2] [PWG5108.06] REQUIRED printer-resource-ids <none>[4] <none> REQUIRED printer-service-type ServiceType[3] [PWG5108.06]

848 Notes: 849

1) REQUIRED for all Printers and semantically equivalent to the Monitoring element 850 ConfigChanges defined in [PWG5106.1] and semantically equivalent to 851 “prtGeneralConfigChanges” in IETF Printer MIB v2 [RFC3805]. 852

2) REQUIRED for all Printers and semantically equivalent to the ServiceSummary 853 element ID defined in [PWG5108.06] and semantically analogous to the “job-id” 854 attribute defined in [RFC2911. 855

3) REQUIRED for all Printers and semantically equivalent to the ServiceSummary 856 element ServiceType defined in [PWG5108.06]. 857

4) REQUIRED for all Printers since they MUST support the assignment of requested 858 Resources via the “resource-ids” Create-Printer operation attribute to conform to 859 this IPP System Service specification. 860

Page 33: The Printer Working GroupThe Printer Working Group 29 November 2016 Working Draft Copyright © 2014-2016 The Printer Working Group. All rights reserved. IPP System Service v1.0 (SYSTEM)

Working Draft – IPP System Service v1.0 (SYSTEM) 29 November 2016

Page 33 of 126 Copyright © 2014-2016 The Printer Working Group. All rights reserved.

5.10 Job Status Attributes 861

Additional READ--ONLY attributes in the IPP Job Status group are listed in Table 8. 862

Table 8 – IPP Job Status Attributes 863

Conformance IPP Attribute Name SM Element Name Reference REQUIRED job-owner-col OwnerUri, OwnerVCard[1] [PWG5108.06] REQUIRED job-resource-ids <none>[2] <none>

864 Notes: 865

1) REQUIRED for all Systems since they MUST support the Create-Job operation and 866 “requesting-user-vcard” operation attribute to conform to this IPP System Service 867 specification. 868

2) REQUIRED for all Systems since they MUST support the submission of requested 869 Resources via the “resource-ids” Job Creation operation attribute to conform to this 870 IPP System Service specification. 871

872

Page 34: The Printer Working GroupThe Printer Working Group 29 November 2016 Working Draft Copyright © 2014-2016 The Printer Working Group. All rights reserved. IPP System Service v1.0 (SYSTEM)

Working Draft – IPP System Service v1.0 (SYSTEM) 29 November 2016

Page 34 of 126 Copyright © 2014-2016 The Printer Working Group. All rights reserved.

6. IPP Operations 873

Note: All IPP System Service operation requests and responses use standard operation 874 parameters as defined in [RFC2911] and encoded in [RFC2910]. 875

6.1 Printer Operations 876

6.1.1 Allocate-Printer-Resources 877

[new operation to update Resources associated with a given Printer after Create-Printer 878 and “resource-use-count” in each Resource] 879

6.1.2 Create-Printer 880

This REQUIRED operation allows an authorized Operator or Administrator to create a new 881 Printer object (i.e., Job processing service) on the target System object and optionally also 882 create one or more new per-Printer Subscription objects. This operation is semantically 883 equivalent to the Create operation for a Printer object defined in ISO “Document Printing 884 Application (DPA) Part 3: Management Abstract Service Definition and Procedures” 885 [ISO10175-3] (where a newly created Printer object had the special initial state of ‘unknown’, 886 which is NOT defined or used in this specification). This operation is semantically analogous 887 to the Create-Job operation defined in [RFC2911]. This operation does not change the 888 “system-state” of the System itself. 889

A new Printer object will be created and initialized with the “printer-state” set to ‘stopped’ 890 (i.e., no Jobs can be processed and intervention is required), “printer-is-accepting-jobs” set 891 to ‘false’ (i.e., no incoming Jobs accepted), and the ‘paused’ value added to “printer-state-892 reasons” (i.e., no Job processing output allowed). One or more requested per-Printer 893 Subcription objects can also be created. The Client can then send one or more Set-894 Printer-Attributes operations to modify the configuration of the Printer, followed by 895 Resume-Printer (to remove ‘paused’ from “printer-state-reasons”) and Enable-Printer (to 896 change “printer-is-accepting-jobs” to ‘true’) to change “printer-state” to ‘idle’ (unless there is 897 another reason for the Printer to stay in the ‘stopped’ state). 898

Note: When the first Print Service is created on a System, the System MUST set the value 899 of “system-default-printer-id” to reference that Print Service. 900

Note: Printer-scope Resource objects MAY be: 901

1) Created before the related Create-Printer operation and then associated with a 902 given Printer using a Create-Printer operation via the “resource-ids” operation 903 attribute to update the “printer-resource-ids” Printer Status attribute; 904

2) Created after the related Create-Printer operation and then associated with a given 905

Printer using an Allocate-Printer-Resources operation via the “resource-ids” 906 operation attribute to update the “printer-resource-ids” Printer Status attribute; or 907

Page 35: The Printer Working GroupThe Printer Working Group 29 November 2016 Working Draft Copyright © 2014-2016 The Printer Working Group. All rights reserved. IPP System Service v1.0 (SYSTEM)

Working Draft – IPP System Service v1.0 (SYSTEM) 29 November 2016

Page 35 of 126 Copyright © 2014-2016 The Printer Working Group. All rights reserved.

3) Created after the related Create-Printer operation and then associated with a given 908 Printer using an HTTP PUT request [RFC7230] as defined in section 4.1.9 909 Resources of IPP Shared Infrastructure Extensions [PWG5100.18] to update the 910 “printer-resource-ids” Printer Status attribute. 911

Note: Printer-scope Subscription objects MUST be created after the related Create-Printer 912 operation, so that “notify-printer-id” can be correctly specified. 913 914 Note: Appropriate Subunits are automatically associated with a new Printer object based 915 on “printer-service-type”, inherent System capabilities, (out-of-band) System policies. 916 Subunits are also associated by configured service capabilities (e.g., “sides-supported” and 917 duplexer, “finishings-supported” and finishers, “print-color-mode-supported” and colorants, etc. 918 – association by intent and not by explicit identification/listing of Subunits. 919

6.1.2.1 Create-Printer Request 920

The Client submits a Create-Printer operation request to a System object. The following 921 groups of attributes are part of a Create-Printer request. 922

Group 1: Operation Attributes 923

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

The Client MUST supply and the System MUST support both of these 926 attributes. 927

“system-uri” (uri): 928

The Client MUST supply and the System MUST support the “system-uri” 929 operation attribute which is the target System for the operation. 930

"requesting-user-name" (name(MAX)) and 931 "requesting-user-uri" (uri) and 932 “requesting-user-vcard” (1setOf text(1023)): 933

The Client SHOULD supply and the System MUST support all three of these 934 attributes. 935

“printer-service-type” (type2 keyword): 936

The Client MUST supply and the System MUST support this attribute. 937

“resource-ids” (1setOf integer (1:MAX)): 938

The Client MAY supply and the System MUST support this attribute. 939

Group 2: Printer Description Attributes 940

Page 36: The Printer Working GroupThe Printer Working Group 29 November 2016 Working Draft Copyright © 2014-2016 The Printer Working Group. All rights reserved. IPP System Service v1.0 (SYSTEM)

Working Draft – IPP System Service v1.0 (SYSTEM) 29 November 2016

Page 36 of 126 Copyright © 2014-2016 The Printer Working Group. All rights reserved.

<all mandatory Printer Description attributes> 941

The Client MUST supply and the System MUST support all of the attributes 942 listed in “system-mandatory-printer-atrributes” 943

<any other Printer Description attribute> 944

The Client MAY supply and the System MAY support these attributes. See 945 “printer-settable-attributes-supported” defined in [RFC3380]. 946

Groups 3-N: Subscription Attributes 947

See [RFC3995] for details on supplying Subscription Attributes. 948

6.1.2.2 Create-Printer Response 949

The System MUST return a Create-Printer operation response to the Client. 950

Group 1: Operation Attributes 951

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

The System MUST return both of these attributes. 954

"status-message" (text(255)) and/or 955 "detailed-status-message" (text(MAX)): 956

The System MAY return one or both of these attributes. 957

Group 2: Unsupported Attributes 958

See [RFC2911] for details on returning Unsupported Attributes. 959

Groups 3: Printer Attributes 960

See [RFC2911] for details on returning Printer Attributes. 961

“printer-id (integer(1:MAX)): 962

The System MUST return this attribute. 963

“printer-uuid” (uri(45)): 964

The System MUST return this attribute. 965

“printer-xri-supported” (1setOf collection) 966

The System MUST return this attribute. 967

Page 37: The Printer Working GroupThe Printer Working Group 29 November 2016 Working Draft Copyright © 2014-2016 The Printer Working Group. All rights reserved. IPP System Service v1.0 (SYSTEM)

Working Draft – IPP System Service v1.0 (SYSTEM) 29 November 2016

Page 37 of 126 Copyright © 2014-2016 The Printer Working Group. All rights reserved.

“printer-state” (type1 enum) and 968 “printer-state-reasons” (1setOf type2 keyword): 969

The System MUST return both of these attributes. 970

Groups 4-N: Subscription Attributes 971

See [RFC3995] for details on returning Subscription Attributes. 972

6.1.3 Deallocate-Printer-Resources 973

[to update Resources associated with a given Printer after Create-Printer] 974

6.1.4 Delete-Printer 975

This REQUIRED operation allows an authorized Operator or Administrator to delete 976 entirely one configured Printer object (i.e., Job processing service) on the target System 977 object. If the Printer object is not already shutdown, with ‘shutdown’ in the “printer-state-978 reasons”, then the System MUST return a “status-code” of ‘client-error-forbidden’. This 979 operation is semantically equivalent to the DeleteService operation defined in 980 [PWG5108.06]. The Printer object and all associated Jobs will be removed entirely. The 981 Printer object cannot be subsequently started up with a Startup-One-Printer operation. 982 This operation MAY change the state of the System itself to ‘stopped’ (if there are no other 983 configured Printers or all other Printers already had a “printer-state” of ‘stopped’). 984

The specified Printer will be shutdown with the “printer-state” set to ‘stopped’ (i.e., no Jobs 985 can be processed and intervention is required) and the ‘shutdown’ value added to “printer-986 state-reasons”. The Client can later send a Startup-One-Printer operation to the System 987 (preferred) or a Startup-Printer operation [RFC3998] to the Printer to start up the specified 988 Printer. 989

6.1.4.1 Delete-Printer Request 990

The Client submits a Delete-Printer operation request to a System object. The following 991 groups of attributes are part of a Delete-Printer request. 992

Group 1: Operation Attributes 993

The System MUST support the same operation attributes in a Delete-Printer operation 994 request as those defined for the Startup-One-Printer operation. 995

“printer-id (integer(1:MAX)): 996

The Client MUST supply and the System MUST support this operation 997 attribute which is the target Printer for the operation. 998

Page 38: The Printer Working GroupThe Printer Working Group 29 November 2016 Working Draft Copyright © 2014-2016 The Printer Working Group. All rights reserved. IPP System Service v1.0 (SYSTEM)

Working Draft – IPP System Service v1.0 (SYSTEM) 29 November 2016

Page 38 of 126 Copyright © 2014-2016 The Printer Working Group. All rights reserved.

6.1.4.2 Delete-Printer Response 999

The System MUST return a Delete-Printer operation response to the Client. 1000

Group 1: Operation Attributes 1001

The System MUST support the same operation attributes in a Delete-Printer operation 1002 response as those defined for the Startup-One-Printer operation. 1003

6.1.5 Get-Printers 1004

This REQUIRED operation allows an authorized Client to retrieve a filtered list of some or 1005 all of the Printer objects (i.e., Job processing services) on the target System object. This 1006 operation is semantically equivalent to the ListAllServices operation defined in 1007 [PWG5108.06]. This operation is also semantically equivalent to a sequence of Get-1008 Printer-Attributes [RFC2911] operations to each Printer object. A “printer-id” and “printer-1009 xri-supported” will be returned for each matching Printer object. The returned Printers and 1010 Printer attributes from the System MAY also be filtered based on Client access rights (i.e., 1011 the value of “requesting-user-name”) or the specified “document-format”.Note: This End 1012 User operation does NOT require Client authentication, but MAY be encrypted just as any 1013 other IPP System Service operation. 1014

6.1.5.1 Get-Printers Request 1015

The Client submits a Get-Printers operation request to a System object. The following 1016 groups of attributes are part of a Get-Printers request. 1017

Group 1: Operation Attributes 1018

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

The Client MUST supply and the System MUST support both of these 1021 attributes. 1022

“system-uri” (uri): 1023

The Client MUST supply and the System MUST support the “system-uri” 1024 operation attribute which is the target System for the operation. 1025

“printer-ids (1setOf (integer(1:MAX))): 1026

The Client MAY supply and the System MUST support the “printer-ids” 1027 operation attribute which is the list of target Printers for the operation. 1028

"requesting-user-name" (name(MAX)) and 1029 "requesting-user-uri" (uri) and 1030 “requesting-user-vcard” (1setOf text(1023)): 1031

Page 39: The Printer Working GroupThe Printer Working Group 29 November 2016 Working Draft Copyright © 2014-2016 The Printer Working Group. All rights reserved. IPP System Service v1.0 (SYSTEM)

Working Draft – IPP System Service v1.0 (SYSTEM) 29 November 2016

Page 39 of 126 Copyright © 2014-2016 The Printer Working Group. All rights reserved.

The Client SHOULD supply and the System MUST support all three of these 1032 attributes. 1033

“first-index” (integer(1:MAX)): 1034

The Client MAY supply and the System MUST support this attribute. 1035

"limit" (integer(1:MAX)): 1036

The Client MAY supply and the System MUST support this attribute. 1037

“printer-geo-location” (uri): 1038

The Client MAY supply and the System MUST support this attribute. 1039

“printer-location” (text(127)): 1040

The Client MAY supply and the System MUST support this attribute. 1041

“printer-service-type” (1setOf (type2 keyword)): 1042

The Client MAY supply and the System MUST support this attribute. If this 1043 operation attribute is supplied, then the System MUST return the attributes 1044 and values for the selected Printers (e.g., Printers offering ‘scan’ service). 1045 See “printer-service-type” in section 7.5 Printer Status Attributes. 1046

“requested-attributes” (1setOf type2 keyword): 1047

The Client MAY supply and the System MUST support this attribute. If this 1048 operation attribute is NOT supplied, then the System MUST only return the 1049 value of the “system-configured-printers” entry for each selected Printer. See 1050 section “system-configured-printers” in section 7.3 System Status Attrbutes. 1051

The Client SHOULD only supply and the System MUST only support 1052 requests for Printer attributes that are listed as IPP Printer source attributes 1053 in the table in section 4 Definition of Attribute Types in the IETF LDAP 1054 Schema for Printer Services [RFC7612]. 1055

"document-format" (mimeMediaType): 1056

The Client MAY supply and the System MUST support this attribute. If this 1057 operation attribute is supplied, then the System MUST return the attributes 1058 and values that it uses to validate a job on a create or Validate-Job operation 1059 in which this document format is supplied. The System SHOULD return only 1060 (1) those attributes that are supported for the specified format and (2) the 1061 attribute values that are supported for the specified document format. 1062

“which-printers” (type2 keyword): 1063

Page 40: The Printer Working GroupThe Printer Working Group 29 November 2016 Working Draft Copyright © 2014-2016 The Printer Working Group. All rights reserved. IPP System Service v1.0 (SYSTEM)

Working Draft – IPP System Service v1.0 (SYSTEM) 29 November 2016

Page 40 of 126 Copyright © 2014-2016 The Printer Working Group. All rights reserved.

The Client MAY supply and the System MUST support this attribute. If this 1064 operation attribute is supplied, then the System MUST return the attributes 1065 and values for the selected printers (e.g., Printers in ‘idle’ state). See “which-1066 printers” in section 7.1 Operation Attributes. 1067

6.1.5.2 Get-Printers Response 1068

The System MUST return a Get-Printers operation response to the Client up to the number 1069 specified by the “limit” operation attribute that match the filter criteria as specified by the 1070 attribute values supplied by the Client in the request. If no Printers match the specified 1071 filter criteria, then the System MUST return a “status-code” of 'successful-ok'. Group 1: 1072 Operation Attributes 1073

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

The System MUST return both of these attributes, unless no Printers match 1076 the filter criteria specified by the Client. 1077

"status-message" (text(255)) and/or 1078 "detailed-status-message" (text(MAX)): 1079

The System MAY return one or both of these attributes. 1080

Group 2: Unsupported Attributes 1081

See [RFC2911] for details on returning Unsupported Attributes. 1082

Groups 3 to N: Printer Attributes 1083

See [RFC2911] for details on returning Printer Attributes. 1084

“printer-id (integer(1:MAX)): 1085

The System MUST return this attribute for each Printer. 1086

“printer-xri-supported” (1setOf collection): 1087

The System MUST return this attribute for each Printer. 1088

6.1.6 Get-Printer-Attributes 1089

This REQUIRED operation allows an unauthenticated Client to retrieve a filtered list of the 1090 Printer attributes for either the default Printer specified by the “system-default-printer-id” on 1091 the target System object or an explicit Printer specified by the “printer-uri” of the target 1092 Printer object. This operation supports backward compatibility with previously deployed 1093 IPP Clients. This operation is semantically equivalent to the Get-Printer-Attributes 1094 operation defined in [RFC2911], except that the target MAY be a System object (rather 1095

Page 41: The Printer Working GroupThe Printer Working Group 29 November 2016 Working Draft Copyright © 2014-2016 The Printer Working Group. All rights reserved. IPP System Service v1.0 (SYSTEM)

Working Draft – IPP System Service v1.0 (SYSTEM) 29 November 2016

Page 41 of 126 Copyright © 2014-2016 The Printer Working Group. All rights reserved.

than a Printer object), although previously deployed IPP Clients MAY omit the “system-uri” 1096 operation attribute and supply the “printer-uri” operation attribute instead. A “printer-id” 1097 and “printer-xri-supported” will be returned for either the default Printer specified by the 1098 “system-default-printer-id” attribute on the target System object or an explicit Printer 1099 specified by the “printer-uri” of the target Printer object. The returned Printer attributes 1100 from the System MAY also be filtered based on Client access rights (i.e., the value of 1101 “requesting-user-name”) or the specified “document-format”. 1102

6.1.6.1 Get-Printer-Attributes Request 1103

The Client submits a Get-Printer-Attributes operation request to a System object or a 1104 Printer object. The following groups of attributes are part of a Get-Printer-Attributes 1105 request. 1106

Group 1: Operation Attributes 1107

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

The Client MUST supply and the System MUST support both of these 1110 attributes. 1111

“system-uri” (uri) or 1112

“system-uri (uri) or 1113 “printer-uri” (uri): 1114

The Client MUST supply either the "system-uri" or "printer-uri" operation 1115 attributes and the System both the "system-uri" and "printer-uri" operation 1116 attributes which specify the target System or the explicit target Printer for the 1117 operation. 1118

"requesting-user-name" (name(MAX)) and 1119 "requesting-user-uri" (uri) and 1120 “requesting-user-vcard” (1setOf text(1023)): 1121

The Client SHOULD supply and the System MUST support all three of these 1122 attributes. 1123

“first-index” (integer(1:MAX)): 1124

The Client MAY supply and the System MUST support this attribute. 1125

"limit" (integer(1:MAX)): 1126

The Client MAY supply and the System MUST support this attribute. 1127

“requested-attributes” (1setOf type2 keyword): 1128

Page 42: The Printer Working GroupThe Printer Working Group 29 November 2016 Working Draft Copyright © 2014-2016 The Printer Working Group. All rights reserved. IPP System Service v1.0 (SYSTEM)

Working Draft – IPP System Service v1.0 (SYSTEM) 29 November 2016

Page 42 of 126 Copyright © 2014-2016 The Printer Working Group. All rights reserved.

The Client MAY supply and the System MUST support this attribute. If this 1129 operation attribute is NOT supplied, then the System MUST only return the 1130 value of the “system-configured-printers” entry for each selected Printer. See 1131 section “system-configured-printers” in section 7.3 System Status Attrbutes. 1132

"document-format" (mimeMediaType): 1133

The Client MAY supply and the System MUST support this attribute. If this 1134 operation attribute is supplied, then the System MUST return the attributes 1135 and values that it uses to validate a job on a create or Validate-Job operation 1136 in which this document format is supplied. The System SHOULD return: only 1137 (1) those attributes that are supported for the specified format; and (2) the 1138 attribute values that are supported for the specified document format. 1139

6.1.6.2 Get-Printer-Attributes Response 1140

The System MUST return a Get-Printer-Attributes operation response to the Client up to 1141 the number specified by the “limit” operation attribute that match the filter criteria as 1142 specified by the attribute values supplied by the Client in the request. If there is no 1143 configured default Printer, then the System MUST return a “status-code” of 'successful-ok'. 1144

Group 1: Operation Attributes 1145

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

The System MUST return both of these attributes, unless no Printers match 1148 the filter criteria specified by the Client. 1149

"status-message" (text(255)) and/or 1150 "detailed-status-message" (text(MAX)): 1151

The System MAY return one or both of these attributes. 1152

Group 2: Unsupported Attributes 1153

See [RFC2911] for details on returning Unsupported Attributes. 1154

Group 3: Printer Attributes 1155

See [RFC2911] for details on returning Printer Attributes. 1156

“printer-id (integer(1:MAX)): 1157

The System MUST return this attribute for the target Printer. 1158

“printer-xri-supported” (1setOf collection): 1159

Page 43: The Printer Working GroupThe Printer Working Group 29 November 2016 Working Draft Copyright © 2014-2016 The Printer Working Group. All rights reserved. IPP System Service v1.0 (SYSTEM)

Working Draft – IPP System Service v1.0 (SYSTEM) 29 November 2016

Page 43 of 126 Copyright © 2014-2016 The Printer Working Group. All rights reserved.

The System MUST return this attribute for the target Printer. 1160

6.1.7 Shutdown-One-Printer 1161

This REQUIRED operation allows an authorized Operator or Administrator to shutdown 1162 one configured Printer object (i.e., Job processing service) on the target System object. 1163 This operation is semantically equivalent to the ShutdownService operation defined in 1164 [PWG5108.06]. This operation is also semantically equivalent to a Shutdown-Printer 1165 operation [RFC3998] to the configured Printer object (except for the resulting “printer-state” 1166 of ‘stopped’ rather than ‘idle’). This operation MAY cause the System to pause with 1167 “system-state” set to ‘stopped’ (if all other Printers already had a “printer-state” of 1168 ‘stopped’). 1169

The specified Printer will be shutdown with the “printer-state” set to ‘stopped’ (i.e., no Jobs 1170 can be processed and intervention is required) and the ‘shutdown’ value added to “printer-1171 state-reasons”. The Client can later send a Startup-One-Printer operation to the System 1172 (preferred) or a Startup-Printer operation [RFC3998] to the Printer to start up the specified 1173 Printer. 1174

6.1.7.1 Shutdown-One-Printer Request 1175

The Client submits a Shutdown-One-Printer operation request to a System object. The 1176 following groups of attributes are part of a Shutdown-One-Printer request. 1177

Group 1: Operation Attributes 1178

The System MUST support the same operation attributes in a Shutdown-One-Printer 1179 operation request as those defined for the Startup-One-Printer operation. 1180

6.1.7.2 Shutdown-One-Printer Response 1181

The System MUST return a Shutdown-One-Printer operation response to the Client. 1182

Group 1: Operation Attributes 1183

The System MUST support the same operation attributes in a Shutdown-One-Printer 1184 operation response as those defined for the Startup-One-Printer operation. 1185

6.1.8 Startup-One-Printer 1186

This REQUIRED operation allows an authorized Operator or Administrator to startup one 1187 configured Printer object (i.e., Job processing service) on the target System object. This 1188 operation is semantically equivalent to the StartupService operation defined in 1189 [PWG5108.06]. This operation MAY cause the System to pause with “system-state” set to 1190 ‘stopped’ (if all other Printers already had a “printer-state” of ‘stopped’). 1191

The specified Printer will be started up with the “printer-state” set to ‘stopped’ (i.e., no Jobs 1192 can be processed and intervention is required), “printer-is-accepting-jobs” set to ‘false’ 1193

Page 44: The Printer Working GroupThe Printer Working Group 29 November 2016 Working Draft Copyright © 2014-2016 The Printer Working Group. All rights reserved. IPP System Service v1.0 (SYSTEM)

Working Draft – IPP System Service v1.0 (SYSTEM) 29 November 2016

Page 44 of 126 Copyright © 2014-2016 The Printer Working Group. All rights reserved.

(i.e., no incoming Jobs accepted), and the ‘paused’ value added to “printer-state-reasons” 1194 (i.e., no Job processing output allowed). The Client can then send one or more Set-1195 Printer-Attributes operations to modify the configuration of the Printer, followed by 1196 Resume-Printer (i.e., remove ‘paused’ from “printer-state-reasons”) and Enable-Printer 1197 (i.e., change “printer-is-accepting-jobs” to ‘true’) to change the “printer-state” to ‘idle’ 1198 (unless there is another reason for the Printer to stay in the ‘stopped’ state). 1199

6.1.8.1 Startup-One-Printer Request 1200

The Client submits a Startup-One-Printer operation request to a System object. The 1201 following groups of attributes are part of a Startup-One-Printer request. 1202

Group 1: Operation Attributes 1203

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

The Client MUST supply and the System MUST support both of these 1206 attributes. 1207

“system-uri” (uri): 1208

The Client MUST supply and the System MUST support the “system-uri” 1209 operation attribute which is the target System for the operation. 1210

“printer-id (integer(1:MAX)): 1211

The Client MUST supply and the System MUST support the “printer-id” 1212 operation attribute which is the target Printer for the operation. 1213

"requesting-user-name" (name(MAX)) and 1214 "requesting-user-uri" (uri) and 1215 “requesting-user-vcard” (1setOf text(1023)): 1216

The Client SHOULD supply and the System MUST support all three of these 1217 attributes. 1218

1219

6.1.8.2 Startup-One-Printer Response 1220

The System MUST return a Startup-One-Printer operation response to the Client. 1221

Group 1: Operation Attributes 1222

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

Page 45: The Printer Working GroupThe Printer Working Group 29 November 2016 Working Draft Copyright © 2014-2016 The Printer Working Group. All rights reserved. IPP System Service v1.0 (SYSTEM)

Working Draft – IPP System Service v1.0 (SYSTEM) 29 November 2016

Page 45 of 126 Copyright © 2014-2016 The Printer Working Group. All rights reserved.

The System MUST return both of these attributes. 1225

"status-message" (text(255)) and/or 1226 "detailed-status-message" (text(MAX)): 1227

The System MAY return one or both of these attributes. 1228

6.2 Resource Operations 1229

6.2.1 Cancel-Resource 1230

This REQUIRED operation allows an authorized Operator or Administrator to cancel an 1231 existing Resource object on the target System object. If the Resource object’s “resource-1232 state” is ‘canceled’ or ‘aborted’ or “resource-state-reasons” includes ‘cancel-requested’, 1233 then the System MUST return a “status-code” of ‘client-error-not-possible’. The System 1234 MUST set the “resource-state” to ‘canceled’ or leave “resource-state” unchanged and add 1235 ‘cancel-requested’ to “resource-state-reasons” (e.g., if the Resource is currently in use by 1236 a Job). In either case, the System MUST make the Resource permanently unavailable for 1237 future use. The System MUST preserve all Resource object attributes for an 1238 implementation-defined Resource History period – see below. When “resource-state” 1239 eventually transitions to ‘canceled’, the System SHOULD delete any local copy of 1240 Resource data. This operation is semantically analogous to the DeleteResource operation 1241 defined in [PWG5108.06] (except that the Resource is not removed, in order to preserve the 1242 integrity of system log files). This operation does not change the “system-state” of the 1243 System itself. See section 4.6. Resource Object and section 4.6.1 Resource History for 1244 more details. 1245

6.2.1.1 Cancel-Resource Request 1246

The Client submits a Cancel-Resource operation request to a System object to cancel an 1247 existing Resource object. The following groups of attributes are part of a Cancel-Resource 1248 request. 1249

Group 1: Operation Attributes 1250

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

The Client MUST supply and the System MUST support both of these 1253 attributes. 1254

“system-uri” (uri): 1255

The Client MUST supply and the System MUST support the “system-uri” 1256 operation attribute which is the target System for the operation. 1257

“resource-id” (integer(1:MAX)): 1258

Page 46: The Printer Working GroupThe Printer Working Group 29 November 2016 Working Draft Copyright © 2014-2016 The Printer Working Group. All rights reserved. IPP System Service v1.0 (SYSTEM)

Working Draft – IPP System Service v1.0 (SYSTEM) 29 November 2016

Page 46 of 126 Copyright © 2014-2016 The Printer Working Group. All rights reserved.

The Client MUST supply and the System MUST support this attribute which 1259 is the target Resource for the operation. 1260

"requesting-user-name" (name(MAX)) and 1261 "requesting-user-uri" (uri) and 1262 “requesting-user-vcard” (1setOf text(1023)): 1263

The Client SHOULD supply and the System MUST support all three of these 1264 attributes. 1265

6.2.1.2 Cancel-Resource Response 1266

The System MUST return a Cancel-Resource operation response to the Client. 1267

Group 1: Operation Attributes 1268

"attributes-charset" (charset) [RFC2911] and 1269 "attributes-natural-language" (naturalLanguage) [RFC2911]: 1270

The System MUST return both of these attributes. 1271

"status-message" (text(255)) and/or 1272 "detailed-status-message" (text(MAX)): 1273

The System MAY return one or both of these attributes. 1274

Group 2: Unsupported Attributes 1275

See [RFC2911] for details on returning Unsupported Attributes. 1276

6.2.2 Create-Resource 1277

This REQUIRED operation allows an authorized Operator or Administrator to create a new 1278 Resource object on the target System object and optionally also create one or more new 1279 per-Resource Subscription objects. This operation is semantically analogous to the 1280 StoreResource operation defined in [PWG5108.06] (except that the Resource data is 1281 separately transferred with a subsequent Send-Resource-Data operation and installed for use 1282 with a subsequent Install-Resource operation). This operation does not change the “system-1283 state” of the System itself. 1284

A new Resource object will be created and initialized with the “resource-state” set to 1285 ‘pending’ (i.e., no Resource data has been associated yet). One or more requested per-1286 Resource Subcription objects can also be created. The Client can then use one or more 1287 Set-Resource-Attributes operations to modify the Resource object, followed by a Send-1288 Resource-Data operation (i.e., upload the associated Resource data) to change the 1289 “resource-state” to ‘available’. During processing of the Send-Resource-Data operation, 1290 the System can keep the “resource-state” of ‘pending’ and also add ‘resource-incoming’ to 1291 “resource-state-reasons” if the upload completion is delayed. The Client can then use an 1292

Page 47: The Printer Working GroupThe Printer Working Group 29 November 2016 Working Draft Copyright © 2014-2016 The Printer Working Group. All rights reserved. IPP System Service v1.0 (SYSTEM)

Working Draft – IPP System Service v1.0 (SYSTEM) 29 November 2016

Page 47 of 126 Copyright © 2014-2016 The Printer Working Group. All rights reserved.

Install-Resource operation to install the Resource, which will either change “resource-1293 state” to ‘installed’ or add ‘install-requested’ to “resource-state-reasons”. See section 1294 7.7.12 resource-state for a discussion of Resource object states and lifecycle phases. 1295

Note: The Client MUST use both the Send-Resource-Data and Install-Resource 1296 operations for all “resource-type” values, which simplifies the Resource state machine. 1297

Note: Printer-scope Resource objects MAY be: 1298

1) Created before the related Create-Printer operation and then associated with a 1299 given Printer using a Create-Printer operation via the “resource-ids” operation 1300 attribute to update the “printer-resource-ids” Printer Status attribute; 1301

2) Created after the related Create-Printer operation and then associated with a given 1302

Printer using an Allocate-Printer-Resources operation via the “resource-ids” 1303 operation attribute to update the “printer-resource-ids” Printer Status attribute; or 1304

3) Created after the related Create-Printer operation and then associated with a given 1305 Printer using an HTTP PUT request [RFC7230] as defined in section 4.1.9 1306 Resources of IPP Shared Infrastructure Extensions [PWG5100.18] to update the 1307 “printer-resource-ids” Printer Status attribute. 1308

Note: Job-scope Resource objects MUST be created before the Job creation operation 1309 and then associated with a given Job via the “resource-ids” Job creation operation attribute 1310 to update the “job-resource-ids” Job Status attribute. 1311

Note: Resource-scope Subscription objects MUST be created after the related Create-1312

Resource operation, so that “notify-resource-id” can be correctly specified. 1313 1314

6.2.2.1 Create-Resource Request 1315

The Client submits a Create-Resource operation request to a System object. The 1316 following groups of attributes are part of a Create-Resource request. 1317

Group 1: Operation Attributes 1318

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

The Client MUST supply and the System MUST support both of these 1321 attributes. 1322

“system-uri” (uri): 1323

The Client MUST supply and the System MUST support the “system-uri” 1324 operation attribute which is the target System for the operation. 1325

Page 48: The Printer Working GroupThe Printer Working Group 29 November 2016 Working Draft Copyright © 2014-2016 The Printer Working Group. All rights reserved. IPP System Service v1.0 (SYSTEM)

Working Draft – IPP System Service v1.0 (SYSTEM) 29 November 2016

Page 48 of 126 Copyright © 2014-2016 The Printer Working Group. All rights reserved.

"requesting-user-name" (name(MAX)) and 1326 "requesting-user-uri" (uri) and 1327 “requesting-user-vcard” (1setOf text(1023)): 1328

The Client SHOULD supply and the System MUST support all three of these 1329 attributes. 1330

“resource-format” (mimeMediaType) and 1331 “resource-type” (type2 keyword): 1332

The Client MUST supply and the System MUST support both of these 1333 attributes. 1334

Group 2: Resource Description Attributes 1335

<any Resource Description attribute> 1336

The Client MAY supply and the System MAY support these attributes. 1337

Groups 3-N: Subscription Attributes 1338

See [RFC3995] for details on supplying Subscription Attributes. 1339

6.2.2.2 Create-Resource Response 1340

The System MUST return a Create-Resource operation response to the Client. 1341

Group 1: Operation Attributes 1342

"attributes-charset" (charset) [RFC2911] and 1343 "attributes-natural-language" (naturalLanguage) [RFC2911]: 1344

The System MUST return both of these attributes. 1345

"status-message" (text(255)) and/or 1346 "detailed-status-message" (text(MAX)): 1347

The System MAY return one or both of these attributes. 1348

1349

Group 2: Unsupported Attributes 1350

See [RFC2911] for details on returning Unsupported Attributes. 1351

Groups 3: Resource Attributes 1352

See [RFC2911] for details on returning analogous Printer Attributes. 1353

Page 49: The Printer Working GroupThe Printer Working Group 29 November 2016 Working Draft Copyright © 2014-2016 The Printer Working Group. All rights reserved. IPP System Service v1.0 (SYSTEM)

Working Draft – IPP System Service v1.0 (SYSTEM) 29 November 2016

Page 49 of 126 Copyright © 2014-2016 The Printer Working Group. All rights reserved.

“resource-id” (integer(1:MAX)): 1354

The System MUST return this attribute. 1355

“resource-uuid” (uri(45)): 1356

The System MUST return this attribute. 1357

“resource-state” (type1 enum) and 1358 “resource-state-reasons” (1setOf type2 keyword): 1359

The System MUST return both of these attributes. 1360

Groups 4-N: Subscription Attributes 1361

See [RFC3995] for details on returning Subscription Attributes. 1362

6.2.3 Get-Resources 1363

[rename of ListResources] 1364

- modeled on Get-Jobs with “requested-attributes” for which attributes to return – default is 1365 “resource-id” and “resource-state” 1366

Note: This Administrator operation requires Client authentication. 1367

6.2.4 Get-Resource-Attributes 1368

[rename of GetResourceElements] 1369

- modeled on Get-Job-Attributes with “requested-attributes” for which attributes to return – 1370 default is “resource-id” and “resource-state” 1371

6.2.5 Install-Resource 1372

[rename of part of original StoreResource] 1373

[To install a Resource (for use) after Create-Resource and Send-Resource-Data have 1374 completed and “resource-state” has transitioned to ‘available’] 1375

[Per IPP WG review on 08/15/16 Install-Resource: treat like Release-Job? where resource 1376 might be used immediately or after the next boot? 1377

⁃ 'resource-incoming' state reason, etc. 1378

⁃ Q: Which Subunit to install firmware resources to? 1379

⁃ A: Say that the firmware file/manifest identifies the subunit, it’s the responsiblity of the 1380

System/Printer to understand/interpret the manifest.] 1381

Page 50: The Printer Working GroupThe Printer Working Group 29 November 2016 Working Draft Copyright © 2014-2016 The Printer Working Group. All rights reserved. IPP System Service v1.0 (SYSTEM)

Working Draft – IPP System Service v1.0 (SYSTEM) 29 November 2016

Page 50 of 126 Copyright © 2014-2016 The Printer Working Group. All rights reserved.

[Install-Resource MUST perform validation of the Resource data contents (e.g., metadata 1382 in the Resource data manifest file), unless this validation has already been performed 1383 during a previous associated Send-Resource-Data operation] 1384

[If the Resource object’s “resource-state” is ‘canceled’ or ‘aborted’ or “resource-state-1385 reasons” includes ‘cancel-requested’, then the System MUST return a “status-code” of 1386 ‘client-error-not-possible’.] 1387

[If this operation has a fatal immediate failure, then the System MUST immediately set 1388 “resource-state” to ‘aborted’. If this operation has a fatal delayed failure with ‘install-1389 requested’, then the System MUST immediately set “resource-state” to ‘aborted’.] 1390

[Per PWG F2F on 11/15/16, Executable resources MUST and other resources SHOULD 1391 have an associated cryptographic signature to allow the System to validate the content 1392 and origin of the resource. Maybe add subsections on resource validation in section 4.x, 1393 back reference it here.] 1394

[Need to document metadata and validation requirements (avoiding DRM topics). For 1395 example, code signatures and format/data validation for executable resources, just 1396 format/data validation for nonexecutable resources. Point implementors to guidance on 1397 proper ways to do metadata validation in TBD external specs.] 1398

6.2.6 Send-Resource-Data 1399

[rename of part of original StoreResource] 1400

⁃ Agreement on not supporting replacement of resource data 1401

[Send-Resource-Data MAY perform validation of the Resource data contents (e.g., 1402 metadata in the Resource data manifest file), in order to avoid later failure of a subsequent 1403 associated Install-Resource] 1404

[If the Resource object’s “resource-state” is ‘canceled’ or ‘aborted’ or “resource-state-1405 reasons” includes ‘cancel-requested’, then the System MUST return a “status-code” of 1406 ‘client-error-not-possible’.] 1407

[If this operation has a fatal immediate failure, then the System MUST immediately set 1408 “resource-state” to ‘aborted’. If this operation has a fatal delayed failure with ‘resource-1409 incoming’, then the System MUST immediately set “resource-state” to ‘aborted’.] 1410

[Per PWG F2F on 11/15/16, SHOULD perform validation of the resource data, including 1411 the presence and correct formatting of any cryptographic signature in the resource data. 1412 Maybe add subsections on resource validation in section 4.x, back reference it here.] 1413

[Need to document metadata and validation requirements (avoiding DRM topics). For 1414 example, code signatures and format/data validation for executable resources, just 1415

Page 51: The Printer Working GroupThe Printer Working Group 29 November 2016 Working Draft Copyright © 2014-2016 The Printer Working Group. All rights reserved. IPP System Service v1.0 (SYSTEM)

Working Draft – IPP System Service v1.0 (SYSTEM) 29 November 2016

Page 51 of 126 Copyright © 2014-2016 The Printer Working Group. All rights reserved.

format/data validation for nonexecutable resources. Point implementors to guidance on 1416 proper ways to do metadata validation in TBD external specs.] 1417

6.2.7 Set-Resource-Attributes 1418

[rename of SetResourceElements for Resource description attributes – MUST NOT 1419 change Resource status attributes or Resource data] 1420

[If the Resource object’s “resource-state” is ‘canceled’ or ‘aborted’ or “resource-state-1421 reasons” includes ‘cancel-requested’, then the System MUST return a “status-code” of 1422 ‘client-error-not-possible’.] 1423

6.3 Subscription Operations 1424

6.3.1 Create-Resource-Subscriptions 1425

This REQUIRED operation allows an authorized Client to create one or more per-1426 Resource Subscription objects. The Client supplies one or more Subscription Attributes 1427 groups, each containing one or more of the Subscription Template Attributes defined in 1428 section 5.3 Table 1 of [RFC3995]. The System MUST support all of the Subscription 1429 Template Attributes defined in section 5.3 Table 1 of [RFC3995]. If the Resource object’s 1430 “resource-state” is ‘canceled’ or ‘aborted’ or “resource-state-reasons” includes ‘cancel-1431 requested’, then the System MUST return a “status-code” of ‘client-error-not-possible’. 1432 This operation is semantically analogous to the Create-Job-Subscriptions operation 1433 defined in [RFC3995]. 1434

6.3.1.1 Create-Resource-Subscriptions Request 1435

The Client submits a Create-Resource-Subscriptions operation request to a System object. 1436 The following groups of attributes are part of a Create-Resource-Subscriptions request. 1437

Group 1: Operation Attributes 1438

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

The Client MUST supply and the System MUST support both of these 1441 attributes. 1442

“system-uri” (uri): 1443

The Client MUST supply and the System MUST support the “system-uri” 1444 operation attribute which is the target System for the operation. 1445

“resource-id” (integer(1:MAX)): 1446

Page 52: The Printer Working GroupThe Printer Working Group 29 November 2016 Working Draft Copyright © 2014-2016 The Printer Working Group. All rights reserved. IPP System Service v1.0 (SYSTEM)

Working Draft – IPP System Service v1.0 (SYSTEM) 29 November 2016

Page 52 of 126 Copyright © 2014-2016 The Printer Working Group. All rights reserved.

The Client MUST supply and the System MUST support this attribute which 1447 is the target Resource for the operation. 1448

"requesting-user-name" (name(MAX)) and 1449 "requesting-user-uri" (uri) and 1450 “requesting-user-vcard” (1setOf text(1023)): 1451

The Client SHOULD supply and the System MUST support all three of these 1452 attributes. 1453

Groups 2-N: Subscription Attributes 1454

See [RFC3995] for details on supplying Subscription Attributes. 1455

6.3.1.2 Create-Resource-Subscriptions Response 1456

The System MUST return a Create-Resource-Subscriptions operation response to the 1457 Client. 1458

Group 1: Operation Attributes 1459

"attributes-charset" (charset) [RFC2911] and 1460 "attributes-natural-language" (naturalLanguage) [RFC2911]: 1461

The System MUST return both of these attributes. 1462

"status-message" (text(255)) and/or 1463 "detailed-status-message" (text(MAX)): 1464

The System MAY return one or both of these attributes. 1465

Group 2: Unsupported Attributes 1466

See [RFC2911] for details on returning Unsupported Attributes. 1467

Groups 3-N: Subscription Attributes 1468

See [RFC3995] for details on returning Subscription Attributes. 1469

6.3.2 Create-System-Subscriptions 1470

This REQUIRED operation allows an authorized Client to create one or more per-System 1471 Subscription objects. The Client supplies one or more Subscription Attributes groups, 1472 each containing one or more of the Subscription Template Attributes defined in section 5.3 1473 Table 1 of [RFC3995]. The System MUST support all of the Subscription Template 1474 Attributes defined in section 5.3 Table 1 of [RFC3995]. This operation is semantically 1475 analogous to the Create-Printer-Subscriptions operation defined in [RFC3995]. 1476

Page 53: The Printer Working GroupThe Printer Working Group 29 November 2016 Working Draft Copyright © 2014-2016 The Printer Working Group. All rights reserved. IPP System Service v1.0 (SYSTEM)

Working Draft – IPP System Service v1.0 (SYSTEM) 29 November 2016

Page 53 of 126 Copyright © 2014-2016 The Printer Working Group. All rights reserved.

6.3.2.1 Create-System-Subscriptions Request 1477

The Client submits a Create-System-Subscriptions operation request to a System object. 1478 The following groups of attributes are part of a Create-Resource-Subscriptions request. 1479

Group 1: Operation Attributes 1480

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

The Client MUST supply and the System MUST support both of these 1483 attributes. 1484

“system-uri” (uri): 1485

The Client MUST supply and the System MUST support the “system-uri” 1486 operation attribute which is the target System for the operation. 1487

"requesting-user-name" (name(MAX)) and 1488 "requesting-user-uri" (uri) and 1489 “requesting-user-vcard” (1setOf text(1023)): 1490

The Client SHOULD supply and the System MUST support all three of these 1491 attributes. 1492

Groups 2-N: Subscription Attributes 1493

See [RFC3995] for details on supplying Subscription Attributes. 1494

6.3.2.2 Create-System-Subscriptions Response 1495

The System MUST return a Create-System-Subscriptions operation response to the Client. 1496

Group 1: Operation Attributes 1497

"attributes-charset" (charset) [RFC2911] and 1498 "attributes-natural-language" (naturalLanguage) [RFC2911]: 1499

The System MUST return both of these attributes. 1500

"status-message" (text(255)) and/or 1501 "detailed-status-message" (text(MAX)): 1502

The System MAY return one or both of these attributes. 1503

Group 2: Unsupported Attributes 1504

See [RFC2911] for details on returning Unsupported Attributes. 1505

Page 54: The Printer Working GroupThe Printer Working Group 29 November 2016 Working Draft Copyright © 2014-2016 The Printer Working Group. All rights reserved. IPP System Service v1.0 (SYSTEM)

Working Draft – IPP System Service v1.0 (SYSTEM) 29 November 2016

Page 54 of 126 Copyright © 2014-2016 The Printer Working Group. All rights reserved.

Groups 3-N: Subscription Attributes 1506

See [RFC3995] for details on returning Subscription Attributes. 1507

6.4 System Operations 1508

6.4.1 Disable-All-Printers 1509

This REQUIRED operation allows an authorized Operator or Administrator to pause all 1510 configured Printer objects (i.e., Job processing services) on the target System object. This 1511 operation is semantically equivalent to the DisableAllServices operation defined in 1512 [PWG5108.06]. This operation is also semantically equivalent to a sequence of Disable-1513 Printer operations [RFC3398] to each configured Printer object. This operation does not 1514 change the “system-state” of the System itself. 1515

Each configured Printer will be disabled with “printer-is-accepting-jobs” set to ‘false’ but the 1516 value of “printer-state” or “printer-state-reasons” is not affected by the Disable-All-Printers 1517 operation. 1518

6.4.1.1 Disable-All-Printers Request 1519

The Client submits a Disable-All-Printers operation request to a System object. The 1520 following groups of attributes are part of a Disable-All-Printers request. 1521

Group 1: Operation Attributes 1522

The System MUST support the same operation attributes in a Disable-All-Printers 1523 operation request as those defined for the Startup-All-Printers operation. 1524

6.4.1.2 Disable-All-Printers Response 1525

The System MUST return a Disable-All-Printers operation response to the Client. If no 1526 Printers are configured on the System, then the System MUST return a “status-code” of 1527 'successful-ok'. 1528

Group 1: Operation Attributes 1529

The System MUST support the same operation attributes in a Disable-All-Printers 1530 operation response as those defined for the Startup-All-Printers operation. 1531

6.4.2 Enable-All-Printers 1532

This REQUIRED operation allows an authorized Operator or Administrator to enable all 1533 configured Printer objects (i.e., Job processing services) on the target System object. This 1534 operation is semantically equivalent to the EnableAllServices operation defined in 1535 [PWG5108.06]. This operation is also semantically equivalent to a sequence of Enable-1536

Page 55: The Printer Working GroupThe Printer Working Group 29 November 2016 Working Draft Copyright © 2014-2016 The Printer Working Group. All rights reserved. IPP System Service v1.0 (SYSTEM)

Working Draft – IPP System Service v1.0 (SYSTEM) 29 November 2016

Page 55 of 126 Copyright © 2014-2016 The Printer Working Group. All rights reserved.

Printer operations [RFC3398] to each configured Printer object. This operation does not 1537 change the “system-state” of the System itself. 1538

Each configured Printer will be enabled with “printer-is-accepting-jobs” set to ‘true’ but the 1539 value of “printer-state” or “printer-state-reasons” is not affected by the Enable-All-Printers 1540 operation. 1541

6.4.2.1 Enable-All-Printers Request 1542

The Client submits a Enable-All-Printers operation request to a System object. The 1543 following groups of attributes are part of a Enable-All-Printers request. 1544

Group 1: Operation Attributes 1545

The System MUST support the same operation attributes in a Enable-All-Printers 1546 operation request as those defined for the Startup-All-Printers operation. 1547

6.4.2.2 Enable-All-Printers Response 1548

The System MUST return a Enable-All-Printers operation response to the Client. If no 1549 Printers are configured on the System, then the System MUST return a “status-code” of 1550 'successful-ok'. 1551

Group 1: Operation Attributes 1552

The System MUST support the same operation attributes in a Enable-All-Printers 1553 operation response as those defined for the Startup-All-Printers operation. 1554

6.4.3 Get-System-Attributes 1555

- modeled on 2911 Get-Printer-Attributes with “requested-attributes” for which attributes to 1556 return – default is all [TBD – may not be desirable] 1557

- require explicit attribute request for either system-configured-resources or system-1558 configured-printers (by analogy to media-col-database) 1559

6.4.4 Get-System-Supported-Values 1560

- modeled on Get-Printer-Supported-Values in [RFC3380] – REQUIRED in this 1561 specification 1562

6.4.5 Pause-All-Printers 1563

This REQUIRED operation allows an authorized Operator or Administrator to pause all 1564 configured Printer objects (i.e., Job processing services) on the target System object. This 1565 operation is semantically equivalent to the PauseAllServices operation defined in 1566 [PWG5108.06]. This operation is also semantically equivalent to a sequence of Pause-1567

Page 56: The Printer Working GroupThe Printer Working Group 29 November 2016 Working Draft Copyright © 2014-2016 The Printer Working Group. All rights reserved. IPP System Service v1.0 (SYSTEM)

Working Draft – IPP System Service v1.0 (SYSTEM) 29 November 2016

Page 56 of 126 Copyright © 2014-2016 The Printer Working Group. All rights reserved.

Printer operations [RFC2911] to each configured Printer object. The System will be 1568 paused with the “system-state” set to ‘stopped’. 1569

Each configured Printer will be paused with the “printer-state” set to ‘stopped’ (although 1570 incoming Jobs can be accepted if the Printer is not disabled) and the ‘paused’ value added 1571 to “printer-state-reasons” (i.e., no Job processing output allowed). 1572

6.4.5.1 Pause-All-Printers Request 1573

The Client submits a Pause-All-Printers operation request to a System object. The 1574 following groups of attributes are part of a Pause-All-Printers request. 1575

Group 1: Operation Attributes 1576

The System MUST support the same operation attributes in a Pause-All-Printers operation 1577 request as those defined for the Startup-All-Printers operation. 1578

6.4.5.2 Pause-All-Printers Response 1579

The System MUST return a Pause-All-Printers operation response to the Client. If no 1580 Printers are configured on the System, then the System MUST return a “status-code” of 1581 'successful-ok'. 1582

Group 1: Operation Attributes 1583

The System MUST support the same operation attributes in a Pause-All-Printers operation 1584 response as those defined for the Startup-All-Printers operation. 1585

6.4.6 Pause-All-Printers-After-Current-Job 1586

6.4.7 Register-Output-Device 1587

[for IPP Infra/Cloud Model] 1588

⁃ Drop system attributes in request? Continue discussion later (from PWG F2F 4/29/15) 1589

⁃ Put static resource attributes in the printer groups of the response 1590

6.4.8 Restart-System 1591

[operation to restart an entire System with existing firmware or different firmware (from 1592 Install-Resource after Create-Resource and Send-Resource-Data) – added for normal 1593 System maintenance and also System remediation based on health monitoring] 1594

6.4.9 Resume-All-Printers 1595

This REQUIRED operation allows an authorized Operator or Administrator to resume all 1596 configured Printer objects (i.e., Job processing services) on the target System object. This 1597

Page 57: The Printer Working GroupThe Printer Working Group 29 November 2016 Working Draft Copyright © 2014-2016 The Printer Working Group. All rights reserved. IPP System Service v1.0 (SYSTEM)

Working Draft – IPP System Service v1.0 (SYSTEM) 29 November 2016

Page 57 of 126 Copyright © 2014-2016 The Printer Working Group. All rights reserved.

operation is semantically equivalent to the ResumeAllServices operation defined in 1598 [PWG5108.06]. This operation is also semantically equivalent to a sequence of Resume-1599 Printer operations [RFC2911] to each configured Printer object. This operation changes 1600 the “system-state” of the System itself to ‘idle’ (unless there is another reason for one or 1601 more Printers to stay in the ‘stopped’ state). 1602

Each configured Printer will be resumed with the “printer-state” set to ‘idle’ (unless there is 1603 another reason for the Printer to stay in the ‘stopped’ state) and the ‘paused’ value 1604 removed from “printer-state-reasons” (i.e., Job processing output allowed). 1605

6.4.9.1 Resume-All-Printers Request 1606

The Client submits a Resume-All-Printers operation request to a System object. The 1607 following groups of attributes are part of a Resume-All-Printers request. 1608

Group 1: Operation Attributes 1609

The System MUST support the same operation attributes in a Resume-All-Printers 1610 operation request as those defined for the Startup-All-Printers operation. 1611

6.4.9.2 Resume-All-Printers Response 1612

The System MUST return a Resume-All-Printers operation response to the Client. If no 1613 Printers are configured on the System, then the System MUST return a “status-code” of 1614 'successful-ok'. 1615

Group 1: Operation Attributes 1616

The System MUST support the same operation attributes in a Resume-All-Printers 1617 operation response as those defined for the Startup-All-Printers operation. 1618

6.4.10 Set-System-Attributes 1619

This REQUIRED operation allows an authorized Operator or Administrator to set the 1620 values of System Description attributes listed in “system-settable-attributes-supported” 1621 (see section 7.2). 1622

For Client support for localization see “system-strings-languages-supported” and “system-1623 strings-uri” in section 7.2 1624

6.4.11 Shutdown-All-Printers 1625

This REQUIRED operation allows an authorized Operator or Administrator to shutdown all 1626 configured Printer objects (i.e., Job processing services) on the target System object. 1627 This operation is semantically equivalent to the ShutdownAllServices operation defined in 1628 [PWG5108.06]. This operation is also semantically equivalent to a sequence of Shutdown-1629 Printer operations [RFC3998] to each configured Printer object (except for the resulting 1630

Page 58: The Printer Working GroupThe Printer Working Group 29 November 2016 Working Draft Copyright © 2014-2016 The Printer Working Group. All rights reserved. IPP System Service v1.0 (SYSTEM)

Working Draft – IPP System Service v1.0 (SYSTEM) 29 November 2016

Page 58 of 126 Copyright © 2014-2016 The Printer Working Group. All rights reserved.

“printer-state” of ‘stopped’ rather than ‘idle’). The System will be paused with the “system-1631 state” set to ‘stopped’. 1632

Each configured Printer will be shutdown with the “printer-state” set to ‘stopped’ (i.e., no 1633 Jobs can be processed and intervention is required) and the ‘shutdown’ value added to 1634 “printer-state-reasons”. The Client can later send a Startup-All-Printers operation 1635 (preferred) or a sequence of Startup-One-Printer operations (preferred) or Startup-Printer 1636 operations [RFC3998] to each Printer to start up all of the configured Printers. 1637

6.4.11.1 Shutdown-All-Printers Request 1638

The Client submits a Shutdown-All-Printers operation request to a System object. The 1639 following groups of attributes are part of a Shutdown-All-Printers request. 1640

Group 1: Operation Attributes 1641

The System MUST support the same operation attributes in a Shutdown-All-Printers 1642 operation request as those defined for the Startup-All-Printers operation. 1643

6.4.11.2 Shutdown-All-Printers Response 1644

The System MUST return a Shutdown-All-Printers operation response to the Client. If no 1645 Printers are configured on the System, then the System MUST return a “status-code” of 1646 'successful-ok'. 1647

Group 1: Operation Attributes 1648

The System MUST support the same operation attributes in a Shutdown-All-Printers 1649 operation response as those defined for the Startup-All-Printers operation. 1650

6.4.12 Startup-All-Printers 1651

This REQUIRED operation allows an authorized Operator or Administrator to startup all 1652 configured Printer objects (i.e., Job processing services) on the target System object. 1653 This operation is semantically equivalent to the StartupAllServices operation defined in 1654 [PWG5108.06]. This operation is also semantically equivalent to a sequence of Startup-1655 One-Printer operations for each configured Printer object. The System will be paused with 1656 the “system-state” set to ‘stopped’. 1657

Each configured Printer will be started up with the “printer-state” set to ‘stopped’ (i.e., no 1658 Jobs can be processed and intervention is required), “printer-is-accepting-jobs” set to 1659 ‘false’ (i.e., no incoming Jobs accepted), and the ‘paused’ value added to “printer-state-1660 reasons” (i.e., no Job processing output allowed). The Client can then send one or more 1661 Set-Printer-Attributes operations to modify the configuration of each Printer, followed by 1662 Resume-Printer (i.e., remove ‘paused’ from “printer-state-reasons”) and Enable-Printer 1663 (i.e., change “printer-is-accepting-jobs” to ‘true’). 1664

Page 59: The Printer Working GroupThe Printer Working Group 29 November 2016 Working Draft Copyright © 2014-2016 The Printer Working Group. All rights reserved. IPP System Service v1.0 (SYSTEM)

Working Draft – IPP System Service v1.0 (SYSTEM) 29 November 2016

Page 59 of 126 Copyright © 2014-2016 The Printer Working Group. All rights reserved.

6.4.12.1 Startup-All-Printers Request 1665

The Client submits a Startup-All-Printers operation request to a System object. The 1666 following groups of attributes are part of a Startup-All-Printers request. 1667

Group 1: Operation Attributes 1668

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

The Client MUST supply and the System MUST support both of these 1671 attributes. 1672

“system-uri” (uri): 1673

The Client MUST supply and the System MUST support the “system-uri” 1674 operation attribute which is the target System for the operation. 1675

"requesting-user-name" (name(MAX)) and 1676 "requesting-user-uri" (uri) and 1677 “requesting-user-vcard” (1setOf text(1023)): 1678

The Client SHOULD supply and the System MUST support all three of these 1679 attributes. 1680

1681

6.4.12.2 Startup-All-Printers Response 1682

The System MUST return a Startup-All-Printers operation response to the Client. If no 1683 Printers are configured on the System, then the System MUST return a “status-code” of 1684 'successful-ok'. 1685

Group 1: Operation Attributes 1686

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

The System MUST return both of these attributes. 1689

"status-message" (text(255)) and/or 1690 "detailed-status-message" (text(MAX)): 1691

The System MAY return one or both of these attributes. 1692

1693

Page 60: The Printer Working GroupThe Printer Working Group 29 November 2016 Working Draft Copyright © 2014-2016 The Printer Working Group. All rights reserved. IPP System Service v1.0 (SYSTEM)

Working Draft – IPP System Service v1.0 (SYSTEM) 29 November 2016

Page 60 of 126 Copyright © 2014-2016 The Printer Working Group. All rights reserved.

7. IPP Attributes 1694

7.1 IPP Operation Attributes 1695

The following operation attributes can be applicable to one or more System, Printer, 1696 Resource, Job, or Subscription operations. 1697

7.1.1 printer-id (integer(1:MAX)) 1698

This operation attribute specifies the target Printer object as used in Get-Printer-Attributes 1699 and some other Printer operations defined in section 6 and is semantically equivalent to 1700 the ServiceSummary element ID defined in [PWG5108.06] and semantically analogous to 1701 the “job-id” attribute defined in [RFC2911]. See “printer-id” in section 7.5 Printer Status 1702 Attributes. 1703

7.1.2 printer-ids (1setOf (integer(1:MAX))) 1704

This operation attribute specifies the list of “printer-id” values for target Printer objects as 1705 used in Get-Printers and some other Printer operations defined in section 6 and is 1706 semantically equivalent a list of the ServiceSummary element ID defined in [PWG5108.06] 1707 and semantically analogous a list of the “job-id” attribute defined in [RFC2911]. See 1708 “printer-id” in section 7.5 Printer Status Attributes. 1709

7.1.3 printer-geo-location (uri) 1710

This operation attribute specifies a filter for the applicable Printers as used in Get-Printers 1711 defined in section 6 and is semantically analogous to the “printer-geo-location” attribute 1712 defined in [PWG5100.13]. 1713

7.1.4 printer-location (text(127)) 1714

This operation attribute specifies a filter for the applicable Printers as used in Get-Printers 1715 defined in section 6 and is semantically analogous to the “printer-location” attribute defined 1716 in [RFC2911]. 1717

7.1.5 printer-service-type (1setOf (type2 keyword)) 1718

This operation attribute specifies the service type for a Printer as used in Create-Printer or 1719 a filter for the applicable Printers as used in Get-Printers defined in section 6 and is 1720 semantically equivalent to the ServiceSummary element ServiceType defined in 1721 [PWG5108.06]. See “printer-service-type” in section 7.5 Printer Status Attributes. 1722

7.1.6 requesting-user-vcard (1setOf text(1023)) 1723

This operation attribute contains the System, Printer, Resource, or Job Owner vCard 1724 [RFC6350] for a Set-System-Attributes, Create-Printer, Create-Resource, or Create-Job 1725 operation and is semantically analogous to the Service object’s OwnerVCard defined in 1726

Page 61: The Printer Working GroupThe Printer Working Group 29 November 2016 Working Draft Copyright © 2014-2016 The Printer Working Group. All rights reserved. IPP System Service v1.0 (SYSTEM)

Working Draft – IPP System Service v1.0 (SYSTEM) 29 November 2016

Page 61 of 126 Copyright © 2014-2016 The Printer Working Group. All rights reserved.

[PWG5108.01]. See “printer-owner-col” (section 7.4)and “resource-owner-col” (section 1727 7.6) description attributes for updates via subsequent Set-Printer-Attributes or Set-1728 Resource-Attributes operations. 1729 The recorded values System, Printer, Resource, or Job Owner MUST identify the most 1730 authenticated user information. As with “requesting-user-name” [RFC2911], the most 1731 authenticated user information is copied to the System, Printer, Resource, or Job object. 1732

7.1.7 resource-format (1setOf (mimeMediaType)) 1733

This operation attribute specifies the format for a Resource as used in Create-1734 Resource/Send-Resource-Data or a filter for the applicable Resources as used in Get-1735 Resources defined in section 6 and is semantically equivalent to the ResourceFormat 1736 element defined in [PWG5108.03] and semantically analogous to the “document-format” 1737 attribute defined in [RFC2911]. See “resource-format” in section 7.7 Resource Status 1738 Attributes. 1739

7.1.8 resource-id (integer(1:MAX)) 1740

This operation attribute specifies the target Resource object as used in Get-Resource-1741 Attributes and other Resource operations defined in section 6 and is semantically 1742 equivalent to the ResourceId element defined in [PWG5108.03] and semantically 1743 analogous to the “job-id” attribute defined in [RFC2911]. See “resource-id” in section 7.7 1744 Resource Status Attributes. 1745

7.1.9 resource-ids (1setOf integer(1:MAX)) 1746

This operation attribute specifies the list of “resource-id” values for associated Resource 1747 objects as used in the Create-Printer and Allocate Printer-Resources operations defined in 1748 section 6 or in a Job Creation operation (Create-Job, Print-Job, or Print-URI) defined in 1749 [RFC2911] and is semantically analogous to the “job-printer-uri” attribute defined in 1750 [RFC2911]. See “resource-id” in section 7.7 Resource Status Attributes. 1751

7.1.10 resource-k-octets (integer(0:MAX)) 1752

This operation attribute specifies the size of the data for a Resource as used in Create-1753 Resource/Send-Resource-Data defined in section 6 and is semantically analogous to the 1754 “job-k-octets” attribute defined in [RFC2911]. See “resource-k-octets” in section 7.7 1755 Resource Status Attributes. 1756

7.1.11 resource-state (type1 enum) 1757

This operation attribute specifies a filter for the applicable Resources as used in Get-1758 Resources defined in section 6 and is semantically analogous to the “job-state” attribute 1759 defined in [RFC2911] and replaces the semantically analogous DateTimeAtExpiration 1760 (Resource lease time) and ResourceIsExpired elements defined in [PWG5108.03]. See 1761 “resource-state” in section 7.7 Resource Status Attributes. 1762

Page 62: The Printer Working GroupThe Printer Working Group 29 November 2016 Working Draft Copyright © 2014-2016 The Printer Working Group. All rights reserved. IPP System Service v1.0 (SYSTEM)

Working Draft – IPP System Service v1.0 (SYSTEM) 29 November 2016

Page 62 of 126 Copyright © 2014-2016 The Printer Working Group. All rights reserved.

7.1.12 resource-type (type2 keyword) 1763

This operation attribute specifies a filter for the applicable Resources as used in Get-1764 Resources defined in section 6 and replaces the semantically analogous 1765 DateTimeAtExpiration (Resource lease time) element defined in [PWG5108.03]. See 1766 “resource-type” in section 7.7 Resource Status Attributes. 1767

7.1.13 system-uri (uri) 1768

This operation attribute specifies the target System object as used in Get-Printers and all 1769 other operations defined in section 6 and is semantically analogous to the “printer-uri” 1770 attribute defined in [RFC2911] and semantically equivalent to the “SystemURI” attribute 1771 defined in [PWG5108.06]. 1772

7.1.14 which-printers (type2 keyword): 1773

This operation attribute specifies a filter for the applicable Printers as used in Get-Printers 1774 defined in section 6 and is semantically analogous to the “which-jobs” attribute defined in 1775 [RFC2911]. 1776

Standard keyword values for this attribute include: 1777

‘accepting’: All Printers with “printer-state” of ‘idle’ or ‘processing’ and “printer-is-1778 accepting-jobs” of ‘true’. 1779

‘all’: All Printers configured on this System object, regardless of their state. 1780

‘idle’: All Printers with “printer-state” of ‘idle’. 1781

‘not-accepting: All Printers with “printer-is-accepting-jobs” of ‘false’. 1782

‘processing’: All Printers with “printer-state” of ‘processing’. 1783

‘shutdown’: All Printers with “printer-state” of ‘stopped’ and “printer-state-reasons” 1784 of ‘shutdown’. 1785

‘stopped’: All Printers with “printer-state” of ‘stopped’, but do not have “printer-state-1786 reasons” of ‘shutdown’ or ‘testing’. 1787

‘testing’: All Printers with “printer-state” of ‘stopped’ and “printer-state-reasons” of 1788 testing’. 1789

7.2 System Description Attributes 1790

System Description attributes are typically READ-WRITE and can potentially be set by an 1791 Operator or Administrator using the Set-System-Attributes operation (see section 6). 1792

Page 63: The Printer Working GroupThe Printer Working Group 29 November 2016 Working Draft Copyright © 2014-2016 The Printer Working Group. All rights reserved. IPP System Service v1.0 (SYSTEM)

Working Draft – IPP System Service v1.0 (SYSTEM) 29 November 2016

Page 63 of 126 Copyright © 2014-2016 The Printer Working Group. All rights reserved.

Writable System Description attributes are listed in the value of “system-settable-attributes-1793 supported” (see section 7.2). 1794

7.2.1 Power States and Policies 1795

This specification imports (and renames for clarity and common usage) the normative 1796 definitions and semantics of System power states from the PWG Power Management 1797 Model for Imaging Systems 1.0 [PWG5106.4], which is aligned with DMTF CIM and ACPI 1798 power state definitions and semantics. 1799 1800

7.2.1.1 IEEE 1621 Power Modes 1801

[IEEE1621] (which is primarily concerned with a simple user interface) defines 3 basic 1802 power modes: Off Mode, Sleep Mode, and On Mode. These power modes in turn can be 1803 qualified with “soft / hard”, “light / deep”, and “graceful” to describe specific power states 1804 (see the following sections on DMTF stable and ephemeral power states). 1805

Off Mode – the set of power states where incoming jobs cannot be accepted 1806 immediately and existing jobs cannot be processed immediately (i.e., without a long 1807 delay for a power state transition to On Mode). 1808

On Mode – the set of power states where incoming jobs can be accepted 1809 immediately and existing jobs can be processed immediately (i.e., with no delay for 1810 a power state transition). 1811

Sleep Mode – the set of power states where incoming jobs MAY be accepted 1812 immediately, but existing jobs cannot be processed immediately (i.e., without a 1813 short delay for a power state transition to On Mode). 1814

7.2.1.2 DMTF Stable Power States 1815

This specification imports (and renames for clarity and common usage) the normative 1816 definitions and semantics of the following DMTF CIM [DSP1027] stable power states. All 1817 other DMTF CIM power states are ephemeral (orderly shutdowns and power resets) and 1818 will eventually result in one of the stable power states defined below. 1819

‘hibernate’: DMTF “Hibernate (Off-Soft)” (7) and ACPI S4. The stable “Off Mode” 1820 power state where all kernel and application programs and data have been saved 1821 (e.g., to a hard disk) such that a transition to On allows recovery and continued 1822 processing without any loss of jobs or data. Limited auxiliary power is consumed 1823 (e.g., console lights), no network interfaces are operational, and human intervention 1824 is required to power up the system. 1825

‘off-hard’: DMTF “Off-Hard” (6) and ACPI G3. The stable “Off Mode” power state 1826 where System power is mechanically or electrically turned off. No power is 1827

Page 64: The Printer Working GroupThe Printer Working Group 29 November 2016 Working Draft Copyright © 2014-2016 The Printer Working Group. All rights reserved. IPP System Service v1.0 (SYSTEM)

Working Draft – IPP System Service v1.0 (SYSTEM) 29 November 2016

Page 64 of 126 Copyright © 2014-2016 The Printer Working Group. All rights reserved.

consumed, no network interfaces are operational, and human intervention is 1828 required to power up the System. 1829

‘off-soft’: DMTF “Off-Soft” (8) and ACPI G2 or S5. The stable “Off Mode” power 1830 state where only limited auxiliary power is consumed (e.g., console lights), no 1831 network interfaces are operational, and human intervention is required to power up 1832 the system. 1833

‘on’: DMTF “On” (2) – ACPI G0 or S0 – the stable “On Mode” power state where 1834 the System is in ‘idle’, ‘processing’, or ‘stopped’ operational states, with no delay 1835 required for a power state transition before processing incoming jobs. 1836

‘standby’: DMTF “Sleep-Light” (3) and ACPI S1 or S2. The stable “Sleep Mode” 1837 power state with the shortest wake-up transition to the ‘on’ power state. Typically, 1838 mechanical elements (motors, lamps, heaters, etc.) are turned off or turned down, 1839 but processors and network interfaces are fully active (e.g., normal clock rate). 1840

‘suspend’: DMTF “Sleep-Deep” (4) and ACPI S3. The stable “Sleep Mode” power 1841 state with the lowest power consumption of any “Sleep Mode” power state. 1842 Typically, mechanical elements (motors, lamps, heaters, etc.) are turned off, but 1843 processors and network interfaces are partially active (e.g., lower clock rate). 1844 Kernel and application programs and data are preserved (i.e., periodically 1845 refreshed) in main memory and at least one network interface is operational. 1846

Additional vendor-specific power sub-states are defined as qualifiers of the stable power 1847 states ‘hibernate’, ‘off-soft’, ‘on’, ‘standby’, and ‘suspend’ (but not ‘off-hard’). These 1848 additional power sub-state keywords are all of the form ‘<base>-vendorN’ where ‘N’ is from 1849 ‘1’ to ‘5’ and the semantics MUST be exactly the same as those defined for these power 1850 sub-states as defined in [PWG5106.4]. Vendor-specific power sub-states MUST be used 1851 in strict order according to their nominal power consumption, e.g., ‘standby-vendor2’ 1852 MUST consume power equal to or higher than ‘standby-vendor1’ and ‘standby-vendor1’ 1853 MUST consume power equal to or higher than ‘standby’ (the base state). 1854

7.2.1.3 DMTF Ephemeral Power States 1855

This specification imports (and renames for clarity and common usage) the normative 1856 definitions and semantics of the following DMTF CIM [DSP1027] ephemeral (transitional) 1857 power states that initiate orderly shutdowns (e.g., ‘off-soft-graceful’) and power resets 1858 (e.g., ‘reset-hard’). All DMTF CIM ephemeral power state transitions will eventually result 1859 in one of the stable power states defined in section 7.2.1.2 above. 1860

‘off-hard-graceful’: DMTF “Off-Hard Graceful” (13) and ACPI G3. The ephemeral 1861 power state that performs a graceful hard power off (orderly shutdown, followed by 1862 a hard power off cycle) and completes in the ‘off-hard’ power state. 1863

Page 65: The Printer Working GroupThe Printer Working Group 29 November 2016 Working Draft Copyright © 2014-2016 The Printer Working Group. All rights reserved. IPP System Service v1.0 (SYSTEM)

Working Draft – IPP System Service v1.0 (SYSTEM) 29 November 2016

Page 65 of 126 Copyright © 2014-2016 The Printer Working Group. All rights reserved.

‘off-soft-graceful’: DMTF “Off-Soft Graceful” (12) and ACPI G2 or S5. The 1864 ephemeral power state that performs a graceful soft power off (orderly shutdown, 1865 followed by a soft power off cycle) and completes in the ‘off-soft’ power state. 1866

‘reset-hard’: DMTF “Power Cycle (Off-Hard)” (9) and ACPI G0 to G3, then S0. The 1867 ephemeral power state that performs a hard power reset (hard power off cycle, 1868 followed by normal power on cycle) and completes in the ‘on’ power state. 1869

‘reset-hard-graceful’: DMTF “Power Cycle Off-Soft Graceful” (16) and ACPI G3, 1870 then S0. The ephemeral power state that performs a graceful hard power reset 1871 (orderly shutdown, followed by a hard power reset) and completes in the ‘on’ power 1872 state. 1873

‘reset-init’: DMTF “Diagnostic Interrupt (INIT)” (17) and ACPI S5, then S0. The 1874 ephemeral power state (based on a diagnostic interrupt) that performs a hard power 1875 reset (hard power off cycle, followed by normal power on cycle) and completes in 1876 the ‘on’ power state. 1877

‘reset-mbr’: DMTF “Master Bus Reset” (10) and ACPI S5, then S0. The ephemeral 1878 power state (based on a master bus reset) that performs a hard power reset (hard 1879 power off cycle, followed by normal power on cycle) and completes in the ‘on’ power 1880 state. 1881

‘reset-mbr-graceful’: DMTF “Master Bus Reset Graceful” (14) and ACPI S5, then 1882 S0. The ephemeral power state that performs an orderly shutdown, followed by an 1883 MBR reset, and completes in the ‘on’ power state. 1884

‘reset-nmi’: DMTF “Diagnostic Interrupt (NMI)” (11) and ACPI S5, then S0. The 1885 ephemeral power state (based on a non-maskable interrupt) that performs a hard 1886 power reset (hard power off cycle, followed by normal power on cycle) and 1887 completes in the ‘on’ power state. 1888

‘reset-soft’: DMTF “Power Cycle (Off-Soft)” (5) and ACPI G2 or S5, then S0 w/ lost 1889 context. The ephemeral power state that performs a soft power reset (soft power 1890 off, followed by normal power on cycle) and completes in the ‘on’ power state. 1891

‘reset-soft-graceful’: DMTF “Power Cycle Off-Soft Graceful” (16) and ACPI G2 or 1892 S5, then S0 w/ lost context. The ephemeral power state that performs a graceful 1893 soft power reset (orderly shutdown, followed by a soft power reset) and completes 1894 in the ‘on’ power state. 1895

7.2.1.4 Power Policies 1896

Power state transition policies can be scheduled by an Operator or Administrator in 1897 “power-calendar-policy-col”, “power-event-policy-col”, and “power-timeout-policy-col” 1898 System attributes. These policies can use triggers based on calendar times (e.g., 1st day 1899

Page 66: The Printer Working GroupThe Printer Working Group 29 November 2016 Working Draft Copyright © 2014-2016 The Printer Working Group. All rights reserved. IPP System Service v1.0 (SYSTEM)

Working Draft – IPP System Service v1.0 (SYSTEM) 29 November 2016

Page 66 of 126 Copyright © 2014-2016 The Printer Working Group. All rights reserved.

of month), named events (e.g., ‘jam’), or elapsed time (e.g., 5 minutes of inactivity after 1900 entering ‘standby’ power state resulting in a further transition to ‘suspend’ power state). 1901

System administrative operations can also invoke System power state transitions (e.g., 1902 Restart-System can invoke a ‘reset-soft-graceful’ transition). Job creation operations can 1903 be delayed in some System power states (e.g., during the warm up transition from 1904 ‘suspend’ to ‘on’). Job creation operations can also be prohibited in some System power 1905 states (e.g., in ‘hibernate’ and ‘off-soft’). 1906

Note: This specification intentionally does not define any explicit operations for changing 1907 System power states. System power policies can be used instead to schedule power state 1908 transitions. 1909

An example of an automated System power state transition to ‘hibernate’ at 6pm every 1910 Friday evening could be scheduled in “power-calendar-policy-col” as follows: 1911

calendar-id=32 # arbitrary unique value for calendar policy 1912

day-of-week=6 # Friday is 6th day counting from Sunday 1913

hour=18 # 6pm is 18:00 on a 24-hour clock 1914

request-power-state=’hibernate’ # target power state 1915

In the above example, the irrelevant “day-of-month”, “minute”, “month”, and “run-once” 1916 member attributes have been omitted. 1917

An example of a Restart-System operation implementation could be as follows: 1918

1) ‘stopping’ is added to “system-state-reasons” for the System. 1919

2) ‘stopping’ is added to “printer-state-reasons” for each configured Printer. 1920

3) ‘processing-to-stop-point’ is added to “job-state-reasons” for each active Job. 1921

4) All active Jobs complete normally (because the stop point is a Job boundary) and 1922 ‘processing-to-stop-point’ is removed from “job-state-reasons” for each completed 1923 Job. 1924

5) ‘stopping’ is removed from “printer-state-reasons” and “printer-state” is changed to 1925 ‘stopped’ for each configured Printer. 1926

6) ‘stopping’ is removed from “system-state-reasons” and “system-state” is changed to 1927 ‘stopped’ for the System. 1928

7) The System executes a ‘reset-soft-graceful’ transition, resulting in “power-state” in 1929 “power-state-monitor-col” values: on standby off-soft standby on. 1930

Page 67: The Printer Working GroupThe Printer Working Group 29 November 2016 Working Draft Copyright © 2014-2016 The Printer Working Group. All rights reserved. IPP System Service v1.0 (SYSTEM)

Working Draft – IPP System Service v1.0 (SYSTEM) 29 November 2016

Page 67 of 126 Copyright © 2014-2016 The Printer Working Group. All rights reserved.

8) “system-state” is changed to ‘idle’ for the System and “printer-state” is changed to 1931 ‘idle’ for each configured Printer. 1932

9) Job processing resumes normally on all Printers. 1933

7.2.2 charset-configured (charset) 1934

This REQUIRED System attribute identifies the charset that is used to represent attributes 1935 with 'text' and 'name' attribute syntaxes and is semantically analogous to the "charset-1936 configured" Printer attribute defined in [RFC2911]. The value of the "charset-configured" 1937 attribute MUST be one of the values of the "charset-supported" attribute defined in section 1938 7.2.2. 1939

7.2.3 charset-supported (1setOf charset) 1940

This REQUIRED System attribute lists the charsets that are supported for values of 1941 attributes with 'text' and 'name' attribute syntaxes and is semantically analogous to the 1942 "charset-supported" Printer attribute defined in [RFC2911]. The value 'utf-8' MUST be 1943 present, since IPP objects MUST support the UTF-8 [RFC3629] charset. 1944

7.2.4 ipp-versions-supported (1setOf type2 keyword) 1945

This REQUIRED attribute identifies the supported IPP protocol version(s) and is 1946 semantically analogous to the "ipp-versions-supported" Printer attribute defined in 1947 [RFC2911]. 1948

7.2.5 natural-language-configured (naturalLanguage) 1949

This REQUIRED System attribute identifies the natural language that is used for System-1950 generated attribute values with 'text' and 'name' attribute syntaxes and is semantically 1951 analogous to the "natural-language-configured" Printer attribute defined in [RFC2911]. 1952

7.2.6 generated-natural-language-supported (1setOf naturalLanguage) 1953

This REQUIRED System attribute lists the natural language(s) that are supported for 1954 System-generated attribute values with 'text' and 'name' attribute syntaxes and is 1955 semantically analogous to the "generated-natural-language-supported" Printer attribute 1956 defined in [RFC2911]. 1957

Note: The natural language(s) supported for System-generated values depends on 1958 implementation and/or configuration. However, unlike charsets, System objects MUST 1959 accept requests with any natural language or any Natural Language Override whether or 1960 not the natural language is supported for System-generated attribute values. 1961

Note: A System that supports multiple natural languages, often has separate catalogs of 1962 messages, one for each natural language supported. 1963

Page 68: The Printer Working GroupThe Printer Working Group 29 November 2016 Working Draft Copyright © 2014-2016 The Printer Working Group. All rights reserved. IPP System Service v1.0 (SYSTEM)

Working Draft – IPP System Service v1.0 (SYSTEM) 29 November 2016

Page 68 of 126 Copyright © 2014-2016 The Printer Working Group. All rights reserved.

7.2.7 operations-supported (1setOf type2 enum) 1964

This REQUIRED System attribute lists the supported System operations and is 1965 semantically analogous to the “operations-supported" Printer attribute defined in 1966 [RFC2911]. 1967

7.2.8 power-calendar-policy-col (1setOf collection) 1968

This OPTIONAL System attribute lists the configured System calendar-based power state 1969 change policies and is semantically equivalent to the Power Calendar group defined in 1970 [PWG5106.4]. If “power-calendar-policy-col” is supported, then all member attributes in 1971 this collection are REQUIRED for the System but are OPTIONAL for the Client to supply. 1972

For example, an automated System power state transition to ‘hibernate’ at 6pm every 1973 Friday evening could be scheduled in “power-calendar-policy-col” as follows: 1974

calendar-id=32 # arbitrary unique value for calendar policy 1975

day-of-week=6 # Friday is 6th day counting from Sunday 1976

hour=18 # 6pm is 18:00 on a 24-hour clock 1977

request-power-state=’hibernate’ # target power state 1978

In the above example, the irrelevant “day-of-month”, “minute”, “month”, and “run-once” 1979 member attributes have been omitted. 1980

7.2.8.1 calendar-id (integer(1:MAX)) 1981

This REQUIRED member attribute contains the unique key of this calendar policy and is 1982 semantically equivalent to the CalendarID element in the Power Calendar group defined in 1983 [PWG5106.4]. 1984

7.2.8.2 day-of-month (integer(1:31)) 1985

This REQUIRED member attribute specifies the trigger day of the month for this calendar 1986 policy and is semantically equivalent to the CalendarDay element in the Power Calendar 1987 group defined in [PWG5106.4]. The value ‘1’ represents the first day of the month. 1988

See “system-current-time” defined above for the relevant System date, time, and time zone 1989 values. 1990

7.2.8.3 day-of-week (integer(1:7)) 1991

This REQUIRED member attribute specifies the trigger day of the week for this calendar 1992 policy and is semantically equivalent to the CalendarDayOfWeek element in the Power 1993 Calendar group defined in [PWG5106.4]. The value ‘1’ represents Sunday. 1994

Page 69: The Printer Working GroupThe Printer Working Group 29 November 2016 Working Draft Copyright © 2014-2016 The Printer Working Group. All rights reserved. IPP System Service v1.0 (SYSTEM)

Working Draft – IPP System Service v1.0 (SYSTEM) 29 November 2016

Page 69 of 126 Copyright © 2014-2016 The Printer Working Group. All rights reserved.

See “system-current-time” defined above for the relevant System date, time, and time zone 1995 values. 1996

7.2.8.4 hour (integer(0:23)) 1997

This REQUIRED member attribute specifies the trigger hour for this calendar policy and is 1998 semantically equivalent to the CalendarHour element in the Power Calendar group defined 1999 in [PWG5106.4]. The value ‘0’ represents the first hour of the day (i.e., 12:00-12:59am). 2000 Midnight (i.e., 12:00am) is specified by a value of zero for “hour” and a value of zero for 2001 “minute”. 2002

See “system-current-time” defined above for the relevant System date, time, and time zone 2003 values. 2004

Note: Due to local time zone changes (summer time to standard time or vice versa), it’s 2005 possible that a given hour will not occur in a given month. 2006

7.2.8.5 minute (integer(0:59)) 2007

This REQUIRED member attribute specifies the trigger minute for this calendar policy and 2008 is semantically equivalent to the CalendarMinute element in the Power Calendar group 2009 defined in [PWG5106.4]. The value ‘0’ represents the first minute of the hour (e.g., 2010 7:00am). 2011

See “system-current-time” defined above for the relevant System date, time, and time zone 2012 values. 2013

7.2.8.6 month (integer(1:12)) 2014

This REQUIRED member attribute specifies the trigger month for this calendar policy and 2015 is semantically equivalent to the CalendarMonth element in the Power Calendar group 2016 defined in [PWG5106.4]. The value of ‘1’ represents January. 2017

See “system-current-time” defined above for the relevant System date, time, and time zone 2018 values. 2019

7.2.8.7 request-power-state (type1 keyword) 2020

This REQUIRED member attribute specifies the requested stable or ephemeral 2021 (transitional) power state for this calendar policy and is semantically equivalent to the 2022 RequestPowerState element in the Power Calendar group defined in [PWG5106.4]. 2023

Standard values and constraints on vendor extension values are defined in section 7.2.1 2024 Power States and Policies. 2025

Page 70: The Printer Working GroupThe Printer Working Group 29 November 2016 Working Draft Copyright © 2014-2016 The Printer Working Group. All rights reserved. IPP System Service v1.0 (SYSTEM)

Working Draft – IPP System Service v1.0 (SYSTEM) 29 November 2016

Page 70 of 126 Copyright © 2014-2016 The Printer Working Group. All rights reserved.

7.2.8.8 run-once (boolean) 2026

This REQUIRED member attribute specifies whether this calendar policy should be run 2027 once (single execution) or repeatedly (multiple executions) and is semantically equivalent 2028 to the CalendarRunOnce element in the Power Calendar group defined in [PWG5106.4]. 2029

7.2.9 power-event-policy-col (1setOf collection) 2030

This OPTIONAL System attribute lists the configured System event-based power state 2031 change policies and is semantically equivalent to the Power Event group defined in 2032 [PWG5106.4]. 2033

For example, an automated System power state transition to ‘standby’ upon every ‘jam’ 2034 condition could be scheduled in “power-event-policy-col” as follows: 2035

event-id=11 # arbitrary unique value for event policy 2036

event-name=’jam’ # name of event 2037

request-power-state=’standby’ # target power state 2038

7.2.9.1 event-id (integer(1:MAX)) 2039

This REQUIRED member attribute contains the unique key of this event policy and is 2040 semantically equivalent to the EventID element in the Power Event group defined in 2041 [PWG5106.4]. 2042

7.2.9.2 event-name (name(127)) 2043

This REQUIRED member attribute specifies the trigger event name of this event policy and 2044 is semantically equivalent to the EventName element in the Power Event group defined in 2045 [PWG5106.4]. 2046

Event names MUST be either: (a) the exact case-sensitive label (starting with a lowercase 2047 character) of an enumerated value in the PrtAlertCodeTC textual convention in the IANA 2048 Printer MIB [IANAPRT] (e.g., ‘jam’); or (b) a case-sensitive vendor event name (starting 2049 with an uppercase character, e.g., ‘ExamplePowerEvent’). Event names MUST be 2050 specified in US-ASCII [ISO646] (for interoperability). 2051

7.2.9.3 request-power-state (type1 keyword) 2052

This REQUIRED member attribute specifies the requested stable or ephemeral 2053 (transitional) power state for this event policy and is semantically equivalent to the 2054 RequestPowerState element in the Power Event group defined in [PWG5106.4]. 2055

Standard values and constraints on vendor extension values are defined in section 7.2.1 2056 Power States and Policies. 2057

Page 71: The Printer Working GroupThe Printer Working Group 29 November 2016 Working Draft Copyright © 2014-2016 The Printer Working Group. All rights reserved. IPP System Service v1.0 (SYSTEM)

Working Draft – IPP System Service v1.0 (SYSTEM) 29 November 2016

Page 71 of 126 Copyright © 2014-2016 The Printer Working Group. All rights reserved.

7.2.10 power-timeout-policy-col (1setOf collection) 2058

This RECOMMENDED System attribute lists the configured System timeout-based power 2059 state change policies and is semantically equivalent to the Power Timeout group defined in 2060 [PWG5106.4]. 2061

For example, an automated System power state transition to ‘standby’ upon 5 minutes of 2062 inactivity in ‘on’ power state could be scheduled in “power-timeout-policy-col” as follows: 2063

request-power-state=’standby’ # target power state 2064

start-power-state=’on’ # starting power state 2065

timeout-id=23 # arbitrary unique value for timeout policy 2066

timeout-predicate=’inactivity’ # predicate of system inactivity 2067

timeout-seconds=300 # duration before transition to target power state 2068

7.2.10.1 request-power-state (type1 keyword) 2069

This REQUIRED member attribute specifies the requested stable or ephemeral 2070 (transitional) power state for this timeout policy and is semantically equivalent to the 2071 RequestPowerState element in the Power Timeout group defined in [PWG5106.4]. 2072

Standard values and constraints on vendor extension values are defined in section 7.2.1 2073 Power States and Policies. 2074

7.2.10.2 start-power-state (type1 keyword) 2075

This REQUIRED member attribute specifies the trigger starting stable power state for this 2076 timeout policy and is semantically equivalent to the StartPowerState element in the Power 2077 Timeout group defined in [PWG5106.4].Note: Ephemeral (transitional) power states 2078 cannot be specified as triggers for timeout policies. 2079

Standard values and constraints on vendor extension values for stable power states are 2080 defined in section 7.2.1 Power States and Policies. 2081

7.2.10.3 timeout-id (integer(1:MAX)) 2082

This REQUIRED member attribute contains the unique key of this timeout policy and is 2083 semantically equivalent to the TimeoutID element in the Power Timeout group defined in 2084 [PWG5106.4]. 2085

Page 72: The Printer Working GroupThe Printer Working Group 29 November 2016 Working Draft Copyright © 2014-2016 The Printer Working Group. All rights reserved. IPP System Service v1.0 (SYSTEM)

Working Draft – IPP System Service v1.0 (SYSTEM) 29 November 2016

Page 72 of 126 Copyright © 2014-2016 The Printer Working Group. All rights reserved.

7.2.10.4 timeout-predicate (type1 keyword) 2086

This REQUIRED member attribute specifies the trigger predicate (i.e., pre-condition) for 2087 this timeout policy and is semantically equivalent to the TimeoutPredicate element in the 2088 Power Timeout group defined in [PWG5106.4]. 2089

The standard keyword values for this attribute are: 2090

‘activity’ (i.e., incoming Job, console input, etc.) 2091

‘inactivity’ (i.e., no incoming, queued, or processing Jobs, console input, etc.) 2092

‘none’ 2093

7.2.10.5 timeout-seconds (integer(0:MAX)) 2094

This REQUIRED member attribute specifies the trigger timeout interval in seconds (or zero 2095 for an immediate trigger controlled by the other trigger member attributes) for this timeout 2096 policy and is semantically equivalent to the TimeoutSeconds element in the Power 2097 Timeout group defined in [PWG5106.4]. 2098

7.2.11 printer-creation-attributes-supported (1setOf type2 keyword) 2099

This REQUIRED System attribute lists Printer Description attributes supported for the 2100 Create-Printer operation and is semantically analogous to the “job-creation-attributes-2101 supported” Printer Description attribute defined in [PWG5100.11]. 2102

7.2.12 resource-settable-attributes-supported (1setOf type2 keyword) 2103

This REQUIRED System attribute lists Resource Description attributes supported for 2104 READ-WRITE access and can be configured by an Operator or Administrator. See 2105 “system-strings-languages-supported” and “system-strings-uri” below for Client localization 2106 support. 2107

7.2.13 system-current-time (dateTime) 2108

This REQUIRED System attribute specifies the current date and time for the System and is 2109 semantically equivalent to the CurrentTime element defined in [PWG5108.06]. 2110

7.2.14 system-default-printer-id (integer (1:MAX) | no-value) 2111

This REQUIRED System attribute identifies the unique identifier of the default Print Service 2112 configured by the Operator, Administrator, or manufacturer (used by the End User 2113 operation Get-Printer-Attributes defined in this specification) and is semantically analogous 2114 to the “printer-uri-supported” and “job-printer-uri” attributes defined in [RFC2911]. When a 2115 System has no configured Print Services, that System MUST return the ‘no-value’ out-of-2116 band value defined in [RFC2911] for “system-default-printer-id”. For a related use case, 2117 see section 3.2.5 Bootstrap Client Access to Default Print Service. 2118

Page 73: The Printer Working GroupThe Printer Working Group 29 November 2016 Working Draft Copyright © 2014-2016 The Printer Working Group. All rights reserved. IPP System Service v1.0 (SYSTEM)

Working Draft – IPP System Service v1.0 (SYSTEM) 29 November 2016

Page 73 of 126 Copyright © 2014-2016 The Printer Working Group. All rights reserved.

Note: When the first Print Service is created on a System, the System MUST set the value 2119 of “system-default-printer-id” to reference that Print Service. 2120

7.2.15 system-device-id (text(1023)) 2121

This REQUIRED System attribute specifies the IEEE 1284 Device ID of the overall System 2122 as defined in [IEEE1284] and further refined in [PWG5107.2] and is semantically 2123 analogous to the "printer-device-id" Printer attribute defined in [PWG5107.2. 2124

7.2.16 system-geo-location (uri | unknown) 2125

This REQUIRED System attribute specifies the System geographic location using the 2126 “geo:” URI scheme [RFC5870] and is semantically analogous to the "printer-geo-location" 2127 Printer attribute defined in [PWG5100.13]. When the location is unknown, Systems MUST 2128 return the ‘unknown’ out-of-band value defined in [RFC2911]. Systems MUST allow the 2129 Operator or Administrator to set the geographic location manually. 2130

7.2.17 system-info (text(127)) 2131

This REQUIRED System attribute specifies System descriptive information, e.g., "This 2132 System can be used for printing color transparencies for HR presentations,” and is 2133 semantically analogous to the "printer-info" Printer attribute defined in [RFC2911]. 2134

7.2.18 system-location (text(127)) 2135

This REQUIRED System attribute identifies the System location, e.g., "This System is in 2136 Room 123A, second floor of building XYZ," and is semantically analogous to the "printer-2137 location" Printer attribute defined in [RFC2911]. 2138

7.2.19 system-mandatory-printer-attributes (1setOf type2 keyword) 2139

This REQUIRED System attribute identifies the mandatory-to-supply Printer Description 2140 attributes for a Create-Printer operation on this System and is semantically analogous to 2141 the “printer-mandatory-job-attributes” Printer Description attribute defined in 2142 [PWG5100.13]. This REQUIRED System attribute lists the minimum Printer and operation 2143 attributes that are required for a successful Create-Printer operation. This attribute MUST 2144 include the values 'printer-name' and 'printer-xri-supported' and SHOULD include the 2145 recommended attributes in Table 9 below. 2146

Table 9 – Recommended-to-Supply Printer Creation Attributes 2147

IPP Attribute Name Reference

charset-configured [RFC2911] document-format-default [RFC2911] multiple-document-jobs-supported [RFC2911] natural-language-configured [RFC2911] pdl-override-supported [RFC2911] printer-info [RFC2911] printer-location [RFC2911]

Page 74: The Printer Working GroupThe Printer Working Group 29 November 2016 Working Draft Copyright © 2014-2016 The Printer Working Group. All rights reserved. IPP System Service v1.0 (SYSTEM)

Working Draft – IPP System Service v1.0 (SYSTEM) 29 November 2016

Page 74 of 126 Copyright © 2014-2016 The Printer Working Group. All rights reserved.

printer-make-and-model [RFC2911]

1) 2148

2149

7.2.20 system-make-and-model (text(127)) 2150

This REQUIRED System attribute identifies the System make and model and is 2151 semantically analogous to the "printer-make-and-model" Printer attribute defined in 2152 [RFC2911]. The manufacturer can initially populate this attribute. 2153

7.2.21 system-message-from-operator (text(127)) 2154

This OPTIONAL System attribute provides a message from an Operator, Administrator, or 2155 "intelligent" process to indicate the reasons for modification or other System management 2156 action and is semantically analogous to the "printer-message-from-operator" Printer 2157 attribute defined in [RFC2911]. 2158

7.2.22 system-name (name(127)) 2159

This REQUIRED System attribute contains the System name and is semantically 2160 analogous to the "printer-name" Printer attribute defined in [RFC2911]. 2161

7.2.23 system-owner-col (collection) 2162

This REQUIRED System attribute identifies the System Owner. 2163

7.2.23.1 owner-uri (uri) 2164

This REQUIRED member attribute contains a System Owner URI, e.g., 2165 “mailto:[email protected],” and is semantically analogous to the Service object’s 2166 OwnerURI defined in [PWG5108.01]. If specified in a Set-System-Attributes operation, 2167 then the “owner-vcard” member attribute MUST also be specified (to preserve 2168 consistency). 2169

7.2.23.2 owner-vcard (1setOf text(1023)) 2170

This REQUIRED member attribute contains a System Owner vCard [RFC6350] and is 2171 semantically analogous to the Service object’s OwnerVCard defined in [PWG5108.01]. If 2172 specified in a Set-System-Attributes operation, then the “owner-uri” member attribute 2173 MUST also be specified (to preserve consistency). 2174

Page 75: The Printer Working GroupThe Printer Working Group 29 November 2016 Working Draft Copyright © 2014-2016 The Printer Working Group. All rights reserved. IPP System Service v1.0 (SYSTEM)

Working Draft – IPP System Service v1.0 (SYSTEM) 29 November 2016

Page 75 of 126 Copyright © 2014-2016 The Printer Working Group. All rights reserved.

7.2.24 system-settable-attributes-supported (1setOf type2 keyword) 2175

This REQUIRED System attribute lists System Description attributes supported for READ-2176 WRITE access and can be configured by an Operator or Administrator. See “system-2177 strings-languages-supported” and “system-strings-uri” below for Client localization support. 2178

7.2.25 system-strings-languages-supported (1setOf naturalLanguage) 2179

This RECOMMENDED System attribute lists natural languages supported for the “system-2180 strings-uri” System attribute and is semantically analogous to the “printer-strings-2181 languages-supported” Printer attribute defined in [PWG5100.13]. 2182

This attribute MUST be supported if the "system-strings-uri" attribute is supported. 2183

7.2.26 system-strings-uri (uri | no-value) 2184

This RECOMMENDED System attribute provides a "text/strings" message catalog file 2185 using "http:" or "https:" URIs that SHOULD be System-resident so that Client interaction 2186 with the System does not require access to external networks and is semantically 2187 analogous to the “printer-strings-uri” Printer attribute defined in [PWG5100.13]. Systems 2188 SHOULD provide localizations for all supported System attributes, keywords, and enums, 2189 so that a Client may present a consistent user interface to the User. 2190

This attribute MUST be supported if the "system-strings-uri" attribute is supported. 2191

7.2.27 system-xri-supported (1setOf collection) 2192

This REQUIRED System attribute lists supported XRI (URI, authentication, and security 2193 tuples) for the System and is semantically analogous to the "printer-xri-supported" Printer 2194 attribute defined in [RFC3380] and semantically analogous to Service object’s 2195 XriSupported defined in [PWG5108.01]. 2196

7.2.27.1 xri-uri (uri) 2197

This REQUIRED member attribute specifies an “ipp:” [RFC3510] or “ipps:” [RFC7472] URI 2198 for this System and is semantically analogous to a value of the “xri-uri” member attribute 2199 defined in [RFC3380]. 2200

7.2.27.2 xri-authentication (type2 keyword) 2201

This REQUIRED member attribute specifies the IPP Client Authentication mechanism 2202 associated with the corresponding value of “xri-uri” above and is semantically analogous to 2203 a value of the “xri-authentication” member attribute defined in [RFC3380]. The original 2204 standard values for this attribute are defined in [RFC2911] and extension values are 2205 registered in the IANA IPP Registry [IANAIPP]. 2206

Page 76: The Printer Working GroupThe Printer Working Group 29 November 2016 Working Draft Copyright © 2014-2016 The Printer Working Group. All rights reserved. IPP System Service v1.0 (SYSTEM)

Working Draft – IPP System Service v1.0 (SYSTEM) 29 November 2016

Page 76 of 126 Copyright © 2014-2016 The Printer Working Group. All rights reserved.

7.2.27.3 xri-security (type2 keyword) 2207

This REQUIRED member attribute specifies the IPP security mechanism associated with 2208 the corresponding value of “xri-uri” above and is semantically analogous to a value of the 2209 “xri-security” member attribute defined in [RFC3380]. The original standard values for this 2210 attribute are defined in [RFC2911] and extension values are registered in the IANA IPP 2211 Registry [IANAIPP]. 2212

Page 77: The Printer Working GroupThe Printer Working Group 29 November 2016 Working Draft Copyright © 2014-2016 The Printer Working Group. All rights reserved. IPP System Service v1.0 (SYSTEM)

Working Draft – IPP System Service v1.0 (SYSTEM) 29 November 2016

Page 77 of 126 Copyright © 2014-2016 The Printer Working Group. All rights reserved.

7.3 System Status Attributes 2213

All of the System Status attributes are READ-ONLY and cannot be changed directly by the 2214 Set-System-Attributes operation. 2215

7.3.1 power-log-col (1setOf collection) 2216

This RECOMMENDED System attribute lists System power log entries (for events) and is 2217 semantically equivalent to the Power Log group defined in [PWG5106.4]. 2218

Systems SHOULD minimize the number of power log entries in this attribute for reliability. 2219 Systems MUST record all final stable power state transitions in this attribute for every 2220 sequence invoked by an ephemeral requested power state such as ‘reset-nmi’. Systems 2221 MAY omit intermediate state transitions invoked by such ephemeral requested states as 2222 ‘reset-nmi’. 2223

7.3.1.1 log-id (integer(1:MAX)) 2224

This REQUIRED member attribute contains the unique key of this power log entry and is 2225 semantically equivalent to the LogID element in the Power Log group defined in 2226 [PWG5106.4]. 2227

7.3.1.2 power-state (type1 keyword) 2228

This REQUIRED member attribute identifies the recorded stable or ephemeral 2229 (transitional) power state for this power log entry and is semantically equivalent to the 2230 PowerState element in the Power Log group defined in [PWG5106.4]. 2231

Standard values and constraints on vendor extension values are defined in section 7.2.1 2232 Power States and Policies. 2233

7.3.1.3 power-state-date-time (dateTime) 2234

This REQUIRED member attribute identifies the date and time of transition into the 2235 recorded power state for this power log entry and is semantically equivalent to the 2236 PowerStateDateAndTime element in the Power Log group defined in [PWG5106.4]. 2237

7.3.1.4 power-state-message (text (255)) 2238

This OPTIONAL member attribute contains a human-readable string in UTF-8 [RFC3629] 2239 that describes, explains, or qualifies the logged power state and is semantically equivalent 2240 to the PowerStateMessage element in the Power Log group defined in [PWG5106.4]. For 2241 example, "standby - System is shutting down by user request (2W)" when transitioning to 2242 final 'off-soft' power state. 2243

Usage: This attribute: (a) MUST identify the power state; (b) SHOULD identify the method 2244 of entry to the power state, e.g., “from timeout trigger” or “from user request”; (c) SHOULD 2245

Page 78: The Printer Working GroupThe Printer Working Group 29 November 2016 Working Draft Copyright © 2014-2016 The Printer Working Group. All rights reserved. IPP System Service v1.0 (SYSTEM)

Working Draft – IPP System Service v1.0 (SYSTEM) 29 November 2016

Page 78 of 126 Copyright © 2014-2016 The Printer Working Group. All rights reserved.

identify the nominal power consumption, e.g., “(34 watts)”; and (d) MAY include any other 2246 power-related information, e.g., “can accept jobs” or “can process jobs”. 2247

7.3.2 power-state-capabilities-col (1setOf collection) 2248

This OPTIONAL System attribute lists System supported power capabilities for each stable 2249 power state and is semantically equivalent to the Power Support group defined in 2250 [PWG5106.4]. 2251

7.3.2.1 can-accept-jobs (boolean) 2252

This REQUIRED member identifies whether the System can accept new incoming Jobs in 2253 this stable power state, unless the System or has been disabled by an Operator or 2254 Administrator, and is semantically equivalent to the CanAcceptJobs element in the Power 2255 Support group defined in [PWG5106.4]. 2256

7.3.2.2 can-process-jobs (boolean) 2257

This REQUIRED member identifies whether the System can process new incoming Jobs 2258 or existing queued Jobs in this stable power state and is semantically equivalent to the 2259 CanProcessJobs element in the Power Support group defined in [PWG5106.4]. 2260

7.3.2.3 power-active-watts (integer(0:MAX)) 2261

This REQUIRED member attribute identifies the nominal power consumption in watts for 2262 this stable power state when the System is in an active operational state (i.e., ‘processing’) 2263 and is semantically equivalent to the PowerActiveWatts element in the Power Support 2264 group defined in [PWG5106.4]. 2265

7.3.2.4 power-inactive-watts (integer(0:MAX)) 2266

This REQUIRED member attribute identifies the nominal power consumption in watts for 2267 this stable power state when the System is in an inactive operational state (i.e., ‘idle’ or 2268 ‘stopped’) and is semantically equivalent to the PowerInactiveWatts element in the Power 2269 Support group defined in [PWG5106.4]. 2270

7.3.2.5 power-state (type1 keyword) 2271

This REQUIRED member attribute identifies a System supported stable power state that is 2272 the unique key of this power state capability entry and is semantically equivalent to the 2273 PowerState element in the Power Support group defined in [PWG5106.4]. 2274

Standard values and constraints on vendor extension values are defined in section 7.2.1 2275 Power States and Policies. 2276

Page 79: The Printer Working GroupThe Printer Working Group 29 November 2016 Working Draft Copyright © 2014-2016 The Printer Working Group. All rights reserved. IPP System Service v1.0 (SYSTEM)

Working Draft – IPP System Service v1.0 (SYSTEM) 29 November 2016

Page 79 of 126 Copyright © 2014-2016 The Printer Working Group. All rights reserved.

7.3.3 power-state-counters-col (1setOf collection) 2277

This OPTIONAL System attribute lists System power state transition counters and is 2278 semantically equivalent to the Power Counter group defined in [PWG5106.4]. 2279

7.3.3.1 hibernate-transitions (integer(0:MAX)) 2280

This REQUIRED member attribute contains the System lifetime number of transitions into 2281 the ‘hibernate’ power state and is semantically equivalent to the HibernateTransitions 2282 element in the Power Counter group defined in [PWG5106.4]. 2283

7.3.3.2 on-transitions (integer(0:MAX)) 2284

This REQUIRED member attribute contains the System lifetime number of transitions into 2285 the ‘on’ power state and is semantically equivalent to the OnTransitions element in the 2286 Power Counter group defined in [PWG5106.4]. 2287

7.3.3.3 standby-transitions (integer(0:MAX)) 2288

This REQUIRED member attribute contains the System lifetime number of transitions into 2289 the ‘standby’ power state and is semantically equivalent to the StandbyTransitions element 2290 in the Power Counter group defined in [PWG5106.4]. 2291

7.3.3.4 suspend-transitions (integer(0:MAX)) 2292

This REQUIRED member attribute contains the System lifetime number of transitions into 2293 the ‘suspend’ power state and is semantically equivalent to the SuspendTransitions 2294 element in the Power Counter group defined in [PWG5106.4]. 2295

7.3.4 power-state-monitor-col (collection) 2296

This RECOMMENDED System attribute contains the System power state and is 2297 semantically equivalent to the Power General, Power Meters, and Power Monitor groups 2298 defined in [PWG5106.4]. 2299

Note: Power consumption attribute values are volatile and typically change regularly at 2300 implementation-defined intervals. 2301

7.3.4.1 current-month-kwh (integer(0:MAX)) 2302

This REQUIRED member attribute contains the current month's System power 2303 consumption in kilowatt hours and is semantically equivalent to the 2304 PowerCurrentMonthKWH element in the Power Meter group defined in [PWG5106.4]. The 2305 System MUST reset the value of this attribute to zero at the beginning of every month. 2306

Page 80: The Printer Working GroupThe Printer Working Group 29 November 2016 Working Draft Copyright © 2014-2016 The Printer Working Group. All rights reserved. IPP System Service v1.0 (SYSTEM)

Working Draft – IPP System Service v1.0 (SYSTEM) 29 November 2016

Page 80 of 126 Copyright © 2014-2016 The Printer Working Group. All rights reserved.

7.3.4.2 current-watts (integer(0:MAX)) 2307

This REQUIRED member attribute contains the current System instantaneous power 2308 consumption in watts and is semantically equivalent to the PowerCurrentWatts element in 2309 the Power Meter group defined in [PWG5106.4]. 2310

Note: The value of this attribute is typically determined by software estimation instead of 2311 actual current measurement. 2312

7.3.4.3 lifetime-kwh (integer(0:MAX)) 2313

This REQUIRED member attribute contains the lifetime System power consumption in 2314 kilowatt hours and is semantically equivalent to the PowerLifetimeKWH element in the 2315 Power Meter group defined in [PWG5106.4]. 2316

7.3.4.4 meters-are-actual (boolean) 2317

This REQUIRED member attribute identifies whether or not System power meter attributes 2318 are based on actual measurement (true) or software estimation (false) and is semantically 2319 equivalent to the PowerMetersAreActual element in the Power Meter group defined in 2320 [PWG5106.4]. 2321

7.3.4.5 power-state (type1 keyword) 2322

This REQUIRED member attribute identifies the current stable or ephemeral (transitional) 2323 System power state and is semantically equivalent to the PowerState element in the 2324 Power Monitor group defined in [PWG5106.4]. 2325

Standard values and constraints on vendor extension values are defined in section 7.2.1 2326 Power States and Policies. 2327

7.3.4.6 power-state-message (text (255)) 2328

This OPTIONAL member attribute contains a human-readable string in UTF-8 [RFC3629] 2329 that describes, explains, or qualifies the current System power state (e.g.,) and is 2330 semantically equivalent to the PowerStateMessage element in the Power Monitor group 2331 defined in [PWG5106.4]. For example, "standby - System is shutting down by user 2332 request (2W)" when transitioning to final 'off-soft' power state. 2333

Usage: This attribute: (a) MUST identify the power state; (b) SHOULD identify the method 2334 of entry to the power state, e.g., “from timeout trigger” or “from user request”; (c) SHOULD 2335 identify the nominal power consumption, e.g., “(34 watts)”; and (d) MAY include any other 2336 power-related information, e.g., “can accept jobs” or “can process jobs”. 2337

7.3.4.7 power-usage-is-rms-watts (boolean) 2338

This REQUIRED member attribute identifies whether or not the power consumption 2339 properties for this System use units of Root Mean Square (RMS) watts (true) or 2340

Page 81: The Printer Working GroupThe Printer Working Group 29 November 2016 Working Draft Copyright © 2014-2016 The Printer Working Group. All rights reserved. IPP System Service v1.0 (SYSTEM)

Working Draft – IPP System Service v1.0 (SYSTEM) 29 November 2016

Page 81 of 126 Copyright © 2014-2016 The Printer Working Group. All rights reserved.

unnormalized so-called peak watts (false) and is semantically equivalent to the 2341 PowerUsageIsRMSWatts element in the Power General group defined in 2342 [PWG5106.4].valid-request-power-states (1setOf (type1 keyword)) 2343

This REQUIRED member attribute identifies all of the stable and ephemeral power states 2344 that can be requested (in policies) on this System and is semantically equivalent to the 2345 CanRequestPowerStates element in the Power General group defined in [PWG5106.4]. 2346

Standard values and constraints on vendor extension values are defined in section 7.2.1 2347 Power States and Policies. 2348

7.3.5 power-state-transitions-col (1setOf collection) 2349

This OPTIONAL System attribute lists valid System power state transitions and is 2350 semantically equivalent to the Power Transition group defined in [PWG5106.4]. 2351

7.3.5.1 end-power-state (type1 keyword) 2352

This REQUIRED member attribute identifies the ending stable System power state for this 2353 valid power state transition and is semantically equivalent to the EndPowerState element 2354 in the Power Transition group defined in [PWG5106.4]. 2355

Standard values and constraints on vendor extension values are defined in section 7.2.1 2356 Power States and Policies. 2357

7.3.5.2 start-power-state (type1 keyword) 2358

This REQUIRED member attribute identifies the starting stable System power state for this 2359 valid power state transition and is semantically equivalent to the EndPowerState element 2360 in the Power Transition group defined in [PWG5106.4]. 2361

Standard values and constraints on vendor extension values are defined in section 7.2.1 2362 Power States and Policies. 2363

7.3.5.3 state-transition-seconds (integer(0:MAX)) 2364

This REQUIRED member attribute contains the nominal duration in seconds for this valid 2365 power state transition and is semantically equivalent to the StateChangeSeconds element 2366 in the Power Transition group defined in [PWG5106.4]. 2367

7.3.6 system-config-change-date-time (dateTime) 2368

This REQUIRED System attribute contains the value of “system-current-time” (date and 2369 time) for the most recent System configuration change. 2370

Page 82: The Printer Working GroupThe Printer Working Group 29 November 2016 Working Draft Copyright © 2014-2016 The Printer Working Group. All rights reserved. IPP System Service v1.0 (SYSTEM)

Working Draft – IPP System Service v1.0 (SYSTEM) 29 November 2016

Page 82 of 126 Copyright © 2014-2016 The Printer Working Group. All rights reserved.

7.3.7 system-config-change-time (integer(0:MAX)) 2371

This REQUIRED System attribute contains the value of “system-up-time” (seconds since 2372 System startup) for the most recent System configuration change or zero if no System 2373 configuration change has occurred. 2374

7.3.8 system-config-changes (integer(0:MAX)) 2375

This REQUIRED System attribute contains the count of configuration changes for the 2376 System and is semantically equivalent to the SystemConfigChangeNumber element 2377 defined in [PWG5108.06] and semantically analogous to the prtGeneralConfigChanges 2378 object defined in [RFC3805]. Each time a Set-System-Attributes operation is performed 2379 that changes the value of any attribute and each time the System changes the value of any 2380 attribute, the System MUST increment value of the “system-config-changes” attribute by 2381 exactly one. Each time that the System performs a power cycle (from ‘off’ to ‘on’), the 2382 System MUST reset the value of this attribute to zero. 2383

7.3.9 system-configured-printers (1setOf collection) 2384

This REQUIRED System attribute contains the summary of all configured Printers for the 2385 System and is semantically equivalent to the ConfiguredServices element defined in 2386 [PWG5108.06]. 2387

Table 10 – Member Attributes of system-configured-printers 2388

Conformance IPP Attribute Name Reference

REQUIRED printer-id [PWG5100.SYS] REQUIRED printer-info [RFC2911] REQUIRED printer-is-accepting-jobs [RFC2911] REQUIRED printer-name [RFC2911] REQUIRED printer-service-type [PWG5100.SYS] REQUIRED printer-state [RFC2911] REQUIRED printer-state-reasons [RFC2911] REQUIRED printer-xri-supported [RFC3380]

2389

7.3.9.1 printer-id (integer(1:MAX)) 2390

7.3.9.2 This REQUIRED member attribute uniquely identifies the Printer within the System 2391 and is semantically equivalent to the ServiceSummary element ID defined in 2392 [PWG5108.06] and semantically analogous to the “job-id” attribute defined in [RFC2911]. 2393 See “printer-id” in section 7.5 Printer Status Attributes.printer-info (text(127)) 2394

This REQUIRED member attribute contains the description of the Printer and is 2395 semantically equivalent to the "printer-info" Printer attribute defined in [RFC2911] but is not 2396 included in the ServiceSummary element defined in [PWG5108.06]. 2397

Page 83: The Printer Working GroupThe Printer Working Group 29 November 2016 Working Draft Copyright © 2014-2016 The Printer Working Group. All rights reserved. IPP System Service v1.0 (SYSTEM)

Working Draft – IPP System Service v1.0 (SYSTEM) 29 November 2016

Page 83 of 126 Copyright © 2014-2016 The Printer Working Group. All rights reserved.

7.3.9.3 printer-is-accepting-jobs (boolean) 2398

This REQUIRED member attribute identifies whether the Printer is currently able to accept 2399 incoming Jobs and is semantically equivalent to the "printer-is-accepting-jobs" Printer 2400 attribute defined in [RFC2911] and semantically equivalent to the ServiceSummary 2401 element IsAcceptingJobs defined in [PWG5108.06]. 2402

7.3.9.4 printer-name (name(127)) 2403

This REQUIRED member attribute identifies the name of the Printer and is semantically 2404 equivalent to the "printer-name" Printer attribute defined in [RFC2911] and semantically 2405 equivalent to the ServiceSummary element ServiceName defined in [PWG5108.06]. 2406

7.3.9.5 printer-service-type (type2 keyword) 2407

This REQUIRED member attribute identifies the service type of the Printer and is 2408 semantically equivalent to the "printer-service-type" Printer attribute defined in section 2409 7.5.2 and semantically equivalent to the ServiceSummary element ServiceType defined in 2410 [PWG5108.06]. 2411

7.3.9.6 printer-state (type1 enum) 2412

This REQUIRED member attribute contains the current state of the Printer and is 2413 semantically equivalent to the "printer-state" Printer attribute defined in [RFC2911] and 2414 semantically equivalent to the ServiceSummary element State defined in [PWG5108.06]. 2415

7.3.9.7 printer-state-reasons (1setOf type2 keyword) 2416

This REQUIRED member attribute contains additional detail about the current state of the 2417 Printer and is semantically equivalent to the "printer-state-reasons" Printer attribute defined 2418 in [RFC2911] and semantically equivalent to the ServiceSummary element StateReasons 2419 defined in [PWG5108.06]. 2420

7.3.9.8 printer-xri-supported (1setOf collection) 2421

This REQUIRED member attribute lists supported XRI (URI, authentication, and security 2422 tuples) for the Printer and is semantically equivalent to the "printer-xri-supported" Printer 2423 attribute defined in [RFC3380] and semantically equivalent to the ServiceSummary 2424 element ServiceXriSupported defined in [PWG5108.06]. 2425

7.3.10 system-configured-resources (1setOf collection) 2426

This REQUIRED System attribute contains the summary of all configured Resources for 2427 the System and is semantically equivalent to the ConfiguredResources element defined in 2428 [PWG5108.06]. 2429

Table 11 – Member attributes of system-configured-resources 2430

Page 84: The Printer Working GroupThe Printer Working Group 29 November 2016 Working Draft Copyright © 2014-2016 The Printer Working Group. All rights reserved. IPP System Service v1.0 (SYSTEM)

Working Draft – IPP System Service v1.0 (SYSTEM) 29 November 2016

Page 84 of 126 Copyright © 2014-2016 The Printer Working Group. All rights reserved.

Conformance IPP Attribute Name Reference

REQUIRED resource-format [PWG5100.SYS] REQUIRED resource-id [PWG5100.SYS] REQUIRED resource-info [PWG5100.SYS] REQUIRED resource-name [PWG5100.SYS] REQUIRED resource-state [PWG5100.SYS] REQUIRED resource-type [PWG5100.SYS]

2431

7.3.10.1 resource-format (mimeMediaType) 2432

This REQUIRED member attribute identifies the format of the Resource and is 2433 semantically equivalent to the "resource-format" Resource attribute defined in section 7.7.7 2434 and semantically equivalent to the ResourceSummary element ResourceFormat defined in 2435 [PWG5108.06]. 2436

7.3.10.2 resource-id (integer (1:MAX)) 2437

This REQUIRED member attribute contains the unique identier of the Resource and is 2438 semantically equivalent to the "resource-id" Resource attribute defined in section 7.7.8 and 2439 semantically equivalent to the ResourceSummary element ResourceId defined in 2440 [PWG5108.06]. 2441

7.3.10.3 resource-info (text(127)) 2442

This REQUIRED member attribute contains the description of the Resource and is 2443 semantically equivalent to the "resource-info" Resource attribute defined in section 7.6.1 2444 but is not included in the original ResourceSummary element defined in [PWG5108.06]. 2445

7.3.10.4 resource-name (name(127)) 2446

This REQUIRED member attribute identifies the name of the Resource and is semantically 2447 equivalent to the "resource-name" Resource attribute defined in section 7.6.2 and 2448 semantically equivalent to the ResourceSummary element ResourceName defined in 2449 [PWG5108.06]. 2450

7.3.10.5 resource-state (type1 enum) 2451

This REQUIRED member attribute contains the current state of the Resource and is 2452 semantically equivalent to the "resource-state" Resource attribute defined in section 7.7.12 2453 but is not included in the original ResourceSummary element defined in [PWG5108.06]. 2454

7.3.10.6 resource-type (type2 keyword) 2455

This REQUIRED member attribute identifies the type of the Resource and is semantically 2456 equivalent to the "resource-type" Resource attribute defined in section 7.7.16 and 2457

Page 85: The Printer Working GroupThe Printer Working Group 29 November 2016 Working Draft Copyright © 2014-2016 The Printer Working Group. All rights reserved. IPP System Service v1.0 (SYSTEM)

Working Draft – IPP System Service v1.0 (SYSTEM) 29 November 2016

Page 85 of 126 Copyright © 2014-2016 The Printer Working Group. All rights reserved.

semantically equivalent to the ResourceSummary element ResourceType defined in 2458 [PWG5108.06]. 2459

7.3.11 system-serial-number (text(255)) 2460

This OPTIONAL System attribute identifies the serial number for the System and is 2461 semantically equivalent to the SerialNumber element defined in [PWG5108.06] and 2462 semantically analogous to the prtGeneralSerialNumber element defined in [RFC3805]. 2463

7.3.12 system-state (type1 enum) 2464

This REQUIRED System attribute contains the current state for the System and is 2465 semantically equivalent to the State element defined in [PWG5108.06] and semantically 2466 analogous to the “printer-state” attribute defined in [RFC2911]. 2467

Standard values for this attribute are: 2468

'3' 'idle': Indicates that all Printers are in the ‘idle’ state. 2469

'4' 'processing': Indicates that one or more Printers are processing Jobs. 2470

'5' 'stopped': Indicates that all Printers are in the ‘stopped’ state. 2471

7.3.13 system-state-change-date-time (dateTime) 2472

This REQUIRED System attribute contains the value of “system-current-time” (date and 2473 time) for the most recent System state change and is semantically analogous to the 2474 “printer-state-change-date-time” attribute defined in [RFC3995]. 2475

7.3.14 system-state-change-time (integer(0:MAX)) 2476

This REQUIRED System attribute contains the value of “system-up-time” (seconds since 2477 System startup) for the most recent System state change or zero if no System state 2478 change has occurred and is semantically analogous to the “printer-state-change-time” 2479 attribute defined in [RFC3995]. 2480

7.3.15 system-state-message (1setOf (text(MAX))) 2481

This REQUIRED System attribute contains a list of state messages for the System and is 2482 semantically equivalent to the StateMessages element defined in [PWG5108.06] and 2483 semantically analogous to the “printer-state-message” attribute defined in [RFC2911]. 2484

7.3.16 system-state-reasons (1setOf type2 keyword) 2485

This REQUIRED System attribute contains a list of state reasons for the System and is 2486 semantically equivalent to the StateReasons element defined in [PWG5108.06] and 2487 semantically analogous to the “printer-state-reasons” attribute defined in [RFC2911]. Any 2488 applicable “printer-state-reasons” keyword value can be used in “system-state-reasons”. 2489

Page 86: The Printer Working GroupThe Printer Working Group 29 November 2016 Working Draft Copyright © 2014-2016 The Printer Working Group. All rights reserved. IPP System Service v1.0 (SYSTEM)

Working Draft – IPP System Service v1.0 (SYSTEM) 29 November 2016

Page 86 of 126 Copyright © 2014-2016 The Printer Working Group. All rights reserved.

7.3.17 system-up-time (integer(1:MAX)) 2490

This REQUIRED System attribute contains the time in seconds since last boot for the 2491 System and is semantically equivalent to the UpTime element defined in [PWG5108.06]. 2492

7.3.18 system-uuid (uri(45)) 2493

This REQUIRED System attribute identifies the UUID as a URI [RFC4122] for the System 2494 and is semantically equivalent to the ServiceUuid element defined in [PWG5108.01]. 2495

7.4 Printer Description Attributes 2496

Printer Description attributes are typically READ-WRITE and can potentially be set by an 2497 Operator or Administrator using the Set-Printer-Attributes operation [RFC3380]. Writable 2498 Printer Description attributes are listed in the value of “printer-settable-attributes-2499 supported” [RFC3380]. 2500

7.4.1 printer-owner-col (collection) 2501

This REQUIRED Printer attribute identifies the Printer Owner. 2502

7.4.1.1 owner-uri (uri) 2503

This REQUIRED member attribute contains a Printer Owner URI, e.g., 2504 “mailto:[email protected],” and is semantically analogous to the Service object’s 2505 OwnerURI defined in [PWG5108.01]. If specified in a Set-Printer-Attributes operation, then 2506 the “owner-vcard” member attribute MUST also be specified (to preserve consistency). 2507

7.4.1.2 owner-vcard (1setOf text(1023)) 2508

This REQUIRED member attribute contains a Printer Owner vCard [RFC6350] and is 2509 semantically analogous to the Service object’s OwnerVCard defined in [PWG5108.01]. If 2510 specified in a Set-Printer-Attributes operation, then the “owner-uri” member attribute MUST 2511 also be specified (to preserve consistency). 2512

7.5 Printer Status Attributes 2513

All of the Printer Status attributes are READ-ONLY and cannot be set directly by the Set-2514 Printer-Attributes operation. 2515

7.5.1 printer-config-changes (integer(0:MAX)) 2516

This REQUIRED Printer attribute identifies the number of configuration changes (in Printer 2517 Description attributes) for a Printer semantically equivalent to the Monitoring element 2518 ConfigChanges defined in [PWG5106.1] and semantically equivalent to 2519 “prtGeneralConfigChanges” in IETF Printer MIB v2 [RFC3805]. The value of this attribute 2520 MUST be incremented by one for each operation that changes the Printer configuration 2521

Page 87: The Printer Working GroupThe Printer Working Group 29 November 2016 Working Draft Copyright © 2014-2016 The Printer Working Group. All rights reserved. IPP System Service v1.0 (SYSTEM)

Working Draft – IPP System Service v1.0 (SYSTEM) 29 November 2016

Page 87 of 126 Copyright © 2014-2016 The Printer Working Group. All rights reserved.

(rather than incrementing by one for each configuration attribute that was changed by the 2522 single operation). 2523

7.5.2 printer-id (integer(1:MAX)) 2524

This REQUIRED Printer attribute uniquely identifies the Printer within the System and is 2525 semantically equivalent to the ServiceSummary element ID defined in [PWG5108.06] and 2526 semantically analogous to the “job-id” attribute defined in [RFC2911]. 2527

7.5.3 printer-service-type (type2 keyword) 2528

This REQUIRED Printer attribute identifies the service type for a Printer as used in Create-2529 Printer defined in section 6 and is semantically equivalent to the Service Summary 2530 element ServiceType defined in [PWG5108.06]. Vendor-specific service types SHOULD 2531 be have keywords constructed of the form “smiNNN-name”, where “NNN” is the vendor’s 2532 enterprise SMI number assigned by IANA. Vendor-specific service types SHOULD be 2533 registered with IANA. 2534

Standard keyword values for this attribute include: 2535

‘copy’: A Copy service defined in [PWG5108.04]. 2536

‘faxin’: A FaxIn service defined in [RFC2707] and [PWG5108.01]. 2537

‘faxout’: A FaxOut service defined in [PWG5100.15]. 2538

‘print’: A Print service defined in [RFC2911]. 2539

‘print3d’: A 3D Print service defined in [PWG5100.P3D] 2540

‘scan’: A Scan service defined in [PWG5100.17]. 2541

‘transform’: A Transform service defined in [PWG5108.01]. 2542

7.6 Resource Description Attributes 2543

Resource Description attributes are typically READ-WRITE and can potentially be set by 2544 an Operator or Administrator using the Set-Resource-Attributes operation (see section 6). 2545 Writable Resource Description attributes are listed in the value of “resource-settable-2546 attributes-supported” System Description attribute defined above in section 7.2. 2547

7.6.1 resource-info (text(127)) 2548

This REQUIRED Resource attribute contains the description of the Resource and is 2549 semantically equivalent to the ResourceInfo element defined in [PWG5108.03] and 2550 semantically analogous to the "printer-info" Printer attribute defined in [RFC2911]. 2551

Page 88: The Printer Working GroupThe Printer Working Group 29 November 2016 Working Draft Copyright © 2014-2016 The Printer Working Group. All rights reserved. IPP System Service v1.0 (SYSTEM)

Working Draft – IPP System Service v1.0 (SYSTEM) 29 November 2016

Page 88 of 126 Copyright © 2014-2016 The Printer Working Group. All rights reserved.

7.6.2 resource-name (name(127)) 2552

This REQUIRED Resource attribute contains the name of the Resource and is 2553 semantically equivalent to the ResourceName element defined in [PWG5108.03] and 2554 semantically analogous to the "printer-name" Printer attribute defined in [RFC2911]. 2555

7.6.3 resource-owner-col (collection) 2556

This REQUIRED Resource attribute identifies the Resource Owner. 2557

7.6.3.1 owner-uri (uri) 2558

This REQUIRED member attribute contains a Resource Owner URI, e.g., 2559 “mailto:[email protected],” and is semantically analogous to the Service object’s 2560 OwnerURI defined in [PWG5108.01]. If specified in a Set-Resource-Attributes operation, 2561 then the “owner-vcard” member attribute MUST also be specified (to preserve 2562 consistency). 2563

7.6.3.2 owner-vcard (1setOf text(1023)) 2564

This REQUIRED member attribute contains a Resource Owner vCard [RFC6350] and is 2565 semantically analogous to the Service object’s OwnerVCard defined in [PWG5108.01]. If 2566 specified in a Set-Resource-Attributes operation, then the “owner-uri” member attribute 2567 MUST also be specified (to preserve consistency). 2568

7.7 Resource Status Attributes 2569

All of the Resource Status attributes are READ-ONLY and cannot be directly updated by 2570 the Set-Resource-Attributes operation. 2571

7.7.1 date-time-at-canceled (dateTime) 2572

This REQUIRED Resource attribute contains the date and time of Resource cancelation 2573 request (i.e., when Cancel-Resource operation is accepted) or Resource abortion by the 2574 System, which can be before the Resource transitions to the ‘canceled’ or ‘aborted’ state, 2575 and is semantically analogous to the DateTimeAtExpiration element defined in 2576 [PWG5108.03] and semantically analogous to the Job “date-time-at-completed” attribute 2577 defined in [RFC2911]. 2578

7.7.2 date-time-at-creation (dateTime) 2579

This REQUIRED Resource attribute contains the date and time of Resource creation 2580 request (i.e., when Create-Resource operation is accepted) and is semantically equivalent 2581 to the DateTimeAtCreation element defined in [PWG5108.03] and semantically analogous 2582 to the “date-time-at-creation” Job attribute defined in [RFC2911]. 2583

Page 89: The Printer Working GroupThe Printer Working Group 29 November 2016 Working Draft Copyright © 2014-2016 The Printer Working Group. All rights reserved. IPP System Service v1.0 (SYSTEM)

Working Draft – IPP System Service v1.0 (SYSTEM) 29 November 2016

Page 89 of 126 Copyright © 2014-2016 The Printer Working Group. All rights reserved.

7.7.3 date-time-at-installed (dateTime) 2584

This REQUIRED Resource attribute contains the date and time of Resource installation 2585 request (i.e., when Install-Resource operation is accepted), which can be before the 2586 Resource transitions to the ‘installed’ state, and is semantically analogous to the “date-2587 time-at-processing” Job attribute defined in [RFC2911]. 2588

7.7.4 resource-data-uri (uri | no-value)) 2589

This REQUIRED Resource attribute identifies the URI of the Resource data (if any) and is 2590 semantically equivalent to the ResourceFormat element defined in [PWG5108.03] and 2591 semantically analogous to the “document-format” attribute defined in [RFC2911]. When a 2592 Resource has no associated data, the System MUST return the ‘no-value’ out-of-band 2593 value defined in [RFC2911] for “resource-data-uri”. 2594

7.7.5 resource-format (mimeMediaType) 2595

This REQUIRED Resource attribute identifies the format of the Resource data and is 2596 semantically equivalent to the ResourceFormat element defined in [PWG5108.03] and 2597 semantically analogous to the “document-format” attribute defined in [RFC2911]. 2598

7.7.6 resource-id (integer(1:MAX)) 2599

This REQUIRED Resource attribute uniquely identifies the Resource within the System 2600 and is semantically equivalent to the ResourceId element defined in [PWG5108.03] and 2601 semantically analogous to the “job-id” attribute defined in [RFC2911]. 2602

7.7.7 resource-k-octets (integer(0:MAX)) 2603

This REQUIRED Resource attribute contains the size of the data associated with the 2604 Resource (if any) but is not included in the original Resource object defined in 2605 [PWG5108.03] and semantically analogous to the “job-k-octets” attribute defined in 2606 [RFC2911]. 2607

7.7.8 resource-state (type1 enum) 2608

This REQUIRED Resource attribute contains the current state of the Resource and is 2609 semantically analogous to the DateTimeOfExpiration and ResourceHasExpired elements 2610 defined in [PWG5108.03] and semantically analogous to the “job-state” attribute defined in 2611 [RFC2911]. 2612

Standard enum values for this attribute are: 2613

‘3’ ‘pending’: The Resource has been created but is not yet available or 2614 installed. 2615

‘4’ ‘available’: The Resource data has been uploaded and the Resource is 2616 available for installation. 2617

Page 90: The Printer Working GroupThe Printer Working Group 29 November 2016 Working Draft Copyright © 2014-2016 The Printer Working Group. All rights reserved. IPP System Service v1.0 (SYSTEM)

Working Draft – IPP System Service v1.0 (SYSTEM) 29 November 2016

Page 90 of 126 Copyright © 2014-2016 The Printer Working Group. All rights reserved.

‘5’ ‘installed’: The Resource has been installed and is ready for use. 2618

‘6’ ‘canceled’: The Resource has been canceled and can no longer be used. 2619

‘7’ ‘aborted’: The Resource has been aborted by the System and can no longer 2620 be used. 2621

Normal Resource state transitions are show in Figure 1 below. Resource states normally 2622 progress from top to bottom (‘created’ to ‘available’ to ‘installed’) until the Resource finally 2623 transitions to a terminal state of ‘canceled’ (by Administrator) or ‘aborted’ (by System). 2624 See note 2 below for one of the exceptions to normal Resource state transitions. 2625

2626

Figure 1 – IPP Resource Object Life Cycle 2627

Notes: 2628

1) A Resource object can transition to the ‘aborted’ state due to an interrupted Send-2629 Resource-Data request, corrupted Resource data, an unsupported Resource data 2630 format, inability to store the Resource data, inability to install the Resource data, 2631 and/or other System internal fault conditions. The “resource-state-reasons” attribute 2632 will contain the reason for the Resource being aborted by the System. 2633

2) When a new Resource version is installed that replaces a previous Resource 2634 version (e.g., firmware), the old Resource “resource-state” MUST transition back to 2635 ‘available’ and the old Resource “resource-use-count” MUST be set to zero. 2636

Page 91: The Printer Working GroupThe Printer Working Group 29 November 2016 Working Draft Copyright © 2014-2016 The Printer Working Group. All rights reserved. IPP System Service v1.0 (SYSTEM)

Working Draft – IPP System Service v1.0 (SYSTEM) 29 November 2016

Page 91 of 126 Copyright © 2014-2016 The Printer Working Group. All rights reserved.

7.7.9 resource-state-message (text(MAX)) 2637

This REQUIRED Resource attribute contains a state message for the Resource but is not 2638 included in the original Resource object defined in [PWG5108.03] and semantically 2639 analogous to the “job-state-message” attribute defined in [RFC2911]. 2640

7.7.10 resource-state-reasons (1setOf type2 keyword) 2641

This REQUIRED Resource attribute contains a list of state reasons for the Resource but is 2642 not included in the original Resource object defined in [PWG5108.03] and semantically 2643 analogous to the “job-state-reasons” attribute defined in [RFC2911]. Any applicable “job-2644 state-reasons” keyword value can be used in “resource-state-reasons”. 2645

Standard values for this attribute are: 2646

‘cancel-requested’: A Cancel-Resource operation has been received and accepted 2647 and the Resource will become permanently unavailable when the cancellation is 2648 completed (e.g., after the current Job using the Resource is completed). 2649

‘install-requested’: An Install-Resource operation has been received and accepted 2650 and the Resource will become available for use when the installation is completed 2651 (e.g., potentially after the next System or Subunit reboot in the case of an 2652 executable Resource). 2653

‘resource-incoming’: A Send-Resource-Data operation has been received and 2654 accepted, Resource data upload is in progress, and “resource-state” will transition 2655 to ‘available’ after the upload is completed. 2656

7.7.11 resource-string-version (text(127)) 2657

This REQUIRED Resource attribute contains the string version of the Resource, which 2658 SHOULD conform to section 4.2.4 “String Version” of IETF PA-TNC [RFC5792] which 2659 defines the internal string fields Product Version Number, Internal Build Number, and 2660 Configuration Version Number. This attribute is semantically analogous to the 2661 FirmwareStringVersion attribute defined in [PWG5110.4]. 2662

7.7.12 resource-type (type2 keyword) 2663

This REQUIRED Resource attribute identifies the type of the Resource and is semantically 2664 equivalent to the ResourceType element defined in [PWG5108.03]. 2665

IPP System Service implementations SHOULD support System-scope executable 2666 resources (e.g., for firmware update). System Service implementations MAY support 2667 Printer-scope and/or Job-scope executable resources in an implementation-defined 2668 manner. 2669

Standard values for this attribute (with their resource category prefix) include: 2670

Page 92: The Printer Working GroupThe Printer Working Group 29 November 2016 Working Draft Copyright © 2014-2016 The Printer Working Group. All rights reserved. IPP System Service v1.0 (SYSTEM)

Working Draft – IPP System Service v1.0 (SYSTEM) 29 November 2016

Page 92 of 126 Copyright © 2014-2016 The Printer Working Group. All rights reserved.

‘executable-firmware’: Executable firmware. 2671

‘executable-software’: Executable software. 2672

‘static-font’: Static font. 2673

‘static-form’: Static form. 2674

‘static-iccprofile’: Static ICC profile. 2675

‘static-image’: Static image. 2676

‘static-logo’: Static logo. 2677

‘template-document’: Template for creating Document object [PWG5100.5]. 2678

‘template-job’: Template for creating Job object [PWG5108.07]. 2679

‘template-printer’: Template for creating Printer object [RFC2911]. 2680

7.7.13 resource-use-count (integer(0:MAX)) 2681

This REQUIRED Resource attribute contains the use count (i.e., allocation count) for the 2682 Resource but is not included in the original Resource object defined in [PWG5108.03]. 2683

7.7.14 resource-uuid (uri(45)) 2684

This REQUIRED Resource attribute identifies the UUID as a URI [RFC4122] for the 2685 Resource but is not included in the original Resource object defined in [PWG5108.03] and 2686 is semantically analogous to the “system-uuid” attribute defined in section 7.3. 2687

7.7.15 resource-version (octetString(16)) 2688

This REQUIRED Resource attribute contains the numeric version of the Resource, which 2689 SHOULD conform to section 4.2.3 “Numeric Version” of IETF PA-TNC [RFC5792] which 2690 defines the internal integer fields Major Version Number, Minor Version Number, Build 2691 Number, Service Pack Major, and Service Pack Minor. This attribute is semantically 2692 analogous to the FirmwareVersion attribute defined in [PWG5110.4]. 2693

7.7.16 time-at-canceled (integer(MIN:MAX)) 2694

This REQUIRED Resource attribute contains the time of Resource cancelation request 2695 (i.e., when Cancel-Resource operation is accepted) or Resource abortion by the System, 2696 which can be before the Resource transitions to the ‘canceled’ or ‘aborted’ state, but is not 2697 included in the original Resource object defined in [PWG5108.03] and is semantically 2698 analogous to the “time-at-completed” Job attribute defined in [RFC2911]. 2699

Page 93: The Printer Working GroupThe Printer Working Group 29 November 2016 Working Draft Copyright © 2014-2016 The Printer Working Group. All rights reserved. IPP System Service v1.0 (SYSTEM)

Working Draft – IPP System Service v1.0 (SYSTEM) 29 November 2016

Page 93 of 126 Copyright © 2014-2016 The Printer Working Group. All rights reserved.

7.7.17 time-at-creation (integer(MIN:MAX)) 2700

This REQUIRED Resource attribute contains the time of Resource creation request (i.e., 2701 when Create-Resource operation is accepted) but is not included in the original Resource 2702 object defined in [PWG5108.03] and is semantically analogous to the “time-at-creation” 2703 Job attribute defined in [RFC2911]. 2704

7.7.18 time-at-installed (integer(MIN:MAX)) 2705

This REQUIRED Resource attribute contains the time of Resource installation request 2706 (i.e., when Install-Resource operation is accepted), which can be before the Resource 2707 transitions to the ‘installed’ state, but is not included in the original Resource object defined 2708 in [PWG5108.03] and is semantically analogous to the “date-time-at-processing” Job 2709 attribute defined in [RFC2911]. 2710

7.8 Job Status Attributes 2711

All of the Job Status attributes are READ-ONLY and cannot be directly updated by the Set-2712 Job-Attributes operation. 2713

7.8.1 job-owner-col (collection) 2714

This REQUIRED Job attribute identifies the Job Owner. 2715

7.8.1.1 owner-uri (uri) 2716

This REQUIRED member attribute contains a Job Owner URI, e.g., 2717 “mailto:[email protected],” and is semantically analogous to the Service object’s 2718 OwnerURI defined in [PWG5108.01]. 2719

7.8.1.2 owner-vcard (1setOf text(1023)) 2720

This REQUIRED member attribute contains a Job Owner vCard [RFC6350] and is 2721 semantically analogous to the Service object’s OwnerVCard defined in [PWG5108.01]. 2722

2723

Page 94: The Printer Working GroupThe Printer Working Group 29 November 2016 Working Draft Copyright © 2014-2016 The Printer Working Group. All rights reserved. IPP System Service v1.0 (SYSTEM)

Working Draft – IPP System Service v1.0 (SYSTEM) 29 November 2016

Page 94 of 126 Copyright © 2014-2016 The Printer Working Group. All rights reserved.

8. Additional Semantics for Existing Operations 2724

8.1 Cancel-Subscription, Get-Notifications, and Renew-Subscription: 2725

system-uri (uri) and resource-id (integer(1:MAX)) 2726

8.2 Get-Printer-Attributes: printer-resource-ids (1setOf integer(1:MAX)) 2727

[for compatibility with legacy IPP Clients – choose implementation-dependent “default” 2728 Printer object, “redirect” operation to that Printer object, and relay response to Client] 2729

8.3 Create-Job, Get-Job-Attributes: job-resource-ids (1setOf 2730

integer(1:MAX)) 2731

2732

9. Additional Values for Existing Attributes 2733

9.1 notify-events (1setOf type2 keyword) 2734

2735

Page 95: The Printer Working GroupThe Printer Working Group 29 November 2016 Working Draft Copyright © 2014-2016 The Printer Working Group. All rights reserved. IPP System Service v1.0 (SYSTEM)

Working Draft – IPP System Service v1.0 (SYSTEM) 29 November 2016

Page 95 of 126 Copyright © 2014-2016 The Printer Working Group. All rights reserved.

10. Conformance Requirements 2736

Provide numbered lists of conformance requirements for the document. 2737

10.1 Conformance Requirements for Clients 2738

10.2 Conformance Requirements for Infrastructure Systems 2739

10.3 Conformance Requirements for Systems 2740

2741

11. Internationalization Considerations 2742

For interoperability and basic support for multiple languages, conforming implementations 2743 MUST support the Universal Character Set (UCS) Transformation Format -- 8 bit (UTF-8) 2744 [RFC3629] encoding of Unicode [UNICODE] [ISO10646] and the Unicode Format for 2745 Network Interchange [RFC5198]. 2746

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

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

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

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

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

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

Unicode Collation Algorithm [UTS10] – sorting 2754

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

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

Unicode Character Encoding Model [UTR17] – multi-layer character model 2758

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

Unicode Character Property Model [UTR23] – character properties 2760

Page 96: The Printer Working GroupThe Printer Working Group 29 November 2016 Working Draft Copyright © 2014-2016 The Printer Working Group. All rights reserved. IPP System Service v1.0 (SYSTEM)

Working Draft – IPP System Service v1.0 (SYSTEM) 29 November 2016

Page 96 of 126 Copyright © 2014-2016 The Printer Working Group. All rights reserved.

Unicode Conformance Model [UTR33] – Unicode conformance basis 2761

12. Security Considerations 2762

The IPP extensions defined in this document require the same security considerations as 2763 defined in the IPP/1.1: Model and Semantics [RFC2911] and PWG System Object and 2764 System Control Service Semantics [PWG5108.06]. 2765

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

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

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

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

2772

13. IANA and PWG Considerations 2773

TBD 2774

14. References 2775

14.1 Normative References 2776

[ACPI] Advanced Configuration and Power Interface Specification Revision 2777 5.0 Errata A, November 2013. 2778 http://www.acpi.info/DOWNLOADS/ACPI_5_Errata%20A.pdf 2779

[DSP1027] DMTF Power State Management Profile, DSP1027, December 2009. 2780 http://www.dmtf.org/standards/published_documents/DSP1027_2.0.0.2781 pdf 2782

[IANAIPP] IANA IPP Registry, 2783 http://www.iana.org/assignments/ipp-registrations/ipp-2784 registrations.xhtml 2785

[IEEE1284] Standard Signaling Method for a Bi-directional Parallel Peripheral 2786 Interface for Personal Computers, IEEE 1284, January 2000. 2787

Page 97: The Printer Working GroupThe Printer Working Group 29 November 2016 Working Draft Copyright © 2014-2016 The Printer Working Group. All rights reserved. IPP System Service v1.0 (SYSTEM)

Working Draft – IPP System Service v1.0 (SYSTEM) 29 November 2016

Page 97 of 126 Copyright © 2014-2016 The Printer Working Group. All rights reserved.

[IEEE1621] “Standard for User Interface Elements in Power Control of Electronic 2788 Devices Employed in Office/Consumer Environments”, IEEE 1621, 2789 December 2004. 2790

[ISO10175-1] T. Hastings et al, “ISO Document Printing Application (DPA) Part 1: 2791 Abstract Service Definition and Procedures”, ISO 10175-1, 1996 2792

[ISO10175-3] T. Hastings et al, “ISO Document Printing Application (DPA) Part 3: 2793 Management Abstract Service Definition and Procedures”, ISO 10175-2794 1, 1996 2795

[PWG5100.FIN] M. Sweet, “IPP Finishings 2.1 (FIN)”, work-in-progress, November 2796 2016, 2797 http://ftp.pwg.org/pub/pwg/ipp/wd/wd-ippfinishings21-20161109.pdf 2798

[PWG5100.12] R. Bergman, H. Lewis, I. McDonald, M. Sweet, “IPP Version 2.0, 2.1, 2799 and 2.2”, PWG 5100.12-2015, October 2015, 2800 http://ftp.pwg.org/pub/pwg/standards/std-ipp20-20151030-5100.12.pdf 2801

[PWG5100.13] M.Sweet, I. McDonald, P. Zehler, “IPP Job and Printer Extensions – 2802 Set 3”, PWG 5100.13-2012, July 2012, 2803 http://ftp.pwg.org/pub/pwg/candidates/cs-ippjobprinterext3v10-2804 20120727-5100.13.pdf 2805

[PWG5100.14] M. Sweet, I. McDonald, A. Mitchell, J. Hutchings, “IPP Everywhere”, 2806 PWG 5100.14-2013, January 2013, 2807 http://ftp.pwg.org/pub/pwg/candidates/cs-ippeve10-20130128-2808 5100.14.pdf 2809

[PWG5100.15] M. Sweet, “IPP FaxOut Service”, PWG 5100.15-2014, June 2014, 2810 http://ftp.pwg.org/pub/pwg/candidates/cs-ippfaxout10-20140618-2811 5100.15.pdf 2812

[PWG5100.17] P. Zehler, M. Sweet, “IPP Scan Service”, PWG 5100.17-2014, 2813 October 2014, 2814 http://ftp.pwg.org/pub/pwg/candidates/cs-ippscan10-20140918-2815 5100.17.pdf 2816

[PWG5100.18] M. Sweet, I. McDonald, “IPP Shared Infrastructure Extensions 2817 (INFRA)”, PWG 5100.18-2015, June 2015, 2818 http://ftp.pwg.org/pub/pwg/candidates/cs-ippinfra10-20150619-2819 5100.18.pdf 2820

[PWG5100.P3D] M. Sweet, “IPP 3D Printing Extensions (3D)”, work-in-progress, 2821 November 2016, 2822 http://ftp.pwg.org/pub/pwg/ipp/wd/wd-ipp3d10-20161114.pdf 2823

Page 98: The Printer Working GroupThe Printer Working Group 29 November 2016 Working Draft Copyright © 2014-2016 The Printer Working Group. All rights reserved. IPP System Service v1.0 (SYSTEM)

Working Draft – IPP System Service v1.0 (SYSTEM) 29 November 2016

Page 98 of 126 Copyright © 2014-2016 The Printer Working Group. All rights reserved.

[PWG5105.1] P. Zehler, T. Hastings, S. Albright, “Semantic Model v1.0”, PWG 2824 5105.1-2004, January 2004, 2825 http://ftp.pwg.org/pub/pwg/candidates/cs-sm10-20040120-5105.1.pdf 2826

[PWG5106.1] P. Zehler, H. Lewis, I. McDonald, J. Thrasher, W. Wagner, 2827 “Standardized Imaging Counters 1.1”, PWG 5106.1-2007, April 2007, 2828 http://ftp.pwg.org/pub/pwg/candidates/cs-wimscount11-20070427-2829 5106.1.pdf 2830

[PWG5106.3] I. McDonald, “Imaging System State and Counter MIB v2”, 2831 PWG5106.3-2008, March 2008, 2832 ftp://ftp.pwg.org/pub/pwg/candidates/cs-wimscountmib20-20080318-2833 5106.3.pdf 2834 ftp://ftp.pwg.org/pub/pwg/candidates/cs-wimscountmib20-20080318-2835 5106.3.mib 2836

[PWG5106.4] I. McDonald, “Power Management Model for Imaging Systems 1.0”, 2837 PWG 5106.4-2011, February 2011, 2838 http://ftp.pwg.org/pub/pwg/general/pwg-process-30.pdf 2839

[PWG5107.2] I. McDonald, “PWG Command Set Format for IEEE 1284 Device ID 2840 v1.0”, PWG 5107.2-2010, May 2010, 2841 http://ftp.pwg.org/pub/pwg/candidates/cs-pmp1284cmdset10-2842 20100531-5107.2.pdf 2843

[PWG5108.01] W. Wagner, P. Zehler, “MFD Model and Common Semantics”, PWG 2844 5801.01-2011, April 2011, 2845 http://ftp.pwg.org/pub/pwg/candidates/cs-sm20-mfdmodel10-2846 20110415-5801.1.pdf 2847

[PWG5108.02] N. Chen, P. Zehler, “Network Scan Service Semantic Model and 2848 Service Interface”, PWG 5108.02, April 2009, 2849 http://ftp.pwg.org/pub/pwg/candidates/cs-sm20-scan10-20090410-2850 5108.02.pdf 2851

[PWG5108.03] N. Chen, I. McDonald, P. Zehler, “Network Resource Service 2852 Semantic Model and Service Interface”, PWG 5108.03, July 2009, 2853 http://ftp.pwg.org/pub/pwg/candidates/cs-sm20-resource10-20090703-2854 5108.03.pdf 2855

[PWG5108.05] P. Zehler, “FaxOut Service Semantic Model and Service Interface”, 2856 PWG 5108.05-2011, August 2011, 2857 http://ftp.pwg.org/pub/pwg/candidates/cs-sm20-faxout10-20110809-2858 5108.05.pdf 2859

[PWG5108.06] P. Zehler, "System Object and System Control Service Semantics", 2860 PWG 5108.06-2012, February 2012, 2861

Page 99: The Printer Working GroupThe Printer Working Group 29 November 2016 Working Draft Copyright © 2014-2016 The Printer Working Group. All rights reserved. IPP System Service v1.0 (SYSTEM)

Working Draft – IPP System Service v1.0 (SYSTEM) 29 November 2016

Page 99 of 126 Copyright © 2014-2016 The Printer Working Group. All rights reserved.

http://ftp.pwg.org/pub/pwg/candidates/cs-sm20-system10-20120217-2862 5108.06.pdf 2863

[PWG5109.1] R. Nevo, W. Wagner, “Cloud Imaging Requirements and Model 2864 (IMAGINGMODEL)”, PWG 5109.1-2015, June 2015, 2865 http://ftp.pwg.org/pub/pwg/candidates/cs-cloudimagingmodel10-2866 20150619-5109.1.pdf 2867

[RFC2119] S. Bradner, "Key words for use in RFCs to Indicate Requirement 2868 Levels", RFC 2119/BCP 14, March 1997, 2869 http://www.ietf.org/rfc/rfc2119.txt 2870

[RFC2707] R. Bergman, T. Hastings, S. Isaacson, H. Lewis, “Job Monitoring MIB 2871 - V1.0, RFC 2707, November 1999, 2872 http://www.ietf.org/rfc/rfc2707.txt 2873

[RFC2911] T. Hastings, R. Herriot, R. deBry, S. Isaacson, P. Powell, "Internet 2874 Printing Protocol/1.1: Model and Semantics", RFC 2911, September 2875 2000, http://www.ietf.org/rfc/rfc2911.txt 2876

[RFC3380] T. Hastings, R. Herriot, C. Kugler, H. Lewis, “Internet Printing Protocol 2877 (IPP): Job and Printer Set Operations”, RFC 3380, September 2002, 2878 http://www.ietf.org/rfc/rfc3380.txt 2879

[RFC3382] R. deBry, R. Herriot, T. Hastings, K. Ocke, P. Zehler, "Internet Printing 2880 Protocol (IPP): The ‘collection’ Attribute Syntax", RFC 3382, 2881 September 2002, http://www.ietf.org/rfc/rfc3382.txt 2882

[RFC3510] R. Herriot, I. McDonald, “Internet Printing Protocol/1.1: IPP URL 2883 Scheme”, RFC 3510, April 2003, http://www.ietf.org/rfc/rfc3510.txt 2884

[RFC3805] R. Bergman, H. Lewis, I. McDonald, "Printer MIB v2", RFC 3805, June 2885 2004, 2886 http://www.ietf.org/rfc/rfc3805.txt 2887

[RFC3806] R. Bergman, H. Lewis, I. McDonald, "Printer Finishing MIB", RFC 2888 3806, June 2004, 2889 http://www.ietf.org/rfc/rfc3806.txt 2890

[RFC3995] R. Herriot, T. Hastings, “Internet Printing Protocol (IPP): Event 2891 Notifications and Subscriptions”, RFC 3995, March 2005, 2892 http://www.ietf.org/rfc/rfc3995.txt 2893

[RFC3996] R. Herriot, T. Hastings, H. Lewis, “Internet Printing Protocol (IPP): The 2894 'ippget' Delivery Method for Event Notifications”, RFC 3996, March 2895 2005, http://www.ietf.org/rfc/rfc3996.txt 2896

Page 100: The Printer Working GroupThe Printer Working Group 29 November 2016 Working Draft Copyright © 2014-2016 The Printer Working Group. All rights reserved. IPP System Service v1.0 (SYSTEM)

Working Draft – IPP System Service v1.0 (SYSTEM) 29 November 2016

Page 100 of 126 Copyright © 2014-2016 The Printer Working Group. All rights reserved.

[RFC6350] S. Perreault, “vCard Format Specification”, RFC 6350, August 2011, 2897 http://www.ietf.org/rfc/rfc6350.txt 2898

[RFC7472] I. McDonald, M. Sweet, “Internet Printing Protocol (IPP) over HTTPS 2899 Transport Binding and the 'ipps' URI Scheme”, RFC 7472, March 2900 2015, http://www.ietf.org/rfc/rfc7472.txt 2901

[UAX9] Unicode Consortium, “Unicode Bidirectional Algorithm”, UAX#9, June 2902 2014, 2903 http://www.unicode.org/reports/tr9/tr9-31.html 2904

[UAX14] Unicode Consortium, “Unicode Line Breaking Algorithm”, UAX#14, 2905 June 2014, 2906 http://www.unicode.org/reports/tr14/tr14-33.html 2907

[UAX15] Unicode Consortium, “Normalization Forms”, UAX#15, June 2014, 2908 http://www.unicode.org/reports/tr15/tr15-41.html 2909

[UAX29] Unicode Consortium, “Unicode Text Segmentation”, UAX#29, June 2910 2014, 2911 http://www.unicode.org/reports/tr29/tr29-25.html 2912

[UAX31] Unicode Consortium, “Unicode Identifier and Pattern Syntax”, 2913 UAX#31, June 2014, 2914 http://www.unicode.org/reports/tr31/tr31-21.html 2915

[UNICODE] Unicode Consortium, "Unicode Standard", Version 8.0.0, June 2015, 2916 http://unicode.org/versions/Unicode8.0.0/ 2917

[UTS10] Unicode Consortium, “Unicode Collation Algorithm”, UTS#10, June 2918 2014, 2919 http://www.unicode.org/reports/tr10/tr10-30.html 2920

[UTS35] Unicode Consortium, “Unicode Locale Data Markup Language”, 2921 UTS#35, September 2014, 2922 http://www.unicode.org/reports/tr35/tr35-37/tr35.html 2923

[UTS39] Unicode Consortium, “Unicode Security Mechanisms”, UTS#39, 2924 September 2014, 2925 http://www.unicode.org/reports/tr39/tr39-9.html 2926

2927

14.2 Informative References 2928

[RFC2567] F.D. Wright, “Design Goals for an Internet Printing Protocol”, RFC 2929 2567, April 1999, http://www.ietf.org/rfc/rfc2567.txt 2930

Page 101: The Printer Working GroupThe Printer Working Group 29 November 2016 Working Draft Copyright © 2014-2016 The Printer Working Group. All rights reserved. IPP System Service v1.0 (SYSTEM)

Working Draft – IPP System Service v1.0 (SYSTEM) 29 November 2016

Page 101 of 126 Copyright © 2014-2016 The Printer Working Group. All rights reserved.

[RFC5209] P. Sangster, H. Khosravi, M. Mani, K. Narayan, J. Tardo, “Network 2931 Endpoint Assessment (NEA): Overview and Requirements”, RFC 2932 5209, June 2008, http://www.ietf.org/rfc/rfc5209.txt 2933

[UTR17] Unicode Consortium “Unicode Character Encoding Model”, UTR#17, 2934 November 2008, 2935 http://www.unicode.org/reports/tr17/tr17-7.html 2936

[UTR20] Unicode Consortium “Unicode in XML and other Markup Languages”, 2937 UTR#20, January 2013, 2938 http://www.unicode.org/reports/tr20/tr20-9.html 2939

[UTR23] Unicode Consortium “Unicode Character Property Model”, UTR#23, 2940 November 2008, 2941 http://www.unicode.org/reports/tr23/tr23-9.html 2942

[UTR33] Unicode Consortium “Unicode Conformance Model”, UTR#33, 2943 November 2008, 2944 http://www.unicode.org/reports/tr33/tr33-5.html 2945

[UNISECFAQ] Unicode Consortium “Unicode Security FAQ”, November 2013, 2946 http://www.unicode.org/faq/security.html 2947

15. Authors' Addresses 2948

Primary authors: 2949

Ira McDonald 2950 High North 2951 PO Box 221 2952 Grand Marais, MI 49839 2953 [email protected] 2954 2955 Michael Sweet 2956 Apple Inc. 2957 1 Infinite Loop 2958 Cupertino, CA 95014 2959 [email protected] 2960

The authors would also like to thank the following individuals for their contributions to this 2961 standards-track document: 2962

Smith Kennedy (HP Inc) 2963 William Wagner (TIC) 2964 Peter Zehler (Xerox) 2965

Page 102: The Printer Working GroupThe Printer Working Group 29 November 2016 Working Draft Copyright © 2014-2016 The Printer Working Group. All rights reserved. IPP System Service v1.0 (SYSTEM)

Working Draft – IPP System Service v1.0 (SYSTEM) 29 November 2016

Page 102 of 126 Copyright © 2014-2016 The Printer Working Group. All rights reserved.

16. Appendix A – Rationale for Design Choices 2966

This section describes the rationale for important design choices made in the development 2967 of this IPP System Service specification. 2968

16.1 Resource Object 2969

16.1.1 Move Resource Service operations into System Service 2970

The PWG Network Resource Service [PWG5108.03] was unique because it wasn’t a Job 2971 service and was implicitly a capability of the overall System. Therefore, selected Resource 2972 operations have been incorporated into the System Service. 2973

16.1.2 Remove some Resource operations 2974

The PWG Network Resource Service [PWG5108.03] defined a DeleteResource operation 2975 that was incompatible with System log files and audit trail mechanisms. Instead a new 2976 Cancel-Resource operation has been added to the System Service that permanently 2977 removes the Resource from further use but preserves the Resource metadata in a 2978 Resource History phase for correlation with System log files. 2979

The PWG Network Resource Service [PWG5108.03] defined a RetrieveResource 2980 operation for reading the contents of the Resource data that was inherently insecure. This 2981 operation has been removed from the System Service. 2982

The PWG Network Resource Service [PWG5108.03] defined a ReplaceResource 2983 operation for replacing the contents of the Resource data that was inherently insecure. 2984 This operation has been removed from the System Service. 2985

The PWG Network Resource Service [PWG5108.03] defined a RenewResource operation 2986 for renewing the lease on a Resource. This operation has been removed from the System 2987 Service. 2988

The PWG Network Resource Service [PWG5108.03] defined a set of Administrative 2989 service-level operations (DisableResourceService, EnableResourceService, 2990 RestartResourceService, ShutdownResourceService, and StartupResourceService). 2991 These operations have been removed from the System Service. 2992

16.1.3 Decompose some Resource operations 2993

The PWG Network Resource Service [PWG5108.03] defined a single operation 2994 StoreResource that both created the Resource metadata object and uploaded the 2995 Resource data, by analogy to the Print-Job operation defined in [RFC2911]. Consistent 2996 with current PWG design philosophy, this StoreResource operation has been decomposed 2997 into Create-Resource (create Resource object), Send-Resource-Data (upload Resource 2998 data), and Install-Resource (install executable, static, or template Resource for use). 2999

Page 103: The Printer Working GroupThe Printer Working Group 29 November 2016 Working Draft Copyright © 2014-2016 The Printer Working Group. All rights reserved. IPP System Service v1.0 (SYSTEM)

Working Draft – IPP System Service v1.0 (SYSTEM) 29 November 2016

Page 103 of 126 Copyright © 2014-2016 The Printer Working Group. All rights reserved.

Installation of an executable Resource (e.g., firmware) can involve a System or Subunit 3000 reboot to complete. 3001

16.1.4 Replace Resource lease with Resource state 3002

The PWG Network Resource Service [PWG5108.03] used the lease concept from the 3003 Subscription object defined in [RFC3995]. There was a strong consensus to move away 3004 from leases and instead add a new “resource-state” Resource Status attribute for clarity 3005 and flexibility. 3006

3007

Page 104: The Printer Working GroupThe Printer Working Group 29 November 2016 Working Draft Copyright © 2014-2016 The Printer Working Group. All rights reserved. IPP System Service v1.0 (SYSTEM)

Working Draft – IPP System Service v1.0 (SYSTEM) 29 November 2016

Page 104 of 126 Copyright © 2014-2016 The Printer Working Group. All rights reserved.

17. Change History 3008

17.1 29 November 2016 3009

- Interim draft – changes per IPP WG at Virtual F2F on 15 November 2016 3010 - global – accepted all changes per complete review at Virtual F2F 3011 - global – changed “but not included in the Resource object” to “but not included in the 3012 original Resource object” for clarity 3013 - global – searched for all instances of "specifies a/the list of" and made sure the list is the 3014 correct items 3015 - global – searched for all instances of “type 2” and changed to “type2” (without space) 3016 - revised section 4.2 Subunit Object to clarify that System Service spec does NOT define 3017 any explicit System object attributes for access to Subunit objects and instead existing 3018 Printer object attributes (e.g., “printer-input-tray” from PWG 5100.13) can be used. 3019 - revised section 4.6 Resource Object to state that Resources are persistent until they are 3020 explicitly canceled by an Administrator or aborted by the System, discuss “resource-use-3021 count”, and discuss deferred cancelation of busy resources with ‘cancel-requested’ added 3022 to “resource-state-reasons” 3023 - revised section 4.6 Resource Object to add section 4.6.1 Resource History 3024 - revised section 4.6 Resource Object and section 7.7.12 resource-type to state that IPP 3025 System Service implementations SHOULD support System-scope executable resources 3026 (e.g., for firmware update) and MAY support Printer-scope and/or Job-scope executable 3027 resources in an implementation-defined manner 3028 - revised section 5.2 System Description Attributes and Table 1 to add “printer-creation-3029 attributes-supported” 3030 - revised section 5.6 Resource Description Attributes and section 6.2.2 Create-Resource to 3031 add notes about Job-scope Resources (allocated via “resource-ids” operation attribute) 3032 - revised section 5.7 Resource Status Attributes and Table 5 to add “resource-use-count” 3033 - revised section 6.1.5.1 Get-Printers Request text on “requested-attributes” to say that 3034 Clients SHOULD only supply and Systems MUST only support Printer attributes listed as 3035 Printer source attributes in the table in section 4 of IETF LDAP Schema for Printer 3036 Services [RFC7612] 3037 - revised section 6.1.6.1 Get-Printer-Attributes Request to say Clients MUST supply 3038 “system-uri” or “printer-uri” and Systems MUST support both “system-uri” and “printer-uri” 3039 operation attributes 3040 - revised section 6.2.1 Cancel-Resource to move Resource History paragraph up to 3041 section 4.6 Resource Object and add backward reference to section 4.6 3042 - revised section 6.2.2 Create-Resource to support optional creation of one or more per-3043 Resource Subcription objects with request and response Subscription Attributes groups 3044 - revised section 6.2.2 Create-Resource to change “Resource for use” to just “Resource”, 3045 change “will change” to “will either change”, delete redundant “keep “resource” state of 3046 ‘available’ clause, and Job-scope Resource note 3047 - revised section 6.2.5 Install-Resource and section 6.2.6 Send-Resource-Data to add 3048 notes about need for validation of Resource metadata 3049 - revised section 6.2.7 Set-Resource-Attributes to remove discussion of aborting 3050

Page 105: The Printer Working GroupThe Printer Working Group 29 November 2016 Working Draft Copyright © 2014-2016 The Printer Working Group. All rights reserved. IPP System Service v1.0 (SYSTEM)

Working Draft – IPP System Service v1.0 (SYSTEM) 29 November 2016

Page 105 of 126 Copyright © 2014-2016 The Printer Working Group. All rights reserved.

Resources due to bad Set-Resource-Attributes request 3051 - revised section 7.1.2 printer-ids to drop references to Create-Resource and add 3052 “list of “printer-id” values for target…” 3053 - revised section 7.1.9 resource-ids to add reference to Allocate-Printer-Resources and 3054 add “list of “resource-id” values for associated…” 3055 - added section 7.2.11 printer-creation-attributes-supported for capabilities in Create-3056 Printer operation 3057 - revised section 7.2.12 resource-settable-attributes-supported to change “type 2” to 3058 “type2” 3059 - revised section 7.2.19 system-mandatory-printer-attributes to add analogy to “printer-3060 mandatory-job-attributes”, reword conformance for ‘printer-name’ and ‘printer-xri-3061 supported’ values, rename Table 9 to Recommended-to-Supply Printer Creation Attributes, 3062 and delete redundant Conformance column and Notes below 3063 - revised section 7.5.3 printer-service-type to change “SMI number registered by IANA” to 3064 “SMI number assigned by IANA” 3065 - revised section 7.7.1 date-time-at-canceled and section 7.7.16 time-at-canceled to 3066 change “before “resource-state” actually transitions to ‘canceled’” to “the Resource 3067 transitions to the ‘canceled’ or ‘aborted’ state” 3068 - revised section 7.7.3 date-time-at-installed and section 7.7.18 time-at-installed to change 3069 “before “resource-state” actually transitions to ‘installed’” to “before the Resource 3070 transitions to the ‘installed’ state” 3071 - revised section 7.7.8 resource-state to crop Note 1 from figure and add Note 1 and new 3072 Note 2 about special state transitions when a new executable Resource is installed and 3073 *replaces* a previous executable Resource (which transitions backwards to ‘available’) 3074 - revised section 7.7.8 resource-state, section 7.7.9 resource-state-message, and section 3075 7.7.10 resource-state-reasons to correct the analogy to Job state/message/reasons (from 3076 previous Printer analogy) 3077 - added section 7.7.13 resource-use-count for Resource allocation count 3078 - revised section 14.1 Normative References to update references to [PWG5100.FIN] and 3079 [PWG5100.P3D] 3080 - TODO – add status-code text to section 6 preamble and to all operations in sections 6.x 3081 - TODO – add back explicit full parms for every operation in section 6 per PWG F2F review 3082 - TODO – fix all the broken section 6.x references from the reorganization of section 6 3083

17.2 1 November 2016 3084

- Interim draft – changes per IPP WG discussion on 19 October 2016 3085 - revised prologue to add List of Figures 3086 - revised section 4.6 Resource Object and section 5.7 Resource Status Attributes to add 3087 forward references to Figure 1 in section 7.7.8 resource-state for Resource life cycle 3088 - revised section 7.1 IPP Operation Attributes, section 7.3 System Status Attributes, and 3089 section 7.7 Resource Status Attributes to accept previously deleted sections for readability 3090 - revised section 7.7.8 resource-state to add Figure 1 IPP Resource Object Life Cycle 3091

Page 106: The Printer Working GroupThe Printer Working Group 29 November 2016 Working Draft Copyright © 2014-2016 The Printer Working Group. All rights reserved. IPP System Service v1.0 (SYSTEM)

Working Draft – IPP System Service v1.0 (SYSTEM) 29 November 2016

Page 106 of 126 Copyright © 2014-2016 The Printer Working Group. All rights reserved.

17.3 18 October 2016 3092

- Interim draft – changes per IPP WG review on 5 October 2016 3093 - global – accepted all changes before section 6.1.6 Get-Printer-Attributes (all reviewed by 3094 IPP WG) 3095 - revised section 5.6 Resource Description Attributes to replicate note taken from Create-3096 Printer operation about how Printer-scope Resources are associated with Printers 3097 - revised section 6.1.5.1 Get-Printers Request to remove “printer-uri” (redundant with class 3098 Get-Printer-Attributes) since this is a new request 3099 - revised section 6.1.5.1 Get-Printers Request to explicitly limit the values of “requested-3100 attributes” to those IPP Printer source attributes listed in the table in section 4 Definition of 3101 Attribute Types in the IETF LDAP Schema for Printer Services [RFC7612] (to limit new 3102 Get-Printers operation to first-order discovery of appropriate Printers) 3103 - revised section 16. Appendix A – Rationale for Design Choices to accept all changes (to 3104 reduce editor’s annoyance) 3105

17.4 4 October 2016 3106

- Interim draft – changes per IPP WG review on 19 September 2016 3107 - global – accepted all changes before section 6 (all reviewed by IPP WG) 3108 - global – removed “resource-printer-id” and “resource-printer-ids” from sections 5, 6, and 3109 7, thus removing interaction with “printer-resource-ids” and rewrote Create-Printer and 3110 Create-Resource accordingly 3111 - revised sections 4.x to change “are [long|short]-lived objects” to “are typically [long|short]-3112 lived objects” 3113 - revised section 5.4 System Operations and Table 3 to add Allocate-Printer-Resources 3114 and Deallocate-Printer-Resources 3115 - revised section 5.7 Resource Status Attributes and Table 5 to delete “resource-printer-3116 ids” and note 5 3117 - added section 6.1.1 Allocate-Printer-Resources and section 6.1.3 Deallocate-Printer-3118 Resources to update Resources associated with a given Printer after Create-Printer 3119 - revised section 6.1.2 Create-Printer to clarify choices for associating Resources with a 3120 given Printer and refer to Resource upload defined in [PWG5100.18]. 3121 - revised section 6.2.2 Create-Resource to clarify choices for associating Resources with a 3122 given Printer and refer to Create-Resource-Subscription operation. 3123 - TODO – add status-code text to section 6 preamble and to all operations in sections 6.x 3124 - TODO – add back explicit full parms for every operation in section 6 per PWG F2F review 3125 - TODO – fix all the broken section 6.x references from the reorganization of section 6 3126

17.5 15 September 2016 3127

- Interim draft – changes per PWG F2F review on 23 August 2016 3128 - global – accepted all changes before section 8 (all reviewed at PWG F2F) 3129 - global – renamed section 5 to IPP Objects and Operations Summary and revised to 3130 delete reference to “system-configured-subunits” and change Description attributes 3131

Page 107: The Printer Working GroupThe Printer Working Group 29 November 2016 Working Draft Copyright © 2014-2016 The Printer Working Group. All rights reserved. IPP System Service v1.0 (SYSTEM)

Working Draft – IPP System Service v1.0 (SYSTEM) 29 November 2016

Page 107 of 126 Copyright © 2014-2016 The Printer Working Group. All rights reserved.

sections from “READ-WRITE” to “potentially READ-WRITE” (consistent with section 7) 3132 - global – revised section 6 IPP Operations to replace “allows allows” with “allows” 3133 - global – changed “resource-state” keywords of ‘pending’ to ‘created’ and ‘active’ to 3134 ‘available,’ added “resource-state” keyword of ‘aborted’, and added “resource-state-3135 reasons” keywords of ‘cancel-requested’, ‘install-requested’, and ‘resource-incoming’ for 3136 operations with delayed state transitions 3137 - revised section 4 IPP Object Model to add notes that System, Printer, and Resource 3138 Owners are mutable (long-lived objects) while Job and Subscription Owners are immutable 3139 (short-lived objects) 3140 - revised section 4.6 Resource Object to correctly explicitly refer to Send-Resource-Data 3141 and Install-Resource operations 3142 - revised section 5.3 System Status Attributes and Table 2 to delete reference to “system-3143 configured-subunits” 3144 - revised section 5.4 System Operations to include Install-Resource in note 3 and state 3145 that the original StoreResource operation has been decomposed into the sequence of 3146 Create-Resource, Send-Resource-Data, and Install-Resource and to revise and reference 3147 note 4 about Install-Resource 3148 - revised section 5.7 Resource Status Attributes and Table 5 to delete “resource-3149 authenticator” and “resource-category” and note 7 about “resource-authenticator”, delete 3150 “resource-job-id” and note 5 about “resource-job-id”, and change “resource-printer-id” 3151 (singular) to “resource-printer-ids” (a list of explicitly associated Printers) 3152 - revised section 5.9 Printer Status Attributes to delete double period on second list item 3153 - revised section 5.9 Printer Status Attributes and Table 7 to add “printer-resource-ids” with 3154 note about “resource-ids” operation attribute in Create-Printer 3155 - revised section 5.10 Job Status Attributes and Table 8 to add “job-resource-ids” with note 3156 about “resource-ids” operation attribute in Job Creation operations 3157 - revised section 6 IPP Operations to regroup all operations under Printer, Resource, 3158 Subscription, and System Operation subsections (this breaks DOZENS of cross-3159 references throughout the document) 3160 - revised note in section 6.1.1 Create-Printer and section 6.2.2 Create-Resource to explain 3161 two alternatives for correctly populating “printer-resource-ids” and “resource-printer-ids” 3162 status attributes 3163 - revised section 6.1.1 Create-Printer to add <all mandatory Printer Description attributes> 3164 with reference to “system-mandatory-printer-attributes” 3165 - revised section 6.1.1.1 Create-Printer Request to add “resource-ids” operation attribute 3166 that requests Resources and is copied (if valid) to the “printer-resource-ids” Printer Status 3167 attribute – note that this is intentionally NOT a Printer Description attribute for security 3168 - revised section 6.1.3 Get-Printers and section 6.1.4 Get-Printer-attributes to state that the 3169 returned Printers and Printer attributes MAY be filtered based on Client access rights (i.e., 3170 the value of “requesting-user-name”) or the specified “document-format” 3171 - revised section 6.1.3 Get-Printers and section 6.1.4 Get-Printer-attributes to list all 3172 operation and response attributes explicitly, add optional “printer-uri” alternative to “printer-3173 ids” or “printer-id” for target Printer, optional “document-format” (for filtering returned 3174 attributes), and required “printer-xri-supported” in response 3175 - revised section 6.1.4 Get-Printer-attributes to discuss backwards compatibility, change 3176 “system-uri” target to “Client SHOULD supply” (for legacy IPP Clients), add back optional 3177

Page 108: The Printer Working GroupThe Printer Working Group 29 November 2016 Working Draft Copyright © 2014-2016 The Printer Working Group. All rights reserved. IPP System Service v1.0 (SYSTEM)

Working Draft – IPP System Service v1.0 (SYSTEM) 29 November 2016

Page 108 of 126 Copyright © 2014-2016 The Printer Working Group. All rights reserved.

“printer-uri” (for legacy IPP Clients), add “first-index” and “element, and change “Groups 3 3178 to N” to “Group 3” 3179 - revised section 6.2.1 Cancel-Resource, section 6.2.5 Install-Resource, section 6.2.6 3180 Send-Resource-Data, and section 6.2.7 Set-Resource-Attributes to add that if “resource-3181 state” is ‘canceled’ or ‘aborted’ or “resource-state-reasons” includes ‘cancel-requested’ 3182 then System MUST return ‘client-error-not-possible’ 3183 - revised section 6.2.1 Cancel-Resource to correct typos from “Create-Resource” to 3184 “Cancel-Resource”, clarify transition of “resource-state” to ‘canceled’ (could be delayed if 3185 Resource is in use in a Job) and “resource-state-reasons” to ‘cancel-requested’, change 3186 “MAY” to “SHOULD” for the System delete of Resource data, add a definition of the 3187 Resource History lifecycle phase, and state that the System MUST support Resource 3188 History period of at least 300 seconds for reliable system log files 3189 - revised section 6.2.2 Create-Resource to delete “resource-category” (redundant with 3190 resource-type), delete “resource-job-id”, and clarify transitions (and keyword names) of 3191 “resource-state” and “resource-state-reasons” 3192 - revised section 6.4.3 Get-System-Attributes to add note that we will require explicit 3193 request for “system-configured-resources” or “system-configured-printers” (by analogy to 3194 “media-col-database” for Get-Printer-Attributes) 3195 - renamed section 7.1 System, Printer, Resource, and Job Operation Attributes to simply 3196 “Operation Attributes” and added note about their applicability 3197 - revised section 7.1 Operation Attributes to add “resource-ids” for Create-Printer and Job 3198 Creation operations to list requested Resources 3199 - deleted section 7.1.7 resource-category operation attribute 3200 - deleted section 7.1.10 resource-job-id operation attribute 3201 - revised section 7.2.11 resource-settable-attributes-supported to add missing type 3202 - revised section 7.2.13 system-default-printer-id to keep “MAX” and delete “max” in type 3203 - added section 7.2.18 system-mandatory-printer-attributes and Table 9 – Mandatory-to-3204 Supply Printer Creation Attributes for use in Create-Printer operation 3205 - revised section 7.3.11 system-configured-resources and Table 10 to delete “resource-3206 category” 3207 - deleted section 7.3.11.1 resource-category (redundant with resource-type) 3208 - revised section 7.3.17 system-state-reasons to state that any applicable “printer-state-3209 reasons” keyword value can be used (to avoid enumerating the existing keywords here) 3210 - revised section 7.5.3 printer-service-type to add ‘print3d’, delete ‘emailin’ and ‘emailout’ 3211 (security nightmares), delete ‘vendor’ (not interoperable), and add ‘smiNNN-name’ pattern 3212 and explanation for vendor service types 3213 - revised section 7.7.x “[date-time|time]-at-[cancelation|creation|installation]” to state the 3214 timestamps MUST be set at the time the System accepts a Cancel-Resource, Create-3215 Resource, or Install-Resource operation (instead of when the process completes and the 3216 appropriate “resource-state-reasons” pending value is removed) 3217 - deleted section 7.7.4 resource-authenticator (access info must be included in resource 3218 data manifest file) 3219 - deleted section 7.7.5 resource-category (redundant with resource-type) 3220 - deleted section 7.7.9 resource-job-id (use “job-resource-ids” in Job for association) 3221 - revised section 7.7.10 resource-state to define ‘pending’ (after creation), ‘available’ (after 3222 upload of data), ‘installed’ (after installation), ‘canceled’ (by Client, not by System), and 3223

Page 109: The Printer Working GroupThe Printer Working Group 29 November 2016 Working Draft Copyright © 2014-2016 The Printer Working Group. All rights reserved. IPP System Service v1.0 (SYSTEM)

Working Draft – IPP System Service v1.0 (SYSTEM) 29 November 2016

Page 109 of 126 Copyright © 2014-2016 The Printer Working Group. All rights reserved.

‘aborted’ (by System) so that ‘canceled’ and ‘aborted’ are the two alternative terminal 3224 states 3225 - revised section 7.7.12 resource-state-reasons to define ‘cancel-requested’, ‘install-3226 requested’, and ‘upload-requested’ for delayed completion of the respective operations 3227 processing 3228 - revised section 7.7.16 resource-type to change reference to “resource-category” 3229 reference (an attribute) to simply “resource category” (a prefix for a resource-type) and 3230 insert explicit resource category prefix into all “resource-type” keyword values and add 3231 ‘template-printer’ for potential Create-Printer extension 3232 - revised section 14.1 Normative References to add “PWG5100.P3D” for ‘print3d’ service 3233 type 3234 - added Appendix A – Rationale for Design Choices – added first Resource topics 3235 - TODO – add status-code text to section 6 preamble and to all operations in sections 6.x 3236 - TODO – add back explicit full parms for every operation in section 6 per PWG F2F review 3237 - TODO – fix all the broken section 6.x references from the reorganization of section 6 3238

17.6 18 August 2016 3239

- Interim draft – changes per IPP WG review on 15 August 2016 3240 - global – accepted all changes before section 7 3241 - global – changed “system-default-printer-uri” (ambiguous, N per Printer) to “system-3242 default-printer-id” (explicit, 1 per Printer) 3243 - global – changed “resource-printer-uri” (ambiguous, N per Printer) to “resource-printer-id” 3244 (explicit, 1 per Printer) 3245 - global – changed all Printer operations to replace “printer-uri” (ambiguous, N per Printer) 3246 with “printer-id” (explicit, 1 per Printer) 3247 - added section 1.2 Get-Printer-Attributes extension (about “default” Printer) 3248 - added section 1.3 Printer Identity Extension (about “printer-id”) 3249 - revised section 5.9 Printer Status Attributes and Table 7 to add “printer-id” and correct 3250 SM references for all three attributes 3251 - revised sections 6.x to explicit state requirement for “authorized Operator or 3252 Administrator” (most operations), “authorized Client” (few operations), or “unauthenticated 3253 Client” (ONLY for Get-Printer-Attributes extended legacy operation) 3254 - revised section 6.1 Cancel-Resource to discuss “age” out (delete) of Resource objects in 3255 the Resource History (after cancellation) – need some more text here 3256 - revised section 6.1.1 Cancel-Resource Request and section 6.4.1 Create-Resource-3257 Subscriptions Request to move up the “resource-id” target operation attribute 3258 - revised section 6.2.2 Create-Printer Response to delete “printer-uri” and “printer-uri-3259 supported”, etc and add “printer-id” and “printer-xri-supported” 3260 - revised section 6.3 Create-Resource to fix spelling of Install-Resource and “notify-printer-3261 id” 3262 - revised section 6.4 Create-Resource-Subscriptions to return “status-code” of ‘client-error-3263 not-possible’ for “resource-state” or ‘canceled’ 3264 - revised section 6.4 Create-Resource-Subscriptions to change analogy from Create-3265 Printer-Subscriptions to Create-Job-Subscriptions 3266 - revised section 6.6.1 Delete-Printer Request to explicitly add the (mandatory to supply) 3267

Page 110: The Printer Working GroupThe Printer Working Group 29 November 2016 Working Draft Copyright © 2014-2016 The Printer Working Group. All rights reserved. IPP System Service v1.0 (SYSTEM)

Working Draft – IPP System Service v1.0 (SYSTEM) 29 November 2016

Page 110 of 126 Copyright © 2014-2016 The Printer Working Group. All rights reserved.

“printer-id” operation attribute 3268 - revised section 6.9.1 Get-Printers Request to explicitly add the (optional for Client to 3269 supply) “printer-ids” operation attribute 3270 - revised section 6.9.2 Get-Printers Response to explicitly add the (mandatory for System 3271 to return) “printer-id” Printer response attribute for each Printer object returned 3272 - revised section 6.10 Get-Printer-Attributes to change “system-default-printer-uri” to 3273 “system-default-printer-id” and add (Client optionally supplies) explicit “printer-id” 3274 - revised section 7.1 System, Printer, Resource, and Job Operation Attributes to add 3275 “printer-id” 3276 - revised section 7.3.9 system-configured-printers and Table 9 to add “printer-id” 3277 - revised section 7.5 Printer Status Attributes to define “printer-id” for resource-constrained 3278 Clients 3279 - TODO – add status-code text to section 6 preamble and to all operations in sections 6.x 3280 - TODO – add resource-state discussion and clarify Install-Resource (i.e., could it be 3281 immediate without a reboot?) 3282

17.7 10 August 2016 3283

- Interim draft – changes per IPP WG review on 25 July 2016 3284 - global – accepted all changes before section 7.3.11 system-configured-subunits 3285 - renamed section 5.10 from Job Description Attributes to Job Status Attributes for new 3286 “job-owner-col” 3287 - revised sections 6.x to add requesting-user-vcard to all operations (as Client SHOULD 3288 supply and System MUST support) 3289 - revised section 6.1 Cancel-Resource to define the operation 3290 - revised section 6.2 Create-Printer to remove erroneous “printer-uri” as input attribute 3291 - revised section 6.3 Create-Resource to refer to new Install-Resource and ‘installed’ value 3292 of “resource-state” 3293 - revised section 6.4 Create-Resource-Subscriptions to define the operation 3294 - revised section 6.5 Create-System-Subscriptions to define the operation 3295 - revised section 7.1.4 requesting-user-vcard to clarify usage and that it goes to a Job 3296 Status attribute (rather than Description attribute), different from System, Printer, and 3297 Resource long-lived objects 3298 - revised section 7.3.1 power-log-col to change “transition” to “transitions” (plural) and 3299 correct spelling of ‘reset-nmi’ in example 3300 - revised sections 7.3.10.x to correct forward references to sections 7.x 3301 - revised section 7.3.10.3 resource-id to change “(1:max)” to “(1:MAX)” 3302 - deleted former section 7.3.11 system-configured-subunits per consensus 3303 - deleted former section 7.3.18 system-totals per consensus (redundant with counters in 3304 Printer service objects) 3305 - revised section 7.7.12 resource-state to add ‘installed’ as a first class state for executable 3306 Resource objects (which shows in system-configured-resources summary) 3307 - renamed section 7.8 from Job Description Attributes to Job Status Attributes for new “job-3308 owner-col” 3309 3310

Page 111: The Printer Working GroupThe Printer Working Group 29 November 2016 Working Draft Copyright © 2014-2016 The Printer Working Group. All rights reserved. IPP System Service v1.0 (SYSTEM)

Working Draft – IPP System Service v1.0 (SYSTEM) 29 November 2016

Page 111 of 126 Copyright © 2014-2016 The Printer Working Group. All rights reserved.

17.8 20 July 2016 3311

- Interim draft – changes per IPP WG review on 11 July 2016 3312 - global – accepted all changes before section 7.3.10 system-configured-resources 3313 - revised Abstract and Introduction to tighten up wording 3314 - revised section 5.6 Resource Description Attributes and Table 4 to add note for 3315 REQUIRED “resource-owner-col” 3316 - revised section 5.7 Resource Status Attributes and Table 5 to delete “resource-owner-3317 col” (belongs in settable description attributes for change of owner) and associated note 3318 - revised section 5.7 Resource Status Attributes and Table 5 to add note for “date-time-at-3319 installed” and “time-at-installed” including analogy to “date-time-at-processing” and “time-3320 at- processing” Job attributes 3321 - added section 5.10 Job Description Attributes and Table 8 for “job-owner-col” extension 3322 - revised section 7.1.4 “requesting-user-vcard” to extend to System, Printer, Resource, and 3323 Job objects and discuss “most authenticated” user identity with pointer to “job-originating-3324 user-name” in [RFC2911]. 3325 - revised section 7.3.1 “power-log-col” to discuss minimizing log entries, MUST log final 3326 states, and MAY omit intermediate states (e.g., from ‘resetNMI’) 3327 - revised section 7.3.9 “system-configured-printers” to add Table 9 of member attributes 3328 - revised section 7.3.10 “system-configured-resources” to add Table 10 of member 3329 attributes 3330 - revised section 7.3.11 “system-configured-subunits” to add Table 11 of member attributes 3331 - deleted section 7.3.9.8 “queued-job-count” from “system-configured-printers” (too much 3332 detail without much utility) 3333 - revised section 7.7.3 “date-time-at-installation” and section 7.7.21 “time-at-installation” to 3334 note analogy to analogy to “date-time-at-processing” and “time-at- processing” Job 3335 attributes 3336 - revised section 7.7.11 “resource-state” to add comment suggesting new first class state 3337 of ‘installed’ (follows ‘active’) to show up in “system-configured-resources” summary 3338 3339

17.9 6 July 2016 3340

- Interim draft – changes per IPP WG review on 27 June 2016 3341 - global – accepted all changes before section 7.3.4 power-state-capabilities-col 3342 - global – added many comments with design choice notes 3343 - global – replaced “*word*” with “word” in BOLD for consistency 3344 - global – revised all System, Printer, and Resource status attribute definitions to use 3345 “identifies” or “contains” instead of “specifies” (since status attributes always report values 3346

rather than allowing them to be set) 3347 - global – changes all power state attributes to be (type1 keyword) in order to disallow any 3348 vendor unique extension keywords 3349 - global – corrected references to former section 7.2.7.7 power state definitions to section 3350 7.2.1 Power States and Policies 3351 - revised section 5.3 System State Attributes and Table 2 to rename “power-monitor-col” to 3352 “power-state-monitor-col” and combine with former “power-general-col” and “power-3353

Page 112: The Printer Working GroupThe Printer Working Group 29 November 2016 Working Draft Copyright © 2014-2016 The Printer Working Group. All rights reserved. IPP System Service v1.0 (SYSTEM)

Working Draft – IPP System Service v1.0 (SYSTEM) 29 November 2016

Page 112 of 126 Copyright © 2014-2016 The Printer Working Group. All rights reserved.

meters-col” 3354 - revised section 5.4 System Operations and Table 3 to remove document references on 3355 “<none>” operation columns and add appropriate footnotes 3356 - revised section 5.6 Resource Description Attributes and Table 4 to delete “resource-3357 string-version” and “resource-version” 3358 - revised section 5.7 Resource Status Attributes and Table 5 to add “date-time-at-installed” 3359 “time-at-installed”, “resource-string-version”, and “resource-version” 3360 - revised section 5.7 Resource Status Attributes and Table 5 to add “resource-owner-col”, 3361 “resource-string-version”, and “resource-version” and appropriate footnotes 3362 - revised section 5.7 Resource Status Attributes and Table 5 to remove document 3363 references on “<none>” operation columns and add appropriate footnotes 3364 - added section 5.9 Printer Status Attributes and Table 7 for “printer-config-changes” and 3365 “printer-service-type” 3366 - revised section 6.2 Create-Printer, section 6.3 Create-Resource, and section 7.1 System, 3367 Printer, and Resource Operation Attributes to add “requesting-user-vcard” attribute for use 3368 in setting “printer-owner-col” and “resource-owner-col” description attributes 3369 - added section 7.2.1 Power States and Policies to define all power states (including 3370 examples of their typical effect on System activities), their relationships to DMTF CIM and 3371 ACPI, their order of power consumption based on DMTF CIM, and examples of their usage 3372 (in power policies and in operations such as Restart-System) 3373 - revised section 7.2.8.2 event-name to replace vendor name ‘AcmeCrackedCrock’ with 3374 ‘ExampleEventName’ 3375 - revised section 7.2.24 xri-supported member attributes to reference [RFC3380] and use 3376 corresponding member attribute names 3377 - revised sections 7.2.x power-calendar-policy-col, power-event-policy-col, and power-3378 timeout-policy-col to add commented examples 3379 - revised section 7.3.2.4 power-state-message to remove ‘959’, ‘960’, etc. from cut-and-3380 paste from PDF source and add complete example for system shutdown 3381 - revised section 7.3.5 power-state-monitor-col to include all attributes from former “power-3382 general-col” and “power-meters-col” collections except for “power-peak-watts” and 3383 “previous-month-kwh” and to rename “can-request-power-states” to “valid-request-power-3384 states” (for clarity) 3385 - revised section 7.3.5.6 power-state-message to add complete example for system 3386 shutdown 3387 - revised section 7.3.11 system-configured-subunits to add all member attributes per PWG 3388 MFD Model and PWG Imaging System State and Counter MIB v2 3389 - revised section 7.6 Resource Description Attributes to add “resource-owner-col” and 3390 delete “resource-string-version” and “resource-version” 3391 - revised section 7.7 Resource Status Attributes to add “date-time-at-installed”, “time-at-3392 installed”, “resource-string-version”, and “resource-version” 3393 - revised section 7.7.14 resource-state-reasons to add ‘installed’ (others are still TBD) 3394 - revised section 14.1 Normative References to add [ACPI], DMTF [DSP1027], and 3395 [IEEE1621] for power state definitions and semantics and various RFCs and PWG specs 3396 for other references 3397 - TODO: Design and define “system-totals” as a subset of [PWG5108.06] 3398

Page 113: The Printer Working GroupThe Printer Working Group 29 November 2016 Working Draft Copyright © 2014-2016 The Printer Working Group. All rights reserved. IPP System Service v1.0 (SYSTEM)

Working Draft – IPP System Service v1.0 (SYSTEM) 29 November 2016

Page 113 of 126 Copyright © 2014-2016 The Printer Working Group. All rights reserved.

- TODO: Design and define “resource-authenticator” 3399 - ISSUE: Indices for "system-configured-subunits" for multiple output devices? 3400

17.10 23 June 2016 3401

- Interim draft – further updates for collection attributes 3402 - completed all System, Printer, and Resource attribute definitions, except for “resource-3403 authenticator” and “system-totals” (both need design work) 3404 - kept all redlines from 12 June 2016 version (not yet reviewed) 3405 - revised section 5.3 System Status Attributes and Table 2 to to rename “power-counters-3406 col” (obscure) to “power-state-counters-col” (counts of state transitions), rename “power-3407 monitor-col” (obscure) to “power-state-monitor-col” (current System power state), rename 3408 “power-state-capability-col” (obscure) to “power-state-capabilities-col” (set of booleans and 3409 gauges), and rename “power-state-transition-col” (obscure) to “power-state-transitions-col” 3410 (set of valid stable/ephemeral state transitions) 3411 - revised section 5.6 Resource Description Attributes and Table 4 to add “resource-owner-3412 col” (for consistency w/ System and Printer objects) 3413 - revised section 5.7 Resource Status Attributes and Table 5 to delete “resource-3414 originating-user-name” and “resource-originating-user-uri” (redundant with “resource-3415 owner-col”) 3416 - revised section 7.3 System Status Attributes to add “-col” suffix to all power collection 3417 attributes and add all member attributes 3418 - revised section 7.3 System Status Attributes to rename “power-counters-col” (obscure) to 3419 “power-state-counters-col” (counts of state transitions), rename “power-monitor-col” 3420 (obscure) to “power-state-monitor-col” (current System power state), and rename “power-3421 state-capability-col” (obscure) to “power-state-capabilities-col” (set of booleans and 3422 gauges) 3423 - revised section 7.3.1 power-general-col to add all member attributes 3424 - revised section 7.3.2 power-log-col to add all member attributes, except for 3425 PowerComponentType and PowerComponentReferenceId (used for Subunits in power 3426 model) 3427 - revised section 7.3.3 power-meters-col to add all member attributes 3428 - revised section 7.3.4 power-state-capabilities-col to add all member attributes, except for 3429 CanUseInterfaces (used for Interface subunits in power model) 3430 - revised section 7.3.5 power-state-counters-col to add all member attributes 3431 - revised section 7.3.6 power-state-monitor-col to add all member attributes 3432 - revised section 7.3.7 power-state-transitions-col to add all member attributes 3433 - revised section 7.3.11 system-configured-printers to add all member attributes 3434 - revised section 7.3.12 system-configured-resources to add all member attributes 3435 - revised section 7.6 Resource Description Attributes to define all group attributes 3436 - revised section 7.6 Resource Description Attributes to add “resource-owner-col” (for 3437 consistency w/ System and Printer objects 3438 - revised section 7.7 Resource Status Attributes to define all group attributes, except for 3439 “resource-authenticator” (hash/signature for verification of Resource data) as this needs 3440 some design discussion 3441 - revised section 7.7 Resource Status Attributes to delete “resource-originating-user-name” 3442

Page 114: The Printer Working GroupThe Printer Working Group 29 November 2016 Working Draft Copyright © 2014-2016 The Printer Working Group. All rights reserved. IPP System Service v1.0 (SYSTEM)

Working Draft – IPP System Service v1.0 (SYSTEM) 29 November 2016

Page 114 of 126 Copyright © 2014-2016 The Printer Working Group. All rights reserved.

and “resource-originating-user-uri” (redundant with “resource-owner-col”) 3443 - TODO: Design and define “system-totals” as a subset of [PWG5108.06] 3444 - TODO: Design and define “resource-authenticator” 3445

17.11 12 June 2016 3446

- Interim draft – changes per IPP WG review on 9 May 2016 3447 - accepted all previous changes through end of section 7.3 System Status Attributes 3448 - revised section 5.2 System Description Attributes and Table 1 to clarify note 4 about Set-3449 System-Attributes 3450 - revised section 5.2 System Description Attributes and Table 1 to clarify note 6 about Set-3451 System-Attributes and change “equivalent” to “analogous” and add full title of [RFC3380]. 3452 - revised section 5.2 System Description Attributes and Table 1 to add “resource-settable-3453 attributes-supported” and corresponding new note 7 (for consistency w/ System and 3454 Printer objects) 3455 - revised section 5.3 System Status Attributes and Table 2 to change to “<none>[8]” for 3456 system-state-change-[date-time|time] 3457 - revised section 5.3 System Status Attributes and Table 2 to clarify note 8 about 3458 configuration and state changes 3459 - revised section 5.3 System Status Attributes and Table 2 to clarify notes 7 and 9 and add 3460 full title of [PWG5100.13] 3461 - revised section 5.4 System Operations and Table 3 to move note [7] reference to correct 3462 column 3463 - revised section 5.8 Printer Description Attributes and Table 6 to change “printer-owner” to 3464 “printer-owner-col” and add note 1 about Set-Printer-Attributes coherence of “owner-uri” 3465 and “owner-vcard” member attributes. 3466 - revised section 6.2 Create-Printer to delete redundant “and”, missing hyphen in “print-3467 color-mode-supported”, and add quotes around attribute names in final note 3468 - revised section 6.14 Get-System-Supported-Values to correct name from “Settable” to 3469 “Supported” and to correct reference to Get-Printer-Supported-Values in [RFC3380]. 3470 - revised section 7.2 System Description Attributes first paragraph to remove redundancy 3471 - revised section 7.2 System Description Attributes to add “resource-settable-attributes-3472 supported” (for consistency w/ System and Printer objects) 3473 - accepted all changes in section 7.2.7 power-calendar-policy-col and put all member 3474 attributes in alphabetical order, clarified first values (zero or one), and removed 3475 redundancy in descriptions 3476 - renamed section 7.2.7.1 policy-id to calendar-id for consistency with [PWG5106.4] 3477 - revised section 7.2.7.3 day-of-week (now integer) to delete previous keyword values 3478 - revised section 7.2.7.7 request-power-state to separate stable states and ephemeral 3479 (transitional) states into two lists of standard keywords for clarity 3480 - revised section 7.2.8 power-event-policy-col to add all member attributes 3481 - revised section 7.2.9 power-event-policy-col to add all member attributes 3482 - revised section 7.2.24 system-xri-supported to add all member attributes 3483 - revised section 7.4 Printer Description Attributes first paragraph to remove redundancy 3484 - revised section 7.4 Printer Description Attributes to add “printer-owner-col”, “owner-uri”, 3485 and “owner-vcard” attributes 3486

Page 115: The Printer Working GroupThe Printer Working Group 29 November 2016 Working Draft Copyright © 2014-2016 The Printer Working Group. All rights reserved. IPP System Service v1.0 (SYSTEM)

Working Draft – IPP System Service v1.0 (SYSTEM) 29 November 2016

Page 115 of 126 Copyright © 2014-2016 The Printer Working Group. All rights reserved.

- revised section 7.5 Printer Status Attributes to add “printer-config-changes” attribute per 3487 PWG F2F review on 26 April 2016 3488 - revised section 7.6 Resource Description Attributes first paragraph to remove 3489 redundancy 3490 - revised section 14.1 Normative References to correct reference to PWG 5100.12 per 3491 PWG F2F review on 26 April 2016 3492

17.12 9 May 2016 3493

- Interim draft – changes per PWG F2F review on 26 April 2016 3494 - revised section 7.2.7.1 to rename “power-calendar-policy-id” to “policy-id” 3495 - revised section 7.2.7.2 request-power-state to delete ‘other’ (invalid) and ‘unknown’ (out-3496 of-band value) 3497 - revised section 7.2.7.4 day-of-week to change syntax to “integer(1:7)” 3498 - revised section 7.2.7.5 month to change syntax to “integer(1:12)” 3499 - revised section 7.2.7.6 to rename “day” to “day-of-month” and correct integer syntax 3500 - revised section 7.2.7.7 hour and section 7.2.6.8 minute to correct integer syntax 3501 - revised section 7.2.7.7 hour to add note about local time zone changes (summer time to 3502 standard time or vice versa) and the possibility that a given hour will not occur. 3503

17.13 8 May 2016 3504

- Interim draft – changes per PWG F2F review on 26 April 2016 3505 - revised section 3.2.5 Bootstrap Client Access to Default Print Service to use 3506 “ipp://printer12.example.com/ipp/print” for discovered default Print Service 3507 - revised section 5 IPP System and Resource Objects and Operations to add note about tables 3508 listing only top-level attributes and forward reference collection member attributes in section 7 3509 - revised section 5.2 System Description Attibutes Table 1 to add “system-settable-3510 attributes-supported”, “system-strings-languages-supported”, and “system-strings-uri” and 3511 delete “system-health” 3512 - revised section 5.2 System Description Attibutes Table 1 to rename “system-owner-uri” to 3513 “system-owner-col” (collection) and make it REQUIRED and delete “system-owner-vcard” 3514 - revised section 5.2 System Description Attibutes Table 1 to add “-col” suffix to all power 3515 model collection attributes for consistency 3516 - revised section 5.3 System Status Attributes Table 2 to also add “-col” suffix to all power 3517 model collection attributes for consistency 3518 - revised section 5.4 System Operations Table 3 to add Get-System-Supported-Values 3519 - revised section 6.2 Create-Printer to note that Subunits are also associated by configured 3520 service capabilities – intent and not explicit listing 3521 - revised section 6 IPP Operations to add REQUIRED Get-System-Supported-Values for 3522 newly REQUIRED Set-System-Attributes operation 3523 - revised section 6 IPP Operations definition of Set-System-Attributes to include forward 3524 reference to “system-strings-languages-supported” and “system-strings-uri” for Client 3525 localization. 3526 - revised section 7.2 System Description Attributes to add “system-settable-attributes-3527

Page 116: The Printer Working GroupThe Printer Working Group 29 November 2016 Working Draft Copyright © 2014-2016 The Printer Working Group. All rights reserved. IPP System Service v1.0 (SYSTEM)

Working Draft – IPP System Service v1.0 (SYSTEM) 29 November 2016

Page 116 of 126 Copyright © 2014-2016 The Printer Working Group. All rights reserved.

supported”, “system-strings-languages-supported”, and “system-strings-uri” 3528 and add “-col” suffix to all power model collection attributes for consistency and delete 3529 “system-health” 3530 - revised section 7.2.7 power-calendar-policy-col to change all enums to keywords 3531 - revised section 7.2.19 system-owner-col to changed to REQUIRED 3532 - revised section 7.3.10 system-config-changes to clarify semantics and state a System 3533 MUST reset to zero when a power cycle occurs (from ‘off’ to ‘on’). 3534

17.14 25 April 2016 3535

- Interim draft – changes per IPP WG review on 29 February 2016 3536 - global – accepted all redlines from previous versions up to end of section 7.3 3537 - global – changed “out-of-band value defined in [RFC2910]” to “out-of-band value defined 3538 in [RFC2911]” 3539 - revised section 2.3 Printing Terminology to add references for every definition 3540 - revised section 3.2.5 Bootstrap Client Access to Default Print Service to use explicit IPv4 3541 address to query the System Service listening to port 631 for the default print service URI 3542 - revised section 5.2 System Description Attibutes Table 1 to rename “natural-language-3543 supported” to “generated-natural-language-supported” for consistency with RFC 2911 3544 - revised section 5.2 System Description Attibutes Table 1 to add “system-current-time” 3545 - revised section 5.3 System Status Attributes Table 2 to add system-config-change-date-3546 time, system-config-change-time, system-state-change-date-time, and system-state-3547 change-time 3548 - revised section 5.3 System Status Attributes Table 2 to delete “system-current-time” 3549 - revised section 5.3 System Status Attributes Table 2 to to rename “power-support” to 3550 “power-state-capability” and “power-transition” to “power-state-transition” for clarity 3551 - revised section 7.2 System Description Attribues to explicitly mention Set-System-3552 Attributes operation and “system-settable-attributes-supported” 3553 - revised section 7.2.4 natural-language-configured to restrict scope to only System-3554 generated attribute values. 3555 - revised section 7.2.5 to rename “natural-language-supported” to “generated-natural-3556 language-supported” for consistency with RFC 2911 and restored text about a System 3557 accepting any natural language value. 3558 - revised section 7.2.7 power-calendar-policy to define power-calendar-policy-col and all 3559 member attributes 3560 - revised section 7.2.10 system-default-printer-uri and section 6.2 Create-Printer to clarify 3561 that when the first Print Service is created on a System, the System MUST set the value of 3562 “system-default-printer-uri” 3563 - revised section 7.2.12 system-geo-location to delete trailing fragment 3564 - revised section 3565 - added section 7.2.18 system-owner (collection) to include “system-owner-uri” and 3566 “system-owner-vcard” and provide extensibility for additional System Owner metadata 3567 - revised section 7.3 System Status Attributes to add “system-config-change-date-time”, 3568 “system-config-change-time”, “system-state-change-date-time”, and “system-state-change-3569 time” 3570 - revised section 7.3.6 to rename “power-support” to “power-state-capability” for clarity 3571

Page 117: The Printer Working GroupThe Printer Working Group 29 November 2016 Working Draft Copyright © 2014-2016 The Printer Working Group. All rights reserved. IPP System Service v1.0 (SYSTEM)

Working Draft – IPP System Service v1.0 (SYSTEM) 29 November 2016

Page 117 of 126 Copyright © 2014-2016 The Printer Working Group. All rights reserved.

- revised section 7.3.7 to rename “power-transition” to “power-state-transition” for clarity 3572 - revised section 7.3.8 system-config-changes to clarify that the System MUST increment 3573 the value each time an attribute value is changed with a Set-System-Attributes operation. 3574 - moved section 7.3.12 system-current-time to section 7.2 System Description Attributes 3575 3576

17.15 28 February 2016 3577

- Interim draft – changes per PWG F2F review on 10 February 2016 3578 - global – kept some redlines from previous versions for review by IPP WG 3579 - global – changed “as described in [xxx]” to “defined in [xxx]” for clarity 3580 - global – manually changed lowercase “ system Administrator” to titlecase “ 3581 Administrator”, lowercase “ operator” to titlecase “ Operator”, and standalone “ user” or “ 3582 User” to titlecase “ End User” 3583 - global – changed “specifies [a/the] list of” to simply “lists” 3584 - global – accepted all redlines in section 7.1 System, Printer, and Resource Operation 3585 Attributes, section 7.2 System Description Attributes, and section 7.3 System Status 3586 Attributes up through section 7.3.13 system-health before making current changes for 3587 readability 3588 - revised section 2.3 Printing Terminology to add definitions of Administrator, End User, 3589 and Operator from RFC 2911bis (taken from RFC 2567) and Delivery Method, Event 3590 Notification, Notification, Owner, Resource, and Subscription (taken from PWG 5108.01, 3591 PWG 5108.03, or RFC 3995) 3592 - added section 3.2.5 Bootstrapping Client Access to Default Print Service and added 3593 cross-reference to section 7.2.10 system-default-printer-uri 3594 - revised section 7.1 System, Printer, and Resource Operation Attributes, section 7.2 3595 System Description Attributes, and section 7.3 System Status Attributes to attach second 3596 sentence (semantic equivalence or analogy) to first sentence for clarity 3597 - revised sections 7.2.7, 7.2.8, and 7.2.9 to add “-policy” suffix to “power-calendar”, “power-3598 event”, and “power-timeout” collection System Description attributes 3599 - revised section 7.2.10 system-default-printer-uri to change syntax to “(uri | no-value”) 3600 - revised section 7.2.11 system-geo-location to change syntax to “(uri | unknown)” 3601 - revised section 14.2 Informative References to add RFC 2567 3602

17.16 17 January 2016 3603

- Interim draft – changes per IPP WG reviews on 7 December 2015 and 4 January 2016 3604 - global – kept most redlines from previous versions for review by IPP WG 3605 - global – revised section 6 IPP Operations to delete trailing document references after 3606 every operation request and operation response attribute for clarity 3607 - global – revised section 7.1 System, Printer, and Resource Operation Attributes to further 3608 simplify and clarify filter text 3609 - revised section 5.4 System Operations and section 6 IPP Operations to delete redundant 3610 and ambiguous Restart-All-Printers and Restart-One-Printer operations (use Shutdown 3611 and Startup instead) 3612

Page 118: The Printer Working GroupThe Printer Working Group 29 November 2016 Working Draft Copyright © 2014-2016 The Printer Working Group. All rights reserved. IPP System Service v1.0 (SYSTEM)

Working Draft – IPP System Service v1.0 (SYSTEM) 29 November 2016

Page 118 of 126 Copyright © 2014-2016 The Printer Working Group. All rights reserved.

- revised section 6 IPP Operations to add note that all operation requests and responses 3613 use standard operation parameters defined in [RFC2911] and encoded in [RFC2910] 3614 - revised section 6 IPP Operations definition of Get-Printers to add note that it is an End 3615 User operation and does NOT require Client authentication, but MAY be encrypted and 3616 another note that requested-attributes is limited to the LDAP Printer Schema [RFC7612] 3617 and if request-attributes is missing, then the System MUST only return printer-uri-3618 supported, uri-authentication-supported, and uri-security-supported. 3619 - revised section 6 IPP Operations definition of Get-Resources to add note that it is an 3620 Administrator operation and requires Client authentication. 3621 - revised section 6 IPP Operations definition of Get-Printers to change operation attribute 3622 printer-service-type to ‘1setOf’ (for Get-Printers) 3623 - revised section 6 IPP Operations definition of Startup-All-Printers and Startup-One-3624 Printer to remove reference to RFC 3998 Startup-Printer 3625 - revised section 6 IPP Operations definition of Create-Printer, Create-Resources, Get-3626 Printers, Startup-All-Printers responses to delete status-code (parameter, not an attribute) 3627 and move attributes-charset/attributes-natural-language before status-message 3628 - revised section 7.1 System, Printer, and Resource Operation Attributes to delete 3629 redundant printer-service-types, to change operation attribute printer-service-type to 3630 ‘1setOf’ (for Get-Printers), and to move values to section 7.7 System Status Attributes 3631 printer-service-type 3632 - revised section 7.1 System, Printer, and Resource Operation Attributes to references to 3633 Create-Resource/Send-Resource-Data when appropriate 3634 - revised section 7.1 System, Printer, and Resource Operation Attributes resource-k-octets 3635 to correct forward reference to section 7.7 3636 - - revised section 7.1 System, Printer, and Resource Operation Attributes which-printers 3637 to clarify ‘all’ and ‘stopped’ and add ‘shutdown’ and ‘testing’ to harmonize with MFD Model 3638 and IETF Host Resources MIB [RFC2790] 3639

17.17 6 December 2015 3640

- Interim draft – new content after IPP WG review on 5 October 2015 3641 - global – kept all redlines from previous versions for review by IPP WG 3642 - revised section 6 IPP Operations to define Startup-All-Printers (prototype for all other 3643 Xxx-All-Printers operation attributes), Startup-One-Printer (prototype for all other Xxx-One-3644 Printer operation attributes), Create-Printer, Create-Resource, Delete-Printer, Disable-All-3645 Printers, Enable-All-Printers, Get-Printer-Attributes, Pause-All-Printers, Restart-All-3646 Printers, Restart-One-Printer, Resume-All-Printers, Shutdown-All-Printers, Shutdown-One-3647 Printer 3648 - revised section 7.7 Resource Status Attributes to define resource-state (to be reviewed 3649 by IPP WG since the Resource object has unique states) 3650

17.18 2 November 2015 3651

- Interim draft – new content after IPP WG review on 5 October 2015 3652 - global – kept all redlines from previous version for review at PWG November F2F 3653

Page 119: The Printer Working GroupThe Printer Working Group 29 November 2016 Working Draft Copyright © 2014-2016 The Printer Working Group. All rights reserved. IPP System Service v1.0 (SYSTEM)

Working Draft – IPP System Service v1.0 (SYSTEM) 29 November 2016

Page 119 of 126 Copyright © 2014-2016 The Printer Working Group. All rights reserved.

- revised section 7.1 System, Printer, and Resource Operation Attributes to add Resource 3654 operation attributes resource-category, resource-format, resource-id, resource-job-id, 3655 resource-k-octets, resource-printer-uri, resource-state, and resource-type 3656 - revised section 7.3 System Status Attributes to add power-counters, power-general, 3657 power-log, power-meters, power-monitor, power-support, power-transition, system-config-3658 changes, system-configured-printers, system-configured-resources, system-configured-3659 subunits, system-current-time, system-health, system-serial-number, system-state, 3660 system-state-messages, system-state-reasons, system-totals, system-up-time, and 3661 system-uuid 3662

17.19 18 October 2015 3663

- Interim draft – changes per IPP WG review on 5 October 2015 3664 - global - accepted all changes up to and through section 6.9 (from previous review) 3665 - revised section 7.1 title to “System, Printer, and Resource Operation Attributes” to allow 3666 for Printer operation attributes in future such as “printer-service-type” for Create-Printer 3667 - revised sections 7.1.x to change “filters the set of Printers” to “specifies a filter for the 3668 applicable Printers” 3669 - added section 7.1.3 printer-service-type for Create-Printer operation 3670 - revised section 7.1.4 printer-service-types to change “Service Type attribute” to “Service 3671 Type element”, add forward reference to “printer-service-type” in section 7.5 Printer Status 3672 Attributes, and add emailin, emailout, and faxin (references to PWG 5108.01 and RFC 3673 2707) 3674 - revised section 7.1.5 resource-id to add forward reference to “resource-id” in section 7.7 3675 Resource Status Attributes 3676 - revised section 7.1.11 system-uri to change “attribute the target” to “attribute specifies the 3677 target” 3678 - revised section 7.1.12 which-printers to change "This attribute and is" to “This attribute is” 3679 (drop “and”) 3680 - revised section 14 References to accept all changes and add PWG Job Monitoring MIB 3681 (RFC 2707) 3682

17.20 20 September 2015 3683

- Interim draft - changes per PWG F2F review on 31 August 2015 3684 - global - accepted all changes up to and through section 6.9 (from previous review) 3685 - revised Abstract and section 1 Introduction to add explicit references to Cloud & Infra 3686 - deleted section 5.2 System Operation Attributes and section 5.7 Resource Operation 3687 Attributes 3688 - added section 5.8 Printer Description Attributes and table for “printer-owner-[uri|vcard]” 3689 - revised section 6.9.1 Get-Printers Request to make “attributes-charset” and “attributes-3690 natural-language” REQUIRED for Client (per RFC 2911) 3691 - revised section 6.9.1 Get-Printers Request to add note to “requested-attributes” about the 3692 primary Printer attributes in the IETF LDAP Printer Schema (RFC 7612) 3693

Page 120: The Printer Working GroupThe Printer Working Group 29 November 2016 Working Draft Copyright © 2014-2016 The Printer Working Group. All rights reserved. IPP System Service v1.0 (SYSTEM)

Working Draft – IPP System Service v1.0 (SYSTEM) 29 November 2016

Page 120 of 126 Copyright © 2014-2016 The Printer Working Group. All rights reserved.

- revised section 7,2 System Description Attributes to add new attribute definitions 3694 - revised section 14.1 Normative References to add references for new attribute definitions 3695

17.21 31 August 2015 3696

- Interim draft – changes per PWG F2F review on 10 August 2015 3697 - global – deleted redundant “new” and “now” and “below” in several dozen places 3698 - revised Table of Contents to delete List of Figures (all now deleted in this version) 3699 - revised section 2.2 Protocol Role Terminology to correct “Infrastructure System” from 3700 “PWG5109.CLOUD” to “PWG5109.1”, add “Printer”, and correct typos in “Protocol 3701 Endpoint” 3702 - revised section 2.2 Protocol Role Terminology to add references to IPP INFRA (PWG 3703 5100.18) to “Infrastructure Printer”, “Infrastructure System”, and “Proxy” 3704 - revised section 2.3 Printing Terminology to add “Printer” (synonym for “Imaging Service”) 3705 with RFC 2911 reference 3706 - revised section 3.1 Rationale for the IPP System Service to correct title of IPP/2.0 3707 - revised section 3.1 Rationale for the IPP System Service to add paragraphs for IPP 3708 INFRA [PWG5100.18] and Cloud Imaging Model [PWG5109.1] 3709 - revised section 5 IPP System and Resource Objects and Operations for clarity and 3710 deleted redundant Figure 1 through Figure 4 (PWG SM abstract objects) and text 3711 - revised section 5.1 System Attribute Groups and section 5.6 Resource Attribute Groups 3712 titles to be singular (only one of each) 3713 - revised section 5.2 System Operation Attributes and section 5.7 Resource Operation 3714 Attributes to be just forward references to section 7.1 System and Resource Operation 3715 Attributes 3716 - revised section 5.3 System Description Attributes Table 1 and section 7.2 System 3717 Description Attributes to add “system-default-printer-uri” to support the enhanced “Get-3718 Printer-Attributes” operation 3719 - revised and reordered (alphabetized) section 5.3 System Description Attributes Table 1 3720 and section 7.2 System Description Attributes to insert “system” prefix on several attributes 3721 for consistency with Printer object in RFC 2911 3722 - revised and reordered (alphabetized) section 5.4 System Status Attributes Table 2 and 3723 section 7.3 System Status Attributes to insert “system” prefix on several attributes and add 3724 “system-up-time”for consistency with Printer object in RFC 2911 3725 - revised section 5.5 System Operations Table 3 to add missing references and change 3726 “Cancel-Subscriptions” and “Renew-Subscriptions” to singular per RFC 3995 3727 - revised section 5.5 System Operations Table 3 to update note for Create-Resource and 3728 add note for Create-Printer referring to the semantically equivalent Create operation in ISO 3729 10175-3 3730 - revised section 5.5 System Operations Table 3 to add note that Register-Output-Device 3731 is semantically equivalent to Register-System in PWG 5109.1 (with differences explained) 3732 - revised section 5.9 Resource Status Attributes Table 5 to add note for “resource-id” 3733 analogous to “job-id” in RFC 2911. 3734 - revised section 5.9 Resource Status Attributes Table 5 to add note for “resource-k-octets” 3735 analogous to “job-k-octets” in RFC 2911. 3736 - revised section 5.9 Resource Status Attributes Table 5 to add notes for “resource-job-id” 3737

Page 121: The Printer Working GroupThe Printer Working Group 29 November 2016 Working Draft Copyright © 2014-2016 The Printer Working Group. All rights reserved. IPP System Service v1.0 (SYSTEM)

Working Draft – IPP System Service v1.0 (SYSTEM) 29 November 2016

Page 121 of 126 Copyright © 2014-2016 The Printer Working Group. All rights reserved.

and “resource-printer-uri” which are requried for Job and Printer scoped Resource objects, 3738 respectively 3739 - revised section 5.9 Resource Status Attributes Table 5 to add “resource-authenticator” for 3740 verification of Resource data after a Send-Resource-Data operation 3741 - deleted redundant sections 6.x Cancel-Subscription, Get-Notifications, Get-Printer-3742 Attributes, and Renew-Subscription and moved to sections 8.x for existing operations with 3743 new semantics 3744 - revised section 6.x Get-Printers to change “selected” to “matching” and make sure that 3745 each attribute has a colon (:) at the end and put the reference(s) at the end of each 3746 attribute name 3747 - revised section 6.x Get-Printers to use “the Client [MUST|SHOULD|MAY] supply and the 3748 System MUST support” for clarity – “OPTIONALLY” is NOT a defined conformance 3749 keyword 3750 - revised section 6.x Get-Printers and section 7.1.x “printer-geo-location” to remove 3751 ‘unknown’ value (never appropriate in this specification) 3752 - revised section 6.x Get-Printers and section 7.1.x “printer-service-types” to change 3753 singular to plural (i.e., multiple printers can be chosen by the filter) 3754 - revised sections 6.x Get-Resources and Get-Resource-Attributes to note that they are 3755 modeled on Get-Jobs and Get-Job-Attributes with default returns of “resource-id” and 3756 “resource-state” 3757 - revised section 6.x Get-System-Attributes to note that it is modeled on Get-Printer-3758 Attributes with default return of all System attributes 3759 - revised section 7.1 title to be “System and Resource Operation Attributes” (since some 3760 apply to operations on both objects) 3761 - revised section 7.1.x to change “selects” to “filters” and “selected” to “matching” for clarity 3762 - added sections 7.1.x for “resource-category”, “resource-id”, “resource-job-id”, “resource-3763 printer-uri”, “resource-state”, and “resource-type” operation attributes 3764 - revised section 14.1 Normative References to update IPP/2.0 title and reference (work-in-3765 progress) and add IPP INFRA (PWG 5100.18-2015) and Cloud Imaging Model (PWG 3766 5109.1-2015) 3767 3768

17.22 10 August 2015 3769

- Interim draft – changes per PWG F2F review on 29 April 2015 3770 - global – added working notes from PWG F2F at appropriate operations and attributes to 3771 capture discussion and agreements 3772 - revised Abstract and section 1 Introduction to say “support registration of an IPP System, 3773 through its IPP Proxy, with one or more Cloud Imaging Systems” 3774 - revised section 1.1 Rationale for two IPP Protocol Endpoints to titlecase “Protocol 3775 Endpoint” in first paragraph 3776 - revised section 2.2 Protocol Role Terminology, to add “Endpoint” (whole computing 3777 device) from IETF NEA Overview [RFC5209], clarify “Infrastructure System”, and rewrite 3778 “Protocol Endpoint” (an application interface) based on standard IETF usage. 3779 - revised section 3.4 Out-of-Scope to add support for any non-IPP Cloud Imaging System. 3780 - revised section 5.3 System Description Attributes to delete issue about cardinality of 3781

Page 122: The Printer Working GroupThe Printer Working Group 29 November 2016 Working Draft Copyright © 2014-2016 The Printer Working Group. All rights reserved. IPP System Service v1.0 (SYSTEM)

Working Draft – IPP System Service v1.0 (SYSTEM) 29 November 2016

Page 122 of 126 Copyright © 2014-2016 The Printer Working Group. All rights reserved.

“owner-uri” and “owner-vcard” (they are single-valued) and to remove Register-System 3782 operation from Table 1 Note 4 3783 - revised section 5.5 System Operations Table 3 to replace “Cancel-Xxx-Subscriptions” 3784 with “Cancel-Subscriptions” and “Renew-Xxx-Subscriptions” with “Renew-Subscriptions” 3785 and reference RFC 3995 3786 - revised section 5.5 System Operations Table 3 to delete “Renew-Resource”, add “Get-3787 Subscriptions” and “Get-Subscription-Attributes, and replace “Get-Xxx-Notifications” with 3788 “Get-Notifications” and reference RFC 3996 3789 - revised section 5.5 System Operations Table 3 to add new “Install-Resource” operation 3790 to activate (for use) firmware, software, fonts, etc. after Create-Resource and Send-3791 Resource-Data have completed 3792 - added section 5.6 Resource Attribute Groups 3793 - added section 5.7 Resource Operation Attributes 3794 - added section 5.8 Resource Description Attributes and Table 4 3795 - added section 5.9 Resource Status Attributes and Table 5 3796 - revised sections 6.x to align with current set of operations 3797 - added section 6.x Get-Printers in complete detail for review 3798 - added section 7 New IPP Attributes and sections 7.x for all System and Resource 3799 operation, description, and status attributes 3800 - revised sections 14.x to add or update several references 3801

17.23 28 April 2015 3802

- Interim draft – changes per IPP WG review on 30 March 2015 3803 - global – replaced “IPP System Control Service” with “IPP System Service” (but NOT in 3804 the abstract PWG equivalent), per IPP WG review 3805 - global – replaced titlecase “Object” with lowercase “object” (except in section title or PWG 3806 SM spec titles), per IPP WG review 3807 - revised Abstract to change “[PWG510x.y]” document references to “(PWG 510x.y)”, 3808 consistent with IETF RFC styles and change “Cloud Imaging services” to “Cloud Imaging 3809 Systems”, per IPP WG review 3810 - revised section 1 Introduction to replace with expanded scope text from Abstract, per IPP 3811 WG review 3812 - revised section 1.1 Rationale for two IPP Protocol Endpoints to clarify that a conforming 3813 IPP System Service supports both a URI for an IPP System object and a separate URI for 3814 the implementation defined “default” IPP Printer returned from Get-Printer-Attributes, per 3815 IPP WG review 3816 - revised section 2.2 Protocol Role Terminology to add definitions of Infrastructure System 3817 and Protocol Endpoint, remove the “IPP” prefix from the definitions of Client, Infrastructure 3818 Printer, Proxy, and System terms, and enhance the definition of Proxy, per IPP WG review 3819 - revised section 3.1 Rationale for the IPP System Service, to replace period “.” with semi-3820 colon “;” in non-terminal members of both numbered lists, per IPP WG review 3821 - revised section 5.3 System Description Attributes in Table 1 to change owner-uri from 3822 RECOMMENDED to CONDITIONALLY REQUIRED and owner-vcard from OPTIONAL to 3823 CONDITIONALLY REQUIRED for systems that support the Set-System-Attributes and 3824 Register-System operations and added issue about possible multi-valued ordered sets for 3825

Page 123: The Printer Working GroupThe Printer Working Group 29 November 2016 Working Draft Copyright © 2014-2016 The Printer Working Group. All rights reserved. IPP System Service v1.0 (SYSTEM)

Working Draft – IPP System Service v1.0 (SYSTEM) 29 November 2016

Page 123 of 126 Copyright © 2014-2016 The Printer Working Group. All rights reserved.

multiple owners (whose semantics are presently undefined in any PWG spec), per IPP WG 3826 review 3827 - revised section 5.4 System Status Attributes in Table 2, note (7) to delete sentence about 3828 already removed device-uuid attribute, per IPP WG review 3829 - revised section 5.5 System Operations to add Create/Cancel/Renew-Resource-3830 Subscriptions, Create/Cancel/Renew-System-Subscriptions, Get-Notifications, Get-Printer-3831 Attributes (for implementation-defined “default” Printer), RestartSystem (for restart with 3832 existing or new firmware Resource for remediation based on health monitoring), and to 3833 divide original StoreResource into Create-Resource and Send-Resource-Data (to correct 3834 scope ambiguity of original PWG Resource Service operation), per IPP WG review 3835 - added (blank placeholder) section 10.2 Conformance Requirements for Infrastructure 3836 Systems, per IPP WG review 3837 - revised section 11 Internationalization Considerations to add new Unicode boilerplate 3838 from JDFMAP, per IPP WG review 3839 - revised section 12 Security Considerations to add new Unicode boilerplate from 3840 JDFMAP, per IPP WG review 3841 - revised section 14.1 Normative References and section 14.2 Informative References to 3842 add new Unicode boilerplate specs from JDFMAP, per IPP WG review 3843 - TODO – add various spec references, per IPP WG review 3844

17.24 15 March 2015 3845

- Interim draft – changes per PWG F2F and IPP WG reviews on 4 November 2014, 17 3846 November 2014, 19 January 2015, and 3 February 2015 3847 - revised title to “IPP System Service”, per IPP WG review on 4 November 2014 3848 - revised Abstract to include management and status of Services, Subunits, and 3849 Resources and Cloud registration extensions, per IPP WG review on 4 November 2014 3850 - revised section 1.1 Rationale for two IPP Protocol Endpoint to mention of inclusion of 3851 original Get-Printer-Attributes that automatically selects the implementation-defined or site-3852 defined “default” IPP Printer object for the convenience of existing IPP Clients, per IPP WG 3853 review on 4 November 2014 3854 - revised section 2.2 Protocol Role Terminology to add definitions of Infrastructure Printer 3855 and IPP Proxy from IPP Shared Infrastructure Extensions, per IPP WG review on 3 3856 February 2015 3857 - revised section 2.3 Printing Terminology to delete Resource Service and revise the 3858 definitions of Spooling Service and Streaming Service, per IPP WG review on 4 November 3859 2014 3860 - revised section 2.3 Printing Terminology to add definitions of Logical Device, Output 3861 Device, and Physical Device from IPP Shared Infrastructure Extensions, per IPP WG 3862 review on 3 February 2015 3863 - renamed section 2.4 from “Acronyms and Organizations” to simply “Abbreviations”, for 3864 consistency with RFC 7472, per RFC Editor on 5 March 2015 3865 - revised section 3.1 Rationale for the IPP System Service to add the Resource Service 3866 functionality (objects, operations, and attributes), per IPP WG review on 4 November 2014 3867 - added new use case in section 3.2.4 Resource Management, per IPP WG review on 4 3868 November 2014 3869

Page 124: The Printer Working GroupThe Printer Working Group 29 November 2016 Working Draft Copyright © 2014-2016 The Printer Working Group. All rights reserved. IPP System Service v1.0 (SYSTEM)

Working Draft – IPP System Service v1.0 (SYSTEM) 29 November 2016

Page 124 of 126 Copyright © 2014-2016 The Printer Working Group. All rights reserved.

- revised section 3.4 Out-of-Scope, to delete creation/deletion of Imaging Services, per IPP 3870 WG review on 3 February 2015 3871 - revised section 3.5 Design Requirements, to add Resource object, per IPP WG review on 3872 4 November 2014 3873 - added section 4.6 Resource Service, to add Resource object, per IPP WG review on 4 3874 November 2014 3875 - revised section 5.1 Attribute Groups to define the system-attributes-tag and resource-3876 attributes-tag, per IPP WG review on 19 January 2015 3877 - revised section 5.2 Operation Attributes to define system-uri and resource-uri, per IPP 3878 WG review on 19 January 2015 3879 - revised title of section 5.3 to System Description Attributes, per IPP WG review on 19 3880 January 2015 3881 - revised section 5.3 System Description Attributes in Table 1 to raise owner-uri from 3882 OPTIONAL to RECOMMENDED, per IPP WG review on 19 January 2015 3883 - revised section 5.3 System Description Attributes to delete redundant original Figure 3 3884 and Figure 4, per IPP WG review on 19 January 2015 3885 - revised title of section 5.4 to System Status Attributes, per IPP WG review on 19 January 3886 2015 3887 - revised section 5.4 to System Status Attributes in Table 2 to delete redundant device-3888 uuid, per IPP WG review on 19 January 2015 3889 - revised section 5.4 to System Status Attributes to delete redundant original Figure 4, 3890 Figure 5, Figure 6, and Figure 7, per IPP WG review on 19 January 2015 3891 - revised section 5.5 System Operations to delete issue about Subscription operations, per 3892 IPP WG review on 3 February 2015 3893 - revised section 5.5 System Operations in Table 3 to add Create/Delete-Printer and 3894 Resource operations, per IPP WG review on 3 February 2015 3895

17.25 2 November 2014 3896

- Interim draft – changes per IPP WG review on 29 September 2014 3897 - corrected typos and wording 3898 - revised cover page and headers to change “IPPSYSTEM” to “SYSTEM”, per IPP WG 3899 review 3900 - globally changed “Imaging Device” to “Imaging System” where appropriate (most 3901 instances), per IPP WG review 3902 - globally changed “[RFC2616]” to “[RFC7230]”, per IPP WG review 3903 - globally changed “[PWG5100.SCAN]” to “PWG5100.17]” and corrected reference in 3904 section 10.1, per PWG approval of IPP Scan Service 3905 - added section 1.1 Rationale for two IPP Protocol Endpoints to explain the reason for 3906 separate URI for System and Printer objects, per IPP WG review 3907 - revised section 2.2 to change title from “Printing Terminology” to “Protocol Roles”, per 3908 IPP WG review 3909 - revised section 2.2 to delete “IPP Printer” (and thus Logical Device and Physical Device 3910 definitions and details) as not applicable to System Control Service and to add “IPP 3911 System”, per IPP WG review 3912 - revised section 2.3 to change title from “Other Terminology” to “Printing Terminology”, per 3913

Page 125: The Printer Working GroupThe Printer Working Group 29 November 2016 Working Draft Copyright © 2014-2016 The Printer Working Group. All rights reserved. IPP System Service v1.0 (SYSTEM)

Working Draft – IPP System Service v1.0 (SYSTEM) 29 November 2016

Page 125 of 126 Copyright © 2014-2016 The Printer Working Group. All rights reserved.

IPP WG review 3914 - moved first sentence of section 2.2 (sources of terms) to section 2.3, per IPP WG review 3915 - revised section 2.3 to add new terms, including “Document”, “FaxOut Job/Service”, “ith”, 3916 “Job”, “Print Job/Service”, “Scan Job/Service”, “Spooling Service”, “Streaming Service”, 3917 “Subunit”, “Transform Job/Service”, per IPP WG review 3918 - revised section 2.3 to improve “Imaging System” definition, per IPP WG review 3919 - revised section 3.1 Rationale to clarify various paragraphs and add numbered lists, per 3920 IPP WG review 3921 - revised section 3.2 Use Cases to clarify various paragraphs, per IPP WG review 3922 - revised section 3.3 to change “TBD” to “There are no exceptions to the use cases defined 3923 in section 3.2”, per IPP WG review 3924 - revised section 3.4 Out of Scope to clarify first sentence, per IPP WG review 3925 - revised section 3.4 Out of Scope to clarify several statements, per IPP WG review 3926 - revised section 3.4 Design Requirements to clarify first sentence, per IPP WG review 3927 - added section 4.5 Document Object, per IPP WG review 3928 - revised section 5.3 System Description to change “READ-ONLY” to “READ-WRITE” 3929 (because Set-System-Attributes was restored in this draft), per IPP WG review and Cloud 3930 Imaging WG recommendations 3931 - revised section 5.4 System Status to clarify the “READ-ONLY” cannot be modified by a 3932 Set-System-Attributes operation, per IPP WG review and Cloud Imaging WG 3933 recommendations 3934 - revised section 5.4 System Status to clarify the meaning of “system-uuid” (SCS), “printer-3935 uuid” (Imaging Service), and “device-uuid” (physical hardware, i.e., network device), per 3936 IPP WG review 3937 - revised section 5.4 System Status Table 2 to change “configured-services” to 3938 “configured-printers”, per IPP WG review 3939 - revised section 5.5 System Operations Table 3 to add back Restart-One-Printer, Startup-3940 One-Printer, Shutdown-One-Printer, and Set-System-Elements, per IPP WG review and 3941 Cloud Imaging WG recommendations 3942 - revised section 6 New IPP Operations to add back Restart-One-Printer, Startup-One-3943 Printer, Shutdown-One-Printer, and Set-System-Elements, per IPP WG review and Cloud 3944 Imaging WG recommendations 3945 - revised section 8.1 title to add “Create-Subscription” operation, per IPP WG review 3946 - revised section 13 to change title from “IANA Considerations” to “IANA and PWG 3947 Considerations”, per IPP WG review 3948 3949

17.26 24 August 2014 3950

- Interim draft 3951 - corrected typos and wording 3952 - revised section 5.3 and added Table 1 – Attributes in IPP System Description group with 3953 notes for rationale of all conformance requirements 3954 - revised section 5.4 and added Table 2 – Attributes in IPP System Status group with notes 3955 for rationale of all conformance requirements 3956

Page 126: The Printer Working GroupThe Printer Working Group 29 November 2016 Working Draft Copyright © 2014-2016 The Printer Working Group. All rights reserved. IPP System Service v1.0 (SYSTEM)

Working Draft – IPP System Service v1.0 (SYSTEM) 29 November 2016

Page 126 of 126 Copyright © 2014-2016 The Printer Working Group. All rights reserved.

- added section 6 New IPP Operations (empty) 3957 - added section 7 New IPP Attributes (empty) 3958

17.27 11 August 2014 3959

- Initial draft 3960 - based on Mike Sweet’s presentation at PWG F2F meeting in October 2013 3961 - added Abstract and Introduction 3962 - added Terminology, including new and refined terms for clarity 3963 - added Requirements (rationale, use cases, out-of-scope, design requirements) 3964 - added IPP Object Model (extensions to RFC 2911) 3965 - added IPP System Object (still a sketch) 3966 - combined System object and System Control Service object (separation was artificial) 3967 - added References (normative and informative) 3968