While the Resource object seems like a potentially useful discussion topic, I'm not sure that I see the relationship between several of the proposed sub-types and IPP. For example, how would a client use IPP to position an image stored in a library on the device correctly in a printed document? Aren't the PPML folks over at PODI working on a document schema based on XML to solve the general class of variable data printing problems? I know I would benefit from a more complete discussion of where you are headed with this, since at first glance it seems contrary to the principle of separating job submission, management, and monitoring protocol (IPP) from document content.
I guess my real question is "Are you trying to define a general purpose printer resource selection mechanism by extending IPP syntax?" If you are, I'd suggest that you also consider additional resources typically associated with color printers, such as ICC profiles, Color Rendering Dictionaries, and other by-products of print engine characterization, including (but not limited to) halftone screens (possibly implemented as threshold arrays) and grey balance transforms (possibly implemented as 1-D lookup tables). Such resources can be downloaded into a printer, selected from a pre-existing store in the printer, or even uploaded from the printer for use by a host based RIP (there is existing standard PDL syntax to accomplish the first two operations, but I don't know of any standard method for accomplishing the latter).
(310) 727-5715 - Fax
erandom at peerless.com
>>> "Hastings, Tom N" <hastings at cp10.es.xerox.com> 05/09/00 11:16AM >>>
We have discussed several times on the IPP telecons about adding a new
Resource object. This mail note is a sketch of the idea to see if there is
support for developing an IPP spec along these lines. The reason to being
this idea up now is because of the discussion of the Print Driver Extension.
The Resource object approach would allow a way to install print drivers on
the Printer and to Get Print Drivers from the Printer to install on a
client. It would allow a Printer to have more than one print driver, say
one for each of a number of different OS platforms and/or PDLs.
Should the Resource object be an agenda topic for the New York City IPP WG
Here is the sketch of the Resource object idea and its operations:
The Resource object is a generic container object for a number of sub-typed
objects. The Resource object would have a number of operations defined.
Each operation would include an operation attribute that identifies the
object sub-type in question. Then implementers could define new sub-types
easily without having to invent new operations.
There are some attributes common to all sub-types, such as the
"resource-name", "resource-sub-type", "resource-owner",
"resource-creation-date-time", etc., and a lot that are specific to a
particular sub-type. Some sub-types will also have opaque data associated
with each object instance (such as fonts, forms, images, and print drivers),
and others will only have attributes (such as media).
The initial list of sub-types include:
media - Just attributes which define the media characteristics. So the
client can query the media library and the administrator can add new media
and define their characteristics
fonts - attributes and the PDL data
forms - attributes and the PDL data
logos - attributes and the PDL data
images - attributes and the PDL data. high resolution images can be put
into a shared image library and called out from a number of documents
print drivers - attributes and the opaque data is the executable code
The operations would include:
Create-Resource - the client specifies the resource type and a user-friendly
name for it that is used in all subsequent operations, including Job
Submission operations (Print-Job, Create-Job, Send-Document). A lease time
is also requested (just like our Subscription objects) and the Printer
returns the lease time granted (which may be infinite meaning no need to
renew or finite, meaning that the client must renew the lease, else the
resource will be deleted).
Delete-Resource - delete the named resource of the indicated sub-type
Renew-Resource - renews the lease, in case it wasn't infinite
Get-Resource-Attributes - returns the requested (or all) attributes of a
specified resource type and instance.
Get-Resources - returns the requested (or all) attributes of a specified
resource type that matches the supplied filter criteria consisting of any of
the resource attributes. Here the filtering is more complex than we have
for Get-Jobs or Get-Subscriptions operations, since the client could filter
on any of the resource attribute values. For example, a client could
request all of the media that has a "media-size" equal to particular pair of
x and y dimensions and get back the other resource attributes of any matched
Get-Resource-Data - returns the opaque data for those resources for which
the data is not copyrighted, etc.
These operations are very similar to the Subscription object operations that
the IPP WG has nearly approved for notification. The only differences are:
Subscription Ids are assigned by the Printer as numbers, while resource
object instances have user friendly names assigned by the creator. Both
have leases, but Subscription leases are expected to be much shorter
(minutes, hours) and handled by the software, not the user, while Resource
objects leases are much longer (days, weeks, months), though both can be
infinite depending on SA policy, and the user or administrator explicitly
creates the Resources. Also Resources are known to users and administrators
and are managed by them. Also Subscriptions don't have any complex filtering
in the query requests.
[We don't want to merge Subscriptions into Resources, just illustrate their
It will also allow the administrator to set up policy on who can create
which kinds of resources and for how long.
-------------- next part --------------
An HTML attachment was scrubbed...