Network Working Group R. Braden
RFC D. Crocker
Internet-Draft USC/ISI
Updates: 2223 (if approved) J. Klensin Brandenburg InternetWorking
Intended status: Standards Track August 27, 2008
Expires: February 23, 28, 2009 August 22, 2008
Images in
Media Format Choices for RFCs
draft-rfc-image-files-00.txt
draft-crocker-rfc-media-00
Status of this Memo
By submitting this Internet-Draft, each author represents that any
applicable patent or other IPR claims of which he or she is aware
have been or will be disclosed, and any of which he or she becomes
aware will be disclosed, in accordance with Section 6 of BCP 79.
Internet-Drafts are working documents of the Internet Engineering
Task Force (IETF), its areas, and its working groups. Note that
other groups may also distribute working documents as Internet-
Drafts.
Internet-Drafts are draft documents valid for a maximum of six months
and may be updated, replaced, or obsoleted by other documents at any
time. It is inappropriate to use Internet-Drafts as reference
material or to cite them other than as "work in progress."
The list of current Internet-Drafts can be accessed at
http://www.ietf.org/ietf/1id-abstracts.txt.
The list of Internet-Draft Shadow Directories can be accessed at
http://www.ietf.org/shadow.html.
This Internet-Draft will expire on February 23, 28, 2009.
Copyright Notice
Copyright (C) The IETF Trust (2008).
Abstract
Documents in the RFC series normally use only plain-text ASCII
characters and a fixed-width font. However, there is sometimes a
need to supplement the ASCII text with graphics or picture images.
The historic solution to this requirement, allowing secondary PDF and
Postscript files, is seldom used because it is awkward for authors
and publisher. This memo sugests suggests a more convenient scheme for
attaching authoritative diagrams, llustrations, illustrations, or other graphics to
RFCs. It further proposes conventions for additional input and
display formats, to improve readability. This proposal is based on
draft-rfc-image-files-00, by Braden and Klensin, and revises it as
little as possible, while expanding the goals of the effort.
Table of Contents
1. Introduction . . . . . . . . . . . . . . . . . . . . . . . . . 3
2. A New Scheme for Images
1.1. Goals . . . . . . . . . . . . . . . . . . . . . . . . . . 4
2. A New Scheme for Representation . . . . . . . . . . . . . . . 5
3. Construction of the Image File . . . . . . . . . . . . . . . . 4 6
4. Requirements for the Base File . . . . . . . . . . . . . . . . 5 7
4.1. Overview . . . . . . . . . . . . . . . . . . . . . . . . . 5 7
4.2. Figures Section . . . . . . . . . . . . . . . . . . . . . 6 7
4.3. Formatting Changes . . . . . . . . . . . . . . . . . . . . 7 8
5. Submission and Processing of the Image File . . . . . . . . . 7 9
6. Implementation Issues . . . . . . . . . . . . . . . . . . . . 7 9
7. RFC Repository File Formats . . . . . . . . . . . . . . . . . 8 10
8. Internationalization Considerations . . . . . . . . . . . . . 9 10
9. Security Considerations . . . . . . . . . . . . . . . . . . . 9 11
10. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 10 11
11. Acknowledgments . . . . . . . . . . . . . . . . . . . . . . . 10
12. References . . . . . . . . . . . . . . . . . . . . . . . . . . 10
12.1. Normative References . . . . . . . . . . . . . . . . . . . 10
12.2. Informative References . . . . . . . . . . . . . . . . . 11
Author's Address . 10
Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . . . 11
Intellectual Property and Copyright Statements . . . . . . . . . . 12 13
1. Introduction
Published documents in the RFC series normally use only plain-text
ASCII characters and a fixed-width font [RFC2223]. This simple
convention has the advantage of a stable encoding for which a wide
variety of tools are readily available for viewing, searching,
editing, etc.. etc.
Inclusion of diagrams, state machines, and other graphics in RFC text
has generally relied on the imaginative use of ASCII characters
("ASCII artwork".) However, in a few cases over the years, ASCII
artwork has been inadequate for images needed or desired in RFCs.
The old solution to this dilemma has been to allow three versions of
an RFC: a primary ASCII version and secondary versions that are
encoded using PDF and Postcript. Postscript. The PDF and Postscript versions
are "complete", containing a copy of the text as well as the full
images [RFC2223]. The textual content and layout of the PDF/PS
version is required to match the base version as closely as possible.
However, the ASCII text version is considered the official expression
of the RFC, and it is always normative for standards track documents.
We will refer to this old approach as ".txt+.pdf+.ps" encoding.
The three versions of an RFC using .txt+.pdf+.ps encoding are in
separate files in the primary RFC repository
(http://www.rfc-editor.org/rfc/"), with suffixes ".txt", ".pdf", and
".ps". The RFC Editor search engine returns links to all three
versions when they are present in the repository.
Unfortunately, the .txt+.pdf+.ps scheme has been awkward for both
editor and author, and it is error-prone, so it has seldom been used
(roughly 50 out of 5000+ RFCs). The problem is that, in general,
only the author has the tools to prepare the PDF and Postscript
versions. The RFC Editor edits (only) the primary text version, and
then the author must incorporate all the resulting changes into the
PDF/PS version while maintaining the "look" of the RFC to the extent
possible. There is no practical way for the RFC Editor to verify
that this is done correctly, perhaps leading to editorial errors and
usually lengthening publication time for these documents.
This memo suggests a much better scheme scheme, for including figures,
illustrations, and graphics to an RFC. RFC, as well as for maintaining a
single copy of base text which can be turned into multiple
presentation forms. We hope that the method proposed here will solve
the image problem for RFC publication, although the .txt+.pdf+.ps
approach would still be possible (and in any case, RFCs using the
historic scheme will continue to exist in the RFC repository
forever).
This proposal is based on draft-rfc-image-files-00, by Braden and
Klensin, and revises it as little as possible. As an expedient, the
References section has been omitted from this initial version of the
draft.
1.1. Goals
The list of goals in the current proposal expands upon the ones of
the draft-rfc-image-files-00 proposal:
1. There is a single, master file for document text.
2. Base text is able to be edited, viewed, compared and searched
with extremely minimal set of tools, such as a classic text
editors, and the like.
3. The master file is subject to formatting constraints, to improve
readability when using simple display tools.
4. All formats use strictly open standards.
5. Any mapping from the master file to a presentation format must
only depend upon well-tested, reliable tools that are available
as open-source.
6. Multiple display forms must be supported, notably scroll-form
for screen display and paginated form for printing, as well as
classic, basic IETF ASCII paginated format.
7. Figures can be encoded in classic ASCII art and/or in a graphics
format.
8. Enhanced display formats can support basic font changes, within
IETF-defined criteria, since this can enhance readability.
9. Naming conventions tightly link additional files that are used
by the master file.
10. Changes seek to have as much automation as possible for the
technical aspects of RFC development and production.
11. Format for the master file should facilitate later revision
efforts.
2. A New Scheme for Images Representation
Under our scheme, an RFC may be either a single ASCII file as
commonly used today, or a composite of two multiple files: an ASCII-only
"base file" containing the text of the RFC, and an one or more "image file".
files". The ASCII file may optionally conform to xml2rfc format.
When present, the image file would be a PDF {{standard image} file that contained
contains only images, captions, and title information. Neither The base file of the
composite would be complete without the other,
may contain classic "ASCII art" and a reference to the
RFC would be considered a reference refer to both files. external image files as
alternatives. An RFC which is displayed in any form other than
simple ASCII would then be a logical entity whose complete complete, or
preferred, representation could require two multiple files, base and image.
image(s).
The base file would may be formatted exactly like current ASCII RFCs, with
three minor exceptions described below. Alternatively, it may be
formatted using xml2rfc. The xml2rfc convention is well-established
within the IETF and RFC community. It permits having a single,
textual document base, which can easily produce .txt+.pdf+.html
formats. In addition, it can contain a text-only version of art,
while using external image files, when available and appropriate to
the output form.
The intellectual property boilerplate in the base file ("Rights in
Contributions BCP 78, RFC 4748 [RFC4748] ) would apply equally to the
image file. An image file would contain one or more items that will
be known collectively as "figures", whether they are actually
diagrams, pictures, tables, artwork, or other non-textual
constructions.
This scheme was inspired by the tradition in book publishing, where
pictures, figures, or "plates" may be grouped together following the
text ("end figures"), or even bound separately from the main body of
the text.
In principle, we could allow an image file to be encoded using both
PDF and Postscript, since mechanical translation is possible in both
directions. However, in the 20 years since the adoption of the .txt+
.pdf+.ps scheme, the PDF format has become a defacto de facto standard for
electronic documents, and readers for it are universally available.
Furthermore, PDF is being standardized as a format for document
archiving, as discussed further in the next section. Therefore, we
propose to allow only PDF for image files, simplifying the new
approach by not including a Postscript file option.
An ASCII RFC traditionally uses a file name in the form of
"rfcN.txt", where N is integer RFC number without leading zeros. The
image file that is associated with RFC number N could be named
"rfcN.img.pdf".
"rfcN.{image name}.{image format extension}". As noted earlier, the
repository already contains RFCs with file names "rfcN.ps" and
"rfcN.pdf", using the historic .txt+.pdf+.ps scheme.
3. Construction of the Image File
An
Each image file would be in a single PDF {image format} file, containing only
that image and consistent with the description in [RFC3778] and
defined in [ISO32000-1]. The particular
PDF {image format} form must be
version-stable and must not contain any external references in
scripts or otherwise. Those requirements are satisfied
by the PDF/A [ISO19005-1] profile. The RFC Editor may authorize
other variants of PDF in authorizes the future. set of {image
formats} that are permitted for use.
There is an issue of whether particular generators of PDF {image format}
that claim to satisfy PDF/A {image format standards} actually do so.
Future experience may require published guidelines on PDF-generating
software that claims to satisfy PDF/A {image format}{image format} but does
not.
Except as otherwise specified in this document, an image file should
contain only figures, a single figure, supporting labels and captions,
headers, and footers. It should not contain explanatory text or
other materials that could reasonably be expressed in plain-text form
in the base file
Pages
For xml2rfc output that produces .html or .pdf, images are produced
inline and are consecutively numbered.
For .txt output, pages of the image file files would be consecutively
numbered. The first page number of the image file would follow the
last page number of the base RFC, exclusive of the number of the end-of-RFC end-
of-RFC boilerplate page. The page number of the end-of-RFC
boilerplate (in the base RFC file) would be the first page number
after those in the image file. Each page of the image file would
contain the same headers and footers as the base file, except for one
change in the footer, suggested below.
Figures included in the image file would have to be labeled in a
fashion that facilitated referencing from the base RFC. They should
normally may be
numeric and monotonic. monotonic or it may use textual image names. Simple
consecutive integer will usually be the best choice, but in some
cases it might be desirable to use a hierarchical scheme like:
<section #>.<fig #>. An author who believes that another labeling
scheme would increase clarity should check with the RFC Editor.
4. Requirements for the Base File
4.1. Overview
A base file would be unchanged by the presence of an image file,
except for the following.
o The For .txt format, the page number of the end-of-RFC boilerplate
page would be changed to be logically one page after the last
image file page.
o A new unnumbered "Figures" section would be required. This is
described below.
o For a composite RFC, a minor modification to the first-page header
of the base file and to the footers of both base and image files
could tie the two additional files together. This is described below.
4.2. Figures Section
An RFC that used this scheme (and had any figures) would need to
include a Figures section in the ASCII base file. The Figures
section should immediately following the Table of Contents, if any,
and precede the body of the document. The Figures section should
list all figures in tabular form, indicating for each one the figure
identification, title, and page number(s).
The style for the Figures section has not yet been fully specified.
Here is a suggested example.
___________________________________________________________________________
_________________________________________________________________
Table of Contents
1. Introduction .................................................... ............................................... 1
2. Philosophy ...................................................... ................................................. 7
2.1 Elements of the Internetwork System ........................ ................... 7
2.2 Model of Operation ......................................... .................................... 8
2.3 The Host Environment ....................................... .................................. 8
(etc)
Figures
Figure 1: Protocol Layering . ..................................... ................................ 2
Figure 2: Protocol Relationships .................................. ............................. 9
Figure 3: TCP Header Format .................................. ............................. 15, *86
Figure 4: Send Sequence Space ..................................... ................................ 20
Figure 5: Receive Sequence Space .................................. ............................. 20
Figure 6: TCP Connection State Diagram ....................... .................. 23, *87
Figure 7: Basic 3-Way Handshake for Connection
Synchronization 31, ................................31, *88
(etc)
*Page in Image file
(Page 1 follows)
___________________________________________________________________________
__________________________________________________________________
An RFC that includes a base file may include ASCII artwork that is
suggestive of a figure in the image file, but there is no requirement
to do so. When such an approximate figure appears as ASCII artwork
in the base file, its figure identification and caption must match
those of the corresponding figure in the image file, and the entry in
the Figures table should specify the page numbers in both the base
and image file, In the example shown above, image file page numbers
are marked with an asterisk. Note that very simple ASCII artwork
need not appear in the image file.
4.3. Formatting Changes
It would be necessary to tie the base and image files together, to
make clear they are part of one RFC. Here is an initial suggestion
for formatting, which needs further consideration before it is
adopted.
The header line "Request for Comments: nnnn" in the base file could
be changed to "Request for Comments: nnnn/Base". For consistency,
the lefthand footer could become "RFC nnnn/Base". The lefthand
footer in the image file could then be: "RFC nnnn/
Image. {Image Name}.
The following sentence could be placed in the "Status of this Memo"
section: "This RFC is a composite of this base file and a
PDF {image
format} image file." files."
5. Submission and Processing of the Image File
If an a image file is files are needed, it they should be submitted as an .img.pdf
file a .{image
name>.{image format} files along with the ASCII text file. The image file
files should be submitted without headers or footers. The RFC Editor
will overlay the image file with the appropriate headers and footers,
with correct pagination. The RFC Editor will not normally do any
editing of the image file beyond this. If editing the base file
reveals problems with figures in the image file, the authors will be
asked to create a new image file.
6. Implementation Issues
This acheme scheme has a number of implications.
1. The Internet Draft repository must allow submission and retrieval
of both base and (when present) image files.
2. Internet Draft file names could be draft-...-vv.txt and
(optionally) draft-...-vv.img.pdf, draft-...-vv.{image name}.{image format}, where "vv"
is the normal version number. Updating either any file of the composite
RFC should increase the version numbers "vv" in both files. We
DO NOT want two separate version numbers for one I-D
3. The RFC Editor would need to be able to overlay headers, footers,
and page numbers on a given image file. It is claimed that at
least Adobe Acrobat Professional includes this capability, and
that it also has limited editing capability.
4. The RFC Editor would also need a tool to verify that a given
image file satisfies the constraints of PDF/A. {image format}.{image
format}.
5. Some RFC Editor scripts and tools would need small extensions.
6. Some small extensions to xml2rfc to include already supports external image files would be
useful. It should generate the boilerplate with a non-sequential
page number. For example, files, as an attribute on <back>, might specify
the number of pages of image file. One could presumably add a
mechanism to generate the Figures section. adjunct to,
or replacement of, textual art and is used when available, for
.html and .pdf formats..
7. RFC Repository File Formats
A frequent reaction to the suggestion given in this memo is some
confusion over the different file formats that appear in the RFC
repository. Here is a brief summary.
If a PDF {image format} image file exists along with a base ASCII RFC,
then RFCs in any other format (e.g., complete PDF {image format} files,
HTML, or Postscript) remain supplemental, with the reader taking
responsibility for assuring that they are equivalent to the base RFC
and image file. That arrangement is identical to the relationship
between traditional all-ASCII RFCs and supplemental forms: the RFC
Editor has never taken responsibility for guaranteeing that the two
are identical in content.
The existing .txt.pdf files are not affected by this proposal. The
.txt.pdf files are facsimiles of .txt (base files) in PDF, introduced
to help Windows users read RFCs online. However, Microsoft has more
recently provided an elementary ASCII editor, which probably makes
the .txt.pdf files unnecessary in any case.
In summary:
o .txt: ASCII-only file. In old scheme, complete normative file.
In new scheme, text part of composite RFC, or stand-alone text
file.
o .ps: Old scheme -- a Postscript file that includes figures and
whose text is intended to be the same as the normative .txt file.
o .pdf: Old scheme -- a PDF file that includes figures and whose
text is intended to be the same as the normative .txt file.
o .img.pdf: .{image name}.{image format}: New scheme: image file file(s) part of a
composite with .txt or xml2rfc file.
o .txt.pdf: Old scheme: Facsimile of corresponding .txt file.
We note that it would be possible to combine the base and image files
into a single PDF file, which would have to follow a naming
convention to distinguish it from the .pdf case listed above.
However, we regard this an an undesirable step away from the
principle of universal ASCII encoding of the text of the document.
8. Internationalization Considerations
Our scheme of image files does not, and is not intended to, support
character set internationalization for RFCs. It does not allow an
author to omit the ASCII text from the base file and instead include
the entire RFC text as one (very large) image file.
However, we should note two special cases.
1. RFC 3743 [RFC3743] on internationalized domain names for Chinese,
Japanese,, and Korean contains a number of examples that may be
hard to follow because they can represent those characters only
in "U+nnnn" form. An image file could be used that would show
the alternative Chinese characters for the examples. This would
not diminish either the ability to search the base text or index
the document or its readability for those of us for whom reading
Chinese characters is difficult, but it should help those who can
read them.
2. Suppose that a proposed RFC contained a section derived from
Japanese text. The author might put an English translation into
that section of the base document, note that the original was
really in Japanese, and attach the Japanese as an appendix in an
image file. This should raise no difficulties for informative
documents. For normative documents, however, the existence of
the Japanese original would raise some issues about what was
actually authoritative, which is very undesirable.
9. Security Considerations
This specifications addresses documentation standards and adding
additional flexibility to them. It does not, in general, raise any
security issues. However, unless the specifications of this document
are carefully followed, the image format recommended, PDF, {image format},
may potentially contain external references or scripts that could
introduce security problems. The RFC Editor and other publishers
should exercise due care to ensure that no such references or scripts
appear in the archives.
10. IANA Considerations
This document requires no actions by the IANA.
11. Acknowledgments
The impetus for this specification arose during a discussion during
an RFC Editorial Board meeting in the aftermath of one of the IETF's
seeming-interminable discussions about allowing RFC's in "modern"
formats. Aaron Falk made several specific suggestions that have been
reflected in the document. The RFC Editor staff and other Editorial
Board members contributed suggestions without which this version
would not have been possible.
12. References
12.1. Normative References
[RFC2223] Postel, J. and J. Reynolds, "Instructions to RFC Authors",
RFC 2223, October 1997.
[RFC3778] Taft, E., Pravetz, J., Zilles, S., and L. Masinter, "The
application/pdf Media Type", RFC 3778, May 2004.
[RFC4748] Bradner, S., "RFC 3978 Update to Recognize the IETF
Trust", BCP 78, RFC 4748, October 2006.
12.2. Informative References
[ISO19005-1]
International Organization for Standardization (ISO),
"Document management -- Electronic document file format
for long-term preservation -- Part 1: Use of PDF 1.4
(PDF/A-1)", ISO 19005-1:2005, 2005.
[ISO32000-1]
International Organization for Standardization (ISO),
"Document management -- Portable document format -- Part
1: PDF 1.7", ISO 32000-1:2008, 2008.
[RFC3743] Konishi, K., Huang, K., Qian, H., and Y. Ko, "Joint
Engineering Team (JET) Guidelines for Internationalized
Domain Names (IDN) Registration and Administration for
Chinese, Japanese, and Korean", RFC 3743, April 2004.
Authors' Addresses
Robert Braden
USC/ISI
4676 Admiralty Way
Marina del Rey,
Author's Address
Dave Crocker
Brandenburg InternetWorking
675 Spruce Drive
Sunnyvale, CA 90292 94086
USA
Phone: +1 310 448 9173 +1.408.246.8253
Email: braden@isi.edu
John C Klensin
1770 Massachusetts Ave, #322
Cambridge, MA 02140
USA
Phone: +1 617 491 5735
Email: john-ietf@jck.com dcrocker@bbiw.net
Full Copyright Statement
Copyright (C) The IETF Trust (2008).
This document is subject to the rights, licenses and restrictions
contained in BCP 78, and except as set forth therein, the authors
retain all their rights.
This document and the information contained herein are provided on an
"AS IS" basis and THE CONTRIBUTOR, THE ORGANIZATION HE/SHE REPRESENTS
OR IS SPONSORED BY (IF ANY), THE INTERNET SOCIETY, THE IETF TRUST AND
THE INTERNET ENGINEERING TASK FORCE DISCLAIM 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.
Intellectual Property
The IETF takes no position regarding the validity or scope of any
Intellectual Property Rights or other rights that might be claimed to
pertain to the implementation or use of the technology described in
this document or the extent to which any license under such rights
might or might not be available; nor does it represent that it has
made any independent effort to identify any such rights. Information
on the procedures with respect to rights in RFC documents can be
found in BCP 78 and BCP 79.
Copies of IPR disclosures made to the IETF Secretariat and any
assurances of licenses to be made available, or the result of an
attempt made to obtain a general license or permission for the use of
such proprietary rights by implementers or users of this
specification can be obtained from the IETF on-line IPR repository at
http://www.ietf.org/ipr.
The IETF invites any interested party to bring to its attention any
copyrights, patents or patent applications, or other proprietary
rights that may cover technology that may be required to implement
this standard. Please address the information to the IETF at
ietf-ipr@ietf.org.
Acknowledgment
Funding for the RFC Editor function is provided by the IETF
Administrative Support Activity (IASA).