Subject: Re: IPP> IPP: Job template attributes

From: Carl Kugler <[email-masked]>
Date: Thu, 2 Apr 1998 17:15:41 -0500

Henrik-

My understanding is that the job template attributes specify requested
processing for a job.  In your example the server makes n copies.  However, the
J.T. attributes are OPTIONAL.  Also, they can be ignored if
ipp-attribute-fidelity is false.

   -Carl

[email-masked] on 04/01/98 01:59:01 AM
Please respond to [email-masked]
To: [email-masked]
cc:
Subject: IPP> IPP: Job template attributes

I am wondering, are the job template attributes only for information and
administration?
E.g. if an IPP Server recieves the job template attribute 'copies n' must
the IPP Server make
the n copies, or does the attribute only tell that the following job will
me maked in n copies.

Henrik Holst

___________________________________________________________
 Henrik Holst
 Software engineer - developing embedded Printservers
 i-data International
 Vadstrupvej 35-43, 2880 Bagsvaerd, Denmark
 Voice:  (+45) 44366271
 Fax:    (+45) 44366111
 Email:  [email-masked]
 WEB:    www.i-data.com

---

From: Tom Hastings <[email-masked]>
Date: Sun, 19 Apr 1998 11:47:22 PDT

I agree with Carl Kugler's understanding of IPP in his response to you.
The client supplies Job Template attributes in order to affect the
Printer's processing of the job, NOT to inform the Printer object of
what is in the PDL.

Here are some extracts of the specification to see if there is something
mis-leading or ambiguous about the intended semantics of Job Template
attributes:

The introduction to Job Template Attributes in section 3.1.2 says:

- Job Template Attributes: These attributes affect the processing of a job.
 A client OPTIONALLY supplies Job Template Attributes in a create request,
and the receiving object MUST be prepared to receive all supported
attributes.  The Job object can later be queried to find out what Job
Template attributes were originally requested in the create request, and
such attributes are returned in the response as Job Object Attributes.  The
Printer object can be queried about its Job Template attributes to find out
what type of job processing capabilities are supported and/or what the
default job processing behaviors are, though such attributes are returned
in the response as Printer Object Attributes.  The "ipp-attribute-fidelity"
operation attribute affects processing of all client supplied Job Template
attributes (see section 15 for a full description of
"ipp-attribute-fidelity" and its relationship to other attributes).

In section 3.2.1.1, Print-Job Request, the "ipp-attribute-fidelity" is
explained:

"ipp-attribute-fidelity" (boolean):
The client OPTIONALLY supplies this attribute.  The Printer object MUST
support this attribute.  The value 'true' indicates that total fidelity to
client supplied Job Template attributes and values is required, else the
Printer object SHALL reject the Print-Job request.  The value 'false'
indicates that a reasonable attempt to print the Job object is acceptable
and the Printer object SHALL accept the Print-job request. If not supplied,
the Printer object assumes the value is 'false'.  All Printer objects MUST
support both types of job processing.  See section 15 for a full
description of "ipp-attribute-fidelity" and its relationship to other
attributes, especially the Printer object's "pdl-override-supported"
attribute. 

In section 4.2, Job Template attributes, we have:

4.2 Job Template Attributes 

Job Template attributes describe job processing behavior.  Support for Job
Template attributes by a Printer object is OPTIONAL (see section 12.2.3 for
a description of support for OPTIONAL attributes).  Also, clients
OPTIONALLY supply Job Template attributes in create requests.
Job Template attributes conform to the following rules.  For each Job
Template attribute called "xxx":

What can we do to make it clearer?

Thanks,
Tom