[IPP] media-ready (1setOf (type2 keyword | name))

[IPP] media-ready (1setOf (type2 keyword | name))

Michael Sweet msweet at msweet.org
Thu Oct 24 18:53:16 UTC 2024


Chris,

> On Oct 24, 2024, at 12:27 PM, Rizzo, Christopher via ipp <ipp at pwg.org> wrote:
> 
> Just checking my understanding…
>  Given the following RFC 8011 definition for 1setOf X attributes:
>  5.1.18. ’1setOf X’
> The ’1setOf X’ attribute syntax is one or more values of attribute
> syntax type X. This syntax type is used for multi-valued attributes.
> The syntax type is called ’1setOf’ rather than just ’setOf’ as a
> reminder that the set of values MUST NOT be empty (i.e., a set of
> size 0). Sets are normally unordered; however, each attribute
> description of this type can specify that the values MUST be in a
> certain order for that attribute.
>  From 5.2.11:
> "media-ready", which differs from "media-supported" in that legal values only
> include the subset of "media-supported" values that are physically
> loaded and ready for printing with no Operator intervention required.
>  If there is no media present in any trays of a printer, and media-ready attribute is not allowed to have 0 values, how is media-ready supposed to be show that there is no media ready in a Get-Printer-Attributes response? Should the Tag Value (0x13) ‘no-value’ be used instead of (0x44) keyword? This somewhat implies a modification of the data type of media-ready from 1SetOf X to no-value?  If this is so, then I also presume that for any out of band values, there is no value-length or value appended to the encoding of Attribute-with-one-value

Generally speaking you can use the 'no-value' out-of-band value to specify there is no chosen value for an attribute, but in the case of "supported" and "ready" 1SetOf values the correct behavior is to *omit* the attribute from the response (no attribute == not supported or not available).

Understanding that some printing standards do require support for "media-supported", any conformance testing you do should be done with media loaded in the printer... :)


> (RFC 8010 Section 3.1.4).
>  ===========================
>  Also – another question I’ve always wondered but would like to verify:
>  The data type “1setOf (type2 keyword | name(MAX))” seems to imply that any attributes of this type can either be
>  
>     • 1setOf(type2 keyword) only or
>     • 2setOf(name(MAX)) only

No, the syntax allows a mix of name and keyword values.  That said, many implementation (CUPS included) will treat a mix of name and keyword values as a set of name values for simplicity's sake - they are all just strings in the end and keywords are just a subset of the allowed name values.

________________________
Michael Sweet



More information about the ipp mailing list