idnits 2.17.1 draft-iab-rfcformatreq-01.txt: Checking boilerplate required by RFC 5378 and the IETF Trust (see https://trustee.ietf.org/license-info): ---------------------------------------------------------------------------- No issues found here. Checking nits according to https://www.ietf.org/id-info/1id-guidelines.txt: ---------------------------------------------------------------------------- No issues found here. Checking nits according to https://www.ietf.org/id-info/checklist : ---------------------------------------------------------------------------- -- The abstract seems to indicate that this document updates RFC2223, but the header doesn't have an 'Updates:' line to match this. Miscellaneous warnings: ---------------------------------------------------------------------------- == The copyright year in the IETF Trust and authors Copyright Line does not match the current year == Line 146 has weird spacing: '...rmatted plain...' == Line 482 has weird spacing: '... and limit...' -- The document date (January 15, 2013) is 4112 days in the past. Is this intentional? Checking references for intended status: Informational ---------------------------------------------------------------------------- -- Obsolete informational reference (is this intentional?): RFC 2223 (Obsoleted by RFC 7322) -- Obsolete informational reference (is this intentional?): RFC 5741 (Obsoleted by RFC 7841) == Outdated reference: A later version (-03) exists of draft-flanagan-style-00 Summary: 0 errors (**), 0 flaws (~~), 4 warnings (==), 4 comments (--). Run idnits with the --verbose option for more detailed information about the items above. -------------------------------------------------------------------------------- 2 INTERNET-DRAFT H. Flanagan 3 Intended Status: Informational RFC Series Editor 4 N. Brownlee 5 Independent Submissions Editor 6 Expires: July 19, 2013 January 15, 2013 8 RFC Series Format Development 9 draft-iab-rfcformatreq-01 11 Abstract 13 This document describes the current requirements and requests for 14 enhancements for the format of the canonical version of RFCs. Terms 15 are defined to help clarify exactly which stages of document 16 production are under discussion for format changes. The requirements 17 described in this document will determine what changes will be made 18 to RFC format. This document updates RFC 2223. 20 Status of this Memo 22 This Internet-Draft is submitted to IETF in full conformance with the 23 provisions of BCP 78 and BCP 79. 25 Internet-Drafts are working documents of the Internet Engineering 26 Task Force (IETF), its areas, and its working groups. Note that 27 other groups may also distribute working documents as 28 Internet-Drafts. 30 Internet-Drafts are draft documents valid for a maximum of six months 31 and may be updated, replaced, or obsoleted by other documents at any 32 time. It is inappropriate to use Internet-Drafts as reference 33 material or to cite them other than as "work in progress." 35 The list of current Internet-Drafts can be accessed at 36 http://www.ietf.org/1id-abstracts.html 38 The list of Internet-Draft Shadow Directories can be accessed at 39 http://www.ietf.org/shadow.html 41 Copyright and License Notice 43 Copyright (c) 2012 IETF Trust and the persons identified as the 44 document authors. All rights reserved. 46 This document is subject to BCP 78 and the IETF Trust's Legal 47 Provisions Relating to IETF Documents 48 (http://trustee.ietf.org/license-info) in effect on the date of 49 publication of this document. Please review these documents 50 carefully, as they describe your rights and restrictions with respect 51 to this document. Code Components extracted from this document must 52 include Simplified BSD License text as described in Section 4.e of 53 the Trust Legal Provisions and are provided without warranty as 54 described in the Simplified BSD License. 56 Table of Contents 58 1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . 3 59 1.1 Terminology . . . . . . . . . . . . . . . . . . . . . . . . 3 60 2. History and Goals . . . . . . . . . . . . . . . . . . . . . . 4 61 2.1. Issues driving change . . . . . . . . . . . . . . . . . . 5 62 2.1.1. Line art, aka ASCII art . . . . . . . . . . . . . . . 6 63 2.1.2. Character encoding . . . . . . . . . . . . . . . . . . 7 64 2.1.3. Pagination . . . . . . . . . . . . . . . . . . . . . . 8 65 2.1.4. Reflowable text . . . . . . . . . . . . . . . . . . . 8 66 2.1.5. Metadata and tagging . . . . . . . . . . . . . . . . . 8 67 2.2. Further considerations . . . . . . . . . . . . . . . . . . 9 68 2.2.1. Creation and use of RFC-specific tools . . . . . . . . 9 69 2.2.2. Markup language . . . . . . . . . . . . . . . . . . . 10 70 2.3. RFC Editor goals . . . . . . . . . . . . . . . . . . . . . 10 71 3. Format Requirements . . . . . . . . . . . . . . . . . . . . . 10 72 3.1. Original requirements to be retained . . . . . . . . . . . 10 73 3.2. Requirements to be added . . . . . . . . . . . . . . . . . 11 74 3.3. Requirements to be retired . . . . . . . . . . . . . . . . 12 75 4. Security Considerations . . . . . . . . . . . . . . . . . . . 13 76 5. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 13 77 6. References . . . . . . . . . . . . . . . . . . . . . . . . . . 13 78 6.1. Informative References . . . . . . . . . . . . . . . . . . 13 79 Acknowledgements . . . . . . . . . . . . . . . . . . . . . . . . . 13 80 Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . . . 14 82 1 Introduction 84 Over 40 years ago, the RFC Series began as a collection of memos in 85 an environment that included handwritten RFCs, typewritten RFCs, RFCs 86 produced on mainframes with complicated layout tools, and more. As 87 the tools changed and some of the source formats became unreadable, 88 the core individuals behind the Series realized that a common format 89 that could be read, revised, and archived long in the future was 90 required. US-ASCII was chosen for the encoding of characters and 91 after a period of variability, a well-defined presentation format was 92 settled upon. That format has proved to be persistent and reliable 93 across a large variety of devices, operating systems, and editing 94 tools. That stability has been a continuing strength of the Series. 95 However, as new technology such as small devices and advances in 96 display technology come into common usage, there is a growing desire 97 to see the format of the RFC Series adapt to take advantage of these 98 different ways to communicate information. 100 Since the format stabilized, authors and readers have suggested 101 enhancements to the format. However, no suggestion developed clear 102 consensus in the Internet technical community. As always, some 103 individuals see no need for change while others press strongly for 104 specific enhancements. 106 This document takes a look at the current requirements for RFCs as 107 described in RFC 2223 [RFC2223] and more recently in 2223bis 108 [2223bis]. It also reviews recent requests for enhancements as 109 understood from community discussion and various proposals for new 110 formats including HTML, XML, PDF and EPUB. The focus of this 111 document is on the Canonical format of RFCs, but some mention of 112 other phases in the RFC publication process and the document formats 113 associated with these phases is also included. Terms are defined to 114 help clarify exactly which stages of document production are under 115 discussion for format changes. 117 1.1 Terminology 119 ASCII = Coded Character Set -- 7-bit American Standard Code for 120 Information Interchange, ANSI X3.4-1986. [ASCII] 122 Submission format = the format submitted to the RFC Editor for 123 editorial revision and publication 125 * Currently: formatted plain text (required), XML (optional), 126 NROFF (optional) 128 Revisable format = the format that will provide the information for 129 conversion into a Publication format; it is used or created by the 130 RFC Editor (see Section 2.3 for an explanation of current practice) 132 * Currently: XML (optional), NROFF (required) 134 Publication format = display and distribution format as it may be 135 read or printed after the publication process has completed 137 * Currently published by the RFC Editor: formatted plain text, 138 PDF of the formatted plain text, PDF that contains figures 139 (rare) 141 * Currently made available by other sites: HTML, PDF, others 143 Canonical format = the authorized, recognized, accepted, and archived 144 version of the document 146 * Currently: formatted plain text 148 Metadata = Information associated with a document so as to provide, 149 for example, definitions of its structure, or of elements within the 150 document such as its topic or author 152 2. History and Goals 154 Below are the current RFC format rules as defined in [RFC2223] and 155 clarified in 2223bis. 157 * The character codes are ASCII. 159 * Each page must be limited to 58 lines followed by a form feed 160 on a line by itself. 162 * Each line must be limited to 72 characters followed by carriage 163 return and line feed. 165 * No overstriking (or underlining) is allowed. 167 * These "height" and "width" constraints include any headers, 168 footers, page numbers, or left side indenting. 170 * Do not fill the text with extra spaces to provide a straight 171 right margin. 173 * Do not do hyphenation of words at the right margin. 175 * Do not use footnotes. If such notes are necessary, put them at 176 the end of a section, or at the end of the document. 178 * Use single spaced text within a paragraph, and one blank line 179 between paragraphs. 181 * Note that the number of pages in a document and the page 182 numbers on which various sections fall will likely change with 183 reformatting. Thus cross references in the text by section 184 number usually are easier to keep consistent than cross 185 references by page number. 187 * RFCs in plain ASCII-text may be submitted to the RFC Editor in 188 e-mail messages (or as online files) in either the finished 189 Publication format or in nroff. If you plan to submit a 190 document in nroff please consult the RFC Editor first. 192 The precedent for additional formats, specifically PostScript, is 193 described in RFC 2223 and has been used for a small number of RFCs: 195 Note that since the ASCII text version of the RFC is the primary 196 version, the PostScript version must match the text version. The 197 RFC Editor must decide if the PostScript version is "the same as" 198 the ASCII version before the PostScript version can be published. 200 Neither RFC 2223 or 2223bis use the term 'metadata,' though the RFC 201 Editor currently refers to components of the text such as the Stream, 202 Status (e.g., Updates, Obsoletes), Category and ISSN as 'metadata.' 204 2.1. Issues driving change 206 While some authors and readers of RFCs report that they find the 207 strict limits of character encoding, line limits, and so on to be 208 acceptable, others claim to find those limitations a significant 209 obstacle to their desire to communicate and read the information via 210 an RFC. With a broader community of authors currently producing RFCs 211 and a wider range of presentation devices, the issues being reported 212 indicate limitations of the current Canonical format that must be 213 reviewed and potentially incorporated in to the Canonical RFC format. 215 While the specific points of concern vary, the main issues discussed 216 are: 218 * Line art, also known as ASCII art 220 * Character encoding 221 * Pagination 223 * Reflowable text 225 * Metadata 227 Each area of concern has people in favor of change and people opposed 228 to it, all with reasonable concerns and requirements. Below is a 229 summary of the arguments for and against each major issue. These 230 points are not part of the list of requirements; they are the inputs 231 that informed the requirements discussed in Section 3 of this 232 document. 234 2.1.1. Line art, aka ASCII art 236 Arguments in favor of limiting all diagrams, equations, tables and 237 charts to ASCII art depictions only include: 239 * Dependence on advanced diagrams (or any diagrams) causes 240 accessibility issues. 242 * Requiring ASCII art results in people often relying more on 243 clear written descriptions rather than just the diagram 244 itself. 246 * Use of the ASCII character set forces design of diagrams that 247 are simple and concise. 249 Arguments in favor of allowing the use of more complex diagrams in 250 place of the current use of ASCII art include: 252 * State diagrams with multiple arrows in different directions and 253 labels on the lines will be more understandable. 255 * Protocol flow diagrams where each step needs multiple lines of 256 description will be clearer. 258 * Scenario descriptions that involve three or more parties with 259 communication flows between them will be clearer. 261 * Given the difficulties in expressing complex equations with 262 common mathematical notation, allowing graphic art would allow 263 equations to be displayed properly. 265 * Complex art could allow for color to be introduced into the 266 diagrams. 268 Two suggestions have been proposed regarding how graphics should be 269 included: one that would have graphic art referenced as a separate 270 document to the Publication format, and one that would allow embedded 271 graphics in the Publication format. 273 2.1.2. Character encoding 275 For most of the history of the RFC Series, the character encoding for 276 RFCs has been ASCII. Below are arguments for keeping ASCII as well 277 as arguments for expanding to UTF-8. 279 Arguments for retaining the ASCII-only requirement 281 * Most easily searched and displayed across a variety of 282 platforms. 284 * In extreme cases of having to retype/scan hard copies of 285 documents (it has been required in the past) ASCII is 286 significantly easier to work with for rescanning and retaining 287 all of the original information. There can be no loss of 288 descriptive metadata such as keywords or content tags. 290 * If we expand beyond ASCII, it will be difficult to know where 291 to draw the line on what characters are and are not allowed. 292 There will be issues with dependencies on local file systems 293 and processors being configured to recognize any other 294 character set. 296 * The IETF works in ASCII (and English). The Internet research, 297 design and development communities function almost entirely in 298 English. That strongly suggests that an ASCII document can be 299 properly rendered and read by everyone in the communities and 300 audiences of interest. 302 Arguments for expanding to allow UTF-8: 304 * In discussions of internationalization, actually being able to 305 illustrate the issue is rather helpful, and you can't 306 illustrate a Unicode code point with "U+nnnn". 308 * Will provide the ability to denote protocol examples using the 309 character sets those examples support. 311 * Will allow better support for international character sets, in 312 particular allowing authors to spell their names in their 313 native character sets. 315 * Certain special characters in equations or quoted from other 316 texts could be allowed. 318 * Citations of web pages using more international characters are 319 possible. 321 Arguments for strictly prescribed UTF-8 use: 323 * In order to keep documents as searchable as possible, ASCII-only 324 should be required for the main text of the document and some 325 broader UTF-8 character set allowed under clearly prescribed 326 circumstances (e.g. author names and references). 328 2.1.3. Pagination 330 Arguments for continuing the use of discrete pages within RFCs: 332 * Ease of reference and clear printing; referring to section 333 numbers is too coarse a method. 335 Arguments for removing the pagination requirement: 337 * Removing pagination will allow for a smoother reading 338 experience on a wider variety of devices, platforms, and 339 browsers. 341 2.1.4. Reflowable text 343 Arguments against allowing for reflowable text: 345 * Reflowable text may impact the usability of graphics and tables 346 within a document. 348 Arguments for allowing reflowable text: 350 * RFCs are more readable on a wider variety of devices and 351 platforms, including mobile devices and a wide variety of 352 screen layouts. 354 2.1.5. Metadata and tagging 356 While metadata requirements are not part of RFC 2223, there is a 357 request that descriptive metadata tags be added as part of a revision 358 of the Canonical RFC format. These tags would allow for enhanced 359 content by embedding information like links, tags, or quick 360 translations and could help control the look and feel of the 361 Publication format. While the lack of metadata in the current RFCs 362 does not impact an RFCs' accessibility or readability, several 363 individuals have indicated that allowing metadata within the RFC 364 would make their reading of the documents more efficient. 366 Arguments for allowing metadata in the Canonical and Publication 367 formats: 369 * Allowing metadata in the final Canonical and Publication format 370 allows readers to potentially get more detail out of a 371 document. For example, if non-ASCII characters are allowed in 372 the Author and Reference sections, Metadata must include 373 translations of that information. 375 Arguments against metadata in the final Canonical and Publication 376 formats: 378 * Metadata adds additional overhead to the overall process of 379 creating RFCs and may complicate future usability as a result 380 of requiring backward compatibility for metadata tags. 382 2.2. Further considerations 384 Some of the discussion beyond the issues described above went into a 385 review of potential solutions. Those solutions and the debate around 386 them added a few more points to the list of potential requirements 387 for a change in RFC Format. In particular, the discussion of tools 388 introduced the idea of whether a change in format should also include 389 the creation and ongoing support of specific RFC authoring and/or 390 rendering tools and whether the Canonical format should be a format 391 that must go through a rendering agent to be readable. 393 2.2.1. Creation and use of RFC-specific tools 395 Arguments against community-supported RFC-specific tools: 397 * We cannot be so unique in our needs that we can't use 398 commercial tools. 400 * Ongoing support for these tools adds a greater level of 401 instability to the ongoing availability of the RFC Series 402 through the decades. 404 * The community that would support these tools cannot be relied 405 on to be as stable and persistent as the Series itself. 407 Arguments in support of community-supported RFC-specific tools: 409 * Given the community that would be creating and supporting these 410 tools, there would be greater control and flexibility over the 411 tools and how they implement the RFC format requirements. 413 * Community supported tools currently exist and are in extensive 414 use within the community, so it would be most efficient to 415 build on that base. 417 2.2.2. Markup language 419 Arguments in support of a markup language as the Revisable format: 421 * Having a markup language such as XML or HTML allows for greater 422 flexibility in creating a variety of Publication formats, with 423 a greater likelihood of similarity between them. 425 Arguments against a markup language as the Revisable format: 427 * Having the Revisable format be in a markup language instead of 428 in a simple text-formatting structure ties us in to specific 429 tools and/or tool support going forward. 431 2.3. RFC Editor goals 433 Today, each RFC has an nroff file created prior to publication. For 434 RFCs revised using an XML file, this file is created by converting 435 XML to nroff at the final step. As more documents are submitted with 436 an XML file (so far in 2012, 66% of approved I-Ds were submitted with 437 an XML file), this conversion is problematic in terms of time spent 438 and data lost from XML. Making this process more efficient is 439 strongly desired by the RFC Editor. 441 3. Format Requirements 443 Understanding the major pain points and balancing them with the 444 expectation of long-term viability of the documents brings us to a 445 review of what must be kept of the original requirements, what new 446 requirements may be added, and what requirements may be retired. 448 3.1. Original requirements to be retained 450 There are several components of the original format requirements that 451 must be retained to ensure the ongoing continuity, reliability and 452 readability of the Series: 454 * The content of an RFC must not change, regardless of format, 455 once published. 457 * The Canonical format must be persistent and reliable across a 458 large variety of devices, operating systems, and editing tools 459 for the indefinite future. This means the format must be both 460 readable and editable across commonly used devices, operating 461 system systems and platforms for the foreseeable future. 463 * While several Publication formats must be allowed, in order to 464 continue support for the most basic reading and search tools 465 and to provide continuity for the Series, at least one 466 Publication format must be plain-text. 468 * The Boilerplate and overall structure of the RFC must be in 469 accordance with current RFC and Style Guide requirements (see 470 [RFC5741]). 472 Issues such as overstriking, page justification, hyphenation, and 473 spacing will be defined in the RFC Style Guide. [Style] 475 3.2. Requirements to be added 476 In addition to those continuing requirements, discussions with 477 various members of the wider Internet Community have yielded the 478 following General Requirements for the RFC Series. 480 * The documents must be accessible to people with physical or 481 age-related disabilities, including alternative text for images 482 and limitations on color. See the W3C's Accessibility 483 documents [WCAG20] and the United Nations "Convention on the 484 Rights of Persons with Disabilities" [UN2006] for guidance. 485 Appropriate authoring tools are highly desirable but focus on 486 the creation of Internet-Drafts, a topic outside the scope of 487 the RFC Editor. [WCAG20] 489 * The official language of the RFC Series is English. However, 490 to respect international names and information, UTF-8/Unicode 491 is allowed. All documents containing non-ASCII characters must 492 be readable and implementable without them. Author names and 493 addresses will require an ASCII equivalent for indexing 494 purposes. 496 * The Submission and Publication formats need to permit extending 497 the set of metadata tags, for the addition of labeled metadata. 498 A pre-defined set of metadata tags must be created to make use 499 of metadata tags consistent for the life of the Series. 501 * Graphics may include ASCII art and SVG line art. Color will 502 not be accepted; RFCs must correctly display in monochrome to 503 allow for monochrome displays, black-and-white printing, and 504 support for physical and age-related disabilities. 506 * The Canonical format must be renderable into self-contained 507 Publication formats in order to be easily downloaded and read 508 offline. 510 * Fixed-width fonts and non-reflowable text are required for 511 ASCII-art sections, source code examples, and other places 512 where strict alignment is required. 514 * The Canonical format should be structured to enable easy 515 program identification and parsing of code or specifications, 516 such as MIB, ABNF, etc. 518 The requirements of the RFC Editor regarding RFC format and the 519 publication process include: 521 * The final conversion of all submitted documents to nroff should 522 be replaced by using an accepted Revisable format throughout 523 the process. 525 * In order to maintain an efficient publication process, the RFC 526 Editor must work with the minimal number of files required for 527 each submission (not a tar ball of several discrete 528 components). 530 * In order to maintain the focus of the RFC Editor on editing for 531 clarity and consistency rather than document layout details, 532 the number of Publication formats produced by the RFC editor 533 must be limited. 535 * Tools must support error checking against document layout 536 issues as well as other format details (diagrams, line breaks, 537 variable and fixed width font layout) at the time of RFC 538 Editor's request for author review (AUTH48). 540 3.3. Requirements to be retired 542 Some of the original requirements may be removed from consideration: 544 * Pagination ("Each page must be limited to 58 lines followed by 545 a form feed on a line by itself.") 547 * Maximum line length ("Each line must be limited to 72 548 characters followed by carriage return and line feed.") 550 * Limitation to 100% ASCII text ("The character codes are 551 ASCII.") 553 4. Security Considerations 555 This document sets out requirements for RFCs in their various 556 formats, it does not concern interactions between Internet 557 hosts. Therefore it does not have any specific Security 558 Considerations. 560 5. IANA Considerations 562 This document does not request entries in any IANA Registry. 564 6. References 566 6.1. Informative References 568 [RFC2223] Postel, J. and J. Reynolds, "Instructions to RFC Authors", 569 RFC 2223, October 1997. 571 [RFC5741] Daigle, L., Ed., Kolkman, O., Ed., and IAB, "RFC Streams, 572 Headers, and Boilerplates", RFC 5741, December 2009. 574 [ASCII] American National Standard for Information Systems - Coded 575 Character Sets - 7-Bit American National Standard Code for 576 Information Interchange (7-Bit ASCII), ANSI X3.4-1986, 577 American National Standards Institute, Inc., March 26, 578 1986. 580 [2223bis] Reynolds, J. Bradon, R., "Instructions to Request for 581 Comments (RFC) Authors", Work In Progress, August 2004. 583 [Style] Flanagan, H. and S. Ginoza, "RFC Style Guide", Work In 584 Progress, draft-flanagan-style-00, October 2012. 586 [WCAG20] W3C, "Web Content Accessibility Guidelines (WCAG) 2.0", 587 December 11 2008, http://www.w3.org/TR/WCAG20/ 589 [UN2006] United Nations, "Convention on the Rights of Persons with 590 Disabilities", December 2006. 592 Acknowledgements 593 The authors received a great deal of helpful input from the community 594 in pulling together these requirements and wish to particularly 595 acknowledge the help of Joe Hildebrand, Paul Hoffman and John 596 Klensin, who each published an I-D on the topic of potential format 597 options before the IETF 84 BOF. 599 Authors' Addresses 601 Heather Flanagan 602 RFC Series Editor 604 Email: rse@rfc-editor.org 606 Nevil Brownlee 607 Independent Submissions Editor 609 Email rfc-ise@rfc-editor.org