Hi Tom,
I favor your more comprehensive alternative below:
- change ALL of these production printing xxx-supported
attributes to be
(1setOf (integer(min:max) | rangeOfInteger (min:max))
Cheers,
- Ira McDonald, consulting architect at Xerox and Sharp
High North Inc
-----Original Message-----
From: Hastings, Tom N [mailto:hastings@cp10.es.xerox.com]
Sent: Wednesday, November 15, 2000 10:56 PM
To: pwg-ipp (E-mail)
Subject: PWG-IPP> Last Call Comment on IPP: Production Printing
Attributes - Set1: problems in xxx-supported attrs for integer sets
ISSUE 01: media-order-count-supported (rangeOfInteger(1:MAX)) can't express
disjoint ranges of integers. So if the administrator has 1 and 5 order
counts, but not ones in between, this disjoint range cannot be expressed.
ISSUE 02: media-weight-metric-supported (1setOf integer(MAX)) can't express
a range of weights. The need for a range is two-fold:
(1) if an administrator adds the 'media-weight-metric' value to the
Printer's "user-defined-values-supported" attribute, then the range of
values that the client can supply needs to be expressible.
(2) if the Printer supports setting the media-weight-metric-supported
attribute with the Set-Printer-Attributes operation, then it needs to be
able to return an integer range that the hardware supports as the value of
that attribute in a Get-Printer-Supported-Values response.
ISSUE 03: media-hole-count-supported (1setOf rangeOfInteger(0:MAX))
requires N:N in order to express a single integer value. While not terribly
serious, it is inconsistent with number-up-supported in IPP/1.1 and the
other xxx-supported attributes that has an attribute syntax of: (1setOf
(integer | rangeOfInteger)), so that, say, 2, 3, and 5, can be expressed as
separate integers.
Here are all of the xxx-supported attributes in the Production Printing
Extension - Set1 spec for which the client supplies an integer value in the
Job Creation operation:
1. force-front-side-supported (rangeOfInteger(1:MAX))
2. x-image-shift-supported (rangeOfInteger (MIN:MAX))
3. x-side1-image-shift-supported (rangeOfInteger (MIN:MAX))
4. x-side2-image-shift-supported (rangeOfInteger (MIN:MAX))
5. y-image-shift-supported (rangeOfInteger (MIN:MAX))
6. y-side1-image-shift-supported (rangeOfInteger (MIN:MAX))
7. y-side2-image-shift-supported (rangeOfInteger (MIN:MAX))
8. stitching-offset-supported (1setOf (integer (0:MAX) |
rangeOfInteger(0:MAX)))
9. stitching-locations-supported (1setOf (integer(0:MAX) |
rangeOfInteger(0:MAX)))
10. insert-after-page-number-supported (rangeOfInteger(0:MAX))
11. media-hole-count-supported (1setOf rangeOfInteger(0:MAX))
12. media-order-count-supported (rangeOfInteger(1:MAX))
13. media-size-supported (1setOf collection) containing: {x-dimension =
integer (1:MAX) | rangeOfInteger (1:MAX); y-dimension = integer (1:MAX) |
rangeOfInteger (1:MAX)}
14. media-weight-metric-supported (1setOf integer(MAX))
Suggested solution: Change media-hold-count-supported,
media-order-count-supported, and media-weight-metric-supported to: (1setOf
(integer(0:MAX) | rangeOfInteger (0:MAX))).
Alternatively, change these (11, 12, 14 above) and the others (1-7 and 10
above) to (1setOf (integer(0:MAX) | rangeOfInteger (0:MAX))) that aren't
already that. Perhaps, introduce a pseudo attribute syntax, called
integerSet (min:max), which expands to: (1setOf (integer(min:max)) |
rangeOfInteger(min:max))). Then the list would look like:
1. force-front-side-supported (integerSet(1:MAX))
2. x-image-shift-supported (integerSet(MIN:MAX))
3. x-side1-image-shift-supported (integerSet(MIN:MAX))
4. x-side2-image-shift-supported (integerSet(MIN:MAX))
5. y-image-shift-supported (integerSet(MIN:MAX))
6. y-side1-image-shift-supported (integerSet(MIN:MAX))
7. y-side2-image-shift-supported (integerSet(MIN:MAX))
8. stitching-offset-supported (integerSet(0:MAX))
9. stitching-locations-supported (integerSet(0:MAX))
10. insert-after-page-number-supported (integerSet(0:MAX))
11. media-hole-count-supported (integerSet(0:MAX))
12. media-order-count-supported (integerSet(1:MAX))
13. media-size-supported (1setOf collection) containing: {x-dimension =
integerSet(1:MAX); y-dimension = integerSet(1:MAX)}
14. media-weight-metric-supported (integerSet(1:MAX))
Printers that only need the integer or the rangeOfInteger syntax, but not
both, in a given attribute don't need to support the other attribute syntax
in that attribute. However, Printers that support the
Set-Printer-Attributes operation SHOULD support both syntaxes in all
"xxx-supported" (integerSet(M:N)) Printer attributes.
-----Original Message-----
From: Manros, Carl-Uno B [mailto:cmanros@cp10.es.xerox.com]
Sent: Monday, October 30, 2000 15:57
To: PWG-ANNOUNCE@pwg.org
Cc: Don Fullman
Subject: PWG-ANNOUNCE> PWG-IPP> Last Call for PWG draft on: Internet
Printing Protocol ( IPP): Production Printing Attributes - Set1, Version
October 26, 2000 - c losing on November 15, 2000
All,
Note that this message is about a PWG draft on IPP (not part of the IETF IPP
work).
Late last year it was agreed with the IETF Application Area Directors that
IPP extensions that have no major impact on the overall IPP model and
protocol encoding could be done separately by the PWG.
The relevant draft document is: Internet Printing Protocol (IPP):
Production Printing Attributes - Set1, Version October 26, 2000
The first draft of this document was introduced to the PWG in December 1999.
The document is intended to be published as an IEEE-ISTO PWG Standard
document as an extension to the RFC2911 from the IETF.
The purpose of a Last Call is to give everybody a last chance to look over
the draft text and determine whether they agree that the content now
reflects our technical agreements and has support from a majority of the
technical experts that have worked on it.
Anybody interested in the content of the draft can send their comments,
whether they participate in the PWG work or not.
Please send your comments to the PWG IPP DL at: pwg-ipp@pwg.org.
The draft can be found in different versions at (there is no TXT version):
ftp://ftp.pwg.org/pub/pwg/ipp/new_PPE/pwg-ipp-prod-print-set1-001026.pdf
ftp://ftp.pwg.org/pub/pwg/ipp/new_PPE/pwg-ipp-prod-print-set1-001026.doc
ftp://ftp.pwg.org/pub/pwg/ipp/new_PPE/pwg-ipp-prod-print-set1-001026.rtf
ftp://ftp.pwg.org/pub/pwg/ipp/new_PPE/pwg-ipp-prod-print-set1-001026-rev.pdf
ftp://ftp.pwg.org/pub/pwg/ipp/new_PPE/pwg-ipp-prod-print-set1-001026-rev.pdf
ftp://ftp.pwg.org/pub/pwg/ipp/new_PPE/pwg-ipp-prod-print-set1-001026-rev.pdf
The PWG rules state that Last Calls for drafts need to be at least 10
working days.
We will start the Last Call tomorrow October 31, and the deadline for
comments is November 15, 2000.
If we get back comments, we will try to resolve those before voting on the
document in the PWG for publishing.
The final vote in the PWG can be done either in a PWG meeting or over email.
As there is no further PWG meeting until December, we are likely to do the
voting for this document over email.
See some further details below.
Carl-Uno Manros
Chair of the IEEE-ISTO PWG IPP WG
-----
The draft contains the comments that were generated at the PWG-IPP WG
meeting September 13-14 in Chicago and subsequent telecons. The PWG logo
has been added to make it look like a PWG standard. We agreed to post the
.rtf, so that it would be the most available. However, rtf is 3.3 Mbytes.
The .doc is 700 Kbytes and the .pdf is 300 Kbytes. So all three forms are
posted. The -rev version show all the changes from the June 5, 2000 version
that was reviewed in Chicago. Here is the Abstract:
This document specifies an extension to the Internet Printing Protocol/1.0
(IPP) [RFC2565, RFC2566] and IPP/1.1 [RFC2910, RFC2911]. This extension
consists primarily of Job Template attributes defined for submitting print
jobs primarily (but not limited to) to production printers. These
attributes permit a user to control and/or override instructions in the
document content to perform the following functions: print on document
covers, control the positioning of stapling, force pages to the front side
of the media, insert sheets into the document, provide an accounting id,
provide an accounting user id, request accounting sheets, provide job sheet
messages, request error sheets, provide a message to the operator, control
the media used for job sheets, request media by characteristic (size,
weight, etc.), request to check the media characteristics in an input tray,
specify the presentation direction of page images on impressions, and shift
the impression image.
This extension also defines the "current-page-order" Job Description
attribute, the "user-defined-values-supported" and
"max-stitching-locations-supported" Printer Description attributes, and the
'resources-are-not-supported' value for the "job-state-reasons" Job
Description attribute. Some additional "media" keyword values are defined
for use with the "media" and "media-col" Job Template attribute.
Here is the Change History:
The following changes were made to the June 5, 2000 version to create the
October 26, 2000 version from the PWG IPP WG review in Chicago, September
13, 2000 and subsequent IPP telecons:
1. Added "finishings-col" (collection) to control
placement of staples which also requires the implementation of the "media"
Job Template attribute in RFC 2911.
2. Added "force-front-side" (1setOf integer(1:MAX)) Job
Template attribute to force a page to the front side of the medium.
3. Changed "job-account-id-supported" (integer(1:255)),
"job-message-to-operator-supported" (integer(0:1023)), and
"job-sheet-message-supported" (integer(0:1023)) to boolean on the grounds
that conforming implementations are supposed to implement the maximum length
and no one wanted to shorten the maximum in the spec.
4. Added "job-accounting-user-id" Job Template
attribute to go with "job-account-id".
5. Added "job-accounting-output-bin" member attribute
to the "job-accounting-sheets" collection to control the output bin.
6. Removed "job-recipient-name" to a separate IETF
spec, since it needs to be an IETF document, while the Production Printing
Extension remains a PWG document.
7. Specified how the matching algorithm works for
"media-col" and what is IMPLEMENTATION-DEPENDENT.
8. Added "media-key" member attribute to "media-col"
collection as a unique key for media which must be present if implemented
and removed "media-description" member attribute (which was neither unique
nor required on all values when implemented - it was more like a "nick"
name).
9. Removed "media-opacity", "media-tabs", and
"media-label-type" member attribute of the "media-col" Job Template
attribute and added "media-type" member attribute with Printer MIB and
Internet FAX Media type values to represent these media types. Added
'full-cut-tab' and 'pre-cut-tab' values to disambiguate between these two
forms of 'tab-stock' values. Also added 'other' to cover cases when no
supported keyword or name will do.
10. Added "media-info" (text(255)) member attribute to
give a text description of the media for human consumption.
11. Changed the 'clear' "media-color" to 'no-color' to
be clearer.
12. Clarified that full-cut tabs can have a
"media-order-count".
13. Changed the lower limit of the "media-size"
dimension attributes from 0 to 1.
14. Clarified that the rangeOfInteger in
media-size-supported can be used by Printers with adjustable input trays.
15. Deleted "media-weight-english" member attribute as
an unwanted supplemental attribute to "media-weight-metric" which is in
metric units.
16. Deleted the 'any' value from the
"media-front-coating" and "media-back-coating" member attributes of the
"media-col" attribute. Matching a client supplied value of 'any' with 'any'
in the supported list is straight forward, but then selecting the actual
media instance is a special case. It is simpler to allow the user to select
one of the defined values.
17. Added the "media-input-tray-check" Job Template
attribute to control checking the media in a specified input tray.
18. Added "presentation-direction" (type2 keyword) Job
Template attribute to specify the direction that number up page images are
to be placed on a side.
19. Changed the 'wrap-sheets' value for
"separator-sheet-type" to 'both-sheets'.
20. Renamed the "x-auto-center" and "y-auto-center"
attributes to "x-image-position" and "y-image-position" attributes with
type2 keyword data types. The values are 'none', 'center-on-media, 'left',
'right' and 'none', 'center-on-media, 'top', 'bottom', respectively.
21. Renamed "user-defined-names-supported" Printer
Description attribute to "user-defined-values-supported" and generalized it
to allow the administrator to establish the policy to allow users to supply
any integer values for integer attributes and collection values for
collection attributes as well.
22. Added "max-stitching-locations-supported" Printer
Description attribute to indicate the maximum number to stitches/staples per
sheet.
23. Added "finishings-ready" (1setOf type2 enum) to
specify the finishing that doesn't require operator intervention for use in
systems where operator intervention MAY be required to changes the finisher.
24. Changes the 'job-wrap-sheets' value of "job-sheets"
to 'job-both-sheets' to give a more understandable name.
25. Added more "media" keyword values.
----
Carl-Uno Manros
Principal Engineer - Xerox Architecture Center - Xerox Corporation
701 S. Aviation Blvd., El Segundo, CA, M/S: ESAE-231
Phone +1-310-333 8273, Fax +1-310-333 5514
Email: manros@cp10.es.xerox.com
This archive was generated by hypermail 2b29 : Fri Nov 17 2000 - 14:15:53 EST