Ira,
WRT output-bin vs prtOutputName, I have never seen a printer use the same names in both places (not that many printers support output-bin in the first place...) particularly for the usual case of a single output bin where the name is face-up or face-down.
Also, the existing media-source-properties member attribute was proposed by Pete; as you say this needs further discussion (probably a good hour of the f2f)
Sent from my iPad
On Nov 11, 2011, at 12:28 PM, Ira McDonald <blueroofmusic at gmail.com> wrote:
> Hi Mike,
>> Needs discussion at IPP WG meeting and probably at PWG F2F.
>> Pete Zehler is understandably not in favor of moving away from the
> Printer MIB model of subunit elements - I agree with him.
>> Bear in mind that the value of "output-bin" is simply the value of
> the "prtOutputName" element in Printer MIB - there's no obscurity
> about correlation.
>> And "output-bin" as a sticky Job attribute was a late IPP addition
> and is poorly supported (in my experience). "output-bin-default"
> has the same value as "prtOutputDefaultIndex->prtOutputName".
>> Cheers,
> - Ira
>>> Ira McDonald (Musician / Software Architect)
> Chair - Linux Foundation Open Printing WG
> Secretary - IEEE-ISTO Printer Working Group
> Co-Chair - IEEE-ISTO PWG IPP WG
> Co-Chair - TCG Trusted Mobility Solutions WG
> Chair - TCG Embedded Systems Hardcopy SG
> IETF Designated Expert - IPP & Printer MIB
> Blue Roof Music/High North Inc
>http://sites.google.com/site/blueroofmusic>http://sites.google.com/site/highnorthinc> mailto:blueroofmusic at gmail.com> Winter 579 Park Place Saline, MI 48176 734-944-0094
> Summer PO Box 221 Grand Marais, MI 49839 906-494-2434
>>>> On Fri, Nov 11, 2011 at 2:35 AM, Michael Sweet <msweet at apple.com> wrote:
> On Nov 6, 2011, at 2:31 PM, Ira McDonald wrote:
>>>> Hi Mike, Sunday (6 November 2011)
>>>> Below is ABNF for new "printer-input-tray" and "printer-output-tray"
>> string attributes (i.e., 1setOf (octetString) since they're fixed in
>> UTF-8 only and not variable charset).
>>>> They are based on Printer MIB v2 conformance requirements, media source
>> key properties, and DMTF CIM ranking activity by WIMS WG in 2006. The
>> reference for that activity (I think we should add as an Informative
>> reference) is:
>>>> DMTF CIM Ranking of Printer MIB v2 Objects, WIMS WG, September 2006,
>>ftp://ftp.pwg.org/pub/pwg/wims/cim/>> PrinterMibObjectsToAdd_conclusions_20060921_F.pdf
>>>> Mike - note the attribute conformance tables have been included. Also
>> note I fixed the table headers to more accurate "Printer MIB Object".
>>>> Comments?
>> OK, so I am concerned that we are providing input tray information in two different places. The current media-col-ready attribute provides most of the information in printer-input-tray - as of JPS3 the only missing information is the current level, max capacity, capacity unit, and status. Seems like we could simply add those to the media-source-properties (or a new media-status) collection member attribute instead?
>> As for printer-output-tray, I'm not sure how a Client could correlate the values with output-bin/output-bin-default/output-bin-supported? I almost think we want an output-bin-ready or output-bin-status 1setOf collection attribute instead that correlates the output tray information to output-bin values.
>>> Cheers,
>> - Ira
>>>> ------------------------------------------------------------------------
>>>> Notes:
>>>> (1) prtInputIndex is OPTIONAL in "printer-input-tray", because
>> correlation with the original MIB order is considered unimportant.
>>>> (2) prtInputMediaName, prtInputMediaType, and prtInputMediaColor are
>> RECOMMENDED in "printer-input-tray", because they are important but
>> often unknown to the printer (while loaded media dimensions are usually
>> known).
>>>> (3) prtInputMediaWeight is OPTIONAL in "printer-input-tray", because
>> because most Printers can't sense loaded media weight.
>>>> (4) Printer MIB objects without corresponding IPP keywords are *not*
>> mapped, per DMTF CIM ranking activity in WIMS WG in 2006.
>>>> Table X - Keywords for printer-input-tray
>>>> Printer MIB Object IPP Datatype IPP Keyword Conformance
>> ------------------ ------------ ----------- -----------
>> prtInput...
>> Index (note 1) Integer index OPTIONAL
>> Type String type REQUIRED
>> DimUnit String dimunit RECOMMENDED
>> MediaDimFeedDirDeclared Integer mediafeed REQUIRED
>> MediaDimXFeedDirDeclared Integer mediaxfeed REQUIRED
>> MediaDimFeedDirChosen --- --- ---
>> MediaDimXFeedDirChosen --- --- ---
>> CapacityUnit String unit RECOMMENDED
>> MaxCapacity Integer maxcapacity REQUIRED
>> CurrentLevel Integer level REQUIRED
>> Status Integer status REQUIRED
>> MediaName (note 2) String medianame RECOMMENDED
>> Name String name REQUIRED
>> VendorName --- --- ---
>> Model --- --- ---
>> Version --- --- ---
>> SerialNumber --- --- ---
>> Security --- --- ---
>> MediaWeight (note 3) Integer mediaweight OPTIONAL
>> MediaType (note 2) String mediatype RECOMMENDED
>> MediaColor (note 2) String mediacolor RECOMMENDED
>> MediaFormParts --- --- ---
>> MediaLoadTimeout --- --- ---
>> NextIndex --- --- ---
>>>>>> Examples of printer-input-tray
>>>> printer-input-tray[1] =
>> type=sheetFeedAutoRemovableTray;
>> mediafeed=110000;mediaxfeed=85000;
>> maxcapacity=500;level=100;status=8;name=Tray1;
>> index=1;dimunit=tenThousandthsOfInches;unit=sheets;
>> medianame=na-letter;mediaweight=-2;
>> mediatype=stationery;mediacolor=blue;
>>>> printer-input-tray[2] =
>> type=sheetFeedAutoRemovableTray;
>> mediafeed=110000;mediaxfeed=85000;
>> maxcapacity=100;level=20;status=8;name=Tray2;
>> index=2;dimunit=tenThousandthsOfInches;unit=sheets;
>> medianame=na-letter;mediaweight=-2;
>> mediatype=photographic;mediacolor=white;
>>>>>> Figure X - ABNF for "printer-input-tray" values
>>>> printer-input-tray = *input-required *[input-optional]
>> ; set of input elements encoded into one value
>>>> input-required = input-req ";"
>> input-req = input-type /
>> input-media-feed /
>> input-media-xfeed /
>> input-max-capacity /
>> input-level /
>> input-status /
>> input-name
>>>> input-optional = input-opt ";"
>> input-opt = input-index /
>> input-dim-unit /
>> input-unit /
>> input-media-name /
>> input-media-weight /
>> input-media-type /
>> input-media-color
>>>> input-type = "type" "=" 1*ALPHA
>> ; enumerated value as an alpha string
>> ; (e.g., 'sheetFeedAutoRemovableTray') of prtInputType
>> ; in [RFC3805] mapped indirectly from
>> ; the *label* in PrtInputTypeTC in [IANAPRT]
>>>> input-media-feed = "mediafeed" "=" 1*[DIGIT / "-"]
>> ; integer value as a numeric string mapped directly from
>> ; prtInputMediaDimFeedDirDeclared in [RFC3805]
>>>> input-media-xfeed = "mediaxfeed" "=" 1*[DIGIT / "-"]
>> ; integer value as a numeric string mapped directly from
>> ; prtInputMediaDimXFeedDirDeclared in [RFC3805]
>>>> input-max-capacity = "maxcapacity" "=" 1*[DIGIT / "-"]
>> ; integer value as a numeric string mapped directly from
>> ; prtInputMaxCapacity in [RFC3805]
>>>> input-level = "level" "=" 1*[DIGIT / "-"]
>> ; integer value as a numeric string mapped directly from
>> ; prtInputCurrentLevel in [RFC3805]
>>>> input-status = "status" "=" 1*DIGIT
>> ; integer value as a numeric string mapped directly from
>> ; prtInputStatus in [RFC3805]
>>>> input-name = "name" "=" 1*ALPHA
>> ; string value as an alpha string mapped directly from
>> ; prtInputName in [RFC3805]
>>>>>> input-index = "index" "=" 1*DIGIT
>> ; integer value as a numeric string mapped directly from
>> ; prtInputIndex in [RFC3805]
>>>> input-dim-unit = "dimunit" "=" 1*ALPHA
>> ; enumerated value as an alpha string (e.g., 'other') of
>> ; prtInputDimUnit in [RFC3805] mapped indirectly from
>> ; the *label* in PrtMediaUnitTC in [RFC3805]
>>>> input-unit = "unit" "=" 1*ALPHA
>> ; enumerated value as an alpha string (e.g., 'other') of
>> ; prtInputCapacityUnit in [RFC3805] mapped indirectly from
>> ; the *label* in PrtCapacityUnitTC in [RFC3805]
>>>> input-media-name = "medianame" "=" 1*ALPHA
>> ; string value as an alpha string mapped directly from
>> ; prtInputMediaName in [RFC3805]
>>>> input-media-weight = "mediaweight" "=" 1*[DIGIT / "-"]
>> ; integer value as a numeric string mapped directly from
>> ; prtInputMediaWeight in [RFC3805]
>>>> input-media-type = "mediatype" "=" 1*ALPHA
>> ; string value as an alpha string mapped directly from
>> ; prtInputMediaType in [RFC3805]
>>>> input-media-color = "mediacolor" "=" 1*ALPHA
>> ; string value as an alpha string mapped directly from
>> ; prtInputMediaColor in [RFC3805]
>>>> ------------------------------------------------------------------------
>>>> Notes:
>>>> (1) prtOutputIndex is OPTIONAL in "printer-output-tray", because
>> correlation with the original MIB order is considered unimportant.
>>>> (2) prtOutputDimUnit, prtOutputMaxDimFeedDir, prtOutputMaxDimXFeedDir,
>> prtOutputMinDimFeedDir, and prtOutputMinDimXFeedDir are *not* mapped,
>> because they were rated "C" (low priority) in the DMTF CIM ranking
>> activity in WIMS WG in 2006.
>>>> (3) prtOutputStackingOrder, prtOututPageDeliveryOrientation, and
>> prtOutputOffsetStacking are OPTIONAL in "printer-output-tray", because
>> they were rated "B" (medium priority) in the DMTF CIM ranking activity
>> in WIMS WG in 2006.
>>>> (4) Printer MIB objects without corresponding IPP keywords are *not*
>> mapped, per DMTF CIM ranking activity in WIMS WG in 2006.
>>>> Table Y - Keywords for printer-output-tray
>>>> Printer MIB Object IPP Datatype IPP Keyword Conformance
>> ------------------ ------------ ----------- -----------
>> prtOutput...
>> Index (note 1) Integer index OPTIONAL
>> Type String type REQUIRED
>> CapacityUnit String unit RECOMMENDED
>> MaxCapacity Integer maxcapacity REQUIRED
>> RemainingCapacity Integer remaining REQUIRED
>> Status Integer status REQUIRED
>> Name String name REQUIRED
>> VendorName --- --- ---
>> Model --- --- ---
>> Version --- --- ---
>> SerialNumber --- --- ---
>> Security --- --- ---
>> DimUnit (note 2) --- --- ---
>> MaxDimFeedDir (note 2) --- --- ---
>> MaxDimXFeedDir (note 2) --- --- ---
>> MinDimFeedDir (note 2) --- --- ---
>> MinDimXFeedDir (note 2) --- --- ---
>> StackingOrder (note 3) String stackingorder OPTIONAL
>> PageDeliveryOrientation String pagedelivery OPTIONAL
>> (note 3)
>> Bursting --- --- ---
>> Decollating --- --- ---
>> PageCollated --- --- ---
>> OffsetStacking (note 3) String offsetstacking OPTIONAL
>>>>>> Examples of printer-output-tray
>>>> printer-output-tray[1] =
>> type=removableBin;
>> maxcapacity=500;remaining=-3;status=12;name=LeftOutputBin;
>> index=1;unit=sheets;stackingorder=firstToLast;
>> pagedelivery=faceDown;offsetstacking=notPresent;
>>>> printer-output-tray[2] =
>> type=removableBin;
>> maxcapacity=300;remaining=-3;status=0;name=RightOutputBin;
>> index=2;unit=sheets;stackingorder=firstToLast;
>> pagedelivery=faceDown;offsetstacking=notPresent;
>>>>>> Figure Y - ABNF for "printer-output-tray" values
>>>> printer-output-tray = *output-required *[output-optional]
>> ; set of output elements encoded into one value
>>>> output-required = output-req ";"
>> output-req = output-type /
>> output-max-capacity /
>> output-remaining /
>> output-status /
>> output-name
>>>> output-optional = output-opt ";"
>> output-opt = output-index /
>> output-unit /
>> output-stacking-order /
>> output-page-delivery /
>> output-offset-stacking
>>>> output-type = "type" "=" 1*ALPHA
>> ; enumerated value as an alpha string
>> ; (e.g., 'removableBin') of prtOutputType
>> ; in [RFC3805] mapped indirectly from
>> ; the *label* in PrtOutputTypeTC in [IANAPRT]
>>>> output-max-capacity = "maxcapacity" "=" 1*[DIGIT / "-"]
>> ; integer value as a numeric string mapped directly from
>> ; prtOutputMaxCapacity in [RFC3805]
>>>> output-remaining = "remaining" "=" 1*[DIGIT / "-"]
>> ; integer value as a numeric string mapped directly from
>> ; prtOutputRemainingCapacity in [RFC3805]
>>>> output-status = "status" "=" 1*DIGIT
>> ; integer value as a numeric string mapped directly from
>> ; prtOutputStatus in [RFC3805]
>>>> output-name = "name" "=" 1*ALPHA
>> ; string value as an alpha string mapped directly from
>> ; prtOutputName in [RFC3805]
>>>>>> output-index = "index" "=" 1*DIGIT
>> ; integer value as a numeric string mapped directly from
>> ; prtOutputIndex in [RFC3805]
>>>> output-unit = "unit" "=" 1*ALPHA
>> ; enumerated value as an alpha string (e.g., 'other') of
>> ; prtOutputCapacityUnit in [RFC3805] mapped indirectly from
>> ; the *label* in PrtCapacityUnitTC in [RFC3805]
>>>> output-stacking-order = "stackingorder" "=" 1*ALPHA
>> ; enumerated value as an alpha string (e.g., 'firstToLast') of
>> ; prtOutputStackingOrder in [RFC3805] mapped indirectly from
>> ; the *label* in PrtOutputStackingOrderTC in [RFC3805]
>>>> output-page-delivery = "pagedelivery" "=" 1*ALPHA
>> ; enumerated value as an alpha string (e.g., 'faceUp') of
>> ; prtOutputPageDeliveryOrientation in [RFC3805] mapped indirectly
>> ; from the *label* in PrtOutputPageDeliveryOrientationTC in
>> ; [RFC3805]
>>>> output-offset-stacking = "offsetstacking" "=" 1*ALPHA
>> ; enumerated value as an alpha string (e.g., 'notPresent') of
>> ; prtOutputOffsetStacking in [RFC3805] mapped indirectly from
>> ; the *label* in PresentOnOff in [RFC3805]
>>>> ------------------------------------------------------------------------
>>>> __________________________________________________
> Michael Sweet, Senior Printing System Engineer, PWG Chair
>>
--
This message has been scanned for viruses and
dangerous content by MailScanner, and is
believed to be clean.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://www.pwg.org/pipermail/ipp/attachments/20111112/4c19028d/attachment-0001.html>