Subject: 0.92 review comments

From: "Scott A. Isaacson" <[email-masked]>
Date: Tue, 19 Nov 1996 16:38:57 -0700

Here are some comments, questions I have about some of the material in
IPP Version 0.92:

Section 3.4 
This indicates one or more Job Templates per Printer.  Should this be 0 or
more?

Section 3.5  and Section 6.2.2.1
3.5 states that a Job object is "identified" by an attribute called
job-identifier.   6.2.2.1 indicates that the syntax for  job-identifier is  "url". 
Is the job-identifier really "url" or is the job-identifier just some sting that
can be used to build a full URL based off of the Printer URL?   For
example a URL for a certain job might be "http://1.2.3.4/p1/j1".  In this
case is the job-identifier "http://1.2.3.4/p1/j1" or just "j1"?  

If job-identifier is "http://1.2.3.4/p1/j1" then why have job-identifier as an
attribute of the job object?  It would be fairly useless to do the following:

---->
POST http://1.2.3.4/p1/j1 http/1.0
Entity header
   job-identifier:

<------
http/1.0 200 "accepted"
Entity Header
   job-identifier: http://1.2.3.4/p1/j1

The same is true for section 6.4.1 printer-name.  Is this a name or a URL?

Section 4.2.2 and 4.2.3
If there are more than one different URLs for a single Printer and the 
reason for more than one is to expose different Job Templates, then the
Description attribute could be used to help explain the differences in the
defaults in each Job Template.  There can also be more than one
directory entry for the same URL.  Tthe reason for this is to expose the
same Printer in two different contexts in the directory.  Tthe location
attribute for each directory entry could be customized to the context of
the directory entry.  For example, in one context the Location could be
informal "Next to Sharon's office"  (the directory context itself adds
meaning to the phrase next to Sharon's office) and in another context the
Location could be more formal, such as "3rd floor, Room 5".

Section 5.2.1
This states "job and document attributes"  Should this just be Job
attributes?

Section 5.2.2
Job Id should be a URL coming back to the submitter.

Section 5
Many of this operations suggest passing in a list of attributes for which
values are being requested?  What if the list is empty?  Does this mean
all attribute values are to be returned, or none?

Section 5.5
Should there be an option to request Jobs in:
1) Scheduled order
2) Any order

Since we have no operators -- sould Get Jobs return:
All Job Ids?
Just Job Ids for the requesting end user?
Position in the schedule order (my jobs are j1, j2, j3, but their relative
positions are #3,  #5,   #99)
Job Ids and a small set of attributes:  size, time, position??

I like Roger's suggestion of a count of the total number of jobs pending
and processing.

Section 6.2.4.1
Since we have a single operation to "submit" a job, will we ever have the
state "pre-processing"?  Do we want to not have the "printing" state?

Section 6.2.4.6
Will we ever have the "documents-needed" reason?

job-sheets
Since we have job-sheets as only "none" or "defuault",  isn't this just a
Boolean "TRUE = print the default banner"  "FALSE = don't print the
default banner"

Section 6.4.32
Since maximum-end-user-priority is a Printer object attribute and not a
Job Templates attribute, it is hard to acheive the desire effect.  Suppose
you want some users to have a MAX priority of low and some user to
have a MAX of hight.  This would require defining TWO Printer object for
the same Printer object not just TWO Job Templates for the same Printer
Object.  However, this doesn't work as a Job Template attribute either -
the user just overrides the priority in the Job submission attributes

All for now,
Scott

---

From: [email-masked] (Robert Herriot)
Date: Thu, 21 Nov 1996 15:50:36 -0800

> the user just overrides the priority in the Job submission attributes

The above comment brings up a concept which cannot be connected to job
templates.  A job template specifies default values, but cannot
restrict values. A printer specifies allowed values, and can therefore
restrict values.

In the case above where a printer wants to present two levels of
priority to different users, a mechanism other than job template is
required. Whatever it is, it is beyond our current scope.

Bob Herriot