Network Working Group                                           R. deBry
Request for Comments: 3382                     Utah Valley State College
Updates: 2910, 2911                                           R. Herriot
Category: Standards Track                                     Consultant
                                                             T. Hastings
                                                                 K. Ocke
                                                               P. Zehler
                                                       Xerox Corporation
                                                          September 2002
        
Network Working Group                                           R. deBry
Request for Comments: 3382                     Utah Valley State College
Updates: 2910, 2911                                           R. Herriot
Category: Standards Track                                     Consultant
                                                             T. Hastings
                                                                 K. Ocke
                                                               P. Zehler
                                                       Xerox Corporation
                                                          September 2002
        

Internet Printing Protocol (IPP): The 'collection' attribute syntax

Internet打印协议(IPP):“collection”属性语法

Status of this Memo

本备忘录的状况

This document specifies an Internet standards track protocol for the Internet community, and requests discussion and suggestions for improvements. Please refer to the current edition of the "Internet Official Protocol Standards" (STD 1) for the standardization state and status of this protocol. Distribution of this memo is unlimited.

本文件规定了互联网社区的互联网标准跟踪协议,并要求进行讨论和提出改进建议。有关本协议的标准化状态和状态,请参考当前版本的“互联网官方协议标准”(STD 1)。本备忘录的分发不受限制。

Copyright Notice

版权公告

Copyright (C) The Internet Society (2002). All Rights Reserved.

版权所有(C)互联网协会(2002年)。版权所有。

Abstract

摘要

This document specifies an OPTIONAL attribute syntax called 'collection' for use with the Internet Printing Protocol (IPP/1.0 and IPP/1.1). A 'collection' is a container holding one or more named values, which are called "member" attributes. A collection allows data to be grouped like a PostScript dictionary or a Java Map. This document also specifies the conformance requirements for a definition document that defines a collection attribute. Finally, this document gives some illustrative example collection attribute definitions that are not intended as actual attribute specifications.

本文档指定了一种称为“collection”的可选属性语法,用于Internet打印协议(IPP/1.0和IPP/1.1)。“集合”是包含一个或多个命名值的容器,这些命名值称为“成员”属性。集合允许像PostScript字典或Java映射一样对数据进行分组。本文档还指定了定义集合属性的定义文档的一致性要求。最后,本文档给出了一些示例集合属性定义,这些定义并不作为实际的属性规范。

Table of Contents

目录

   1 Introduction.....................................................3
   1.1 Problem Statement..............................................3
   1.2 Solution.......................................................3
   2 Terminology......................................................4
   2.1 Conformance Terminology........................................4
   2.2 Other terminology..............................................5
   3 Definition of a Collection Attribute.............................5
   3.1 Information to Include.........................................5
        
   1 Introduction.....................................................3
   1.1 Problem Statement..............................................3
   1.2 Solution.......................................................3
   2 Terminology......................................................4
   2.1 Conformance Terminology........................................4
   2.2 Other terminology..............................................5
   3 Definition of a Collection Attribute.............................5
   3.1 Information to Include.........................................5
        
   3.2 Nested Collections.............................................9
   4 Collection Attributes as Attributes in Operations................9
   4.1 General Rules..................................................9
   4.2 Unsupported Values.............................................9
   5 Example definition of a collection attribute.....................9
   5.1 media-col (collection)........................................10
   5.1.1 media-color (type3 keyword | name(MAX)......................10
   5.1.2 media-size (collection).....................................11
   5.2 media-col-default (collection)................................11
   5.3 media-col-ready (1setOf collection)...........................12
   5.4 media-col-supported (1setOf type2 keyword)....................12
   6 A Second Example Definition Of A Collection Attribute...........12
   7 Encoding........................................................13
   7.1 Additional tags defined for representing a collection
       attribute value...............................................13
   7.2 Example encoding: "media-col" (collection)....................14
   8 Legacy issues...................................................20
   9 IANA Considerations.............................................20
   10 Internationalization Considerations............................20
   11 Security Considerations........................................21
   12 References.....................................................21
   Appendix A: Encoding Example of a Simple Collection (Informative).22
   Appendix B: Encoding Example of 1setOf Collection (Informative)...25
   Appendix C: Encoding Example of Collection containing 1setOf XXX
               attribute (Informative)...............................31
   Appendix D: Description of the Base IPP Documents (Informative)...35
   Authors' Addresses................................................36
   Full Copyright Statement..........................................38
        
   3.2 Nested Collections.............................................9
   4 Collection Attributes as Attributes in Operations................9
   4.1 General Rules..................................................9
   4.2 Unsupported Values.............................................9
   5 Example definition of a collection attribute.....................9
   5.1 media-col (collection)........................................10
   5.1.1 media-color (type3 keyword | name(MAX)......................10
   5.1.2 media-size (collection).....................................11
   5.2 media-col-default (collection)................................11
   5.3 media-col-ready (1setOf collection)...........................12
   5.4 media-col-supported (1setOf type2 keyword)....................12
   6 A Second Example Definition Of A Collection Attribute...........12
   7 Encoding........................................................13
   7.1 Additional tags defined for representing a collection
       attribute value...............................................13
   7.2 Example encoding: "media-col" (collection)....................14
   8 Legacy issues...................................................20
   9 IANA Considerations.............................................20
   10 Internationalization Considerations............................20
   11 Security Considerations........................................21
   12 References.....................................................21
   Appendix A: Encoding Example of a Simple Collection (Informative).22
   Appendix B: Encoding Example of 1setOf Collection (Informative)...25
   Appendix C: Encoding Example of Collection containing 1setOf XXX
               attribute (Informative)...............................31
   Appendix D: Description of the Base IPP Documents (Informative)...35
   Authors' Addresses................................................36
   Full Copyright Statement..........................................38
        

Table of Tables

表格

   Table 1 - "media-col" member attributes...........................10
   Table 2 - "media-size" collection member attributes...............11
   Table 3 - Tags defined for encoding the 'collection' attribute
             syntax .................................................13
   Table 4 - Overview Encoding of "media-col" collection.............15
   Table 5 - Example Encoding of "media-col" collection..............16
   Table 6 - Overview Encoding of simple collection..................22
   Table 7 - Example Encoding of simple collection...................22
   Table 8 - Overview Encoding of 1setOf collection..................25
   Table 9 - Example Encoding of 1setOf collection...................26
   Table 10 - Overview Encoding of collection with 1setOf value......31
   Table 11 - Example Encoding of collection with 1setOf value.......32
        
   Table 1 - "media-col" member attributes...........................10
   Table 2 - "media-size" collection member attributes...............11
   Table 3 - Tags defined for encoding the 'collection' attribute
             syntax .................................................13
   Table 4 - Overview Encoding of "media-col" collection.............15
   Table 5 - Example Encoding of "media-col" collection..............16
   Table 6 - Overview Encoding of simple collection..................22
   Table 7 - Example Encoding of simple collection...................22
   Table 8 - Overview Encoding of 1setOf collection..................25
   Table 9 - Example Encoding of 1setOf collection...................26
   Table 10 - Overview Encoding of collection with 1setOf value......31
   Table 11 - Example Encoding of collection with 1setOf value.......32
        

1 Introduction

1导言

This document is an OPTIONAL extension to IPP/1.0 [RFC2565, RFC2566] and IPP/1.1 [RFC2911, RFC2910]. For a description of the base IPP documents see Appendix D.

本文档是IPP/1.0[RFC2565,RFC2566]和IPP/1.1[RFC2911,RFC2910]的可选扩展。有关基本IPP文件的说明,请参见附录D。

1.1 Problem Statement
1.1 问题陈述

The IPP Model and Semantics [RFC2911] supports most of the common data structures that are available in programming languages. It lacks a mechanism for grouping several attributes of different types. The Java language uses the Map to solve this problem and PostScript has a dictionary. The new mechanism for grouping attributes together (called 'collection' mechanism) must allow for optional members and the subsequent addition of new members.

IPP模型和语义[RFC2911]支持编程语言中可用的大多数通用数据结构。它缺乏将不同类型的几个属性分组的机制。Java语言使用映射来解决这个问题,PostScript有一个字典。将属性分组在一起的新机制(称为“集合”机制)必须允许可选成员和随后添加的新成员。

The 'collection' mechanism must be encoded in a manner consistent with existing 1.0 and 1.1 parsing rules (see [RFC2910]). Current 1.0 and 1.1 parsers that don't support the 'collection' mechanism must not confuse collections or parts of a collection they receive with other attributes.

“收集”机制的编码方式必须与现有的1.0和1.1解析规则一致(请参见[RFC2910])。当前不支持“collection”机制的1.0和1.1解析器不得将它们接收的集合或集合的一部分与其他属性混淆。

1.2 Solution
1.2 解决方案

The new mechanism is a new IPP attribute syntax called a 'collection'. As such, each collection value is a value of an attribute whose attribute syntax type is defined to be a 'collection'. Such an attribute is called a collection attribute. The name of the collection attribute serves to identify the collection value in an operation request or response, as with any attribute value.

新机制是一种新的IPP属性语法,称为“集合”。因此,每个集合值都是其属性语法类型定义为“集合”的属性的值。这样的属性称为集合属性。集合属性的名称与任何属性值一样,用于标识操作请求或响应中的集合值。

The 'collection' attribute syntax is a container holding one or more named values (i.e., attributes), which are called member attributes. Each collection attribute definition document lists the mandatory and optional member attributes of each collection value. A collection value is similar to an IPP attribute group in a request or a response, such as the operation attributes group. They both consist of a set of attributes.

“集合”属性语法是包含一个或多个命名值(即属性)的容器,这些命名值称为成员属性。每个集合属性定义文档都列出了每个集合值的必需和可选成员属性。集合值类似于请求或响应中的IPP属性组,例如操作属性组。它们都由一组属性组成。

As with any attribute syntax, the document that defines a collection attribute specifies whether the attribute is single-valued (collection) or multi-valued (1setOf collection). If the attribute is multi-valued (1setOf collection), each collection value MUST be a separate instance of a single definition of a collection, i.e., it MUST have the same member attributes except for OPTIONAL member attributes. If we view each collection definition as a separate syntax type, this rule continues the IPP/1.1 notion that each

与任何属性语法一样,定义集合属性的文档指定该属性是单值(集合)还是多值(1setOf集合)。如果属性是多值的(1setOf collection),则每个集合值必须是集合的单个定义的单独实例,即除了可选的成员属性外,它必须具有相同的成员属性。如果我们将每个集合定义视为一个单独的语法类型,则此规则将延续IPP/1.1的概念,即

attribute has a single type or pattern (e.g., "keyword | name" is a pattern). Without this rule, the supported values would be more difficult to describe and the mechanism defined in item 4 of section 3.1 would not be sufficient.

属性具有单一类型或模式(例如,“关键字|名称”是一种模式)。如果没有该规则,支持的值将更难描述,并且第3.1节第4项中定义的机制将不充分。

The name of each member attribute MUST be unique for a collection attribute, but MAY be the same as the name of a member attribute in another collection attribute and/or MAY be the same as the name of an attribute that is not a member of a collection. The rules for naming member attributes are given in section 3.1.

对于集合属性,每个成员属性的名称必须是唯一的,但可能与另一个集合属性中的成员属性的名称相同和/或可能与不是集合成员的属性的名称相同。第3.1节给出了命名成员属性的规则。

Each member attribute can have any attribute syntax type, including 'collection', and can be either single-valued or multi-valued. The length of a collection value is not limited. However, the length of each member attribute MUST NOT exceed the limit of its attribute syntax.

每个成员属性可以具有任何属性语法类型,包括“集合”,并且可以是单值或多值。集合值的长度不受限制。但是,每个成员属性的长度不得超过其属性语法的限制。

The member attributes in a collection MAY be in any order in a request or response. When a client sends a collection attribute to the Printer, the order that the Printer stores the member attributes of the collection value and the order returned in a response MAY be different from the order sent by the client.

集合中的成员属性可以是请求或响应中的任意顺序。当客户端向打印机发送集合属性时,打印机存储集合值的成员属性的顺序以及响应中返回的顺序可能与客户端发送的顺序不同。

A collection value MUST NOT contain two or more member attributes with the same attribute name. Such a collection is mal-formed. Clients MUST NOT submit such malformed requests and Printers MUST NOT return such malformed responses. If such a malformed request is submitted to a Printer, the Printer MUST (depending on implementation) either (1) reject the request with the 'client-error-bad-request' status code (see [RFC2911] section 13.1.4.1), or (2) accept the request and use only one of each duplicate member attributes.

集合值不能包含两个或多个具有相同属性名称的成员属性。这样的集合是错误的。客户端不得提交此类格式错误的请求,打印机不得返回此类格式错误的响应。如果向打印机提交了这种格式错误的请求,打印机必须(取决于实施情况)要么(1)使用“客户端错误错误请求”状态代码拒绝请求(请参见[RFC2911]第13.1.4.1节),要么(2)接受请求并仅使用每个重复成员属性中的一个。

2 Terminology

2术语

This section defines terminology used throughout this document.

本节定义了本文件中使用的术语。

2.1 Conformance Terminology
2.1 一致性术语

Capitalized terms, such as MUST, MUST NOT, REQUIRED, SHOULD, SHOULD NOT, MAY, NEED NOT, and OPTIONAL, have special meaning relating to conformance as defined in BCP 14, RFC 2119 [RFC2119] and [RFC2911], section 12.1. If an implementation supports the extension defined in this document, then these terms apply; otherwise, they do not. These terms define conformance to this document only; they do not affect conformance to other documents, unless explicitly stated otherwise.

大写术语,如必须、不得、必需、应该、不应该、可能、不需要和可选,具有与BCP 14、RFC 2119[RFC2119]和[RFC2911]第12.1节中定义的合规性相关的特殊含义。如果实施支持本文件中定义的扩展,则这些条款适用;否则,他们不会。这些术语仅定义与本文件的一致性;除非另有明确说明,否则它们不影响与其他文件的一致性。

2.2 Other terminology
2.2 其他术语

This document uses terms such as Job object (or Job), IPP Printer object (or Printer), "operation", "request", response", "attributes", "keywords", and "support". These terms have special meaning and are defined in the model terminology [RFC2911] section 12.2. The following additional terms are introduced in this document:

本文档使用诸如作业对象(或作业)、IPP打印机对象(或打印机)、“操作”、“请求”、“响应”、“属性”、“关键字”和“支持”等术语。这些术语具有特殊含义,并在模型术语[RFC2911]第12.2节中定义。本文档中介绍了以下附加术语:

collection: an attribute syntax in which each attribute value is a set of attributes, called member attributes.

集合:一种属性语法,其中每个属性值都是一组属性,称为成员属性。

member attribute: an attribute that is defined to be used as one of the attributes in a collection.

成员属性:定义为用作集合中属性之一的属性。

collection attribute: an attribute whose definition specifies the 'collection' attribute syntax and each of the member attributes that MAY occur in a collection attribute value.

集合属性:其定义指定“集合”属性语法和集合属性值中可能出现的每个成员属性的属性。

3 Definition of a Collection Attribute

3集合属性的定义

This section describes the requirements for any collection attribute definition.

本节介绍任何集合属性定义的要求。

3.1 Information to Include
3.1 要包括的信息

When a specification document defines an "xxx" collection attribute, i.e., an attribute whose attribute syntax type is 'collection' or '1setOf collection'; the definition document MUST include the following aspects of the attribute semantics. Suppose the "xxx" collection attribute contains N member attributes named "aaa1", "aaa2", ..., "aaaN" ("aaaI" represents any one of these N member attributes).

规范文档定义“xxx”集合属性时,即属性语法类型为“collection”或“1setOf collection”的属性;定义文档必须包括属性语义的以下方面。假设“xxx”集合属性包含名为“aaa1”、“aaa2”、…、“aaaN”的N个成员属性(“aaaI”表示这N个成员属性中的任意一个)。

1. The name of the collection attribute MUST be specified (e.g., "xxx"). The selection of the name "xxx" MUST follow the same rules for uniqueness as for attributes of any other syntax type, (as defined by IPP/1.1) unless "xxx" is a member attribute of another collection. Then the selection of the name "xxx" MUST follow the rules for uniqueness defined in item 5a) of this list.

1. 必须指定集合属性的名称(例如,“xxx”)。名称“xxx”的选择必须遵循与任何其他语法类型的属性(由IPP/1.1定义)相同的唯一性规则,除非“xxx”是另一个集合的成员属性。然后,名称“xxx”的选择必须遵循本列表第5a)项中定义的唯一性规则。

