IPP Mail Archive: RE: RE: RE: RE: IPP> Identifying jobs in requests

IPP Mail Archive: RE: RE: RE: RE: IPP> Identifying jobs in requests

RE: RE: RE: RE: IPP> Identifying jobs in requests

Tom Hastings (hastings@cp10.es.xerox.com)
Tue, 9 Jun 1998 17:59:23 PDT

At 17:17 06/09/1998 PDT, Paul Moore wrote:
> Currently, "printer-uri" is a MANDATORY Operation Attribute of the
>Create-Job operation (see section Validate the presence of a single
>occurrence of required Operation attributes).
> [Paul Moore] My reading of this was that it was a 'virtual'
>attribute. You were not expected to encode it in the IPP packet. This is the
>same way that the creatjob request does not encode the user name (it can
>choose to do) rather the user is inferred from the transport.

I think that originally "printer-uri" was going to be a "virtual" attribute,
as you thought. But later (last Fall?) we changed the Model and Protocol
document so that the "printer-uri" attribute was required to be supplied
by the client and include in the operation attribute group in the IPP packet
(which is defined by the application/ipp MIME type). The thinking
was that we wanted the IPP packet and MIME type to be independent
of the transport. So that we could send IPP over any transport, such
as SMTP or FTP, for examples.

(BTW, the Protocol examples forgot to make the change to include
the "printer-uri", so maybe that is part of the reason you think that
"printer-uri" is not needed in the Operation Attributes group in
the IPP packet.)

See Section 3.1.3 Operation Targets in the Model:

The operation target is a MANDATORY operation attribute that MUST
by included in every operation request.

(The updated Model in 3.1.4 Operation Targets goes further so require
that the Operation Targets come right after the char-set and natural-language
in the Operation attributes group).

See also Section, which does not have an "*" next to
"printer-uri" meaning that the client MUST supply it in the operation

So if we change our minds back to not putting the "printer-uri" target
in the IPP layer packet, we need to change the Model and the Protocol