attachment-0001
Hi Mike,<br><br>Needs discussion at IPP WG meeting and probably at PWG F2F.<br><br>Pete Zehler is understandably not in favor of moving away from the<br>Printer MIB model of subunit elements - I agree with him.<br><br>Bear in mind that the value of "output-bin" is simply the value of<br>
the "prtOutputName" element in Printer MIB - there's no obscurity<br>about correlation.<br><br>And "output-bin" as a sticky Job attribute was a late IPP addition <br>and is poorly supported (in my experience). "output-bin-default"<br>
has the same value as "prtOutputDefaultIndex->prtOutputName".<br><br>Cheers,<br>- Ira<br><br><br>Ira McDonald (Musician / Software Architect)<br>Chair - Linux Foundation Open Printing WG<br>Secretary - IEEE-ISTO Printer Working Group<br>
Co-Chair - IEEE-ISTO PWG IPP WG<br>Co-Chair - TCG Trusted Mobility Solutions WG<br>Chair - TCG Embedded Systems Hardcopy SG<br>IETF Designated Expert - IPP & Printer MIB<br>Blue Roof Music/High North Inc<br><a style="color:rgb(51, 51, 255)" href="http://sites.google.com/site/blueroofmusic" target="_blank">http://sites.google.com/site/blueroofmusic</a><br>
<a style="color:rgb(102, 0, 204)" href="http://sites.google.com/site/highnorthinc" target="_blank">http://sites.google.com/site/highnorthinc</a><br>mailto:<a href="mailto:blueroofmusic@gmail.com" target="_blank">blueroofmusic@gmail.com</a><br>
Winter 579 Park Place Saline, MI 48176 734-944-0094<br>Summer PO Box 221 Grand Marais, MI 49839 906-494-2434<div style="display:inline"></div><div style="display:inline"></div><div style="display:inline"></div><div>
</div><div></div><div></div><div></div><br>
<br><br><div class="gmail_quote">On Fri, Nov 11, 2011 at 2:35 AM, Michael Sweet <span dir="ltr"><<a href="mailto:msweet@apple.com">msweet@apple.com</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex;">
<div style="word-wrap:break-word"><div><div class="im"><div>On Nov 6, 2011, at 2:31 PM, Ira McDonald wrote:</div><blockquote type="cite"><br clear="all">Hi Mike, Sunday (6 November 2011)<br>
<br>Below is ABNF for new "printer-input-tray" and "printer-output-tray"<br>string attributes (i.e., 1setOf (octetString) since they're fixed in<br>
UTF-8 only and not variable charset).<br><br>They are based on Printer MIB v2 conformance requirements, media source<br>key properties, and DMTF CIM ranking activity by WIMS WG in 2006. The<br>reference for that activity (I think we should add as an Informative<br>
reference) is:<br><br>DMTF CIM Ranking of Printer MIB v2 Objects, WIMS WG, September 2006,<br><a href="ftp://ftp.pwg.org/pub/pwg/wims/cim/" target="_blank">ftp://ftp.pwg.org/pub/pwg/wims/cim/</a><br> PrinterMibObjectsToAdd_conclusions_20060921_F.pdf<br>
<br>Mike - note the attribute conformance tables have been included. Also<br>note I fixed the table headers to more accurate "Printer MIB Object".<br><br>Comments?<br></blockquote><div><br></div></div>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?</div>
<div><br></div><div>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.</div>
<div><div class="h5"><div><br></div><div><blockquote type="cite">Cheers,<br>- Ira<br><br>------------------------------------------------------------------------<br>
<br>Notes:<br><br>(1) prtInputIndex is OPTIONAL in "printer-input-tray", because<br>correlation with the original MIB order is considered unimportant.<br><br>(2) prtInputMediaName, prtInputMediaType, and prtInputMediaColor are<br>
RECOMMENDED in "printer-input-tray", because they are important but<br>often unknown to the printer (while loaded media dimensions are usually<br>known).<br><br>(3) prtInputMediaWeight is OPTIONAL in "printer-input-tray", because<br>
because most Printers can't sense loaded media weight.<br><br>(4) Printer MIB objects without corresponding IPP keywords are *not*<br>mapped, per DMTF CIM ranking activity in WIMS WG in 2006.<br><br> Table X - Keywords for printer-input-tray<br>
<br>Printer MIB Object IPP Datatype IPP Keyword Conformance<br>------------------ ------------ ----------- -----------<br>prtInput...<br>Index (note 1) Integer index OPTIONAL<br>
Type String type REQUIRED<br>DimUnit String dimunit RECOMMENDED<br>MediaDimFeedDirDeclared Integer mediafeed REQUIRED<br>MediaDimXFeedDirDeclared Integer mediaxfeed REQUIRED<br>
MediaDimFeedDirChosen --- --- ---<br>MediaDimXFeedDirChosen --- --- ---<br>CapacityUnit String unit RECOMMENDED<br>MaxCapacity Integer maxcapacity REQUIRED<br>
CurrentLevel Integer level REQUIRED<br>Status Integer status REQUIRED<br>MediaName (note 2) String medianame RECOMMENDED<br>Name String name REQUIRED<br>
VendorName --- --- ---<br>Model --- --- ---<br>Version --- --- ---<br>SerialNumber --- --- ---<br>
Security --- --- ---<br>MediaWeight (note 3) Integer mediaweight OPTIONAL<br>MediaType (note 2) String mediatype RECOMMENDED<br>MediaColor (note 2) String mediacolor RECOMMENDED<br>
MediaFormParts --- --- ---<br>MediaLoadTimeout --- --- ---<br>NextIndex --- --- ---<br><br><br> Examples of printer-input-tray<br>
<br>printer-input-tray[1] =<br> type=sheetFeedAutoRemovableTray;<br> mediafeed=110000;mediaxfeed=85000;<br> maxcapacity=500;level=100;status=8;name=Tray1;<br> index=1;dimunit=tenThousandthsOfInches;unit=sheets;<br>
medianame=na-letter;mediaweight=-2;<br> mediatype=stationery;mediacolor=blue;<br><br>printer-input-tray[2] =<br> type=sheetFeedAutoRemovableTray;<br> mediafeed=110000;mediaxfeed=85000;<br> maxcapacity=100;level=20;status=8;name=Tray2;<br>
index=2;dimunit=tenThousandthsOfInches;unit=sheets;<br> medianame=na-letter;mediaweight=-2;<br> mediatype=photographic;mediacolor=white;<br><br><br> Figure X - ABNF for "printer-input-tray" values<br>
<br>printer-input-tray = *input-required *[input-optional]<br> ; set of input elements encoded into one value<br><br>input-required = input-req ";"<br>input-req = input-type /<br> input-media-feed /<br>
input-media-xfeed /<br> input-max-capacity /<br> input-level /<br> input-status /<br> input-name<br><br>input-optional = input-opt ";"<br>
input-opt = input-index /<br> input-dim-unit /<br> input-unit /<br> input-media-name /<br> input-media-weight /<br> input-media-type /<br>
input-media-color<br><br>input-type = "type" "=" 1*ALPHA<br> ; enumerated value as an alpha string<br> ; (e.g., 'sheetFeedAutoRemovableTray') of prtInputType<br>
; in [RFC3805] mapped indirectly from<br> ; the *label* in PrtInputTypeTC in [IANAPRT]<br><br>input-media-feed = "mediafeed" "=" 1*[DIGIT / "-"]<br> ; integer value as a numeric string mapped directly from<br>
; prtInputMediaDimFeedDirDeclared in [RFC3805]<br><br>input-media-xfeed = "mediaxfeed" "=" 1*[DIGIT / "-"]<br> ; integer value as a numeric string mapped directly from<br> ; prtInputMediaDimXFeedDirDeclared in [RFC3805]<br>
<br>input-max-capacity = "maxcapacity" "=" 1*[DIGIT / "-"]<br> ; integer value as a numeric string mapped directly from<br> ; prtInputMaxCapacity in [RFC3805]<br><br>input-level = "level" "=" 1*[DIGIT / "-"]<br>
; integer value as a numeric string mapped directly from<br> ; prtInputCurrentLevel in [RFC3805]<br><br>input-status = "status" "=" 1*DIGIT<br> ; integer value as a numeric string mapped directly from<br>
; prtInputStatus in [RFC3805]<br><br>input-name = "name" "=" 1*ALPHA<br> ; string value as an alpha string mapped directly from<br> ; prtInputName in [RFC3805]<br><br><br>input-index = "index" "=" 1*DIGIT<br>
; integer value as a numeric string mapped directly from<br> ; prtInputIndex in [RFC3805]<br><br>input-dim-unit = "dimunit" "=" 1*ALPHA<br> ; enumerated value as an alpha string (e.g., 'other') of<br>
; prtInputDimUnit in [RFC3805] mapped indirectly from<br> ; the *label* in PrtMediaUnitTC in [RFC3805]<br><br>input-unit = "unit" "=" 1*ALPHA<br> ; enumerated value as an alpha string (e.g., 'other') of<br>
; prtInputCapacityUnit in [RFC3805] mapped indirectly from<br> ; the *label* in PrtCapacityUnitTC in [RFC3805]<br><br>input-media-name = "medianame" "=" 1*ALPHA<br> ; string value as an alpha string mapped directly from<br>
; prtInputMediaName in [RFC3805]<br><br>input-media-weight = "mediaweight" "=" 1*[DIGIT / "-"]<br> ; integer value as a numeric string mapped directly from<br> ; prtInputMediaWeight in [RFC3805]<br>
<br>input-media-type = "mediatype" "=" 1*ALPHA<br> ; string value as an alpha string mapped directly from<br> ; prtInputMediaType in [RFC3805]<br><br>input-media-color = "mediacolor" "=" 1*ALPHA<br>
; string value as an alpha string mapped directly from<br> ; prtInputMediaColor in [RFC3805]<br><br>------------------------------------------------------------------------<br><br>Notes:<br><br>(1) prtOutputIndex is OPTIONAL in "printer-output-tray", because<br>
correlation with the original MIB order is considered unimportant.<br><br>(2) prtOutputDimUnit, prtOutputMaxDimFeedDir, prtOutputMaxDimXFeedDir,<br>prtOutputMinDimFeedDir, and prtOutputMinDimXFeedDir are *not* mapped,<br>
because they were rated "C" (low priority) in the DMTF CIM ranking<br>activity in WIMS WG in 2006.<br><br>(3) prtOutputStackingOrder, prtOututPageDeliveryOrientation, and<br>prtOutputOffsetStacking are OPTIONAL in "printer-output-tray", because<br>
they were rated "B" (medium priority) in the DMTF CIM ranking activity<br>in WIMS WG in 2006.<br><br>(4) Printer MIB objects without corresponding IPP keywords are *not*<br>mapped, per DMTF CIM ranking activity in WIMS WG in 2006.<br>
<br> Table Y - Keywords for printer-output-tray<br><br>Printer MIB Object IPP Datatype IPP Keyword Conformance<br>------------------ ------------ ----------- -----------<br>prtOutput...<br>
Index (note 1) Integer index OPTIONAL<br>Type String type REQUIRED<br>CapacityUnit String unit RECOMMENDED<br>MaxCapacity Integer maxcapacity REQUIRED<br>
RemainingCapacity Integer remaining REQUIRED<br>Status Integer status REQUIRED<br>Name String name REQUIRED<br>VendorName --- --- ---<br>
Model --- --- ---<br>Version --- --- ---<br>SerialNumber --- --- ---<br>Security --- --- ---<br>
DimUnit (note 2) --- --- ---<br>MaxDimFeedDir (note 2) --- --- ---<br>MaxDimXFeedDir (note 2) --- --- ---<br>MinDimFeedDir (note 2) --- --- ---<br>
MinDimXFeedDir (note 2) --- --- ---<br>StackingOrder (note 3) String stackingorder OPTIONAL<br>PageDeliveryOrientation String pagedelivery OPTIONAL<br> (note 3)<br>
Bursting --- --- ---<br>Decollating --- --- ---<br>PageCollated --- --- ---<br>OffsetStacking (note 3) String offsetstacking OPTIONAL<br>
<br><br> Examples of printer-output-tray<br><br>printer-output-tray[1] =<br> type=removableBin;<br> maxcapacity=500;remaining=-3;status=12;name=LeftOutputBin;<br> index=1;unit=sheets;stackingorder=firstToLast;<br>
pagedelivery=faceDown;offsetstacking=notPresent;<br><br>printer-output-tray[2] =<br> type=removableBin;<br> maxcapacity=300;remaining=-3;status=0;name=RightOutputBin;<br> index=2;unit=sheets;stackingorder=firstToLast;<br>
pagedelivery=faceDown;offsetstacking=notPresent;<br><br><br> Figure Y - ABNF for "printer-output-tray" values<br><br>printer-output-tray = *output-required *[output-optional]<br> ; set of output elements encoded into one value<br>
<br>output-required = output-req ";"<br>output-req = output-type /<br> output-max-capacity /<br> output-remaining /<br> output-status /<br>
output-name<br><br>output-optional = output-opt ";"<br>output-opt = output-index /<br> output-unit /<br> output-stacking-order /<br> output-page-delivery /<br>
output-offset-stacking<br><br>output-type = "type" "=" 1*ALPHA<br> ; enumerated value as an alpha string<br> ; (e.g., 'removableBin') of prtOutputType<br> ; in [RFC3805] mapped indirectly from<br>
; the *label* in PrtOutputTypeTC in [IANAPRT]<br><br>output-max-capacity = "maxcapacity" "=" 1*[DIGIT / "-"]<br> ; integer value as a numeric string mapped directly from<br> ; prtOutputMaxCapacity in [RFC3805]<br>
<br>output-remaining = "remaining" "=" 1*[DIGIT / "-"]<br> ; integer value as a numeric string mapped directly from<br> ; prtOutputRemainingCapacity in [RFC3805]<br><br>output-status = "status" "=" 1*DIGIT<br>
; integer value as a numeric string mapped directly from<br> ; prtOutputStatus in [RFC3805]<br><br>output-name = "name" "=" 1*ALPHA<br> ; string value as an alpha string mapped directly from<br>
; prtOutputName in [RFC3805]<br><br><br>output-index = "index" "=" 1*DIGIT<br> ; integer value as a numeric string mapped directly from<br> ; prtOutputIndex in [RFC3805]<br><br>output-unit = "unit" "=" 1*ALPHA<br>
; enumerated value as an alpha string (e.g., 'other') of<br> ; prtOutputCapacityUnit in [RFC3805] mapped indirectly from<br> ; the *label* in PrtCapacityUnitTC in [RFC3805]<br><br>output-stacking-order = "stackingorder" "=" 1*ALPHA<br>
; enumerated value as an alpha string (e.g., 'firstToLast') of<br> ; prtOutputStackingOrder in [RFC3805] mapped indirectly from<br> ; the *label* in PrtOutputStackingOrderTC in [RFC3805]<br><br>output-page-delivery = "pagedelivery" "=" 1*ALPHA<br>
; enumerated value as an alpha string (e.g., 'faceUp') of<br> ; prtOutputPageDeliveryOrientation in [RFC3805] mapped indirectly<br> ; from the *label* in PrtOutputPageDeliveryOrientationTC in<br> ; [RFC3805]<br>
<br>output-offset-stacking = "offsetstacking" "=" 1*ALPHA<br> ; enumerated value as an alpha string (e.g., 'notPresent') of<br> ; prtOutputOffsetStacking in [RFC3805] mapped indirectly from<br>
; the *label* in PresentOnOff in [RFC3805]<br><br>------------------------------------------------------------------------<br><br>
<div></div>
</blockquote></div><br></div></div><div>
<span style="border-collapse:separate;color:rgb(0, 0, 0);font-family:Helvetica;font-style:normal;font-variant:normal;font-weight:normal;letter-spacing:normal;line-height:normal;text-align:-webkit-auto;text-indent:0px;text-transform:none;white-space:normal;word-spacing:0px;font-size:medium"><div>
__________________________________________________</div><div>Michael Sweet, Senior Printing System Engineer, PWG Chair<br></div></span>
</div>
<br></div></blockquote></div><br><div style="visibility: hidden; left: -5000px;" id="avg_ls_inline_popup"></div>
<br />--
<br />This message has been scanned for viruses and
<br />dangerous content by
<a href="http://www.mailscanner.info/"><b>MailScanner</b></a>, and is
<br />believed to be clean.