• Aucun résultat trouvé

2. Conventions Used in This Document

2.3. Model Terminology

An End User who is also authorized to manage all aspects of an Output Device or Printer, including creating the Printer instances and

controlling the authorization of other End Users and Operators [RFC2567].

2.3.2. Attributes

An attribute is an item of information that is associated with an instance of an IPP object (Printer, Job, etc.). An attribute

consists of an attribute name and one or more attribute values. Each attribute has a specific attribute syntax. All object attributes are defined in Section 5, and all operation attributes are defined in Section 4.

Job Template attributes are described in Section 5.2. The Client optionally supplies Job Template attributes in a Job Creation request (operation requests that create Job objects). The Printer object has associated attributes that define supported and default values for the Printer.

2.3.2.1. Attribute Group Name

Related attributes are grouped into named groups. The name of the group is a keyword. The group name can be used in place of naming all the attributes in the group explicitly. Attribute groups are defined in Section 4.

2.3.2.2. Attribute Name

Each attribute is uniquely identified in this document by its attribute name. An attribute name is a keyword. The keyword attribute name is given in the section title in this document that describes that attribute. In running text in this document,

attribute names are indicated inside double quotation marks (") where the quotation marks are not part of the keyword itself.

2.3.2.3. Attribute Syntax

Each attribute is defined using an explicit syntax type. In this document, each syntax type is defined as a keyword with specific meaning. The "Encoding and Transport" document [RFC8010] indicates the actual "on-the-wire" encoding rules for each syntax type.

Attribute syntax types are defined in Section 5.1.

2.3.2.4. Attribute Value

Each attribute has one or more values. Attribute values are represented in the syntax type specified for that attribute. In running text in this document, attribute values are indicated inside single quotation marks (’), whether their attribute syntax is

keyword, integer, text, etc. where the quotation marks are not part of the value itself.

2.3.3. End User

An End User is a person or software process that is authorized to perform basic printing functions, including finding/locating a Printer, creating a local instance of a Printer, viewing Printer status, viewing Printer capabilities, submitting a Print Job, viewing Print Job status, and altering the attributes of a Print Job

[RFC2567].

2.3.4. Impression

An Impression is the content imposed upon one side of a Media Sheet by a marking engine, independent of the number of times that the sheet side passes any marker. An Impression contains one or more Input Pages that are imposed (scaled, translated, and/or rotated) during processing of the Document data.

2.3.5. Input Page

An Input Page is a page according to the definition of "pages" in the language used to express the Document data.

2.3.6. Job Creation Operation

A Job Creation operation is any operation that causes the creation of a Job object, e.g., the Create-Job, Print-Job, and Print-URI

operations defined in this document.

2.3.7. Keyword

Keywords are used within this document as identifiers of semantic entities within the abstract model (see Section 5.1.4). Attribute names, some attribute values, attribute syntaxes, and attribute group names are represented as keywords.

2.3.8. Media Sheet

A Media Sheet is a single instance of a medium, whether printing on one or both sides of the medium. Media Sheets also include sections of roll media.

2.3.9. Operator

An Operator is an End User that also has special rights on the Output Device or Printer. The Operator typically monitors the status of the Printer and also manages and controls the Jobs at the Output Device [RFC2567]. The Operator is allowed to query and control the Printer, Jobs, and Documents based on site policy.

2.3.10. Set

A Set is a logical boundary between the delivered Media Sheets of a printed Job. For example, in the case of a ten-page single Document with collated pages and a request for 50 copies, each of the 50 printed copies of the Document constitutes a Set. If the pages were uncollated, then 50 copies of each of the individual pages within the Document would represent each Set. Finishing processes operate on Sets.

2.3.11. Support of Attributes

By definition, a Printer supports an attribute only if that Printer accepts it in a request or responds with the corresponding attribute populated with some value(s) in a response to a query for that

attribute. A Printer supports an attribute value if the value is one of the Printer’s "supported values" attributes. The device behind a Printer can exhibit a behavior that corresponds to some IPP

attribute, but if the Printer, when queried for that attribute, doesn’t respond with the attribute, then as far as IPP is concerned, that implementation does not support that feature. If the Printer’s "xxx-supported" attribute is not populated with a particular value (even if that value is a legal value for that attribute), then that Printer does not support that particular value.

A conforming implementation supports all REQUIRED attributes.

However, even for REQUIRED attributes, conformance to IPP does not mandate that all implementations support all possible values

representing all possible Job processing behaviors and features. For example, if a given instance of a Printer supports only certain

Document formats, then that Printer responds with the

"document-format-supported" attribute populated with a set of values, or possibly only one value, taken from the entire set of possible values defined for that attribute. This limited set of values

represents the Printer’s set of supported Document formats.

Supporting an attribute and some set of values for that attribute enables IPP End Users to be aware of and make use of those features associated with that attribute and those values. If an

implementation chooses to not support an attribute or some specific value, then IPP End Users would have no ability to make use of that feature within the context of IPP itself. However, due to existing practice and legacy systems that are not IPP aware, there might be some other mechanism outside the scope of IPP to control or request the "unsupported" feature (such as embedded instructions within the Document data itself).

For example, consider the following for the "finishings-supported"

attribute.

1) If a Printer is not physically capable of stapling, the