2. The collection attribute syntax MUST be of type 'collection' or '1setOf collection'.

2. 集合属性语法的类型必须为“collection”或“1setOf collection”。

3. The context of the collection attribute MUST be specified, i.e., whether the attribute is an operation attribute, a Job Template attribute, a Job Description attribute, a Printer Description attribute, a member attribute of a particular collection attribute, etc.

3. 必须指定集合属性的上下文,即该属性是否为操作属性、作业模板属性、作业描述属性、打印机描述属性、特定集合属性的成员属性等。

4. An "xxx-supported" attribute MUST be specified and it has one of the following two forms:

4. 必须指定“xxx受支持”属性,该属性具有以下两种形式之一:

a) "xxx-supported" is a "1setOf collection", which enumerates all of the supported collection values of "xxx". If a collection of this form contains a nested collection, it MUST be of the same form.

a) “xxx supported”是“1setOf collection”,它枚举“xxx”的所有受支持集合值。如果此表单的集合包含嵌套集合,则该集合必须具有相同的表单。

For example, "media-size-supported" might have the values {{x-dimension:210, y-dimension:297},{x-dimension:297, y-dimension:420}} to show that it supports two values of "media size": A4 (210x297) and A3 (297x420). It does not support other combinations of "x-dimension" and "y-dimension" member attributes, such as 210x420 or 297x297, and it does not support non-enumerated values, such as 420x595.

例如,“支持的媒体大小”可能具有值{x-dimension:210,y-dimension:297},{x-dimension:297,y-dimension:420},以表明它支持两个“媒体大小”值:A4(210x297)和A3(297x420)。它不支持“x维”和“y维”成员属性的其他组合,如210x420或297x297,并且不支持非枚举值,如420x595。

      b) "xxx-supported" is a "1setOf type2 keyword", which enumerates
         the names of all of the member attributes of "xxx": "aaa1",
         "aaa2", ..., "aaaN".  If a collection of this form contains a
         nested collection, it MAY be of either form.  See item 5f)
         below for details on supported values of member attributes.
        
      b) "xxx-supported" is a "1setOf type2 keyword", which enumerates
         the names of all of the member attributes of "xxx": "aaa1",
         "aaa2", ..., "aaaN".  If a collection of this form contains a
         nested collection, it MAY be of either form.  See item 5f)
         below for details on supported values of member attributes.
        

For example, "media-col-supported" might have the keyword values: "media-size" and "media-color".

例如,“支持的媒体颜色”可能具有关键字值:“媒体大小”和“媒体颜色”。

5. The member attributes MUST be defined. For each member attribute, the definition document MUST provide the following information:

5. 必须定义成员属性。对于每个成员属性,定义文档必须提供以下信息:

a) The member attribute's name (e.g., "aaa") MUST be unique within the collection being defined and MUST either:

a) 成员属性的名称(例如,“aaa”)在所定义的集合中必须是唯一的,并且必须:

i) reuse the attribute name of another attribute (that is unique across the entire IPP attribute name space) and have the same syntax and semantics as the reused attribute (if the condition of item 4b) above is met). For example, a member attribute definition could reuse the IPP/1.1 "media" attribute.

i) 重复使用另一个属性的属性名称(在整个IPP属性名称空间中是唯一的),并且与重复使用的属性具有相同的语法和语义(如果满足上述第4b项的条件)。例如,成员属性定义可以重用IPP/1.1“媒体”属性。

ii) potentially occur elsewhere in the entire IPP attribute name space. (if the condition of item 4a) above is met). For example, a member attribute could be "x-dimension", which could potentially occur in another collection or as an attribute outside of a collection.

ii)可能出现在整个IPP属性名称空间的其他位置。(如果满足上述第4a项的条件)。例如,成员属性可以是“x-dimension”,它可能出现在另一个集合中,或者作为集合外部的属性。

iii) be unique across the entire IPP attribute name space (if the condition of item 4b) above is met). For example, a member attribute could be "media-color" which must be unique across the entire IPP attribute name space.

iii)在整个IPP属性名称空间中是唯一的(如果满足上述第4b项的条件)。例如,成员属性可以是“媒体颜色”,它在整个IPP属性名称空间中必须是唯一的。

b) Whether the member attribute is REQUIRED or OPTIONAL for the Printer to support.

b) 打印机支持的成员属性是必需的还是可选的。

c) Whether the member attribute is REQUIRED or OPTIONAL for the client to supply in a request.

c) 客户端在请求中提供的成员属性是必需的还是可选的。

d) The member attribute's syntax type, which can be any attribute syntax, including '1setOf X', 'collection', and '1setOf collection'. If this attribute name reuses the name of another attribute (case of item a1 above), it MUST have the same attribute syntax, including cardinality (whether or not 1setOf).

