📄 rfc2639.txt
字号:
protocol document and in the request). If the unknown group occurs in a different position, the IPP object REJECTS the request and RETURNS the 'client-error-bad-request' status code. Clients also ignore unknown attribute groups returned in a response. Note: By validating that requests are in the proper form, IPP objects force clients to use the proper form which, in turn, increases the chances that customers will be able to use such clients from multiple vendors with IPP objects from other vendors.2.2.1.4.3 Validate the presence of a single occurrence of required Operation attributes Client requests and IPP object responses contain Operation attributes that [RFC2566] Section 3 requires to be present. Attributes within a group may be in any order, except for the ordering of target, charset, and natural languages attributes. These attributes MUST be first, and MUST be supplied in the following order: charset, natural language, and then target. An IPP object verifies that the attributes that Section 4 requires to be supplied by the client have been supplied in the request (attributes without an * in the following tables). An asterisk (*) indicates groups and Operation attributes that the client may omit in a request or an IPP object may omit in a response. If an IPP object receives a request with required attributes missing or repeated from a group or in the wrong position, the behavior of the IPP object is IMPLEMENTATION DEPENDENT. Some of the possible implementations are: 1.REJECTS the request and RETURNS the 'client-error-bad-request' status code 2.accepts the request and uses the first occurrence of the attribute no matter where it is 3.accepts the request and uses the last occurrence of the attribute no matter where it is 4.accept the request and assume some default value for the missing attribute Therefore, client MUST send conforming requests, if they want to receive the same behavior from all IPP object implementations. For example, it is an error for the "attributes-charset" or "attributes- natural-language" attribute to be omitted in any operation request, or for an Operation attribute to be supplied in a Job Template groupHastings & Manros Informational [Page 13]RFC 2639 IPP/1.0: Implementer's Guide July 1999 or a Job Template attribute to be supplied in an Operation Attribute group in a create request. It is also an error to supply the "attributes-charset" attribute twice. Since these kinds of attribute errors are most likely to be detected by a client developer rather than by a customer, the IPP object NEED NOT return an indication of which attribute was in error in either the Unsupported Attributes group or the Status Message. Also, the IPP object NEED NOT find all attribute errors before returning this error. The following tables list all the attributes for all the operations by attribute group in each request and each response. The order of the groups is the order that the client supplies the groups as specified in [RFC2566] Section 3. The order of the attributes within a group is arbitrary, except as noted for some of the special operation attributes (charset, natural language, and target). The tables below use the following notation: R indicates a REQUIRED attribute that an IPP object MUST support O indicates an OPTIONAL attribute that an IPP object NEED NOT support * indicates that a client MAY omit the attribute in a request and that an IPP object MAY omit the attribute in a response. The absence of an * means that a client MUST supply the attribute in a request and an IPP object MUST supply the attribute in a response. Operation Requests The tables below show the attributes in their proper attribute groups for operation requests: Note: All operation requests contain "version-number", "operation- id", and "request-id" parameters. Print-Job Request: Group 1: Operation Attributes (R) attributes-charset (R) attributes-natural-language (R) printer-uri (R) requesting-user-name (R*) job-name (R*) ipp-attribute-fidelity (R*) document-name (R*) document-format (R*) document-natural-language (O*) compression (O*)Hastings & Manros Informational [Page 14]RFC 2639 IPP/1.0: Implementer's Guide July 1999 job-k-octets (O*) job-impressions (O*) job-media-sheets (O*) Group 2: Job Template Attributes (R*) <Job Template attributes> (O*) (see [RFC2566] Section 4.2) Group 3: Document Content (R) <document content> Validate-Job Request: Group 1: Operation Attributes (R) attributes-charset (R) attributes-natural-language (R) printer-uri (R) requesting-user-name (R*) job-name (R*) ipp-attribute-fidelity (R*) document-name (R*) document-format (R*) document-natural-language (O*) compression (O*) job-k-octets (O*) job-impressions (O*) job-media-sheets (O*) Group 2: Job Template Attributes (R*) <Job Template attributes> (O*) (see [RFC2566] Section 4.2) Create-Job Request: Group 1: Operation Attributes (R) attributes-charset (R) attributes-natural-language (R) printer-uri (R) requesting-user-name (R*) job-name (R*) ipp-attribute-fidelity (R*) job-k-octets (O*) job-impressions (O*) job-media-sheets (O*) Group 2: Job Template Attributes (R*) <Job Template attributes> (O*) (see (see [RFC2566] Section 4.2) Print-URI Request: Group 1: Operation Attributes (R) attributes-charset (R) attributes-natural-language (R) printer-uri (R)Hastings & Manros Informational [Page 15]RFC 2639 IPP/1.0: Implementer's Guide July 1999 document-uri (R) requesting-user-name (R*) job-name (R*) ipp-attribute-fidelity (R*) document-name (R*) document-format (R*) document-natural-language (O*) compression (O*) job-k-octets (O*) job-impressions (O*) job-media-sheets (O*) Group 2: Job Template Attributes (R*) <Job Template attributes> (O*) (see (see [RFC2566] Section 4.2) Send-Document Request: Group 1: Operation Attributes (R) attributes-charset (R) attributes-natural-language (R) (printer-uri & job-id) | job-uri (R) last-document (R) requesting-user-name (R*) document-name (R*) document-format (R*) document-natural-language (O*) compression (O*) Group 2: Document Content (R*) <document content> Send-URI Request: Group 1: Operation Attributes (R) attributes-charset (R) attributes-natural-language (R) (printer-uri & job-id) | job-uri (R) last-document (R) document-uri (R) requesting-user-name (R*) document-name (R*) document-format (R*) document-natural-language (O*) compression (O*)Hastings & Manros Informational [Page 16]RFC 2639 IPP/1.0: Implementer's Guide July 1999 Cancel-Job Request: Group 1: Operation Attributes (R) attributes-charset (R) attributes-natural-language (R) (printer-uri & job-id) | job-uri (R) requesting-user-name (R*) message (O*) Get-Printer-Attributes Request: Group 1: Operation Attributes (R) attributes-charset (R) attributes-natural-language (R) printer-uri (R) requesting-user-name (R*) requested-attributes (R*) document-format (R*) Get-Job-Attributes Request: Group 1: Operation Attributes (R) attributes-charset (R) attributes-natural-language (R) (printer-uri & job-id) | job-uri (R) requesting-user-name (R*) requested-attributes (R*) Get-Jobs Request: Group 1: Operation Attributes (R) attributes-charset (R) attributes-natural-language (R) printer-uri (R) requesting-user-name (R*) limit (R*) requested-attributes (R*) which-jobs (R*) my-jobs (R*) Operation Responses The tables below show the response attributes in their proper attribute groups for responses. Note: All operation responses contain "version-number", "status- code", and "request-id" parameters. Print-Job Response: Print-URI Response: Create-Job Response:Hastings & Manros Informational [Page 17]RFC 2639 IPP/1.0: Implementer's Guide July 1999 Send-Document Response: Send-URI Response: Group 1: Operation Attributes (R) attributes-charset (R) attributes-natural-language (R) status-message (O*) Group 2: Unsupported Attributes (R*) (see Note 3) <unsupported attributes> (R*) Group 3: Job Object Attributes(R*) (see Note 2) job-uri (R) job-id (R) job-state (R) job-state-reasons (O*) job-state-message (O*) number-of-intervening-jobs (O*) Validate-Job Response: Cancel-Job Response: Group 1: Operation Attributes (R) attributes-charset (R) attributes-natural-language (R) status-message (O*) Group 2: Unsupported Attributes (R*) (see Note 3) <unsupported attributes> (R*) Note 2 - the Job Object Attributes and Printer Object Attributes are returned only if the IPP object returns one of the success status codes. Note 3 - the Unsupported Attributes Group is present only if the client included some Operation and/or Job Template attributes or values that the Printer doesn't support whether a success or an error return. Get-Printer-Attributes Response: Group 1: Operation Attributes (R) attributes-charset (R) attributes-natural-language (R) status-message (O*) Group 2: Unsupported Attributes (R*) (see Note 4) <unsupported attributes> (R*) Group 3: Printer Object Attributes(R*) (see Note 2) <requested attributes> (R*) Note 4 - the Unsupported Attributes Group is present only if the client included some Operation attributes that the Printer doesn't support whether a success or an error return.Hastings & Manros Informational [Page 18]RFC 2639 IPP/1.0: Implementer's Guide July 1999
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -