Subject: [IPP] Posted IPP System Service (15 September 2016)

From: Ira McDonald <[email-masked]>
Date: Thu, 15 Sep 2016 14:54:52 -0400

Hi,

I have just posted another Interim draft of IPP System Service for
review during the IPP WG call next week:

  http://ftp.pwg.org/pub/pwg/ipp/wd/wd-ippsystem10-20160915-rev.pdf
  - PDF with line numbers and redlines

  http://ftp.pwg.org/pub/pwg/ipp/wd/wd-ippsystem10-20160915-rev.docx
  - MS Word source with line numbers and redlines

Summary:  Most pending edits from 15 August plus new operation details,
clarifications, and usage notes.

Cheers,
- Ira

-------------------------------
Change History:

15 September 2016

- Interim draft – changes per PWG F2F review on 23 August 2016
- global – accepted all changes before section 8 (all reviewed at PWG F2F)
- global – renamed section 5 to IPP Objects and Operations Summary and
revised to delete reference to “system-configured-subunits” and change
Description attributes sections from “READ-WRITE” to “potentially
READ-WRITE” (consistent with section 7)
- global – revised section 6 IPP Operations to replace “allows allows” with
“allows”
- global – changed “resource-state” keywords of ‘pending’ to ‘created’ and
‘active’ to ‘available,’ added “resource-state” keyword of ‘aborted’, and
added “resource-state-reasons” keywords of ‘cancel-requested’,
‘install-requested’, and ‘resource-incoming’ for operations with delayed
state transitions
- revised section 4 IPP Object Model to add notes that System, Printer, and
Resource Owners are mutable (long-lived objects) while Job and Subscription
Owners are immutable (short-lived objects)
- revised section 4.6 Resource Object to correctly explicitly refer to
Send-Resource-Data and Install-Resource operations
- revised section 5.3 System Status Attributes and Table 2 to delete
reference to “system-configured-subunits”
- revised section 5.4 System Operations to include Install-Resource in note
3 and state that the original StoreResource operation has been decomposed
into the sequence of Create-Resource, Send-Resource-Data, and
Install-Resource and to revise and reference note 4 about Install-Resource
- revised section 5.7 Resource Status Attributes and Table 5 to delete
“resource-authenticator” and “resource-category” and note 7 about
“resource-authenticator”, delete “resource-job-id” and note 5 about
“resource-job-id”, and change “resource-printer-id” (singular) to
“resource-printer-ids” (a list of explicitly associated Printers)
- revised section 5.9 Printer Status Attributes to delete double period on
second list item
- revised section 5.9 Printer Status Attributes and Table 7 to add
“printer-resource-ids” with note about “resource-ids” operation attribute
in Create-Printer
- revised section 5.10 Job Status Attributes and Table 8 to add
“job-resource-ids” with note about “resource-ids” operation attribute in
Job Creation operations
- revised section 6 IPP Operations to regroup all operations under Printer,
Resource, Subscription, and System Operation subsections (this breaks
DOZENS of cross-references throughout the document)
- revised note in section 6.1.1 Create-Printer and section 6.2.2
Create-Resource to explain two alternatives for correctly populating
“printer-resource-ids” and “resource-printer-ids” status attributes
- revised section 6.1.1 Create-Printer to add <all mandatory Printer
Description attributes> with reference to
“system-mandatory-printer-attributes”
- revised section 6.1.1.1 Create-Printer Request to add “resource-ids”
operation attribute that requests Resources and is copied (if valid) to the
“printer-resource-ids” Printer Status attribute – note that this is
intentionally NOT a Printer Description attribute for security
- revised section 6.1.3 Get-Printers and section 6.1.4
Get-Printer-attributes to state that the returned Printers and Printer
attributes MAY be filtered based on Client access rights (i.e., the value
of “requesting-user-name”) or the specified “document-format”
- revised section 6.1.3 Get-Printers and section 6.1.4
Get-Printer-attributes to list all operation and response attributes
explicitly, add optional “printer-uri” alternative to “printer-ids” or
“printer-id” for target Printer, optional “document-format” (for filtering
returned attributes), and required “printer-xri-supported” in response
- revised section 6.1.4 Get-Printer-attributes to discuss backwards
compatibility, change “system-uri” target to “Client SHOULD supply” (for
legacy IPP Clients), add back optional “printer-uri” (for legacy IPP
Clients), add “first-index” and “element, and change “Groups 3 to N” to
“Group 3”
- revised section 6.2.1 Cancel-Resource, section 6.2.5 Install-Resource,
section 6.2.6 Send-Resource-Data, and section 6.2.7 Set-Resource-Attributes
to add that if “resource-state” is ‘canceled’ or ‘aborted’ or
“resource-state-reasons” includes ‘cancel-requested’ then System MUST
return ‘client-error-not-possible’
- revised section 6.2.1 Cancel-Resource to correct typos from
“Create-Resource” to “Cancel-Resource”, clarify transition of
“resource-state” to ‘canceled’ (could be delayed if Resource is in use in a
Job) and “resource-state-reasons” to ‘cancel-requested’, change “MAY” to
“SHOULD” for the System delete of Resource data, add a definition of the
Resource History lifecycle phase, and state that the System MUST support
Resource History period of at least 300 seconds for reliable system log
files
- revised section 6.2.2 Create-Resource to delete “resource-category”
(redundant with resource-type), delete “resource-job-id”, and clarify
transitions (and keyword names) of “resource-state” and
“resource-state-reasons”
- revised section 6.4.3 Get-System-Attributes to add note that we will
require explicit request for “system-configured-resources” or
“system-configured-printers” (by analogy to “media-col-database” for
Get-Printer-Attributes)
- renamed section 7.1 System, Printer, Resource, and Job Operation
Attributes to simply “Operation Attributes” and added note about their
applicability
- revised section 7.1 Operation Attributes to add “resource-ids” for
Create-Printer and Job Creation operations to list requested Resources
- deleted section 7.1.7 resource-category operation attribute
- deleted section 7.1.10 resource-job-id operation attribute
- revised section 7.2.11 resource-settable-attributes-supported to add
missing type
- revised section 7.2.13 system-default-printer-id to keep “MAX” and delete
“max” in type
- added section 7.2.18 system-mandatory-printer-attributes and Table 9 –
Mandatory-to-Supply Printer Creation Attributes for use in Create-Printer
operation
- revised section 7.3.11 system-configured-resources and Table 10 to delete
“resource-category”
- deleted section 7.3.11.1 resource-category (redundant with resource-type)
- revised section 7.3.17 system-state-reasons to state that any applicable
“printer-state-reasons” keyword value can be used (to avoid enumerating the
existing keywords here)
- revised section 7.5.3 printer-service-type to add ‘print3d’, delete
‘emailin’ and ‘emailout’ (security nightmares), delete ‘vendor’ (not
interoperable), and add ‘smiNNN-name’ pattern and explanation for vendor
service types
- revised section 7.7.x
“[date-time|time]-at-[cancelation|creation|installation]” to state the
timestamps MUST be set at the time the System accepts a Cancel-Resource,
Create-Resource, or Install-Resource operation (instead of when the process
completes and the appropriate “resource-state-reasons” pending value is
removed)
- deleted section 7.7.4 resource-authenticator (access info must be
included in resource data manifest file)
- deleted section 7.7.5 resource-category (redundant with resource-type)
- deleted section 7.7.9 resource-job-id (use “job-resource-ids” in Job for
association)
- revised section 7.7.10 resource-state to define ‘pending’ (after
creation), ‘available’ (after upload of data), ‘installed’ (after
installation), ‘canceled’ (by Client, not by System), and ‘aborted’ (by
System) so that ‘canceled’ and ‘aborted’ are the two alternative terminal
states
- revised section 7.7.12 resource-state-reasons to define
‘cancel-requested’, ‘install-requested’, and ‘upload-requested’ for delayed
completion of the respective operations processing
- revised section 7.7.16 resource-type to change reference to
“resource-category” reference (an attribute) to simply “resource category”
(a prefix for a resource-type) and insert explicit resource category prefix
into all “resource-type” keyword values and add ‘template-printer’ for
potential Create-Printer extension
- revised section 14.1 Normative References to add “PWG5100.P3D” for
‘print3d’ service type
- added Appendix A – Rationale for Design Choices – added first Resource
topics
- TODO – add status-code text to section 6 preamble and to all operations
in sections 6.x
- TODO – add back explicit full parms for every operation in section 6 per
PWG F2F review
- TODO – fix all the broken section 6.x references from the reorganization
of section 6
_______________________________________________
ipp mailing list
[email-masked]
https://www.pwg.org/mailman/listinfo/ipp