RFC Design Team wiki space
During IETF 86, the IAB formally approved the publication of “RFC Format Requirements and Future Development” (RFC 6949). That RFC outlines the requirements gathered from the communities of interest regarding the Canonical format for the RFC Series. With those requirements in hand, the next step is to explore how those requirements might be implemented and verify what is possible and reasonable for the Series going forward.
The direction we are exploring is one where the Canonical format - the format that is authoritative for content of an RFC - is XML using the xml2rfc DTD. From that format, four Publication formats will be rendered: Text, HTML, PDF, and EPUB. We are focusing on the xml2rfc DTD as something most likely to meet the requirements as defined in a reasonable time frame and budget because xml2rfc is:
Authors may continue to submit XML or text files when their I-Ds are approved for publication.
By allowing for multiple Publication formats, readers can choose a format that works best for their circumstances. The Text and PDF will be extremely basic and support the widest array of tools. The HTML will allow more features and be readable by modern browsers.
Over the past few months, the RFC Format Design Team, formed in Berlin, has discussed the more detailed requirements for the XML Canonical format as well as the requirements of the different Publication formats and their associated character encoding. The results of that discussion, including documentation on items discussed but decided against as requirements, are documented in the pages below.
1. The content of an RFC must not change, regardless of format, once published. 2. The Canonical format must be persistent and reliable across a large variety of devices, operating systems, and editing tools for the indefinite future. This means the format must be both readable and editable across commonly used devices, operating systems, and platforms for the foreseeable future. 3. While several Publication formats must be allowed, in order to continue support for the most basic reading and search tools and to provide continuity for the Series, at least one Publication format must be plain text. 4. The boilerplate and overall structure of the RFC must be in accordance with current RFC and Style Guide requirements (see [RFC5741]). 5. The documents must be made accessible to people with visual disabilities through such means as including alternative text for images and limiting the use of color. See the W3C's accessibility documents [WCAG20] and the United Nations "Convention on the Rights of Persons with Disabilities" [UN2006] for guidance. Appropriate authoring tools are highly desirable but focus on the creation of Internet-Drafts, a topic outside the scope of the RFC Editor. 6. The official language of the RFC Series is English. ASCII is required for all text that must be read to understand or implement the technology described in the RFC. Use of non- ASCII characters, expressed in a standard Unicode Encoding Form (such as UTF-8), must receive explicit approval from the document stream manager and will be allowed after the rules for the common use cases are defined in the Style Guide. 7. The Submission and Publication formats need to permit extending the set of metadata tags, for the addition of labeled metadata. A predefined set of metadata tags must be created to make use of metadata tags consistent for the life of the Series. 8. Graphics may include ASCII art and a more complex form to be defined, such as SVG line art [SVG]. Color and grayscale will not be accepted. RFCs must correctly display in monochromatic black-and-white to allow for monochrome displays, black-and- white printing, and support for visual disabilities. 9. The Canonical format must be renderable into self-contained Publication formats in order to be easily downloaded and read offline. 10. Fixed-width fonts and non-reflowable text are required for ASCII-art sections, source code examples, and other places where strict alignment is required. 11. At least one Publication format must support readable print to standard paper sizes. 12. The Canonical format should be structured to enable easy program identification and parsing of code or specifications, such as MIB modules and ABNF.