d) 成员属性的语法类型,可以是任何属性语法,包括“1setOf X”、“collection”和“1setOf collection”。如果此属性名称重用了另一个属性的名称(以上项目a1的情况),则它必须具有相同的属性语法,包括基数(无论是否为1setOf)。

e) The semantics of the "aaa" member attribute. The semantic definition MUST include a description of any constraint or boundary conditions the member attribute places on the associated attribute, especially if the attribute reuses the name of another attribute (case of item a1 above).

e) “aaa”成员属性的语义。语义定义必须包括成员属性放置在关联属性上的任何约束或边界条件的描述,特别是当属性重用另一个属性的名称时(上述项目a1的情况)。

f) The supported values for each "aaaI" member attribute (of the member attributes "aaa1", "aaa2", ..., "aaaN") is specified by one of two mechanisms.

f) 每个“aaaI”成员属性(成员属性“aaa1”、“aaa2”、…、“aaaN”)的支持值由两种机制之一指定。

i) If "xxx-supported" is a "1setOf collection" (see item 4a) above), the value for each "aaaI" is specified in each collection value of "xxx-supported", in the context of other member attributes. That is, "xxx-supported" enumerates all supported values of "xxx".

i) 如果“支持xxx”是“1集合”(见上文第4a项),则在其他成员属性的上下文中,在“支持xxx”的每个集合值中指定每个“aaaI”的值。也就是说,“xxx支持”枚举“xxx”的所有支持值。

ii) If the value of "xxx-supported" is a "1setOf type2 keyword" (see item 4b) above), the supported values of "aaaI" are the values specified by either i) the "aaaI-supported" attribute or ii) the definition of the member attribute "aaaI" within the document defining the "xxx" attribute. The values of each member attribute "aaaI" are specified independently of other member attributes, though a Printer is not required to support all combinations of supported values.

ii)如果“支持xxx”的值是“1类型2关键字”(见上文第4b项),则“aaaI”的支持值是i)“支持aaaI”属性或ii)定义“xxx”属性的文档中成员属性“aaaI”的定义所指定的值。每个成员属性“aaaI”的值是独立于其他成员属性指定的,尽管打印机不需要支持所有支持值的组合。

For example, "media-col-supported" might have the keyword values: "media-size" and "media-color". Using the first method for defining supported values (an "aaaI-supported" attribute), the collection values of "media-col" are combinations of values of "media-size-supported" and "media-color-supported". If "media-size-supported" has the values of '210x297' and '297x420' and "media-color-supported" has the values of 'white' and 'pink', the

例如,“支持的媒体颜色”可能具有关键字值:“媒体大小”和“媒体颜色”。使用第一种定义支持值的方法(“aaaI支持”属性),“媒体颜色”的集合值是“支持的媒体大小”和“支持的媒体颜色”值的组合。如果“支持的介质大小”的值为“210x297”和“297x420”,并且“支持的介质颜色”的值为“白色”和“粉色”,则

Printer might support only the combinations 'white-210x297', 'pink-210x297' and 'white-297x420', and not 'pink-297x420'.

打印机可能只支持“白色-210x297”、“粉色-210x297”和“白色-297x420”的组合,而不支持“粉色-297x420”。

If a collection contains a member "aaaI", whose syntax type is "text", the supported values would probably be defined by the definition of "xxx" rather than by the attribute "aaaI-supported".

如果集合包含语法类型为“text”的成员“aaaI”,则支持的值可能由“xxx”的定义定义,而不是由属性“aaaI supported”定义。

g) the default value of each "aaaI" member attribute if it is OPTIONAL for a client to supply the "aaa" member attribute in a request. The default value is specified by the attribute's definition within a document and MUST be one of the following:

g) 如果客户端在请求中提供“aaa”成员属性是可选的,则每个“aaaI”成员属性的默认值。默认值由文档中的属性定义指定,必须是以下值之一:

i) a fixed default

i) 固定违约

ii) a mechanism by which the Printer determines default

ii)打印机确定默认值的机制

iii) an indefinite default that is left to the implementation.

iii)由实施方承担的无限期违约。

iv) an attribute that the Printer uses to determine the default

iv)打印机用于确定默认值的属性

6. The default value of "xxx", if a client does not supply it. The default value is specified by the attribute's definition within a document and MUST be one of the following:

6. 如果客户端不提供默认值“xxx”。默认值由文档中的属性定义指定,必须是以下值之一:

a) a fixed default

a) 固定违约

b) a mechanism by which the Printer determines default

b) 打印机确定默认值的机制

c) an indefinite default that is left to the implementation

c) 留给实现的不确定默认值

d) a Printer attribute "xxx-default" which is a collection with the same member attributes as "xxx". If optional member attributes are absent, the Printer uses the defaulting rules of item 5g) above.

d) 打印机属性“xxx default”,它是与“xxx”具有相同成员属性的集合。如果缺少可选成员属性,打印机将使用上面第5g)项的默认规则。

7. The "xxx-ready (1setOf collection)" attribute, if human intervention is required to make many of the supported values available. For example, "media-col" is an attribute which has a "ready" attribute. Most attributes do not have a "ready" attribute.

7. “xxx就绪(1setOf collection)”属性,如果需要人为干预以使许多受支持的值可用。例如,“media col”是一个具有“ready”属性的属性。大多数属性没有“就绪”属性。

3.2 Nested Collections
3.2 嵌套集合

A member attribute may have a syntax type of 'collection' or '1setOf collection', in which case it is called a nested collection attribute. The rules for a nested collection attribute are the same as for a collection attribute as specified in section 3.1.

成员属性的语法类型可能为“collection”或“1setOf collection”,在这种情况下,它被称为嵌套集合属性。嵌套集合属性的规则与第3.1节中指定的集合属性的规则相同。

4 Collection Attributes as Attributes in Operations

4集合属性作为操作中的属性

4.1 General Rules
4.1 一般规则

A collection value is like any other IPP/1.1 value, except that it is structured. The rules for attributes with collection values are the same as for attributes of any other syntax type (see IPP/1.1), be they in any group of a request of a response.

集合值与任何其他IPP/1.1值类似,只是它是结构化的。具有集合值的属性的规则与任何其他语法类型的属性的规则相同(请参见IPP/1.1),无论是在响应请求的任何组中。

4.2 Unsupported Values
4.2 不支持的值

The rules for returning an unsupported collection attribute are an extension to the current rules:

用于返回不受支持的集合属性的规则是当前规则的扩展:

1. If the entire collection attribute is unsupported, then the Printer returns just the collection attribute name with the 'unsupported' out-of-band value (see the beginning of [RFC2911] section 4.1) in the Unsupported Attributes Group.

1. 如果整个集合属性不受支持,则打印机仅返回集合属性名称,并在“不支持的属性”组中返回“不支持的”带外值(请参阅[RFC2911]第4.1节的开头)。

2. If a collection contains unrecognized, unsupported member attributes and/or conflicting values, the attribute returned in the Unsupported Group is a collection containing the unrecognized, unsupported member attributes, and/or conflicting values. The unrecognized member attributes have an out-of-band value of 'unsupported' (see the beginning of [RFC2911] section 4.1). The unsupported member attributes and conflicting values have their unsupported or conflicting values.

2. 如果集合包含无法识别、不支持的成员属性和/或冲突值,则不支持组中返回的属性是包含无法识别、不支持的成员属性和/或冲突值的集合。无法识别的成员属性的带外值为“unsupported”(请参阅[RFC2911]第4.1节开头部分)。不受支持的成员属性和冲突值具有其不受支持或冲突的值。

5 Example definition of a collection attribute

5集合属性的示例定义

In some printing environments, it is desirable to allow the client to select the media by its properties, e.g., weight, color, size, etc., instead of by name. In IPP/1.1 (see [RFC2911]), the "media (type3 keyword | name) Job Template attribute allows selection by name. It is tempting to extend the "media" attribute syntax to include "collection", but then existing clients could not understand default or supported media values that use the collection value. To preserve interoperability, a new attribute MUST BE added, e.g., "media-col (collection)". The following subsections contain a sample definition of a simplified "media-col" attribute. The definition follows the rules in section 3.

在某些打印环境中,希望允许客户根据介质的属性(例如重量、颜色、大小等)而不是名称来选择介质。在IPP/1.1(请参见[RFC2911])中,“介质(type3关键字|名称)作业模板”属性允许按名称进行选择。很有可能扩展“介质”属性语法以包括“集合”,但现有客户端无法理解使用集合值的默认或支持的媒体值。为了保持互操作性,必须添加一个新属性,例如“媒体列(集合)”。以下小节包含简化的“媒体列”属性的示例定义。该定义遵循第3节中的规则。

All of the example attribute definitions in this document are illustrative examples, rather than actual definitions. These examples are intended to illustrate how to define collection attributes. Other documents MUST define collection attributes for use in actual interchange. Such definitions may be very similar to the examples in this document, since we attempted to pick useful examples.

本文档中的所有示例属性定义都是示例性的,而不是实际的定义。这些示例旨在说明如何定义集合属性。其他文档必须定义集合属性,以便在实际交换中使用。这些定义可能与本文中的示例非常相似,因为我们试图选择有用的示例。

Note: we picked the name "media-col" because the name "media" is already in use. Ordinarily the collection attribute would have a name like any other attribute and would not end in "col".

注意:我们选择了名称“media col”,因为名称“media”已在使用中。通常,集合属性的名称与任何其他属性的名称相同,并且不会以“col”结尾。

The member attributes of "media-col" attribute ("media-color (type 3 keyword)" and "media-size (collection)") both follow the naming rules of item 4a3 of section 3, i.e., the names are unique across the entire IPP attribute name space. The member attributes of the "media-size (collection)" member attribute ("x-dimension (integer(0:MAX))" and "y-dimension (integer(0:MAX))") both follow the naming rules of item 4a2 of section 3, i.e., they potentially occur elsewhere in the IPP attribute name space.

