PWG-IPP Mail Archive: RE: PWG-IPP> Last Call Comment on IPP:

RE: PWG-IPP> Last Call Comment on IPP: Production Printing Attrib utes - Set1: problems in xxx-supported attrs for integer sets

From: McDonald, Ira (imcdonald@sharplabs.com)
Date: Fri Nov 17 2000 - 13:59:55 EST

  • Next message: Hastings, Tom N: "PWG-IPP> EXC - Updated PWG Overrides for Documents and Pages down-loaded"

    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