[IPP] [EXTERNAL] Re: IPP INFRA job validation

[IPP] [EXTERNAL] Re: IPP INFRA job validation

Michael Ziller mziller at microsoft.com
Wed May 8 02:30:14 UTC 2024


Thanks for the details. Specifically that the infra printer can have more attributes than the output device if it processes some things itself which explains having validate-job done on the infra printer.

So it seems that IPP INFRA allows the proxy printer/output device to report job validation failures either through fetch-status-code or through a post-submission processing failure (similar to how local printers allow the printer to report validation failures through validate-job or at print time while processing the job). In that case, I didn't have further comments for this section.

-----Original Message-----
From: Michael Sweet <msweet at msweet.org> 	
Sent: Tuesday, May 7, 2024 5:41 PM
To: PWG IPP Workgroup <ipp at pwg.org>
Cc: Michael Ziller <mziller at microsoft.com>
Subject: [EXTERNAL] Re: [IPP] IPP INFRA job validation

Michael,

> On May 7, 2024, at 5:20 PM, Michael Ziller via ipp <ipp at pwg.org> wrote:
> 
> IPP INFRA spec mentions the infra printer MUST support validate-job and the proxy printer MUST NOT, implying that the infra printer should not forward/save client validate-job requests to/for the proxy printer.

No, the operation table you are looking at refers to the operations each actor/role must (or must not) support.  Since the Proxy does not create Jobs on the Infrastructure (at least not in its Proxy role), it cannot use the Job Creation or Validate-Job operations.

An Infrastructure Printer processes a Validate-Job by validating the Job Template attributes against its "xxx-supported" attributes, which in turn are derived from both the Output Device attributes and any capabilities the Infrastructure Printer adds.  For example, an Infrastructure Printer might support additional Job Template attributes ("number-up") that are not supported by the Output Device, or it might support additional Document formats so that the list of valid formats is the union of those natively supported by the Output Device(s) and Infrastructure Printer.

> However, it seems the infra printer can’t always do as full validation as the proxy printer as part of validate-job requests sent to the infra printer. Is the intent for the proxy printer to do fetch-job, and since it now has the job template attributes, to do the same sort of validation it would be doing for local IPP print validate-job, and then returning any validation failures (or successful-ok-ignored-or-substituted-attributes) in acknowledge-job fetch-status-code?

IPP (independently of the INFRA spec) allows Printers to report post-submission failures during Job processing via the "job-state-reasons" attribute - 'conflicting-attributes' if a conflict is seen, 'unsupported-attributes-or-values' if an attribute or value isn't supported, etc.  If the issue cannot be resolved by the Printer, the Job is aborted - "job-state" = '8' (aborted) - and the Client can see why the Job was aborted.

________________________
Michael Sweet



More information about the ipp mailing list