“媒体颜色”属性(“媒体颜色(类型3关键字)”和“媒体大小(集合)”的成员属性均遵循第3节第4a3项的命名规则,即名称在整个IPP属性名称空间中是唯一的。“媒体大小(集合)”成员属性(“x维(整数(0:MAX))”和“y维(整数(0:MAX))的成员属性均遵循第3节第4a2项的命名规则,即它们可能出现在IPP属性名称空间的其他位置。

5.1 media-col (collection)
5.1 媒体主管(收藏)

The "media-col" (collection) attribute augments the IPP/1.1 [RFC2911] "media" attribute. This collection attribute enables a client end user to submit a list of media characteristics to the Printer. When the client specifies media using the "media-col" collection attribute, the Printer object MUST match the requested media exactly. The 'collection' consists of the following member attributes:

“媒体列”(集合)属性扩充了IPP/1.1[RFC2911]“媒体”属性。此集合属性使客户端最终用户能够向打印机提交介质特性列表。当客户端使用“media col”集合属性指定介质时,打印机对象必须与请求的介质完全匹配。“集合”由以下成员属性组成:

Table 1 - "media-col" member attributes

表1-“媒体列”成员属性

Attribute name attribute syntax request Printer Support

属性名称属性语法请求打印机支持

media-color type3 keyword | name (MAX) MAY MUST

媒体颜色类型3关键字|名称(最大值)可能必须

media-size collection MUST MUST

媒体大小集合必须

The definitions for the member attributes is given in the following sub-sections:

以下小节给出了成员属性的定义:

5.1.1 media-color (type3 keyword | name(MAX)
5.1.1 媒体颜色(type3关键字|名称(最大值)

This member attribute identifies the color of the media. Valid values are 'red', 'white' and 'blue'.

此成员属性标识媒体的颜色。有效值为“红色”、“白色”和“蓝色”。

The "media-color-supported" (1setOf (type3 keyword | name(MAX))) Printer attribute identifies the values of this "media-color" member attribute that the Printer supports, i.e., the colors supported.

“支持的媒体颜色”(1setOf(type3关键字| name(MAX)))打印机属性标识打印机支持的“媒体颜色”成员属性的值,即支持的颜色。

If the client omits this member attribute, the Printer determines the value in an implementation dependent manner.

如果客户端忽略此成员属性,打印机将以依赖于实现的方式确定该值。

5.1.2 media-size (collection)
5.1.2 媒体大小(收藏)

This member attribute identifies the size of the media. The 'collection' consists of the member attributes shown in Table 2:

此成员属性标识媒体的大小。“集合”由表2中所示的成员属性组成:

Table 2 - "media-size" collection member attributes

表2-“介质大小”集合成员属性

Attribute name attribute syntax request Printer Support

属性名称属性语法请求打印机支持

x-dimension integer (0:MAX) MUST MUST

x维整数(0:MAX)必须为

y-dimension integer (0:MAX) MUST MUST

y维整数(0:MAX)必须为

The definitions for the member attributes are given in the following sub-sections:

以下小节给出了成员属性的定义:

5.1.2.1 x-dimension (integer(0:MAX))
5.1.2.1 x维(整数(0:MAX))

This attribute identifies the width of the media in inch units along the X axis.

此属性标识沿X轴的介质宽度(以英寸为单位)。

5.1.2.2 y-dimension (integer(0:MAX))
5.1.2.2 y维(整数(0:MAX))

This attribute identifies the height of the media in inch units along the Y axis.

此属性标识沿Y轴的介质高度(以英寸为单位)。

The "media-size-supported" (1setOf collection) Printer attribute identifies the values of this "media-size" member attribute that the Printer supports, i.e., the size combinations supported. The names of the member attributes are the same as the member attributes of the "media-size" collection attribute, namely "x-dimension", and "y-dimension", since they have the same attribute syntax and the same semantics.

“支持的介质大小”(1setOf collection)打印机属性标识打印机支持的“介质大小”成员属性的值,即支持的大小组合。成员属性的名称与“媒体大小”集合属性的成员属性相同,即“x维”和“y维”,因为它们具有相同的属性语法和语义。

5.2 media-col-default (collection)
5.2 媒体列默认值(集合)

The "media-col-default" Printer attribute specifies the media that the Printer uses, if any, if the client omits the "media-col" and "media". Job Template attributes in the Job Creation operation and the PDL do not include a media specification. The member attributes

“media col default”打印机属性指定如果客户端忽略“media col”和“media”,打印机使用的介质(如果有)。作业创建操作和PDL中的作业模板属性不包括介质规范。成员属性

are defined in Table 1. A Printer MUST support the same member attributes for this default collection attribute as it supports for the corresponding "media-col" Job Template attribute.

定义见表1。打印机必须支持此默认集合属性的相同成员属性,就像它支持相应的“media col”作业模板属性一样。

5.3 media-col-ready (1setOf collection)
5.3 媒体列就绪(1个集合)

The "media-col-ready" Printer attribute identifies the media that are available for use without human intervention, i.e., the media that are ready to be used without human intervention. The collection value MUST have all of the member attributes that are supported in Table 1.

“media col ready”打印机属性标识无需人工干预即可使用的介质,即无需人工干预即可使用的介质。集合值必须具有表1中支持的所有成员属性。

5.4 media-col-supported (1setOf type2 keyword)
5.4 支持的媒体列(1setOf type2关键字)

The "media-col-supported" Printer attribute identifies the keyword names of the member attributes supported in the "media-col" collection Job Template attribute, i.e., the keyword names of the member attributes in Table 1 that the Printer supports.

“支持的媒体列”打印机属性标识“媒体列”集合作业模板属性中支持的成员属性的关键字名称,即打印机支持的表1中成员属性的关键字名称。

6 A Second Example Definition Of A Collection Attribute

6集合属性的第二个示例定义

All of the example attribute definitions in this document are illustrative examples, rather than actual definitions. These examples are intended to illustrate how to define collection attributes. Other documents MUST define collection attributes for use in actual interchange. Such definitions may be very similar to the examples in this document, since we attempted to pick useful examples.

本文档中的所有示例属性定义都是示例性的,而不是实际的定义。这些示例旨在说明如何定义集合属性。其他文档必须定义集合属性,以便在实际交换中使用。这些定义可能与本文中的示例非常相似,因为我们试图选择有用的示例。

In some printing environments, it is desirable to allow the client to select the media for the job start sheet. The reason for not adding the 'collection' attribute syntax to the existing "job-sheets" Job Template attribute is the same as for "media". Instead, a new Job Template attribute is introduced, e.g., "job-sheet-col (collection)".

在某些打印环境中,最好允许客户机为作业起始页选择介质。不将“集合”属性语法添加到现有“工作表”作业模板属性的原因与“介质”相同。相反,引入了一个新的作业模板属性,例如“作业表列(集合)”。

The member attributes of "job-sheet-col" attribute ("job-sheets (type 3 keyword)" and "media (type3 keyword | name)") both follow the naming rules of item 4a1 of section 3, i.e., they reuse existing IPP attributes. According to the rules, their supported values come from the existing IPP attributes: "job-sheets-supported" and "media-supported". However, their default values do not come from "job-sheets-default" and "media-default", respectively. Rather, the definition of "job-sheet-col" says that "job-sheets (type 3 keyword)" is required and if "media (type3 keyword | name)" is absent, the Printer uses the same media as the rest of the job uses.

“工作表列”属性(“工作表(类型3关键字)”和“媒体(类型3关键字|名称)”的成员属性均遵循第3节第4a1项的命名规则,即它们重用现有IPP属性。根据规则,它们支持的值来自现有的IPP属性:“支持的工作表”和“支持的媒体”。但是,它们的默认值不是分别来自“工作表默认值”和“介质默认值”。相反,“工作表col”的定义是“工作表(类型3关键字)”是必需的,如果“介质(类型3关键字|名称)”不存在,打印机将使用与其余作业相同的介质。

If "job-sheet-col" attribute was defined to contain the member attribute "job-sheet-media (type3 keyword | name)" instead of "media (type3 keyword | name)", then the definition would also have to specify a "job-sheet-media-supported (1setOf (type3 keyword | name))" whose values would be independent of "media-supported (1setOf (type3 keyword | name))" and would be set separately by a System Administrator.

如果将“工作表列”属性定义为包含成员属性“工作表介质(type3关键字|名称)”而不是“介质(type3关键字|名称)”,则定义还必须指定“支持的工作表介质(1setOf(type3关键字|名称)),其值独立于“支持的介质(1setOf(type3关键字|名称)”)“并将由系统管理员单独设置。

The actual text for the definition of the attribute is left as an exercise for the reader.

属性定义的实际文本留给读者作为练习。

7 Encoding

7编码

This section defines the additional encoding tags used according to [RFC2910] and gives an example of their use. The encoding tags defined in this document MUST be used by all collection attributes defined in other documents. However, the example of their use is illustrative only.

本节定义了根据[RFC2910]使用的附加编码标签,并给出了其使用示例。此文档中定义的编码标记必须由其他文档中定义的所有集合属性使用。然而,它们的使用示例只是说明性的。

7.1 Additional tags defined for representing a collection attribute value

7.1 为表示集合属性值定义的其他标记

The 'collection' attribute syntax uses the tags defined in Table 3.

“collection”属性语法使用表3中定义的标记。

Table 3 - Tags defined for encoding the 'collection' attribute syntax

表3-为编码“collection”属性语法定义的标记

Tag name Tag value Meaning

标签名称标签值含义

begCollection 0x34 Begin the collection attribute value.

begCollection 0x34开始集合属性值。

endCollection 0x37 End the collection attribute value.

endCollection 0x37结束集合属性值。

memberAttrName 0x4A The value is the name of the collection member attribute

memberAttrName 0x4A该值是集合成员属性的名称

When encoding a collection attribute "xxx" that contains an attribute "aaa" and is not inside another collection, the encoding follows these rules:

对包含属性“aaa”且不在另一个集合中的集合属性“xxx”进行编码时,编码遵循以下规则:

1. The beginning of the collection is indicated with a value tag that MUST be syntax type 'begCollection' (0x34) with a name length and Name field that represent the name of the collection attribute ("xxx") as with any attribute, followed by a value. The Printer MAY ignore the value and its length MAY be 0. In the future, however, this field MAY contain useful information, such as the collection name (cf. the name of a C struct).

1. 集合的开头由值标记指示,该值标记必须是语法类型“begCollection”(0x34),其名称长度和名称字段表示集合属性(“xxx”)的名称,与任何属性一样,后跟一个值。打印机可能会忽略该值,其长度可能为0。但是,在将来,此字段可能包含有用的信息,例如集合名称(参见C结构的名称)。

2. Each member attribute is encoded as a sequence of two or more values that appear to be part of a single multi-valued attribute, i.e., 1setOf. The first value after the 'begCollection' value has the attribute syntax, 'memberAttrName' (0x4A), and its value holds the name of the first member attribute (e.g., "aaa"). The second value holds the first member's attribute value, which can be of any attribute syntax, except 'memberAttrName' or 'endCollection'. If the first member's attribute value is multi-valued, the third value holds the second value of the first member's value. Otherwise, the third value holds the name of second member attribute (e.g., "bbb"), and its attribute syntax is 'memberAttrName'. In this case, the fourth member's value is the value of "bbb".

2. 每个成员属性被编码为两个或多个值的序列,这些值似乎是单个多值属性的一部分,即1setOf。“begCollection”值之后的第一个值具有属性语法“memberAttrName”(0x4A),其值包含第一个成员属性的名称(例如,“aaa”)。第二个值保存第一个成员的属性值,该属性值可以是除“memberAttrName”或“endCollection”之外的任何属性语法。如果第一个成员的属性值是多值的,则第三个值保存第一个成员值的第二个值。否则,第三个值保存第二个成员属性的名称(例如,“bbb”),其属性语法为“memberAttrName”。在这种情况下,第四个成员的值是“bbb”的值。

Note that the technique of encoding a 'collection' as a '1setOf' makes it easy for a Printer that doesn't support a particular collection attribute (or the collection attribute syntax at all) to simply skip over the entire collection value.

请注意,将“集合”编码为“1setOf”的技术使不支持特定集合属性(或集合属性语法)的打印机很容易跳过整个集合值。

3. The end of the collection is indicated with a value tag that MUST be syntax type 'endCollection' (e.g., 0x37) and MAY have a zero name length and a zero value length. In the future, this field MAY contain useful information, such as the collection name that matches the one in the 'begCollection' .

3. 集合的结尾由值标记指示,该值标记必须是语法类型“endCollection”(例如0x37),并且可能具有零名称长度和零值长度。将来,此字段可能包含有用的信息,例如与“begCollection”中的名称匹配的集合名称。

4. It is valid to have a member attribute that is itself, a collection attribute, i.e., collections can be nested within collections. This is represented by the occurrence of a member attribute that is of attribute syntax type 'begCollection'. Such a collection is terminated by a matching 'endCollection'. The name of such a member attribute is in the immediately preceding value, whose syntax type is 'memberAttrName'.

4. 成员属性本身就是集合属性是有效的,即集合可以嵌套在集合中。这由属性语法类型为“begCollection”的成员属性的出现表示。这样的集合由匹配的“endCollection”终止。此类成员属性的名称位于前一个值中,其语法类型为“memberAttrName”。

5. It is valid for a collection attribute to be multi-valued, i.e., have more than one collection value. If the next attribute immediately following the 'endCollection' has a zero name length and a tag of 'begCollection', then the collection attribute is a multi-valued collection, as with any attribute. This statement applies to collections within collections and collections that are not in collections.

5. 集合属性为多值(即具有多个集合值)是有效的。如果紧跟在“endCollection”之后的下一个属性的名称长度为零,标记为“begCollection”,则集合属性与任何属性一样,都是多值集合。此语句适用于集合中的集合和不在集合中的集合。

7.2 Example encoding: "media-col" (collection)
7.2 编码示例:“媒体列”(集合)

The collection specified in section 5 is used for the encoding example shown in Table 5. The example also shows nested collections, since the "media-size" member attribute is a 'collection. The encoding example represents a blue 4x6-index card and takes 216 octets. The Appendices contain more complex examples.

第5节中指定的集合用于表5中所示的编码示例。该示例还显示了嵌套集合,因为“媒体大小”成员属性是“集合”。编码示例表示一个蓝色4x6索引卡,包含216个八位字节。附录包含更复杂的示例。

Additional examples have been included in the appendices.

附录中包含了其他示例。

The overall structure of the two collection values can be pictorially represented as:

两个集合值的整体结构可以用图形表示为:

      "media-col" =
        {  "media-color" =  'blue';
           "media-size" =
           {    "x-dimension" = 6;
                "y-dimension" = 4
             }
        },
        
      "media-col" =
        {  "media-color" =  'blue';
           "media-size" =
           {    "x-dimension" = 6;
                "y-dimension" = 4
             }
        },
        

The full encoding is in table 5. A simplified view of the encoding looks like this:

完整编码如表5所示。编码的简化视图如下所示:

Table 4 - Overview Encoding of "media-col" collection

表4“媒体列”集合编码概述

Tag Value Name Value

标记值名称值

begCollection media-col ""

begCollection媒体列“”

memberAttrName "" media-color

memberAttrName“”媒体颜色

keyword "" blue

关键词“蓝色”

memberAttrName "" media-size

memberAttrName“”介质大小

begCollection "" ""

“收藏”

memberAttrName "" x-dimension

memberAttrName“”x维度

integer "" 6

整数“”6

memberAttrName "" y-dimension

memberAttrName“”y维度

integer "" 4

整数“”4

endCollection "" ""

endCollection“”“”

endCollection "" ""

endCollection“”“”

Table 5 - Example Encoding of "media-col" collection

表5“媒体列”集合的编码示例

Octets Symbolic Value Protocol comments field

八位字节符号值协议注释字段

0x34 begCollection value-tag beginning of the "media-col" collection attribute

0x34 begCollection值标记“媒体列”集合属性的开头

0x0009 name- length of (collection) length attribute name

0x0009名称-长度(集合)长度属性名称的长度

media-col media-col name name of (collection) attribute

媒体列媒体列名称(集合)属性的名称

0x0000 value- defined to be 0 for this length type

0x0000值-为此长度类型定义为0

no value (since value-length was 0)

无值(因为值长度为0)

0x4A memberAttrName value-tag starts a new member attribute: "media-color"

0x4A memberAttrName值标记启动新的成员属性:“媒体颜色”

0x0000 name- defined to be 0 for this length type, so part of 1setOf

0x0000名称-此长度类型定义为0,因此是1setOf的一部分

no name (since name-length was 0)

没有名称(因为名称长度为0)

0x000B value- length of "media-color" length keyword

0x000B值-媒体颜色长度关键字的长度

media-color media-color value value is name of 1st member attribute

媒体颜色媒体颜色值是第一个成员属性的名称

0x44 keyword type value-tag keyword type

0x44关键字类型值标记关键字类型

0x0000 name- 0 indicates 1setOf length

0x0000名称-0表示长度为1

no name (since name-length was 0)

没有名称(因为名称长度为0)

Octets Symbolic Value Protocol comments field

八位字节符号值协议注释字段

0x0004 value-length

0x0004值长度

blue blue value value of 1st member attribute

第一个成员属性的蓝色值

0x4A memberAttrName value-tag starts a new member attribute: "media-size"

0x4A memberAttrName值标记启动新的成员属性:“媒体大小”

0x0000 name- defined to be 0 for this length type, so part of 1setOf

0x0000名称-此长度类型定义为0,因此是1setOf的一部分

no name (since name-length was 0)

没有名称(因为名称长度为0)

0x000A value- length of "media-size" length keyword

0x000A值-媒体大小长度关键字的长度

media-size media-size value Name of 2nd member attribute

媒体大小第二个成员属性的媒体大小值名称

0x34 begCollection value-tag Beginning of the "media-size" collection attribute which is a sub-collection

0x34 begCollection值标记“媒体大小”集合属性的开头,该集合属性是子集合

0x0000 name- 0 indicates 1setOf length

0x0000名称-0表示长度为1

no name (since name-length was 0)

没有名称(因为名称长度为0)

0x0000 value- collection attribute names length have no value

0x0000值-集合属性名称长度没有值

no value (since value-length was 0)

无值(因为值长度为0)

0x4A memberAttrName value-tag starts a new member attribute: "x-dimension"

0x4A memberAttrName值标记启动新的成员属性:“x-dimension”

Octets Symbolic Value Protocol comments field

八位字节符号值协议注释字段

0x0000 name- defined to be 0 for this length type, so part of 1setOf

0x0000名称-此长度类型定义为0,因此是1setOf的一部分

no name (since name-length was 0)

没有名称(因为名称长度为0)

0x000B value- length of "x-dimension" length keyword

0x000B值-x维长度关键字的长度

x-dimension x-dimension value name of 1st sub-collection member attribute

x维x维值第一个子集合成员属性的名称

0x21 integer type value-tag attribute type

0x21整型值标记属性类型

0x0000 name- 0 indicates 1setOf length

0x0000名称-0表示长度为1

no name (since name-length was 0)

没有名称(因为名称长度为0)

0x0004 value- length of an integer = 4 length

0x0004值-整数的长度=4长度

0x0006 value value of 1st sub-collection member attribute

0x0006第一个子集合成员属性的值

0x4A memberAttrName value-tag starts a new member attribute: "y-dimension"

0x4A memberAttrName值标记启动新的成员属性:“y维度”

0x0000 name- defined to be 0 for this length type, so part of 1setOf

0x0000名称-此长度类型定义为0,因此是1setOf的一部分

no name (since name-length was 0)

没有名称(因为名称长度为0)

0x000B value- length of the "y-length dimension" keyword

0x000B值-y-length维度关键字的长度

Octets Symbolic Value Protocol comments field

八位字节符号值协议注释字段

y-dimension y-dimension value name of 2nd sub-collection member attribute

y维度y维度值第二个子集合成员属性的名称

0x21 integer type value-tag attribute type

0x21整型值标记属性类型

0x0000 name- 0 indicates 1setOf length

0x0000名称-0表示长度为1

no name (since name-length was 0)

没有名称(因为名称长度为0)

0x0004 value- length of an integer = 4 length

0x0004值-整数的长度=4长度

0x0004 value value of 2nd sub-collection member attribute

0x0004第二个子集合成员属性的值

0x37 endCollection value-tag end of the sub-collection

0x37 endCollection值标记子集合的结束

0x0000 name- defined to be 0 for this length type, so part of 1setOf

0x0000名称-此长度类型定义为0,因此是1setOf的一部分

no name (since name-length was 0)

没有名称(因为名称长度为0)

0x0000 value- defined to be 0 for this length type

0x0000值-为此长度类型定义为0

no value (since value-length was 0)

无值(因为值长度为0)

0x37 endCollection value-tag end of the 1st collection value in 1setOf

0x37 endCollection值标记1setOf中第一个集合值的结束

0x0000 name- defined to be 0 for this length type, so part of 1setOf

0x0000名称-此长度类型定义为0,因此是1setOf的一部分

Octets Symbolic Value Protocol comments field

八位字节符号值协议注释字段

no name (since name-length was 0)

没有名称(因为名称长度为0)

0x0000 value- defined to be 0 for this length type

0x0000值-为此长度类型定义为0

no value (since value-length was 0)

无值(因为值长度为0)

8 Legacy issues

8遗产问题

IPP 1.x Printers and Clients will gracefully ignore collections and its member attributes if it does not understand the collection. The begCollection and endCollection elements each look like an attribute with an attribute syntax that the recipient doesn't support and so should ignore the entire attribute. The individual member attributes and their values will look like a 1setOf values of the collection attribute, so that the Printer simply ignores the entire attribute and all of its values. Returning unsupported attributes is also simple, since only the name of the collection attribute is returned with the 'unsupported' out-of-band value (see section 4.2).

如果IPP 1.x打印机和客户端不理解集合,它将正常地忽略集合及其成员属性。begCollection和endCollection元素看起来都像一个属性,具有收件人不支持的属性语法,因此应该忽略整个属性。单个成员属性及其值将类似于集合属性的1setOf值,因此打印机将忽略整个属性及其所有值。返回不支持的属性也很简单,因为只有集合属性的名称返回“unsupported”带外值(参见第4.2节)。

9 IANA Considerations

9 IANA考虑因素

The following table provides registration for the 'collection' attribute syntax defined in this document. This is to be registered according to the procedures in RFC 2911 [RFC2911] section 6.3.

下表提供了本文档中定义的“集合”属性语法的注册。根据RFC 2911[RFC2911]第6.3节中的程序进行注册。

Tag value: Attribute Syntaxes: Ref. Section: collection RFC 3382 3 0x34 begCollection RFC 3382 7.1 0x37 endCollection RFC 3382 7.1 0x4A memberAttrName RFC 3382 7.1

标记值:属性语法:参考节:集合RFC 3382 3 0x34 begCollection RFC 3382 7.1 0x37 endCollection RFC 3382 7.1 0x4A memberAttrName RFC 3382 7.1

The resulting attribute syntax registration will be published in the http://www.iana.org/assignments/ipp-registrations registry.

生成的属性语法注册将在http://www.iana.org/assignments/ipp-registrations 登记处。

10 Internationalization Considerations

十项国际化考虑

This attribute syntax by itself has no impact on internationalization. However, the member attributes that are subsequently defined for use in a collection may have internationalization considerations, as may any attribute, according to [RFC2911].

此属性语法本身对国际化没有影响。但是,根据[RFC2911],随后定义用于集合中的成员属性可能具有国际化考虑,任何属性也可能具有国际化考虑。

11 Security Considerations

11安全考虑

This attribute syntax causes no more security concerns than any other attribute syntax. It is only the attributes that are subsequently defined, to use this or any other attribute syntax, that may have security concerns, depending on the semantics of the attribute, according to [RFC2911].

此属性语法不会比任何其他属性语法引起更多的安全问题。根据[RFC2911],只有随后定义的属性(使用此或任何其他属性语法)才可能存在安全问题,这取决于属性的语义。

12 References

12参考文献

12.1 Normative References
12.1 规范性引用文件

[RFC2910] Herriot, R., Butler, S., Moore, P. and R. Turner, "Internet Printing Protocol/1.1: Encoding and Transport", RFC 2910, September 2000.

[RFC2910]Herriot,R.,Butler,S.,Moore,P.和R.Turner,“互联网打印协议/1.1:编码和传输”,RFC 29102000年9月。

[RFC2911] Isaacson, S., deBry, R., Hastings, T., Herriot, R. and P. Powell, "Internet Printing Protocol/1.1: Model and Semantics", RFC 2911, September 2000.

[RFC2911]Isaacson,S.,deBry,R.,Hastings,T.,Herriot,R.和P.Powell,“互联网打印协议/1.1:模型和语义”,RFC 29112000年9月。

12.2 Informative References
12.2 资料性引用

[RFC2565] Herriot, R., Butler, S., Moore, P. and R. Tuner, "Internet Printing Protocol/1.0: Encoding and Transport", RFC 2565, April 1999.

[RFC2565]Herriot,R.,Butler,S.,Moore,P.和R.Tuner,“互联网打印协议/1.0:编码和传输”,RFC 25651999年4月。

[RFC2566] deBry, R., Hastings, T., Herriot, R., Isaacson, S. and P. Powell, "Internet Printing Protocol/1.0: Model and Semantics", RFC 2566, April 1999.

[RFC2566]deBry,R.,Hastings,T.,Herriot,R.,Isaacson,S.和P.Powell,“互联网打印协议/1.0:模型和语义”,RFC 2566,1999年4月。

[RFC2567] Wright, D., "Design Goals for an Internet Printing Protocol", RFC 2567, April 1999.

[RFC2567]Wright,D.,“互联网打印协议的设计目标”,RFC2567,1999年4月。

[RFC2568] Zilles, S., "Rationale for the Structure and Model and Protocol for the Internet Printing Protocol", RFC 2568, April 1999.

[RFC2568]Zilles,S.“互联网打印协议的结构、模型和协议的基本原理”,RFC 2568,1999年4月。

[RFC2569] Herriot, R., Hastings, T., Jacobs, N. and J. Martin, "Mapping between LPD and IPP Protocols", RFC 2569, April 1999.

[RFC2569]Herriot,R.,Hastings,T.,Jacobs,N.和J.Martin,“LPD和IPP协议之间的映射”,RFC 2569,1999年4月。

[RFC2616] Fielding, R., Gettys, J., Mogul, J., Frystyk, H., Masinter, L., Leach, P. and T. Berners-Lee, "Hypertext Transfer Protocol - HTTP/1.1", RFC 2616, June 1999.

[RFC2616]菲尔丁,R.,盖蒂斯,J.,莫卧儿,J.,弗莱斯蒂克,H.,马斯特,L.,利奇,P.和T.伯纳斯李,“超文本传输协议-HTTP/1.1”,RFC 2616,1999年6月。

[RFC3196] Hastings, T., Manros, C., Zehler, P., Kugler, C. and H. Holst, "Internet Printing Protocol/1.1: Implementor's Guide", RFC 3196, November 2001.

[RFC3196]Hastings,T.,Manros,C.,Zehler,P.,Kugler,C.和H.Holst,“互联网打印协议/1.1:实施者指南”,RFC 31962001年11月。

Appendix A: Encoding Example of a Simple Collection (Informative)

附录A:简单集合的编码示例(信息性)

The overall structure of the collection value can be pictorially represented as:

集合值的整体结构可以用图形表示为:

      "media-size" =
        {  "x-dimension" = 6;
           "y-dimension" = 4
        }
        
      "media-size" =
        {  "x-dimension" = 6;
           "y-dimension" = 4
        }
        

A simplified view of the encoding would look like this:

编码的简化视图如下所示:

Table 6 - Overview Encoding of simple collection

表6-简单集合编码概述

Tag Value Name Value

标记值名称值

begCollection media-size ""

begCollection媒体大小“”

memberAttrName "" x-dimension

memberAttrName“”x维度

integer "" 6

整数“”6

memberAttrName "" y-dimension

memberAttrName“”y维度

integer "" 4

整数“”4

endCollection "" ""

endCollection“”“”

Note: "" represents a name or value whose length is 0.

注意:“”表示长度为0的名称或值。

Table 7 - Example Encoding of simple collection

表7-简单集合的编码示例

Octets Symbolic Value Protocol comments field

八位字节符号值协议注释字段

0x34 begCollection value-tag beginning of the "media-size" collection attribute

0x34 begCollection值标记“媒体大小”集合属性的开头

0x000A name- length of (collection) length attribute name

0x000A名称-长度(集合)长度属性名称的长度

media-size media-size name name of (collection) attribute

介质大小介质大小名称(集合)属性的名称

Octets Symbolic Value Protocol comments field

八位字节符号值协议注释字段

0x0000 value- defined to be 0 for this length type

0x0000值-为此长度类型定义为0

no value (since value-length was 0)

无值(因为值长度为0)

0x4A memberAttrName value-tag starts member attribute: "x-dimension"

0x4A memberAttrName值标记启动成员属性:“x维度”

0x0000 name- defined to be 0 for this length type, so part of 1setOf

0x0000名称-此长度类型定义为0,因此是1setOf的一部分

no name (since name-length was 0)

没有名称(因为名称长度为0)

0x000B value- length of "x-dimension" length keyword

0x000B值-x维长度关键字的长度

x-dimension x-dimension value name of 1st collection member attribute

x维x维值第一集合成员属性的名称

0x21 integer type value-tag attribute type

0x21整型值标记属性类型

0x0000 name- 0 indicates 1setOf length

0x0000名称-0表示长度为1

no name (since name-length was 0)

没有名称(因为名称长度为0)

0x0004 value- length of an integer = 4 length

0x0004值-整数的长度=4长度

0x0006 value value of 1st collection member attribute

0x0006第一个集合成员属性的值

0x4A memberAttrName value-tag starts a new member attribute: "y-dimension"

0x4A memberAttrName值标记启动新的成员属性:“y维度”

0x0000 name- defined to be 0 for this length type, so part of 1setOf

0x0000名称-此长度类型定义为0,因此是1setOf的一部分

no name (since name-length was 0)

没有名称(因为名称长度为0)

Octets Symbolic Value Protocol comments field

八位字节符号值协议注释字段

0x000B value- length of the "y-length dimension" keyword

0x000B值-y-length维度关键字的长度

y-dimension y-dimension value name of 2nd collection member attribute

y-维度第二集合成员属性的y-维度值名称

0x21 integer type value-tag attribute type

0x21整型值标记属性类型

0x0000 name- 0 indicates 1setOf for length media-size

0x0000名称-0表示媒体大小的长度为1setOf

no name (since name-length was 0)

没有名称(因为名称长度为0)

0x0004 value- length of an integer = 4 length

0x0004值-整数的长度=4长度

0x0004 value value of 2nd collection member attribute

0x0004第二个集合成员属性的值

0x37 endCollection value-tag end of the collection

0x37 endCollection值标记集合的结束

0x0000 name- defined to be 0 for this length type, so part of 1setOf

0x0000名称-此长度类型定义为0,因此是1setOf的一部分

no name (since name-length was 0)

没有名称(因为名称长度为0)

0x0000 value- defined to be 0 for this length type

0x0000值-为此长度类型定义为0

no value (since value-length was 0)

无值(因为值长度为0)

Appendix B: Encoding Example of 1setOf Collection (Informative)

附录B:第1集的编码示例(资料性)

The overall structure of the collection value can be pictorially represented as:

集合值的整体结构可以用图形表示为:

      "media-size-supported" =
        {  "x-dimension" = 6;
           "y-dimension" = 4
        },
        {  "x-dimension" = 3;
           "y-dimension" = 5
        };
        
      "media-size-supported" =
        {  "x-dimension" = 6;
           "y-dimension" = 4
        },
        {  "x-dimension" = 3;
           "y-dimension" = 5
        };
        

A simplified view of the encoding would look like this:

编码的简化视图如下所示:

Table 8 - Overview Encoding of 1setOf collection

表8-第1集合编码概述

Tag Value Name Value

标记值名称值

begCollection media-size- "" supported

begCollection媒体大小-支持“”

memberAttrName "" x-dimension

memberAttrName“”x维度

integer "" 6

整数“”6

memberAttrName "" y-dimension

memberAttrName“”y维度

integer "" 4

整数“”4

endCollection "" ""

endCollection“”“”

begCollection "" ""

“收藏”

memberAttrName "" x-dimension

memberAttrName“”x维度

integer "" 3

整数“”3

memberAttrName "" y-dimension

memberAttrName“”y维度

integer "" 5

整数“5”

endCollection "" ""

endCollection“”“”

Table 9 - Example Encoding of 1setOf collection

表9-集合1的编码示例

Octets Symbolic Value Protocol comments field

八位字节符号值协议注释字段

0x34 begCollection value-tag beginning of the "media-size-supported (1setOf collection" attribute

0x34 begCollection值标记“支持的媒体大小(1setOf collection)”属性的开头

0x00014 name- length of (collection) length attribute name

0x00014名称-长度(集合)长度属性名称

media-size- media-size- name name of (collection) supported supported attribute

介质大小-介质大小-支持的(集合)属性的名称

0x0000 value- defined to be 0 for this length type

0x0000值-为此长度类型定义为0

no value (since value-length was 0)

无值(因为值长度为0)

0x4A memberAttrName value-tag starts member attribute: "x-dimension"

0x4A memberAttrName值标记启动成员属性:“x维度”

0x0000 name- defined to be 0 for this length type, so part of 1setOf

0x0000名称-此长度类型定义为0,因此是1setOf的一部分

no name (since name-length was 0)

没有名称(因为名称长度为0)

0x000B value- length of "x-dimension" length keyword

0x000B值-x维长度关键字的长度

x-dimension x-dimension value name of 1st collection member attribute

x维x维值第一集合成员属性的名称

0x21 integer type value-tag attribute type

0x21整型值标记属性类型

0x0000 name- 0 indicates 1setOf length

0x0000名称-0表示长度为1

no name (since name-length was 0)

没有名称(因为名称长度为0)

Octets Symbolic Value Protocol comments field

八位字节符号值协议注释字段

0x0004 value- length of an integer = 4 length

0x0004值-整数的长度=4长度

0x0006 value value of 1st collection member attribute

0x0006第一个集合成员属性的值

0x4A memberAttrName value-tag starts member attribute: "y-dimension"

0x4A memberAttrName值标记启动成员属性:“y维度”

0x0000 name- defined to be 0 for this length type, so part of 1setOf

0x0000名称-此长度类型定义为0,因此是1setOf的一部分

no name (since name-length was 0)

没有名称(因为名称长度为0)

0x000B value- length of the "y-length dimension" keyword

0x000B值-y-length维度关键字的长度

y-dimension y-dimension value name of 2nd collection member attribute

y-维度第二集合成员属性的y-维度值名称

0x21 integer type value-tag attribute type

0x21整型值标记属性类型

0x0000 name- 0 indicates 1setOf length

0x0000名称-0表示长度为1

no name (since name-length was 0)

没有名称(因为名称长度为0)

0x0004 value- length of an integer = 4 length

0x0004值-整数的长度=4长度

0x0004 value value of 2nd collection member attribute

0x0004第二个集合成员属性的值

0x37 endCollection value-tag end of the collection

0x37 endCollection值标记集合的结束

0x0000 name- defined to be 0 for this length type, so part of 1setOf

0x0000名称-此长度类型定义为0,因此是1setOf的一部分

no name (since name-length was 0)

没有名称(因为名称长度为0)

Octets Symbolic Value Protocol comments field

八位字节符号值协议注释字段

0x0000 value- defined to be 0 for this length type

0x0000值-为此长度类型定义为0

no value (since value-length was 0)

无值(因为值长度为0)

0x34 begCollection value-tag beginning of the 2nd member of the 1setOf "sizes-avail " collection attribute

0x34 begCollection值标记是“sizes avail”集合属性的第二个成员的开始

0x0000 name- Zero length name indicates length this is member of previous attribute

0x0000名称-长度为零的名称表示该长度是上一个属性的成员

name no name (since name-length was 0)

名称没有名称(因为名称长度为0)

0x0000 value- defined to be 0 for this length type

0x0000值-为此长度类型定义为0

no value (since value-length was 0)

无值(因为值长度为0)

0x4A memberAttrName value-tag starts member attribute: "x-dimension"

0x4A memberAttrName值标记启动成员属性:“x维度”

0x0000 name- defined to be 0 for this length type, so part of 1setOf

0x0000名称-此长度类型定义为0,因此是1setOf的一部分

no name (since name-length was 0)

没有名称(因为名称长度为0)

0x000B value- length of "x-dimension" length keyword

0x000B值-x维长度关键字的长度

x-dimension x-dimension value name of 1st collection member attribute

x维x维值第一集合成员属性的名称

0x21 integer type value-tag attribute type

0x21整型值标记属性类型

Octets Symbolic Value Protocol comments field

八位字节符号值协议注释字段

0x0000 name- 0 indicates 1setOf length

0x0000名称-0表示长度为1

no name (since name-length was 0)

没有名称(因为名称长度为0)

0x0004 value- length of an integer = 4 length

0x0004值-整数的长度=4长度

0x0003 value value of 1st collection member attribute

0x0003第一个集合成员属性的值

0x4A memberAttrName value-tag starts member attribute: "y-dimension"

0x4A memberAttrName值标记启动成员属性:“y维度”

0x0000 name- defined to be 0 for this length type, so part of 1setOf

0x0000名称-此长度类型定义为0,因此是1setOf的一部分

no name (since name-length was 0)

没有名称(因为名称长度为0)

0x000B value- length of the "y-length dimension" keyword

0x000B值-y-length维度关键字的长度

y-dimension y-dimension value name of 2nd collection member attribute

y-维度第二集合成员属性的y-维度值名称

0x21 integer type value-tag attribute type

0x21整型值标记属性类型

0x0000 name- 0 indicates 1setOf length

0x0000名称-0表示长度为1

no name (since name-length was 0)

没有名称(因为名称长度为0)

0x0004 value- length of an integer = 4 length

0x0004值-整数的长度=4长度

0x0005 value value of 2nd collection member attribute

0x0005第二个集合成员属性的值

Octets Symbolic Value Protocol comments field

八位字节符号值协议注释字段

0x37 endCollection value-tag end of the 1setOf collection value

0x37 endCollection值标记1setOf集合值的末尾

0x0000 name- defined to be 0 for this length type, so part of 1setOf

0x0000名称-此长度类型定义为0,因此是1setOf的一部分

no name (since name-length was 0)

没有名称(因为名称长度为0)

0x0000 value- defined to be 0 for this length type

0x0000值-为此长度类型定义为0

no value (since value-length was 0)

无值(因为值长度为0)

Appendix C: Encoding Example of Collection containing 1setOf XXX attribute (Informative)

附录C:包含1setOf XXX属性的集合编码示例(信息性)

The overall structure of the collection value can be pictorially represented as:

集合值的整体结构可以用图形表示为:

      "wagons" =
        {  "colors" = red, blue;
           "sizes" = 4, 6, 8
        }
        
      "wagons" =
        {  "colors" = red, blue;
           "sizes" = 4, 6, 8
        }
        

A simplified view of the encoding would look like this:

编码的简化视图如下所示:

Table 10 - Overview Encoding of collection with 1setOf value

表10-使用1setOf值的集合编码概述

Tag Value Name Value

标记值名称值

begCollection wagons ""

“收集车”

memberAttrName "" colors

memberAttrName“”颜色

keyword "" red

关键字“红色”

keyword "" blue

关键词“蓝色”

memberAttrName "" sizes

memberAttrName“”大小

integer "" 4

整数“”4

integer "" 6

整数“”6

integer "" 8

整数“”8

endCollection "" ""

endCollection“”“”

Table 11 - Example Encoding of collection with 1setOf value

表11-使用1setOf值的集合编码示例

Octets Symbolic Value Protocol comments field

八位字节符号值协议注释字段

0x34 begCollection value-tag beginning of the "wagons" collection attribute

0x34 begCollection值标记“wagons”集合属性的开头

0x0005 name- length of (collection) length attribute name

0x0005名称-长度(集合)长度属性名称的长度

wagons wagons name name of (collection) attribute

货车货车名称(集合)属性的名称

0x0000 value- defined to be 0 for this length type

0x0000值-为此长度类型定义为0

no value (since value-length was 0)

无值(因为值长度为0)

0x4A memberAttrName value-tag starts a new member attribute: "colors"

0x4A memberAttrName值标记启动新的成员属性:“颜色”

0x0000 name- defined to be 0 for this length type, so part of 1setOf

0x0000名称-此长度类型定义为0,因此是1setOf的一部分

no name (since name-length was 0)

没有名称(因为名称长度为0)

0x0006 value- length of "colors" keyword length

0x0006值-颜色关键字长度的长度

colors colors value value is name of 1st member attribute

颜色颜色值是第一个成员属性的名称

0x44 keyword type value-tag keyword type

0x44关键字类型值标记关键字类型

0x0000 name- 0 indicates 1setOf wagons length

0x0000名称-0表示货车长度为1

no name (since name-length was 0)

没有名称(因为名称长度为0)

0x0004 value-length

0x0004值长度

Octets Symbolic Value Protocol comments field

八位字节符号值协议注释字段

blue blue value value of 1st member attribute

第一个成员属性的蓝色值

0x44 keyword type value-tag keyword type

0x44关键字类型值标记关键字类型

0x0000 name- 0 indicates 1setOf wagons length

0x0000名称-0表示货车长度为1

no name (since name-length was 0)

没有名称(因为名称长度为0)

0x0003 value-length

0x0003值长度

red red value value of 1st member attribute

第一个成员属性的红色值

0x4A memberAttrName value-tag starts a new member attribute: "sizes"

0x4A memberAttrName值标记启动新的成员属性:“大小”

0x0000 name- defined to be 0 for this length type, so part of 1setOf

0x0000名称-此长度类型定义为0,因此是1setOf的一部分

no name (since name-length was 0)

没有名称(因为名称长度为0)

0x0005 value- length of "length-avail" length keyword

0x0005值-长度有效长度关键字的长度

sizes sizes value Name of 2nd member attribute

大小第二个成员属性的值名称

0x21 integer type value-tag attribute type

0x21整型值标记属性类型

0x0000 name- 0 indicates 1setOf wagons length

0x0000名称-0表示货车长度为1

no name (since name-length was 0)

没有名称(因为名称长度为0)

0x0004 value- length of an integer = 4 length

0x0004值-整数的长度=4长度

Octets Symbolic Value Protocol comments field

八位字节符号值协议注释字段

0x0004 value 1st value for 1setOf integer attribute

0x0004值1setOf integer属性的第一个值

0x21 integer type value-tag attribute type

0x21整型值标记属性类型

0x0000 name- 0 indicates 1setOf length

0x0000名称-0表示长度为1

no name (since name-length was 0)

没有名称(因为名称长度为0)

0x0004 value-length length of an integer = 4

0x0004值长度整数的长度=4

0x0006 value 2nd value for 1setOf integer attribute

0x0006值1setOf integer属性的第二个值

0x21 integer type value-tag attribute type

0x21整型值标记属性类型

0x0000 name- 0 indicates 1setOf length

0x0000名称-0表示长度为1

no name (since name-length was 0)

没有名称(因为名称长度为0)

0x0004 value- length of an integer = 4 length

0x0004值-整数的长度=4长度

0x0008 value 3rd value for 1setOf integer attribute

0x0008值1setOf integer属性的第三个值

0x37 endCollection value-tag end of the collection

0x37 endCollection值标记集合的结束

0x0000 name- defined to be 0 for this length type, so part of 1setOf

0x0000名称-此长度类型定义为0,因此是1setOf的一部分

no name (since name-length was 0)

没有名称(因为名称长度为0)

0x0000 value- defined to be 0 for this length type

0x0000值-为此长度类型定义为0

Octets Symbolic Value Protocol comments field

八位字节符号值协议注释字段

no value (since value-length was 0)

无值(因为值长度为0)

Appendix D: Description of the Base IPP Documents (Informative)

附录D:基础IPP文件说明(资料性)

The base set of IPP documents includes:

IPP文件的基本集包括:

      Design Goals for an Internet Printing Protocol [RFC2567]
      Rationale for the Structure and Model and Protocol for the
      Internet Printing Protocol [RFC2568]
      Internet Printing Protocol/1.1: Model and Semantics [RFC2911]
      Internet Printing Protocol/1.1: Encoding and Transport [RFC2910]
      Internet Printing Protocol/1.1: Implementer's Guide [RFC3196]
      Mapping between LPD and IPP Protocols [RFC2569]
        
      Design Goals for an Internet Printing Protocol [RFC2567]
      Rationale for the Structure and Model and Protocol for the
      Internet Printing Protocol [RFC2568]
      Internet Printing Protocol/1.1: Model and Semantics [RFC2911]
      Internet Printing Protocol/1.1: Encoding and Transport [RFC2910]
      Internet Printing Protocol/1.1: Implementer's Guide [RFC3196]
      Mapping between LPD and IPP Protocols [RFC2569]
        

The "Design Goals for an Internet Printing Protocol" document takes a broad look at distributed printing functionality, and it enumerates real-life scenarios that help to clarify the features that need to be included in a printing protocol for the Internet. It identifies requirements for three types of users: end users, operators, and administrators. It calls out a subset of end user requirements that are satisfied in IPP/1.0 [RFC2566, RFC2565]. A few OPTIONAL operator operations have been added to IPP/1.1 [RFC2911, RFC2910].

“Internet打印协议的设计目标”文档广泛介绍了分布式打印功能,并列举了有助于澄清需要包含在Internet打印协议中的功能的实际场景。它确定了三类用户的需求:最终用户、操作员和管理员。它调用了IPP/1.0[RFC2566,RFC2565]中满足的最终用户需求子集。IPP/1.1[RFC2911、RFC2910]中增加了一些可选的操作员操作。

The "Rationale for the Structure and Model and Protocol for the Internet Printing Protocol" document describes IPP from a high level view, defines a roadmap for the various documents that form the suite of IPP specification documents, and gives background and rationale for the IETF IPP working group's major decisions.

“互联网打印协议的结构、模型和协议的基本原理”文件从高层次上描述了IPP,定义了构成IPP规范文件套件的各种文件的路线图,并为IETF IPP工作组的主要决策提供了背景和基本原理。

The "Internet Printing Protocol/1.1: Model and Semantics" document describes a simplified model with abstract objects, their attributes, and their operations. The model introduces a Printer and a Job. The Job supports multiple documents per Job. The model document also addresses how security, internationalization, and directory issues are addressed.

“Internet打印协议/1.1:模型和语义”文档描述了一个简化模型,其中包含抽象对象、它们的属性及其操作。该模型引入了打印机和作业。每个作业支持多个文档。模型文档还讨论了如何解决安全性、国际化和目录问题。

The "Internet Printing Protocol/1.1: Encoding and Transport" document is a formal mapping of the abstract operations and attributes defined in the model document onto HTTP/1.1 [RFC2616]. It also defines the encoding rules for a new Internet MIME media type called "application/ipp". This document also defines the rules for transporting over HTTP a message body whose Content-Type is "application/ipp". This document defines the 'ipp' scheme for identifying IPP printers and jobs.

“Internet打印协议/1.1:编码和传输”文档是模型文档中定义的抽象操作和属性到HTTP/1.1[RFC2616]的正式映射。它还定义了称为“应用程序/ipp”的新Internet MIME媒体类型的编码规则。本文档还定义了通过HTTP传输内容类型为“application/ipp”的消息体的规则。本文件定义了识别ipp打印机和作业的“ipp”方案。

The "Internet Printing Protocol/1.1: Implementer's Guide" document gives insight and advice to implementers of IPP clients and IPP objects. It is intended to help them understand IPP/1.1 and some of the considerations that may assist them in the design of their client and/or IPP object implementations. For example, a typical order of processing requests is given, including error checking. Motivation for some of the specification decisions is also included.

“互联网打印协议/1.1:实施者指南”文件为IPP客户端和IPP对象的实施者提供了见解和建议。它旨在帮助他们理解IPP/1.1以及一些可能有助于他们设计客户端和/或IPP对象实现的注意事项。例如,给出了处理请求的典型顺序,包括错误检查。还包括一些规范决策的动机。

The "Mapping between LPD and IPP Protocols" document gives some advice to implementers of gateways between IPP and LPD (Line Printer Daemon) implementations.

“LPD和IPP协议之间的映射”文档为IPP和LPD(Line Printer Daemon)实现之间网关的实现者提供了一些建议。

Authors' Addresses

作者地址

Roger deBry Utah Valley State College Orem, UT 84058

罗杰·德布里犹他谷州立学院奥勒姆,UT 84058

Phone: (801) 222-8000 EMail: debryro@uvsc.edu

电话:(801)222-8000电子邮件:debryro@uvsc.edu

Tom Hastings Xerox Corporation 737 Hawaii St. ESAE 231 El Segundo, CA 90245

汤姆黑斯廷斯施乐公司737夏威夷圣埃塞231埃尔塞贡多,加利福尼亚州90245

Phone: 310-333-6413 Fax: 310-333-5514 EMail: hastings@cp10.es.xerox.com

电话:310-333-6413传真:310-333-5514电子邮件:hastings@cp10.es.xerox.com

Robert Herriot Consultant 706 Colorado Ave Palo Alto, CA 94303

加利福尼亚州帕洛阿尔托市科罗拉多大道706号罗伯特·赫里奥特咨询公司,邮编94303

Phone: 650-327-4466 Fax: 650-327-4466 EMail: bob@herriot.com

电话:650-327-4466传真:650-327-4466电子邮件:bob@herriot.com

Kirk Ocke Xerox Corp. 800 Phillips Rd M/S 128-30E Webster, NY 14580

柯克·奥克施乐公司菲利普斯路800号M/S 128-30E韦伯斯特,纽约州14580

Phone: (585) 442-4832 EMail: KOcke@crt.xerox.com

电话:(585)442-4832电子邮件:KOcke@crt.xerox.com

Peter Zehler Xerox Corp. 800 Phillips Rd M/S 128-30E Webster, NY 14580

彼得·泽勒·施乐公司菲利普斯路800号M/S 128-30E韦伯斯特,纽约州14580

Phone: (585) 265-8755 EMail: PZehler@crt.xerox.com

电话:(585)265-8755电子邮件:PZehler@crt.xerox.com

   IPP Web Page:  http://www.pwg.org/ipp/
   IPP Mailing List:  ipp@pwg.org
        
   IPP Web Page:  http://www.pwg.org/ipp/
   IPP Mailing List:  ipp@pwg.org
        

To subscribe to the ipp mailing list, send the following email:

要订阅ipp邮件列表,请发送以下电子邮件:

1) send it to majordomo@pwg.org 2) leave the subject line blank 3) put the following two lines in the message body: subscribe ipp end

1) 寄到majordomo@pwg.org2)主题行留空3)在消息正文中插入以下两行:subscribe ipp end