"finishings-supported" attribute MUST NOT be populated with the value of ’staple’.

2) A Printer is physically capable of stapling; however, an implementation chooses not to support stapling in the IPP "finishings" attribute. In this case, ’staple’ MUST NOT be a value in the "finishings-supported" Printer Description

attribute. Without support for the value ’staple’, an IPP End User would have no means within the protocol itself to request that a Job be stapled. However, an existing Document data formatter might be able to request that the Document be stapled directly with an embedded instruction within the Document data. In this case, the IPP implementation does not "support"

stapling; however, the End User is still able to have some control over the stapling of the completed Job.

3) A Printer is physically capable of stapling, and an implementation chooses to support stapling in the IPP

"finishings" attribute. In this case, ’staple’ MUST be a value in the "finishings-supported" Printer attribute. Doing so enables End Users to be aware of and make use of the stapling feature using IPP attributes.

Even though support for Job Template attributes by a Printer is OPTIONAL in IPP/1.1, Printers whose associated device(s) is capable of realizing any feature or function that corresponds to an IPP

attribute and some associated value SHOULD support that IPP attribute and value.

The set of values in any of the supported value attributes is set (populated) by some administrative process or automatic sensing mechanism that is outside the scope of this document. For administrative policy and control reasons, an Administrator can choose to make only a subset of possible values visible to the End User. In this case, the real Output Device behind the IPP

Printer abstraction can be capable of a certain feature; however, an Administrator is specifying that access to that feature not be

exposed to the End User through IPP. Also, since a Printer can represent a logical print device (not just a Physical Device), the actual process for supporting a value is undefined and left up to the implementation. However, if a Printer supports a value, some manual human action might be needed to realize the semantic action

associated with the value, but no End User action is required.

For example, if one of the values in the "finishings-supported"

attribute is ’staple’, the actual process might be an automatic

staple action by a Physical Device controlled by some command sent to the device. Or, the actual process of stapling might be a manual action by an Operator at an Operator-attended Printer.

For another example of how supported attributes function, consider an Administrator who desires to control all Print Jobs so that no Job sheets are printed in order to conserve paper. To force no Job sheets, the Administrator sets the only supported value for the "job-sheets-supported" attribute to ’none’. In this case, if a Client requests anything except ’none’, the Job Creation request is rejected or the "job-sheets" value is ignored (depending on the value of "ipp-attribute-fidelity"). To force the use of Job start/end sheets on all Jobs, the Administrator does not include the value ’none’ in the "job-sheets-supported" attribute. In this case, if a Client requests ’none’, the Job Creation request is rejected or the "job-sheets" value is ignored (again depending on the value of "ipp-attribute-fidelity").

Job Template attributes will typically have corresponding

"xxx-supported" and "xxx-default" Printer Description attributes that contain the supported and default values for the attribute. For capabilities that are not associated with a Job, the convention is to have an "xxx-supported" Printer Description attribute that lists the supported values and an "xxx-configured" Printer Description

attribute that contains the value being used by the Printer. For example, the "charset-supported" Printer Description attribute (Section 5.4.18) lists the supported character sets for the Printer while the "charset-configured" Printer Description attribute

(Section 5.4.17) specifies the character set being used by the Printer.

2.3.12. Terminating State

The final state for a Job or other object is called its Terminating State. For example, the ’aborted’, ’canceled’, and ’completed’ Job states are Terminating States.