From 4bfd864f10b68b71482b35c818559068ef8d5797 Mon Sep 17 00:00:00 2001 From: Thomas Voss Date: Wed, 27 Nov 2024 20:54:24 +0100 Subject: doc: Add RFC documents --- doc/rfc/rfc7996.txt | 2971 +++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 2971 insertions(+) create mode 100644 doc/rfc/rfc7996.txt (limited to 'doc/rfc/rfc7996.txt') diff --git a/doc/rfc/rfc7996.txt b/doc/rfc/rfc7996.txt new file mode 100644 index 0000000..75c2b29 --- /dev/null +++ b/doc/rfc/rfc7996.txt @@ -0,0 +1,2971 @@ + + + + + + +Internet Architecture Board (IAB) N. Brownlee +Request for Comments: 7996 The University of Auckland +Category: Informational December 2016 +ISSN: 2070-1721 + + + SVG Drawings for RFCs: SVG 1.2 RFC + +Abstract + + This document specifies SVG 1.2 RFC -- an SVG profile for use in + diagrams that may appear in RFCs -- and considers some of the issues + concerning the creation and use of such diagrams. + +Status of This Memo + + This document is not an Internet Standards Track specification; it is + published for informational purposes. + + This document is a product of the Internet Architecture Board (IAB) + and represents information that the IAB has deemed valuable to + provide for permanent record. It represents the consensus of the + Internet Architecture Board (IAB). Documents approved for + publication by the IAB are not a candidate for any level of Internet + Standard; see Section 2 of RFC 7841. + + Information about the current status of this document, any errata, + and how to provide feedback on it may be obtained at + http://www.rfc-editor.org/info/rfc7996. + +Copyright Notice + + Copyright (c) 2016 IETF Trust and the persons identified as the + document authors. All rights reserved. + + This document is subject to BCP 78 and the IETF Trust's Legal + Provisions Relating to IETF Documents + (http://trustee.ietf.org/license-info) in effect on the date of + publication of this document. Please review these documents + carefully, as they describe your rights and restrictions with respect + to this document. + + + + + + + + + + +Brownlee Informational [Page 1] + +RFC 7996 SVG Drawings for RFCs: SVG 1.2 RFC December 2016 + + +Table of Contents + + 1. Introduction ....................................................2 + 2. SVG 1.2 RFC: An SVG Profile for RFCs ............................3 + 2.1. Elements, Properties, and Attributes Allowed in + SVG 1.2 RFC ................................................4 + 3. How to Create SVG Drawings ......................................7 + 4. Accessibility Considerations ....................................7 + 5. Examples of Diagrams Common in RFCs .............................8 + 5.1. Packet Layout Diagrams .....................................8 + 5.2. Sequence Diagrams (1) ......................................8 + 5.3. Sequence Diagrams (2) ......................................8 + 6. Security Considerations .........................................8 + 7. References ......................................................9 + 7.1. Normative References .......................................9 + 7.2. Informative References .....................................9 + Appendix A. RELAX NG Compact (RNC) Schema for SVG 1.2 RFC .........11 + IAB Members at the Time of Approval ...............................53 + Acknowledgements ..................................................53 + Author's Address ..................................................53 + +1. Introduction + + Over the last few years, the RFC Editor has worked with the Internet + community to develop specifications for changes in the format of + RFCs. An outline of the resulting specifications was published as + [RFC6949] in May 2013. Since then, a Design Team has been working + with the RFC Editor to flesh out those specifications. One aspect of + the changes is to allow line drawings in RFCs; [RFC6949] says + + 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. + + SVG (Scalable Vector Graphics) has been developed by W3C, the World + Wide Web Consortium; its current standard is SVG 1.1 Full + [W3C.REC-SVG11-20110816]. This document defines SVG 1.2 RFC, an SVG + profile (i.e., a subset of SVG) that is suitable for RFC line + drawings. + + Note that in RFCs, the text provides normative descriptions of + protocols, systems, etc. Diagrams may be used to help explain + concepts more clearly, but they provide supporting details and should + not be considered to be complete specifications in themselves. + + + + + +Brownlee Informational [Page 2] + +RFC 7996 SVG Drawings for RFCs: SVG 1.2 RFC December 2016 + + + The details (particularly any vocabularies) described in this + document are expected to change based on experience gained in + implementing the new publication toolsets. Revised documents will be + published capturing those changes as the toolsets are completed. + Other implementers must not expect those changes to remain backwards- + compatible with the details described in this document. + +2. SVG 1.2 RFC: An SVG Profile for RFCs + + As a starting point for SVG 1.2 RFC, the Design Team decided to use + SVG Tiny 1.2 (also referred to as "SVG 1.2 Tiny") + [W3C.REC-SVGTiny12-20081222]. SVG 1.2 Tiny is an SVG subset intended + to be implemented on small, mobile devices such as cell phones and + smartphones. That should allow RFCs to be rendered well on such + devices, especially those that have small screens. However, RFCs are + self-contained documents that do not change once they are published. + The use of SVG drawings in RFCs is intended to allow authors to + create drawings that are simple to produce and are easier to + understand than our traditional "ASCII art" ones. In short, we are + also trying to improve access to the content in RFCs, so SVG drawings + need to be kept as simple as possible. + + Appendix A (below) provides a complete RELAX NG Compact (RNC) schema + [RNG-HOME] for SVG 1.2 RFC. It is derived from the SVG 1.2 schema, + and is the formal definition of SVG 1.2 RFC. The remainder of this + section gives a simplified -- i.e., easier to read and understand -- + overview of SVG 1.2 RFC. + + SVG can provide a complete User Interface, but within RFCs, all we + need are simple diagrams that do not change once the RFC is + published. Therefore, SVG 1.2 RFC does not allow anything from the + following sections in SVG Tiny 1.2 [W3C.REC-SVGTiny12-20081222]: + + 12 Multimedia + 13 Interactivity + 15 Scripting + 16 Animation + 18 Metadata + 19 Extensibility + + Note that SVG Tiny 1.2 elements may have many properties or + attributes that are needed to support aspects of the above sections. + Those are not allowed in SVG 1.2 RFC. + + + + + + + + +Brownlee Informational [Page 3] + +RFC 7996 SVG Drawings for RFCs: SVG 1.2 RFC December 2016 + + + We now consider these other sections in SVG Tiny 1.2 + [W3C.REC-SVGTiny12-20081222]: + + 9 Basic Shapes + + 10 Text + Everything in this section is allowed in SVG 1.2 RFC. + + 11 Painting: Filling, Stroking, Colors and Paint Servers + Anything relating to 'color' is not allowed in SVG 1.2 RFC; + everything else is allowed. This is a requirement documented in + [RFC6949]. + + 14 Linking + SVG Tiny 1.2 allows Internationalized Resource Identifiers + (IRIs) in references. In SVG 1.2 RFC, such links must be ASCII + only. That should not cause problems, since one can just use + the URI form of any IRI. Authors should try to use links only + to URIs that are long-term stable. + + 17 Fonts + SVG 1.2 RFC only allows 'serif', 'sans-serif', and 'monospace' + generic font families from the WebFonts facility, described in + Section 15 ("Fonts") of the W3C Cascading Style Sheets (CSS) 2.1 + document [W3C.REC-CSS2-20110607]. In particular, the SVG 'font' + element is not allowed. + +2.1. Elements, Properties, and Attributes Allowed in SVG 1.2 RFC + + This section discusses elements, properties, and attributes selected + for SVG 1.2 RFC from [W3C.REC-SVGTiny12-20081222]. + + In the list below, elements and properties are listed on the + left, and their allowed values are given in parentheses on the + right. + + is the list of allowed colors, a black-and-white + subset of the SVG color names. + +