Implementers of this specification document are encouraged to join the IPP Mailing List in order to participate in any discussions of clarification issues and review of registration proposals for additional attributes and values. In order to reduce spam the mailing list rejects mail from non-subscribers, so you must subscribe to the mailing list in order to send a question or comment to the mailing list.

鼓励本规范文件的实施者加入IPP邮件列表,以便参与澄清问题的任何讨论,并审查其他属性和值的注册提案。为了减少垃圾邮件,邮件列表拒绝来自非订阅者的邮件,因此您必须订阅邮件列表才能向邮件列表发送问题或评论。

Full Copyright Statement

完整版权声明

Copyright (C) The Internet Society (2002). All Rights Reserved.

版权所有(C)互联网协会(2002年)。版权所有。

This document and translations of it may be copied and furnished to others, and derivative works that comment on or otherwise explain it or assist in its implementation may be prepared, copied, published and distributed, in whole or in part, without restriction of any kind, provided that the above copyright notice and this paragraph are included on all such copies and derivative works. However, this document itself may not be modified in any way, such as by removing the copyright notice or references to the Internet Society or other Internet organizations, except as needed for the purpose of developing Internet standards in which case the procedures for copyrights defined in the Internet Standards process must be followed, or as required to translate it into languages other than English.

本文件及其译本可复制并提供给他人,对其进行评论或解释或协助其实施的衍生作品可全部或部分编制、复制、出版和分发,不受任何限制,前提是上述版权声明和本段包含在所有此类副本和衍生作品中。但是,不得以任何方式修改本文件本身,例如删除版权通知或对互联网协会或其他互联网组织的引用,除非出于制定互联网标准的需要,在这种情况下,必须遵循互联网标准过程中定义的版权程序,或根据需要将其翻译成英语以外的其他语言。

The limited permissions granted above are perpetual and will not be revoked by the Internet Society or its successors or assigns.

上述授予的有限许可是永久性的,互联网协会或其继承人或受让人不会撤销。

This document and the information contained herein is provided on an "AS IS" basis and THE INTERNET SOCIETY AND THE INTERNET ENGINEERING TASK FORCE DISCLAIMS ALL WARRANTIES, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO ANY WARRANTY THAT THE USE OF THE INFORMATION HEREIN WILL NOT INFRINGE ANY RIGHTS OR ANY IMPLIED WARRANTIES OF MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE.

本文件和其中包含的信息是按“原样”提供的,互联网协会和互联网工程任务组否认所有明示或暗示的保证,包括但不限于任何保证,即使用本文中的信息不会侵犯任何权利,或对适销性或特定用途适用性的任何默示保证。

Acknowledgement

确认

Funding for the RFC Editor function is currently provided by the Internet Society.

RFC编辑功能的资金目前由互联网协会提供。