request-id in each request to a unique value or a constant value,
such as 1, depending on what the client does with the request-id
RFC 2565 IPP/1.0: Encoding and Transport April 1999
returned in the response. The value of the request-id MUST be greater
than zero.
3.7 Tags
There are two kinds of tags:
- delimiter tags: delimit major sections of the protocol, namely
attributes and data
- value tags: specify the type of each attribute value
3.7.1 Delimiter Tags
The following table specifies the values for the delimiter tags:
Tag Value (Hex) Delimiter
0x00 reserved
0x01 operation-attributes-tag
0x02 job-attributes-tag
0x03 end-of-attributes-tag
0x04 printer-attributes-tag
0x05 unsupported-attributes-tag
0x06-0x0e reserved for future delimiters
0x0F reserved for future chunking-end-of-attributes-
tag
When an xxx-attributes-tag occurs in the protocol, it MUST mean that
zero or more following attributes up to the next delimiter tag are
attributes belonging to group xxx as defined in the model document,
where xxx is operation, job, printer, unsupported.
Doing substitution for xxx in the above paragraph, this means the
following. When an operation-attributes-tag occurs in the protocol,
it MUST mean that the zero or more following attributes up to the
next delimiter tag are operation attributes as defined in the model
document. When an job-attributes-tag occurs in the protocol, it MUST
mean that the zero or more following attributes up to the next
delimiter tag are job attributes or job template attributes as
defined in the model document. When a printer-attributes-tag occurs
in the protocol, it MUST mean that the zero or more following
attributes up to the next delimiter tag are printer attributes as
defined in the model document. When an unsupported-attributes-tag
occurs in the protocol, it MUST mean that the zero or more following
attributes up to the next delimiter tag are unsupported attributes as
defined in the model document.
RFC 2565 IPP/1.0: Encoding and Transport April 1999
The operation-attributes-tag and end-of-attributes-tag MUST each
occur exactly once in an operation. The operation-attributes-tag MUST
be the first tag delimiter, and the end-of-attributes-tag MUST be the
last tag delimiter. If the operation has a document-content group,
the document data in that group MUST follow the end-of-attributes-
tag.
Each of the other three xxx-attributes-tags defined above is
OPTIONAL in an operation and each MUST occur at most once in an
operation, except for job-attributes-tag in a Get-Jobs response which
may occur zero or more times.
The order and presence of delimiter tags for each operation request
and each operation response MUST be that defined in the model
document. For further details, see section 3.9 "(Attribute) Name" and
section 9 "Appendix A: Protocol Examples".
A Printer MUST treat the reserved delimiter tags differently from
reserved value tags so that the Printer knows that there is an entire
attribute group that it doesn't understand as opposed to a single
value that it doesn't understand.
3.7.2 Value Tags
The remaining tables show values for the value-tag, which is the
first octet of an attribute. The value-tag specifies the type of the
value of the attribute. The following table specifies the "out-of-
band" values for the value-tag.
Tag Value (Hex) Meaning
0x10 unsupported
0x11 reserved for future 'default'
0x12 unknown
=6= |