Network Working Group G. Klyne Request for Comments: 2531 5GM/Content Technologies Category: Standards Track L. McIntyre Xerox Corporation March 1999 Content Feature Schema for Internet Fax 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. Copyright Notice Copyright (C) The Internet Society (1999). All Rights Reserved. Abstract This document defines a content feature schema that is a profile of the media feature registration mechanisms [1,2,3] for use in performing capability identification between extended Internet fax systems [5]. This document does not describe any specific mechanisms for communicating capability information, but does presume that any such mechanisms will transfer textual values. It specifies a textual format to be used for describing Internet fax capability information. Klyne & McIntyre Standards Track [Page 1] RFC 2531 Content Feature Schema for Internet Fax March 1999 Table of Contents 1. Introduction .............................................3 1.1 Organization of this document............................3 1.2 Terminology and document conventions.....................3 2. Fax feature schema syntax ................................4 3. Internet fax feature tags ................................4 3.1 Image size...............................................5 3.2 Resolution...............................................5 3.3 Media type...............................................6 3.4 Paper Size...............................................6 3.5 Color capability.........................................6 3.6 Color model..............................................8 3.7 Image coding............................................10 4. Examples ................................................12 4.1 Simple mode Internet fax system.........................12 4.2 High-end black-and-white Internet fax system............12 4.3 Grey-scale Internet fax system..........................13 4.4 Full-color Internet fax system..........................13 4.5 Full-color Internet fax system (MRC)....................14 4.6 Sender and receiver feature matching....................15 5. IANA Considerations .....................................17 6. Security Considerations .................................17 6.1 Capability descriptions and mechanisms..................17 6.2 Specific threats........................................18 7. Acknowledgements ........................................18 8. References ..............................................18 9. Authors' Addresses ......................................21 Appendix A: Feature registrations ..........................22 A.1 Image size..............................................22 A.2 Resolution aspect ratio.................................24 A.3 Color levels............................................25 A.4 Color space.............................................27 A.5 CIELAB color depth......................................30 A.6 CIELAB color gamut......................................32 A.7 Image file structure....................................34 A.8 Image data coding.......................................36 A.9 Image coding constraint.................................38 A.10 JBIG stripe size.......................................39 A.11 Image interleave.......................................41 A.12 Color subsampling......................................42 A.13 MRC availability and mode..............................43 A.14 MRC maximum stripe size................................45 Appendix B: TIFF mode descriptions .........................47 Appendix C: Revision history ...............................49 Full Copyright Statement ...................................51 Klyne & McIntyre Standards Track [Page 2] RFC 2531 Content Feature Schema for Internet Fax March 1999 1. Introduction This document defines a content feature schema that is a profile of the media feature registration mechanisms [1,2,3] for use in performing capability identification between extended Internet fax systems [5]. This document does not describe any specific mechanisms for communicating capability information, but does presume that any such mechanisms will transfer textual values. It specifies a textual format to be used for describing Internet fax capability information. The range of capabilities that can be indicated are based on those covered by the TIFF file format for Internet fax [7] and Group 3 facsimile [6]. A companion document [4] describes the relationship and mapping between this schema and Group 3 fax capabilities. 1.1 Organization of this document Section 2 specifies the overall syntax for fax feature descriptions by reference to the media feature registration and syntax documents [1,2]. Section 3 enumerates the feature tags that are to be recognized and processed by extended Internet fax systems, according to their capabilities. Appendix A contains additional feature tag registrations for media features that are specific to fax and for which no applicable registration already exists. These are presented in the form prescribed by the media feature registration procedure [1]. 1.2 Terminology and document conventions The term "extended Internet fax system" is used to describe any software, device or combination of these that conforms to the specification "Extended Facsimile Using Internet Mail" [5]. "capability exchange" describes any transfer of information between communicating systems that is used to indicate system capabilities and hence determine the form of data transferred. This term covers both one-way and two-way transfers of capability information. "capability identification" is a particular form of capability exchange in which a receiving system provides capability information to a sending system. Klyne & McIntyre Standards Track [Page 3] RFC 2531 Content Feature Schema for Internet Fax March 1999 "capability description" is a collection of data presented in some specific format that describes the capabilities of some communicating entity. It may exist separately from any specific capability exchange mechanism. NOTE: Comments like this provide additional nonessential information about the rationale behind this document. Such information is not needed for building a conformant implementation, but may help those who wish to understand the design in greater depth. 2. Fax feature schema syntax The syntax for the fax feature schema is described by "A syntax for describing media feature sets" [2]. This in turn calls upon media feature tags that may be registered according to the procedure described in "Media Feature Tag Registration Procedure" [1]. NOTE: Media feature registration provides a base vocabulary of features that correspond to media handling capabilities. The feature set syntax provides a mechanism and format for combining these to describe combinations of features. This memo indicates those features that may be associated with extended Internet fax systems. 3. Internet fax feature tags This section enumerates and briefly describes a number of feature tags that are defined for use with extended Internet fax systems and applications. These tags may be used also by other systems and applications that support corresponding capabilities. The feature tags presented below are those that an extended Internet fax system is expected to recognize its ability or non-ability to handle. Definitive descriptions of feature tags are indicated by reference to their registration per the media feature registration procedure [1] (some of which are appended to this document) NOTE: The presence of a feature tag in this list does not mean that an extended Internet fax system must have that capability; rather, it must recognize the feature tag and deal with it according to the capabilities that it does have. Klyne & McIntyre Standards Track [Page 4] RFC 2531 Content Feature Schema for Internet Fax March 1999 Further, an extended Internet fax system is not prevented from recognizing and offering additional feature tags. The list below is intended to provide a basic vocabulary that all extended Internet fax systems can use in a consistent fashion. If an unrecognized or unused feature tag is received, the feature set matching rule (described in RFC2533 [2]) operates so that tag is effectively ignored. 3.1 Image size Feature tag name Legal values ---------------- ------------ size-x (>0) size-y (>0) Reference: this document, Appendix A. These feature values indicate a rendered document size in inches. Where the actual size is measured in millimetres, a conversion factor of 10/254 may be applied to yield an exact inch-based value. 3.2 Resolution Feature tag name Legal values ---------------- ------------ dpi (>0) dpi-xyratio (>0) Reference: "Media Features for Display, Print, and Fax" [3], and this document appendix A. If 'dpi-xyratio' is present and not equal to 1 then the horizontal resolution (x-axis) is indicated by the 'dpi' feature value, and the vertical resolution (y-axis) is the value of 'dpi' divided by 'dpi- xyratio'. For example, the basic Group 3 fax resolution of 200*100dpi might be indicated as: (& (dpi=200) (dpi-xyratio=200/100) ) When describing resolutions for an MRC format document, the complete set of usable resolutions is listed. However, there are some restrictions on their use: (a) 100dpi resolution can be used only Klyne & McIntyre Standards Track [Page 5] RFC 2531 Content Feature Schema for Internet Fax March 1999 with multi-level images, and (b) any multi-level image resolution is required to be an integral sub-multiple of the applicable mask resolution. 3.3 Media type Feature tag name Legal values ---------------- ------------ ua-media screen screen-paged stationery transparency envelope envelope-plain continuous Reference: "Media Features for Display, Print, and Fax" [3]. NOTE: Where the recipient indicates specific support for hard copy or soft copy media type, a sender of color image data may wish to adjust the color components (e.g. per the related rules of ITU recommendation T.42 [9]) to improve rendered image quality on that medium. 3.4 Paper Size Feature tag name Legal values ---------------- ------------ paper-size A4 A3 B4 letter legal Reference: "Media Features for Display, Print, and Fax" [3]. 3.5 Color capability Feature tag name Legal values ---------------- ------------ color Binary (bi-level only) Limited (a limited number of colors) Mapped (palette or otherwise mapped color) Grey (grey-scale only) Full (full continuous-tone color) Reference: "Media Features for Display, Print, and Fax" [3]. Klyne & McIntyre Standards Track [Page 6] RFC 2531 Content Feature Schema for Internet Fax March 1999 The intention here is to give a broad indication of color handling capabilities that might be used, for example, to select among a small number of available data resources. The value of this feature also gives an indication of the more detailed color handling features that might be applicable (see next section). 'Binary' indicates black-and-white, or other bi-level capability. No further qualifying feature tags are required. 'Limited' indicates a small number of distinct fixed colors, such as might be provided by a highlight printer, pen plotter or limited color display. The 'color-levels' tag should be used to indicate the number of distinct colors available. NOTE: No ability to indicate any specific or named color is implied by this option. Some devices might use different intensity levels rather than different hues for distinction. 'Mapped' indicates that pixel color values are mapped in some specifiable way to a multi-component color space. The 'color-levels' tag may be used to indicate the number of distinct colors available; in its absence, sufficient levels to display a photographic image should be assumed. 'Grey' indicates a continuous tone grey-scale capability. 'Full' indicates full continuous tone color capability. For 'Mapped', 'Grey' and 'Full' color, additional feature tags (section 3.6) may be used to further qualify the color reproduction. Klyne & McIntyre Standards Track [Page 7] RFC 2531 Content Feature Schema for Internet Fax March 1999 3.6 Color model Feature tag name Legal values ---------------- ------------ color-levels (>2) color-space Device-RGB (device RGB) Device-CMY (device CMY) Device-CMYK (device CMYK) CIELAB (LAB per T.42 [9]) (may be extended by further registrations) CIELAB-L-depth (>0) CIELAB-a-depth CIELAB-b-depth CIELAB-L-min CIELAB-L-max CIELAB-a-min CIELAB-a-max CIELAB-b-min CIELAB-b-max Reference: this document, appendix A. The general model for image handling (both color and non-color) is described here from a receiver's perspective; a similar model operates in the reverse direction for a scan/send perspective: raw bit pixel color physical stream -(A)-> values -(B)-> values -(C)-> rendition - "raw bit stream" is a stream of coded bits (A) indicates image coding/decoding (MH,MR,MMR,JPEG,JBIG,etc.) - "pixel values" are a single numeric value per picture element that designates the color of that element. (B) indicates pixel-to-color value mapping - "color values" have a separate numeric value for each color component (i.e. L*, a*, b* in the case of CIELAB indicated above.) (C) indicates how the color values are related to a physical color. This involves interpretation of the color value with respect to a color model (e.g. RGB, L*a*b*, CMY, CMYK) and a color space (which is typically recipient-dependent). Klyne & McIntyre Standards Track [Page 8] RFC 2531 Content Feature Schema for Internet Fax March 1999 - "physical rendition" is a color value physically realized on a display, printer or other device. There are many variables that can be applied at each stage of the processing of a color image, and any may be critical to meaningful handling of that image in some circumstances. In other circumstances many of the variables may be implied (to some level of approximation) in the application that uses them (e.g. color images published on a Web page). The color feature framework described here is intended to allow capability description at a range of granularity: feature tags which correspond to implied (or "don't care" or "unknown") feature values may simply be omitted from a capability description. Grey scale and bi-level images are handled within this framework as a special case, having a 1-component color model. The following features are used for describing color capabilities: 'color-levels' indicates the number of distinct values for each picture element, and applies to all but bi-level images. For bi- level images, a value of 2 is implied. 'color-space' is used mainly with 'Mapped' and 'Full', but could be used with other modes if the exact color used is significant. Two kinds of color space can be distinguished: device-dependent and calibrated. Device dependent spaces are named here as 'Device-xxx', and are used to indicate a color space that is defined by the receiving device. Calibrated color spaces presume the existence of a rendering system that is calibrated with respect to an indicated definition, and is capable of processing the device-independent color information accordingly. A color-handling receiver should indicate any appropriate device color space capability in addition to any calibrated color spaces that it may support. A calibrated color space should be used when precise color matching is required in the absence of specific knowledge of the receiving system. NOTE: In practice, although they appear to be separate concepts, the color model and color space cannot be separated. In the final analysis, a color model (RGB, CMY, etc.) must be defined with respect to some color space. 'CIELAB-L-depth', 'CIELAB-a-depth' and 'CIELAB-b-depth' indicate the number of different values that are possible for the L*, a* and b* color components respectively, and are significant only when colors Klyne & McIntyre Standards Track [Page 9] RFC 2531 Content Feature Schema for Internet Fax March 1999 are represented in a CIELAB color space. These features would be used with palettized color, or with full color where each color component has a different number of possible values. The 'CIELAB-x-min' and 'CIELAB-x-max' values indicate a color gamut (i.e. a range of color values that are used or may be rendered). A gamut may be indicated in terms of the CIELAB color space even when colors are represented in some other space. 3.7 Image coding Feature tag name Legal values ---------------- ------------ image-file- TIFF-S structure TIFF-F TIFF-J TIFF-C TIFF-L TIFF-M (may be extended by further registrations, to cover non-TIFF image file structures) image-coding MH MR MMR JBIG JPEG (may be extended by further registrations) image-coding- JBIG-T85 (bi-level, per ITU T.85) constraint JBIG-T43 (multi-level, per ITU T.43) JPEG-T4E (per ITU T.4, Annex E) (may be extended by further registrations) JBIG-stripe-size image-interleave Stripe Plane color-subsampling "1:1:1" (no color subsampling) "4:1:1" (4:1:1 color subsampling) MRC-mode (0..7) (per ITU T.44 [15]) MRC-max-stripe-size Reference: this document, appendix A. 'image-file-structure' defines how the coded image data is wrapped and formatted. Options defined here are the various profiles of TIFF-FX, per RFC 2301 [7]. These options apply to overall formatting of the image data (TIFF file format, byte ordering, bit ordering, etc.) and do not define specific image coding issues that are covered by other aspects of the TIFF-FX profile specifications. Klyne & McIntyre Standards Track [Page 10] RFC 2531 Content Feature Schema for Internet Fax March 1999 'image-coding' describes how the raw image data is compressed and coded as a sequence of bits. These are generic tags that may apply to a range of file formats and usage environments. 'image-coding-constraint' describes how the raw image data coding method is constrained to meet a particular operating environment. Options defined here are JBIG and JPEG coding constraints that apply in typical Group 3 fax environments. The 'JBIG-stripe-size' feature may be used with JBIG image coding, and indicates the number of scan lines in each stripe except the last in an image. The legal constraints are: (JBIG-stripe-size=128) (JBIG-stripe-size>=0) The latter being equivalent to no restriction. The 'MRC-mode' feature is used to indicate the availability of MRC (mixed raster content) image format capability, and also the MRC mode available. A zero value indicates MRC is not available, a non-zero value indicates the available MRC mode number. An MRC formatted document is actually a collection of several images, each of which is described by a separate feature collection. An MRC-capable receiver is presumed to be capable of accepting any combination of contained images that conform to the MRC construction rules and declared image-coding capabilities. Within an MRC-formatted document, multi-level coders are used for foreground and background images (i.e. odd-numbered layers: 1, 3, 5, etc.) and bi-level coders are used for mask layers (i.e. even numbered layers 2, 4, 6, etc.). NOTE: an MRC formatted document may appear within a TIFF image file structure, so this separate feature is needed to capture the full range of possible capabilities. The 'MRC-max-stripe-size' feature may be used with MRC coding, and indicates the maximum number of scan lines in each MRC stripe. The legal constraints are: (MRC-max-stripe-size=[0..256]) (MRC-max-stripe-size>=0) These values indicate upper bounds on the stripe size. The actual value may vary between stripes, and the actual size for each stripe is indicated in the image data. Klyne & McIntyre Standards Track [Page 11] RFC 2531 Content Feature Schema for Internet Fax March 1999 NOTE: there are many image coding options here, and not all are required in all circumstances. Specification of the image-file-structure tag value alone is not normally sufficient to describe the capabilities of a recipient. A general rule is that sufficient detail should be provided to exclude any unsupported features. For extended Internet fax, image-file-structure and image-coding should always be specified, together with additional values described above as needed to clearly indicate which feature tag values are supported and which are not. (See also the examples in section 4.) 4. Examples Some of the examples contain comments introduced by '--...'. These are not part of the allowed capability description syntax. They are included here to explain some of the constructs used. The level of detail captured here reflects that used for capability identification in Group 3 facsimile. 4.1 Simple mode Internet fax system This example describes the capabilities of a typical simple mode Internet fax system. Note that TIFF application S is required to be supported by such a system. (& (color=Binary) (image-file-structure=TIFF-S) (dpi=200) (dpi-xyratio=[200/100,200/200]) (paper-size=A4) (image-coding=MH) (MRC-mode=0) (ua-media=stationery) ) 4.2 High-end black-and-white Internet fax system This would include support for B/W JBIG and be equivalent to what is sometimes called "Super G3", except that Internet fax functionality would be added. Klyne & McIntyre Standards Track [Page 12] RFC 2531 Content Feature Schema for Internet Fax March 1999 (& (color=Binary) (image-file-structure=[TIFF-S,TIFF-F,TIFF-J]) (| (& (dpi=200) (dpi-xyratio=200/100) ) -- 200*100 (& (dpi=200) (dpi-xyratio=1) ) -- 200*200 (& (dpi=204) (dpi-xyratio=204/391) ) -- 204*391 (& (dpi=300) (dpi-xyratio=1) ) ) -- 300*300 (| (image-coding=[MH,MR,MMR]) (& (image-coding=JBIG) (image-coding-constraint=JBIG-T85) (JBIG-stripe-size=128) ) ) (MRC-mode=0) (paper-size=[A4,B4]) ) 4.3 Grey-scale Internet fax system This is the previous example extended to handle grey scale multi- level images. In keeping with Group 3 fax, this example requires equal x- and y- resolutions for a multi-level image. (& (| (& (color=Binary) (image-file-structure=[TIFF-S,TIFF-F,TIFF-J]) (| (image-coding=[MH,MR,MMR]) (& (image-coding=JBIG) (image-coding-constraint=JBIG-T85) (JBIG-stripe-size=128) ) ) (| (& (dpi=200) (dpi-xyratio=200/100) ) (& (dpi=200) (dpi-xyratio=1) ) (& (dpi=204) (dpi-xyratio=204/391) ) (& (dpi=300) (dpi-xyratio=1) ) ) ) (& (color=Grey) (image-file-structure=[TIFF-C,TIFF-L]) (color-levels<=256) (color-space-CIELAB) (| (& (image-coding=JPEG) (image-coding-constraint=JPEG-T4E) ) (& (image-coding=JBIG) (image-coding-constraint=JBIG-T43) (JBIG-stripe-size=128) (image-interleave=stripe) ) ) (dpi=[100,200,300]) (dpi-xyratio=1) ) ) (MRC-mode=0) (paper-size=[A4,B4]) ) 4.4 Full-color Internet fax system This adds 16-bit full-color to the previous example. Klyne & McIntyre Standards Track [Page 13] RFC 2531 Content Feature Schema for Internet Fax March 1999 (& (| (& (color=Binary) (image-file-structure=[TIFF-S,TIFF-F,TIFF-J]) (| (image-coding=[MH,MR,MMR]) (& (image-coding=JBIG) (image-coding-constraint=JBIG-T85) (JBIG-stripe-size=128) ) ) (| (& (dpi=200) (dpi-xyratio=200/100) ) (& (dpi=200) (dpi-xyratio=1) ) (& (dpi=204) (dpi-xyratio=204/391) ) (& (dpi=300) (dpi-xyratio=1) ) ) ) (& (| (& (color=Grey) (color-levels<=256) ) (& (color=Full) (color-levels<=65536) (color-subsampling=["1:1:1","4:1:1"]) ) ) (image-file-structure=[TIFF-C,TIFF-L]) (color-space=CIELAB) (| (& (image-coding=JPEG) (image-coding-constraint=JPEG-T4E) ) (& (image-coding=JBIG) (image-coding-constraint=JBIG-T43) (JBIG-stripe-size=128) (image-interleave=stripe) ) ) (dpi=[100,200,300]) (dpi-xyratio=1) ) ) (MRC-mode=0) (paper-size=[A4,B4]) ) 4.5 Full-color Internet fax system (MRC) (& (| (& (color=Binary) (image-file-structure=[TIFF-S,TIFF-F,TIFF-J]) (MRC-mode=0) (image-coding=[MH,MMR]) (| (& (dpi=200) (dpi-xyratio=[200/100,1]) ) (& (dpi=204) (dpi-xyratio=204/391) ) (& (dpi=300) (dpi-xyratio=1) ) (& (dpi=400) (dpi-xyratio=1) ) ) ) (& (image-file-structure=[TIFF-C,TIFF-L]) (| (& (color=Grey) (color-levels<=256) ) (& (color=Full) (color-levels<=65536) (color-subsampling=["1:1:1","4:1:1"]) ) ) (color-space=CIELAB) (MRC-mode=0) (image-coding=JPEG) (image-coding-constraint=JPEG-T4E) (dpi=[100,200,300,400]) (dpi-xyratio=1) ) (& (image-file-structure=TIFF-M) (MRC-mode=1) (MRC-max-stripe-size=[0..256]) Klyne & McIntyre Standards Track [Page 14] RFC 2531 Content Feature Schema for Internet Fax March 1999 (image-coding=[MH,MMR,JPEG]) (| (color=Binary) (& (color=Grey) (color-levels<=256) ) (& (color=Full) (color-levels<=65536) (color-subsampling=["1:1:1","4:1:1"]) ) ) (color-space=CIELAB) (dpi=[100,200,300,400]) (dpi-xyratio=1) ) ) (paper-size=[A4,B4]) ) 4.6 Sender and receiver feature matching This example considers sending a document to a high-end black-and- white fax system with the following receiver capabilities: (& (| (& (dpi=200) (dpi-xyratio=200/100) ) -- 200*100 (& (dpi=200) (dpi-xyratio=1) ) -- 200*200 (& (dpi=300) (dpi-xyratio=1) ) -- 300*300 (& (dpi=400) (dpi-xyratio=1) ) ) -- 400*400 (color=Binary) (| (& (paper-size=A4) (ua-media=[stationery,transparency]) ) (& (paper-size=B4) (ua-media=continuous) ) ) (image-coding=[MH,MR,JBIG]) ) Turning to the document itself, assume it is available to the sender in three possible formats, A4 high resolution, B4 low resolution and A4 high resolution color, described by: (& (dpi=300) (dpi-xyratio=1) (color=Binary) (paper-size=A4) (image-coding=[MMR,JBIG]) ) (& (dpi=200) (dpi-xyratio=200/100) (color=Binary) (paper-size=B4) (image-coding=[MH,MR]) ) (& (dpi=300) (dpi-xyratio=1) (color=Mapped) (color-levels<=256) (paper-size=A4) (image-coding=JPEG) ) These three image formats can be combined into a composite capability statement by a logical-OR operation (to describe format-1 OR format-2 OR format-3): Klyne & McIntyre Standards Track [Page 15] RFC 2531 Content Feature Schema for Internet Fax March 1999 (& (dpi=300) (dpi-xyratio=1) (color=Binary) (paper-size=A4) (image-coding=[MMR,JBIG]) ) (& (dpi=200) (dpi-xyratio=200/100) (color=Binary) (paper-size=B4) (image-coding=[MH,MR]) ) (& (dpi=300) (dpi-xyratio=1) (color=Mapped) (color-levels=42) (paper-size=A4) (image-coding=JPEG) ) ) This could be simplified, but there is little gain in doing so at this point. The composite document description can be matched with the receiver capability description, according to the rules in [2], to yield the result: (& (dpi=300) (dpi-xyratio=1) (color=Binary) (paper-size=A4) (ua-media=[stationery,transparency]) (image-coding=JBIG) ) (& (dpi=200) (dpi-xyratio=200/100) (color=Binary) (paper-size=B4) (ua-media=continuous) (image-coding=[MH,MR]) ) ) Points to note about the feature matching process: o The color document option is eliminated because the receiver cannot handle either color (indicated by '(color=Mapped)') or JPEG coding (indicated by '(image-coding=JPEG)'). o The high resolution version of the document with '(dpi=300)' must be send using '(image-coding=JBIG)' because this is the only available coding of the image data that the receiver can use for high resolution documents. (The available 300dpi document codings here are MMR and JBIG, and the receiver capabilities are MH, MR and JBIG.) o The low-resolution version of the document can be sent with either MH or MR coding as the receiver can deal with either of these for low resolution documents. Klyne & McIntyre Standards Track [Page 16] RFC 2531 Content Feature Schema for Internet Fax March 1999 o The high resolution variant of the document is available only for A4, so that is the paper-size used in that case. Similarly the low resolution version is sent for B4 paper. o Even though the sender may not understand the 'ua-media' feature tag, and does not mention it, the matching rules preserve the constraint that the B4 document is rendered with '(ua- media=continuous)', and the A4 document may be rendered with ' (ua-media=[stationery,transparency])'. Finally, note that when matching an MRC document description, the description of each component sub-image must match the capabilities of the intended receiver. 5. IANA Considerations Appendix A of this document calls for registrations of feature tags in the "IETF tree", as defined in section 3.1.1 of "Media Feature Tag Registration Procedure" [1] (i.e. these feature tags are subject to the "IETF Consensus" policies described in RFC 2434 [21]). ASN.1 identifiers should be assigned for each of these registered feature tags and replaced in the body of the registration. 6. Security Considerations The points raised below are in addition to the general security considerations for extended Internet fax [5], and others discussed in [2,8,11,12,13] 6.1 Capability descriptions and mechanisms Negotiation mechanisms reveal information about one party to other parties. This may raise privacy concerns, and may allow a malicious party to make better guesses about the presence of specific security holes. Most of these concerns pertain to capability information getting into the hands of someone who may abuse it. This document specifies capabilities that help a sender to determine what image characteristics can be processed by the recipient, not mechanisms for their publication. Implementors and users should take care that the mechanisms employed ensure that capabilities are revealed only to appropriate persons, systems and agents. Klyne & McIntyre Standards Track [Page 17] RFC 2531 Content Feature Schema for Internet Fax March 1999 6.2 Specific threats 1. Unsolicited bulk mail: if it is known that a recipient can process certain types of images, they may be targeted by bulk mailers that want to send such images. 7. Acknowledgements The authors gratefully acknowledge the contributions of the following persons who commented on earlier versions of this memo: James Rafferty, Dan Wing, Robert Buckley, Mr Ryuji Iwazaki. The following contributed ideas upon which some of the features described here have been based: Larry Masinter, Al Gilman, Koen Holtman. 8. References [1] Holtman, K., Mutz, A. and T. Hardie, "Media Feature Tag Registration Procedure", BCP 31, RFC 2506, March 1999. [2] Klyne, G., "A Syntax for Describing Media Feature Sets", RFC 2533, March 1999. [3] Masinter, L., Holtman, K., Mutz, A. and D. Wing, "Media Features for Display, Print, and Fax", RFC 2534, March 1999. [4] McIntyre, L. and G. Klyne, "Internet fax feature mapping from Group 3 fax", Work in Progress. [5] Masinter, L. and D. Wing, "Extended Facsimile Using Internet Mail", RFC 2532, March 1999. [6] "Procedures for document facsimile transmission in the general switched telephone network", ITU-T Recommendation T.30 (1996), International Telecommunications Union, July 1996. [7] McIntyre, L., Buckley, R., Venable, D., Zilles, S., Parsons, G. and J. Rafferty, "File format for Internet fax", RFC 2301, March 1998. [8] Toyoda, K., Ohno, H., Murai, J. and D. Wing, "A Simple Mode of Facsimile Using Internet Mail", RFC 2305, March 1998. [9] "Continuous-tone color representation method for facsimile" ITU-T Recommendation T.42 (1996), International Telecommunications Union, (Covers custom illuminant, gamut). Klyne & McIntyre Standards Track [Page 18] RFC 2531 Content Feature Schema for Internet Fax March 1999 [10] "Colour and gray-scale image representation using lossless coding scheme for facsimile", ITU-T Recommendation T.43 (1997), International Telecommunications Union. (Covers JBIG for colour/grey images). [11] Hardie, T., "Scenarios for the Delivery of Negotiated Content", Work in Progress. [12] Klyne, G., "Requirements for protocol-independent content negotiation", Work in Progress. [13] "Standardization of Group 3 facsimile terminals for document transmission", ITU-T Recommendation T.4 (1996), International Telecommunications Union, (Covers basic fax coding formats: MH, MR). [14] "Facsimile coding schemes and coding control functions for Group 4 facsimile apparatus", ITU Recommendation T.6, International Telecommunications Union, (Commonly referred to as the MMR standard; covers extended 2-D fax coding format). [15] "Mixed Raster Content (MRC)", ITU-T Recommendation T.44, International Telecommunications Union. [16] "Information technology - Digital compression and coding of continuous-tone still image - Requirements and guidelines", ITU-T Recommendation T.81 (1992) | ISO/IEC 10918-1:1993, International Telecommunications Union, (Commonly referred to as JPEG standard). [17] "Information technology - Coded representation of picture and audio information - Progressive bi-level image compression", ITU-T Recommendation T.82 (1993) | ISO/IEC 11544:1993, International Telecommunications Union, (Commonly referred to as JBIG1 standard). [18] "Application profile for Recommendation T.82 - Progressive bi- level image compression (JBIG1 coding scheme for facsimile apparatus)", ITU-T Recommendation T.85 (1995), International Telecommunications Union, (Covers bi-level JBIG). [19] "Colorimeter, 2nd ed.", CIE Publication No. 15.2, 1986. (Defines CIELAB color space; use with fax is further constrained by T.42 [9].) Klyne & McIntyre Standards Track [Page 19] RFC 2531 Content Feature Schema for Internet Fax March 1999 [20] Tag Image File Format, Revision 6.0, Adobe Developers Association, , June 1992. [21] Narten, T. and H. Alvestrand, "Guidelines for Writing an IANA Considerations Section in RFCs", BCP 26, RFC 2434, October 1998. Klyne & McIntyre Standards Track [Page 20] RFC 2531 Content Feature Schema for Internet Fax March 1999 9. Authors' Addresses Graham Klyne 5th Generation Messaging Ltd. Content Technologies Ltd. 5 Watlington Street Forum 1, Station Road Nettlebed Theale Henley-on-Thames, RG9 5AB Reading, RG7 4RA United Kingdom United Kingdom. Phone: +44 1491 641 641 +44 118 930 1300 Facsimile: +44 1491 641 611 +44 118 930 1301 EMail: GK@ACM.ORG Lloyd McIntyre Xerox Corporation Mailstop PAHV-121 3400 Hillview Ave. Palo Alto, CA 94304 USA Phone: +1-650-813-6762 Facsimile: +1-650-845-2340 EMail: Lloyd.McIntyre@pahv.xerox.com Klyne & McIntyre Standards Track [Page 21] RFC 2531 Content Feature Schema for Internet Fax March 1999 Appendix A: Feature registrations A.1 Image size - Media Feature tag name(s): size-x size-y - ASN.1 identifiers associated with these feature tags: 1.3.6.1.8.1.7 1.3.6.1.8.1.8 - Summary of the media features indicated: These feature tags indicate the size of a displayed, printed or otherwise rendered document image; they indicate horizontal (size-x) and vertical (size-y) dimensions. The unit of measure is inches (to be consistent with the measure of resolution defined by the feature tag 'dpi'). Where the actual size is available in millimetres, a conversion factor of 10/254 may be applied to yield an exact inch-based value. - Values appropriate for use with these feature tags: Rational (>0) - The feature tag is intended primarily for use in the following applications, protocols, services, or negotiation mechanisms: Print and display applications where different media choices will be made depending on the size of the recipient device. - Examples of typical use: This example describes the maximum scanned image width and height for Group 3 fax: 215x297 mm (8.46x11.69 inches): (size-x<=2150/254) (size-y<=2970/254) Klyne & McIntyre Standards Track [Page 22] RFC 2531 Content Feature Schema for Internet Fax March 1999 - Related standards or documents: The memo "Media Features for Display, Print, and Fax" [3] describes features (pix-x, pix-y) for measuring document size in pixels. Fax applications should declare physical dimensions using the features defined here. - Considerations particular to use in individual applications, protocols, services, or negotiation mechanisms: Where no physical size is known or available, but a pixel size is known, a notional size should be declared based upon known pixel dimensions and a notional resolution of (say) 100dpi For example, to describe a 640x480 pixel display: (& (size-x<=640/100) (size-y<=480/100) (dpi=100) ) The notional 100dpi resolution is used as it represents a fairly typical resolution for a pixel-limited display. Reducing the rational numbers to canonical form gives the following equivalent expression: (& (size-x<=32/5) (size-y<=24/5) (dpi=100) ) - Interoperability considerations: For interoperability with other (non-fax) applications that use only pixel-based measurements, pixel dimensions (pix-x, pix-y) may be declared in addition to physical measurements. - Related feature tags: pix-x [3] pix-y [3] dpi [3] dpi-xyratio [this document] - Intended usage: Common - Author/Change controller: IETF Klyne & McIntyre Standards Track [Page 23] RFC 2531 Content Feature Schema for Internet Fax March 1999 A.2 Resolution aspect ratio - Media Feature tag name(s): dpi-xyratio - ASN.1 identifier associated with this feature tag: 1.3.6.1.8.1.9 - Summary of the media features indicated: This feature is used to indicate differential horizontal and vertical resolution capability. In the absence of this feature, horizontal and vertical resolutions are presumed to be the same. When this feature tag is specified, any declared resolution (dpi) is presumed to apply to the horizontal axis, and the vertical resolution is obtained by dividing that declared resolution by the resolution ratio. The value of this feature is a pure number, since it represents the ratio of two resolution values. - Values appropriate for use with this feature tag: Rational (>0) - The feature tag is intended primarily for use in the following applications, protocols, services, or negotiation mechanisms: Internet fax, and other print or display applications that must handle differential horizontal and vertical resolution values. - Examples of typical use: The following example describes a fax resolution of 204 dpi horizontally by 391 dpi vertically: (& (dpi=204) (dpi-xyratio=204/391) ) - Related standards or documents: The memo "Media Features for Display, Print, and Fax" [3] describes a feature (dpi) for measuring document resolution. Klyne & McIntyre Standards Track [Page 24] RFC 2531 Content Feature Schema for Internet Fax March 1999 - Interoperability considerations: When interoperating with an application that does not recognize the differential resolution feature, resolution matching may be performed on the basis of the horizontal resolution only, so aspect ratio information may be lost. - Related feature tags: dpi [3] size-x [this document] size-y [this document] - Intended usage: Internet fax - Author/Change controller: IETF A.3 Color levels - Media Feature tag name(s): color-levels - ASN.1 identifier associated with this feature tag: 1.3.6.1.8.1.10 - Summary of the media features indicated: This feature tag is used to indicate a number of different image data pixel color values. When mapped (palettized) color is used, this is generally different from the number of different colors that can be represented through the color mapping function. This feature tag is used in conjunction with a 'color' feature having a value other than 'Binary'. - Values appropriate for use with this feature tag: Integer (>=2) Klyne & McIntyre Standards Track [Page 25] RFC 2531 Content Feature Schema for Internet Fax March 1999 - The feature tag is intended primarily for use in the following applications, protocols, services, or negotiation mechanisms: Color image printing or display applications where the data resource used may depend upon color handling capabilities of the recipient. - Examples of typical use: To describe recipient capabilities: (& (color=limited) (color-levels<=6) ) (& (color=grey) (color-levels<=64) ) (& (color=mapped) (color-levels<=240) ) (& (color=full) (color-levels<=16777216) ) To describe capabilities used by a document: (& (color=limited) (color-levels=4) ) (& (color=grey) (color-levels=48) ) (& (color=mapped) (color-levels=100) ) (& (color=full) (color-levels=32768) ) - Related standards or documents: The memo "Media Features for Display, Print, and Fax" [3] describes a feature (color) for indicating basic color capabilities. - Interoperability considerations: The actual number of color values used by a document does not, in general, exactly match the number that can be handled by a recipient. To achieve a feature match, at least one must be declared as an inequality. It is recommended that a recipient declares the number of color values that it can handle as an inequality (<=), and a data resource decla