From 506a1fad14de313b28b489567dd0257dc334c971 Mon Sep 17 00:00:00 2001 From: Paul Hoffman Date: Wed, 17 Oct 2018 10:42:38 -0700 Subject: [PATCH] More tooling fixes --- Makefile | 5 +- draft-iab-rfc7991bis.redxml | 10 +- draft-iab-rfc7991bis.txt | 490 +- draft-iab-rfc7991bis.unpg.txt | 8 +- draft-iab-rfc7991bis.xml | 10 +- draft-iab-rfc7991bis.xml.bak | 8679 +++++++++++++++++++++++++++++++++ refresh-inclusions.sh | 2 +- xml2rfcv3-spec-deprecated.xml | 6 +- xml2rfcv3-spec.xml | 283 +- xml2rfcvoc.mk | 38 - 10 files changed, 9092 insertions(+), 439 deletions(-) create mode 100644 draft-iab-rfc7991bis.xml.bak delete mode 100644 xml2rfcvoc.mk diff --git a/Makefile b/Makefile index 9063ee4..c27aabf 100644 --- a/Makefile +++ b/Makefile @@ -16,7 +16,7 @@ xml2rfcv3-annotated.rng: xml2rfcv3.rng annotate-rng.xslt draft-iab-rfc7991bis.xm saxon $< annotate-rng.xslt doc=draft-iab-rfc7991bis.xml > $@ xml2rfcv3-spec.xml: xml2rfcv3.rng rng2xml2rfc.xslt - saxon $< rng2xml2rfc.xslt voc=v3 draft-iab-rfc7991bis.xml > $@ + saxon $< rng2xml2rfc.xslt voc=v3 specsrc=draft-iab-rfc7991bis.xml > $@ xml2rfcv3-spec-deprecated.xml: xml2rfcv3.rng rng2xml2rfc.xslt saxon $< rng2xml2rfc.xslt specsrc=draft-iab-rfc7991bis.xml deprecated=yes > $@ @@ -41,9 +41,6 @@ differences-from-v2.txt: xml2rfcv3.rnc $(xml2rfcv2) xml2rfcv3-full.rng: xml2rfcv3.rng ./postprocess-rng.py -%.html: %.xml tools/rfc2629.xslt myxml2rfc.xslt - saxon -l $< myxml2rfc.xslt > $@ - %.redxml: %.xml tools/clean-for-DTD.xslt saxon -l $< tools/clean-for-DTD.xslt > $@ diff --git a/draft-iab-rfc7991bis.redxml b/draft-iab-rfc7991bis.redxml index a435abd..3f88b82 100644 --- a/draft-iab-rfc7991bis.redxml +++ b/draft-iab-rfc7991bis.redxml @@ -13,7 +13,7 @@ + attribute originalSrc { text }?, + (text* | svg) + } -+ # https://www.rfc-editor.org/materials/format/SVG-1.2-RFC.rnc ++ # TODO: replace with link to RSE site, or provide an inline ++ version ++ include "svg.rnc" + sourcecode = + element sourcecode { + attribute xml:base { text }?, diff --git a/draft-iab-rfc7991bis.txt b/draft-iab-rfc7991bis.txt index 848aa18..bbcddd6 100644 --- a/draft-iab-rfc7991bis.txt +++ b/draft-iab-rfc7991bis.txt @@ -196,7 +196,7 @@ Internet-Draft The "xml2rfc" version 3 Vocabulary October 2018 Appendix D. Schema Differences from v2 . . . . . . . . . . . . . 118 Appendix E. IAB Members at the Time of Approval . . . . . . . . 138 Appendix F. Acknowledgments . . . . . . . . . . . . . . . . . . 138 - Index . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 138 + Index . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 139 @@ -6286,7 +6286,9 @@ Internet-Draft The "xml2rfc" version 3 Vocabulary October 2018 attribute originalSrc { text }?, (text* | svg) } - # https://www.rfc-editor.org/materials/format/SVG-1.2-RFC.rnc + # TODO: replace with link to RSE site, or provide an inline version + include "svg.rnc" + sourcecode = element sourcecode { attribute xml:base { text }?, @@ -6319,8 +6321,6 @@ Internet-Draft The "xml2rfc" version 3 Vocabulary October 2018 tfoot = element tfoot { attribute xml:base { text }?, - attribute xml:lang { text }?, - attribute anchor { xsd:ID }?, @@ -6329,6 +6329,8 @@ Hoffman Expires April 20, 2019 [Page 113] Internet-Draft The "xml2rfc" version 3 Vocabulary October 2018 + attribute xml:lang { text }?, + attribute anchor { xsd:ID }?, tr+ } @@ -6375,8 +6377,6 @@ Internet-Draft The "xml2rfc" version 3 Vocabulary October 2018 [ a:defaultValue = "left" ] attribute align { "left" | "center" | "right" }?, ((artwork | dl | figure | ol | sourcecode | t | ul)+ - | (text - | bcp14 @@ -6385,6 +6385,8 @@ Hoffman Expires April 20, 2019 [Page 114] Internet-Draft The "xml2rfc" version 3 Vocabulary October 2018 + | (text + | bcp14 | br | cref | em @@ -6431,8 +6433,6 @@ Internet-Draft The "xml2rfc" version 3 Vocabulary October 2018 attribute width { text }?, [ a:defaultValue = "left" ] attribute align { "left" | "center" | "right" }?, - (cref | eref | iref | xref | text)* - } @@ -6441,6 +6441,9 @@ Hoffman Expires April 20, 2019 [Page 115] Internet-Draft The "xml2rfc" version 3 Vocabulary October 2018 + (cref | eref | iref | xref | text)* + } + c = element c { attribute xml:base { text }?, @@ -6486,9 +6489,6 @@ Internet-Draft The "xml2rfc" version 3 Vocabulary October 2018 attribute pn { text }?, attribute anchor { xsd:ID }?, attribute title { text }?, - name?, - (reference | referencegroup)* - } @@ -6497,6 +6497,10 @@ Hoffman Expires April 20, 2019 [Page 116] Internet-Draft The "xml2rfc" version 3 Vocabulary October 2018 + name?, + (reference | referencegroup)* + } + reference = element reference { attribute xml:base { text }?, @@ -6541,10 +6545,6 @@ Internet-Draft The "xml2rfc" version 3 Vocabulary October 2018 empty } - annotation = - element annotation { - attribute xml:base { text }?, - attribute xml:lang { text }?, @@ -6553,6 +6553,10 @@ Hoffman Expires April 20, 2019 [Page 117] Internet-Draft The "xml2rfc" version 3 Vocabulary October 2018 + annotation = + element annotation { + attribute xml:base { text }?, + attribute xml:lang { text }?, (text | bcp14 | cref @@ -6597,10 +6601,6 @@ Appendix D. Schema Differences from v2 [ a:defaultValue = "" ] attribute updates { text }?, - attribute category { "std" | "bcp" | "info" | "exp" | - "historic" }?, - - attribute consensus { "no" | "yes" }?, - + attribute category { text }?, - + attribute mode { text }?, - + [ a:defaultValue = "false" ] @@ -6609,6 +6609,10 @@ Hoffman Expires April 20, 2019 [Page 118] Internet-Draft The "xml2rfc" version 3 Vocabulary October 2018 + - attribute consensus { "no" | "yes" }?, + + attribute category { text }?, + + attribute mode { text }?, + + [ a:defaultValue = "false" ] + attribute consensus { "no" | "yes" | "false" | "true" }?, attribute seriesNo { text }?, - attribute ipr { @@ -6653,10 +6657,6 @@ Internet-Draft The "xml2rfc" version 3 Vocabulary October 2018 + attribute expiresDate { text }?, + link*, front, - middle, - back? - } - + link = @@ -6665,6 +6665,10 @@ Hoffman Expires April 20, 2019 [Page 119] Internet-Draft The "xml2rfc" version 3 Vocabulary October 2018 + middle, + back? + } + + link = + element link { + attribute xml:base { text }?, + attribute xml:lang { text }?, @@ -6709,10 +6713,6 @@ Internet-Draft The "xml2rfc" version 3 Vocabulary October 2018 + attribute asciiFullname { text }?, organization?, address? - } - organization = - element organization { - + attribute xml:base { text }?, @@ -6721,6 +6721,10 @@ Hoffman Expires April 20, 2019 [Page 120] Internet-Draft The "xml2rfc" version 3 Vocabulary October 2018 + } + organization = + element organization { + + attribute xml:base { text }?, + attribute xml:lang { text }?, attribute abbrev { text }?, + attribute ascii { text }?, @@ -6765,10 +6769,6 @@ Internet-Draft The "xml2rfc" version 3 Vocabulary October 2018 + } + code = + element code { - + attribute xml:base { text }?, - + attribute xml:lang { text }?, - + attribute ascii { text }?, - + text @@ -6777,6 +6777,10 @@ Hoffman Expires April 20, 2019 [Page 121] Internet-Draft The "xml2rfc" version 3 Vocabulary October 2018 + + attribute xml:base { text }?, + + attribute xml:lang { text }?, + + attribute ascii { text }?, + + text + } + country = + element country { @@ -6821,10 +6825,6 @@ Internet-Draft The "xml2rfc" version 3 Vocabulary October 2018 - uri? } - postal = element postal { street+, (city | region | code | - country)* } - - street = element street { text } - - city = element city { text } - - region = element region { text } - - code = element code { text } @@ -6833,6 +6833,10 @@ Hoffman Expires April 20, 2019 [Page 122] Internet-Draft The "xml2rfc" version 3 Vocabulary October 2018 + - street = element street { text } + - city = element city { text } + - region = element region { text } + - code = element code { text } - country = element country { text } - phone = element phone { text } - facsimile = element facsimile { text } @@ -6877,10 +6881,6 @@ Internet-Draft The "xml2rfc" version 3 Vocabulary October 2018 + attribute pn { text }?, + (dl | ol | t | ul)+ + } - note = - element note { - - attribute title { text }, - - t+ @@ -6889,6 +6889,10 @@ Hoffman Expires April 20, 2019 [Page 123] Internet-Draft The "xml2rfc" version 3 Vocabulary October 2018 + note = + element note { + - attribute title { text }, + - t+ + attribute xml:base { text }?, + attribute xml:lang { text }?, + attribute title { text }?, @@ -6933,10 +6937,6 @@ Internet-Draft The "xml2rfc" version 3 Vocabulary October 2018 + | dl + | figure + | iref - + | ol - + | sourcecode - + | t - + | table @@ -6945,6 +6945,10 @@ Hoffman Expires April 20, 2019 [Page 124] Internet-Draft The "xml2rfc" version 3 Vocabulary October 2018 + + | ol + + | sourcecode + + | t + + | table + | texttable + | ul)*, section* @@ -6989,10 +6993,6 @@ Internet-Draft The "xml2rfc" version 3 Vocabulary October 2018 + | xref)* + } + aside = - + element aside { - + attribute xml:base { text }?, - + attribute xml:lang { text }?, - + attribute anchor { xsd:ID }?, @@ -7001,6 +7001,10 @@ Hoffman Expires April 20, 2019 [Page 125] Internet-Draft The "xml2rfc" version 3 Vocabulary October 2018 + + element aside { + + attribute xml:base { text }?, + + attribute xml:lang { text }?, + + attribute anchor { xsd:ID }?, + attribute pn { text }?, + (artwork | dl | figure | iref | \list | ol | t | table | ul)* + } @@ -7045,10 +7049,6 @@ Internet-Draft The "xml2rfc" version 3 Vocabulary October 2018 + [ a:defaultValue = "1" ] attribute type { text }?, + [ a:defaultValue = "1" ] attribute start { text }?, + attribute group { text }?, - + [ a:defaultValue = "normal" ] - + attribute spacing { "normal" | "compact" }?, - + attribute pn { text }?, - + li+ @@ -7057,6 +7057,10 @@ Hoffman Expires April 20, 2019 [Page 126] Internet-Draft The "xml2rfc" version 3 Vocabulary October 2018 + + [ a:defaultValue = "normal" ] + + attribute spacing { "normal" | "compact" }?, + + attribute pn { text }?, + + li+ + } + ul = + element ul { @@ -7101,10 +7105,6 @@ Internet-Draft The "xml2rfc" version 3 Vocabulary October 2018 + attribute hanging { "false" | "true" }?, + attribute pn { text }?, + (dt, dd)+ - + } - + dt = - + element dt { - + attribute xml:base { text }?, @@ -7113,6 +7113,10 @@ Hoffman Expires April 20, 2019 [Page 127] Internet-Draft The "xml2rfc" version 3 Vocabulary October 2018 + + } + + dt = + + element dt { + + attribute xml:base { text }?, + attribute xml:lang { text }?, + attribute anchor { xsd:ID }?, + attribute pn { text }?, @@ -7157,10 +7161,6 @@ Internet-Draft The "xml2rfc" version 3 Vocabulary October 2018 - [ a:defaultValue = "false" ] attribute pageno { "true" | - "false" }?, + [ a:defaultValue = "false" ] - + attribute pageno { "true" | "false" }?, - [ a:defaultValue = "default" ] - - attribute format { "counter" | "title" | "none" | "default" - + attribute format { "default" | "title" | "counter" | "none" @@ -7169,6 +7169,10 @@ Hoffman Expires April 20, 2019 [Page 128] Internet-Draft The "xml2rfc" version 3 Vocabulary October 2018 + + attribute pageno { "true" | "false" }?, + [ a:defaultValue = "default" ] + - attribute format { "counter" | "title" | "none" | "default" + + attribute format { "default" | "title" | "counter" | "none" + }?, + attribute derivedContent { text }?, + text @@ -7213,10 +7217,6 @@ Internet-Draft The "xml2rfc" version 3 Vocabulary October 2018 - text + [ a:defaultValue = "true" ] + attribute display { "true" | "false" }?, - + (text | em | eref | relref | strong | sub | sup | tt | xref)* - + } - + tt = - + element tt { @@ -7225,6 +7225,10 @@ Hoffman Expires April 20, 2019 [Page 129] Internet-Draft The "xml2rfc" version 3 Vocabulary October 2018 + + (text | em | eref | relref | strong | sub | sup | tt | xref)* + + } + + tt = + + element tt { + attribute xml:base { text }?, + attribute xml:lang { text }?, + (text @@ -7269,10 +7273,6 @@ Internet-Draft The "xml2rfc" version 3 Vocabulary October 2018 + | sub + | sup + | tt - + | xref)* - + } - + sub = - + element sub { @@ -7281,6 +7281,10 @@ Hoffman Expires April 20, 2019 [Page 130] Internet-Draft The "xml2rfc" version 3 Vocabulary October 2018 + + | xref)* + + } + + sub = + + element sub { + attribute xml:base { text }?, + attribute xml:lang { text }?, + (text @@ -7325,10 +7329,6 @@ Internet-Draft The "xml2rfc" version 3 Vocabulary October 2018 [ a:defaultValue = "0" ] attribute blankLines { text }?, empty } - figure = - element figure { - + attribute xml:base { text }?, - + attribute xml:lang { text }?, @@ -7337,6 +7337,10 @@ Hoffman Expires April 20, 2019 [Page 131] Internet-Draft The "xml2rfc" version 3 Vocabulary October 2018 + figure = + element figure { + + attribute xml:base { text }?, + + attribute xml:lang { text }?, attribute anchor { xsd:ID }?, + attribute pn { text }?, [ a:defaultValue = "" ] attribute title { text }?, @@ -7381,10 +7385,6 @@ Internet-Draft The "xml2rfc" version 3 Vocabulary October 2018 + | iref + | relref + | spanx - + | strong - + | sub - + | sup - + | tt @@ -7393,6 +7393,10 @@ Hoffman Expires April 20, 2019 [Page 132] Internet-Draft The "xml2rfc" version 3 Vocabulary October 2018 + + | strong + + | sub + + | sup + + | tt + | xref)* + } artwork = @@ -7416,7 +7420,9 @@ Internet-Draft The "xml2rfc" version 3 Vocabulary October 2018 + attribute originalSrc { text }?, + (text* | svg) + } - + # https://www.rfc-editor.org/materials/format/SVG-1.2-RFC.rnc + + # TODO: replace with link to RSE site, or provide an inline + + version + + include "svg.rnc" + sourcecode = + element sourcecode { + attribute xml:base { text }?, @@ -7435,12 +7441,6 @@ Internet-Draft The "xml2rfc" version 3 Vocabulary October 2018 + attribute xml:lang { text }?, + attribute anchor { xsd:ID }?, + tr+ - + } - + tbody = - + element tbody { - + attribute xml:base { text }?, - + attribute xml:lang { text }?, - + attribute anchor { xsd:ID }?, @@ -7449,6 +7449,12 @@ Hoffman Expires April 20, 2019 [Page 133] Internet-Draft The "xml2rfc" version 3 Vocabulary October 2018 + + } + + tbody = + + element tbody { + + attribute xml:base { text }?, + + attribute xml:lang { text }?, + + attribute anchor { xsd:ID }?, + tr+ + } + tfoot = @@ -7491,12 +7497,6 @@ Internet-Draft The "xml2rfc" version 3 Vocabulary October 2018 + } + th = + element th { - + attribute xml:base { text }?, - + attribute xml:lang { text }?, - + attribute anchor { xsd:ID }?, - + [ a:defaultValue = "0" ] attribute colspan { text }?, - + [ a:defaultValue = "0" ] attribute rowspan { text }?, - + [ a:defaultValue = "left" ] @@ -7505,6 +7505,12 @@ Hoffman Expires April 20, 2019 [Page 134] Internet-Draft The "xml2rfc" version 3 Vocabulary October 2018 + + attribute xml:base { text }?, + + attribute xml:lang { text }?, + + attribute anchor { xsd:ID }?, + + [ a:defaultValue = "0" ] attribute colspan { text }?, + + [ a:defaultValue = "0" ] attribute rowspan { text }?, + + [ a:defaultValue = "left" ] + attribute align { "left" | "center" | "right" }?, + ((artwork | dl | figure | ol | sourcecode | t | ul)+ + | (text @@ -7547,12 +7553,6 @@ Internet-Draft The "xml2rfc" version 3 Vocabulary October 2018 postamble? } ttcol = - element ttcol { - + attribute xml:base { text }?, - + attribute xml:lang { text }?, - attribute width { text }?, - [ a:defaultValue = "left" ] - attribute align { "left" | "center" | "right" }?, @@ -7561,6 +7561,12 @@ Hoffman Expires April 20, 2019 [Page 135] Internet-Draft The "xml2rfc" version 3 Vocabulary October 2018 + element ttcol { + + attribute xml:base { text }?, + + attribute xml:lang { text }?, + attribute width { text }?, + [ a:defaultValue = "left" ] + attribute align { "left" | "center" | "right" }?, + (cref | eref | iref | xref | text)* + } + c = @@ -7603,12 +7609,6 @@ Internet-Draft The "xml2rfc" version 3 Vocabulary October 2018 - [ a:defaultValue = "References" ] attribute title { text }?, - reference+ + attribute xml:base { text }?, - + attribute xml:lang { text }?, - + attribute pn { text }?, - + attribute anchor { xsd:ID }?, - + attribute title { text }?, - + name?, - + (reference | referencegroup)* @@ -7617,6 +7617,12 @@ Hoffman Expires April 20, 2019 [Page 136] Internet-Draft The "xml2rfc" version 3 Vocabulary October 2018 + + attribute xml:lang { text }?, + + attribute pn { text }?, + + attribute anchor { xsd:ID }?, + + attribute title { text }?, + + name?, + + (reference | referencegroup)* } reference = element reference { @@ -7659,12 +7665,6 @@ Internet-Draft The "xml2rfc" version 3 Vocabulary October 2018 attribute target { text }?, attribute type { text }, attribute octets { text }?, - empty - } - annotation = - - element annotation { (text | xref | eref | iref | cref | - - spanx)* } - - start = rfc @@ -7673,6 +7673,12 @@ Hoffman Expires April 20, 2019 [Page 137] Internet-Draft The "xml2rfc" version 3 Vocabulary October 2018 + empty + } + annotation = + - element annotation { (text | xref | eref | iref | cref | + - spanx)* } + - start = rfc + element annotation { + attribute xml:base { text }?, + attribute xml:lang { text }?, @@ -7716,12 +7722,6 @@ Appendix F. Acknowledgments We also thank Marshall T. Rose for both the original design and the reference implementation of the "xml2rfc" processor. -Index - - A - abbrev attribute - in organization element 41 - Hoffman Expires April 20, 2019 [Page 138] @@ -7729,6 +7729,11 @@ Hoffman Expires April 20, 2019 [Page 138] Internet-Draft The "xml2rfc" version 3 Vocabulary October 2018 +Index + + A + abbrev attribute + in organization element 41 in title element 69 abstract element 11, 98 anchor attribute 11 @@ -7772,11 +7777,6 @@ Internet-Draft The "xml2rfc" version 3 Vocabulary October 2018 in thead element 69 in tr element 70 in ul element 71 - annotation element 12, 98 - inside reference 44 - application/rfc+xml Media Type 83 - area element 13, 98 - inside front 33 @@ -7785,6 +7785,11 @@ Hoffman Expires April 20, 2019 [Page 139] Internet-Draft The "xml2rfc" version 3 Vocabulary October 2018 + annotation element 12, 98 + inside reference 44 + application/rfc+xml Media Type 83 + area element 13, 98 + inside front 33 artwork element 13, 98 align attribute 14 alt attribute 15 @@ -7828,11 +7833,6 @@ Internet-Draft The "xml2rfc" version 3 Vocabulary October 2018 inside section 53 Attributes abbrev 41, 69 - align 14, 32, 66, 68, 79, 81 - alt 15, 32 - anchor 11, 15, 17, 21, 23, 26-27, 29, 32, 36, 39, 44-45, 54, - 58, 63-67, 69-71, 80 - ascii 22, 30, 41-42, 46, 59, 70 @@ -7841,6 +7841,11 @@ Hoffman Expires April 20, 2019 [Page 140] Internet-Draft The "xml2rfc" version 3 Vocabulary October 2018 + align 14, 32, 66, 68, 79, 81 + alt 15, 32 + anchor 11, 15, 17, 21, 23, 26-27, 29, 32, 36, 39, 44-45, 54, + 58, 63-67, 69-71, 80 + ascii 22, 30, 41-42, 46, 59, 70 asciiFullname 18 asciiInitials 18 asciiName 55 @@ -7884,11 +7889,6 @@ Internet-Draft The "xml2rfc" version 3 Vocabulary October 2018 quotedFrom 21 quoteTitle 44 rel 37 - relative 49 - removeInRFC 39, 54 - role 18 - rowspan 66, 69 - section 49 @@ -7897,6 +7897,11 @@ Hoffman Expires April 20, 2019 [Page 141] Internet-Draft The "xml2rfc" version 3 Vocabulary October 2018 + relative 49 + removeInRFC 39, 54 + role 18 + rowspan 66, 69 + section 49 seriesNo 51 sortRefs 51 source 24 @@ -7940,11 +7945,6 @@ Internet-Draft The "xml2rfc" version 3 Vocabulary October 2018 bcp14 element 19, 98 inside annotation 12 inside blockquote 20 - inside c 75 - inside dd 25 - inside dt 28 - inside em 29 - inside li 36 @@ -7953,6 +7953,11 @@ Hoffman Expires April 20, 2019 [Page 142] Internet-Draft The "xml2rfc" version 3 Vocabulary October 2018 + inside c 75 + inside dd 25 + inside dt 28 + inside em 29 + inside li 36 inside postamble 77 inside preamble 78 inside refcontent 43 @@ -7996,11 +8001,6 @@ Internet-Draft The "xml2rfc" version 3 Vocabulary October 2018 in rfc element 50 counter attribute in list element 76 - country element 22, 98 - ascii attribute 22 - inside postal 42 - cref element 22, 98 - anchor attribute 23 @@ -8009,6 +8009,11 @@ Hoffman Expires April 20, 2019 [Page 143] Internet-Draft The "xml2rfc" version 3 Vocabulary October 2018 + country element 22, 98 + ascii attribute 22 + inside postal 42 + cref element 22, 98 + anchor attribute 23 display attribute 23 inside annotation 12 inside blockquote 20 @@ -8052,11 +8057,6 @@ Internet-Draft The "xml2rfc" version 3 Vocabulary October 2018 dl element 27, 98 anchor attribute 27 hanging attribute 27 - inside abstract 11 - inside aside 17 - inside blockquote 20 - inside dd 25 - inside li 35 @@ -8065,6 +8065,11 @@ Hoffman Expires April 20, 2019 [Page 144] Internet-Draft The "xml2rfc" version 3 Vocabulary October 2018 + inside abstract 11 + inside aside 17 + inside blockquote 20 + inside dd 25 + inside li 35 inside note 38 inside section 53 inside td 65 @@ -8108,11 +8113,6 @@ Internet-Draft The "xml2rfc" version 3 Vocabulary October 2018 77-78, 80 facsimile 12, 76 figure 17, 20, 25, 31, 35, 53, 65, 67 - format 44, 76 - front 33, 44, 50 - iref 12, 17, 20, 26, 28-29, 31, 34, 36, 53, 60-62, 64, 66, 68, - 71, 75, 77-78, 80 - keyword 33, 35 @@ -8121,6 +8121,11 @@ Hoffman Expires April 20, 2019 [Page 145] Internet-Draft The "xml2rfc" version 3 Vocabulary October 2018 + format 44, 76 + front 33, 44, 50 + iref 12, 17, 20, 26, 28-29, 31, 34, 36, 53, 60-62, 64, 66, 68, + 71, 75, 77-78, 80 + keyword 33, 35 li 35, 39, 71 link 36, 50 list 17, 62, 76 @@ -8164,11 +8169,6 @@ Internet-Draft The "xml2rfc" version 3 Vocabulary October 2018 title 33, 69 tr 64, 67, 69-70 tt 12, 21, 23, 26, 28-29, 36, 38, 43, 60-63, 66, 68, 70, 75, - 77-78 - ttcol 79-80 - ul 11, 17, 20, 25, 35, 38, 54, 65, 67, 71 - uri 12, 72 - vspace 63, 81 @@ -8177,6 +8177,11 @@ Hoffman Expires April 20, 2019 [Page 146] Internet-Draft The "xml2rfc" version 3 Vocabulary October 2018 + 77-78 + ttcol 79-80 + ul 11, 17, 20, 25, 35, 38, 54, 65, 67, 71 + uri 12, 72 + vspace 63, 81 workgroup 33, 72 xref 12, 21, 23, 26, 28-29, 36, 38, 60-63, 66, 68, 71-72, 75, 77-78, 80 @@ -8220,11 +8225,6 @@ Internet-Draft The "xml2rfc" version 3 Vocabulary October 2018 inside sup 62 inside t 62 inside td 66 - inside th 68 - inside tt 71 - inside ttcol 80 - target attribute 31 - @@ -8233,6 +8233,11 @@ Hoffman Expires April 20, 2019 [Page 147] Internet-Draft The "xml2rfc" version 3 Vocabulary October 2018 + inside th 68 + inside tt 71 + inside ttcol 80 + target attribute 31 + F facsimile element 76, 98 inside address 12 @@ -8276,11 +8281,6 @@ Internet-Draft The "xml2rfc" version 3 Vocabulary October 2018 in dl element 27 hangText attribute in t element 63 - height attribute - in artwork element 15 - in figure element 32 - href attribute - in link element 37 @@ -8289,6 +8289,12 @@ Hoffman Expires April 20, 2019 [Page 148] Internet-Draft The "xml2rfc" version 3 Vocabulary October 2018 + height attribute + in artwork element 15 + in figure element 32 + href attribute + in link element 37 + I indexInclude attribute in rfc element 50 @@ -8331,12 +8337,6 @@ Internet-Draft The "xml2rfc" version 3 Vocabulary October 2018 inside ttcol 80 item attribute 34 primary attribute 34 - subitem attribute 35 - item attribute - in iref element 34 - - K - keepWithNext attribute @@ -8345,6 +8345,12 @@ Hoffman Expires April 20, 2019 [Page 149] Internet-Draft The "xml2rfc" version 3 Vocabulary October 2018 + subitem attribute 35 + item attribute + in iref element 34 + + K + keepWithNext attribute in t element 63 keepWithPrevious attribute in t element 63 @@ -8387,12 +8393,6 @@ Internet-Draft The "xml2rfc" version 3 Vocabulary October 2018 inside section 53 inside table 64 inside texttable 79 - note element 38, 98 - inside front 33 - removeInRFC attribute 39 - title attribute 39 - number attribute - in rfc element 51 @@ -8401,6 +8401,12 @@ Hoffman Expires April 20, 2019 [Page 150] Internet-Draft The "xml2rfc" version 3 Vocabulary October 2018 + note element 38, 98 + inside front 33 + removeInRFC attribute 39 + title attribute 39 + number attribute + in rfc element 51 numbered attribute in section element 54 @@ -8443,12 +8449,6 @@ Internet-Draft The "xml2rfc" version 3 Vocabulary October 2018 inside figure 32 inside texttable 79 preamble element 78, 98 - inside figure 31 - inside texttable 79 - prepTime attribute - in rfc element 51 - primary attribute - in iref element 34 @@ -8457,6 +8457,13 @@ Hoffman Expires April 20, 2019 [Page 151] Internet-Draft The "xml2rfc" version 3 Vocabulary October 2018 + inside figure 31 + inside texttable 79 + prepTime attribute + in rfc element 51 + primary attribute + in iref element 34 + Q quotedFrom attribute in blockquote element 21 @@ -8498,13 +8505,6 @@ Internet-Draft The "xml2rfc" version 3 Vocabulary October 2018 inside name 38 inside strong 60 inside sub 61 - inside sup 62 - inside t 62 - inside td 66 - inside th 68 - inside tt 71 - relative attribute 49 - section attribute 49 @@ -8513,6 +8513,13 @@ Hoffman Expires April 20, 2019 [Page 152] Internet-Draft The "xml2rfc" version 3 Vocabulary October 2018 + inside sup 62 + inside t 62 + inside td 66 + inside th 68 + inside tt 71 + relative attribute 49 + section attribute 49 target attribute 49 removeInRFC attribute in note element 39 @@ -8554,13 +8561,6 @@ Internet-Draft The "xml2rfc" version 3 Vocabulary October 2018 removeInRFC attribute 54 title attribute 54 toc attribute 54 - seriesInfo element 55, 98 - asciiName attribute 55 - asciiValue attribute 55 - inside front 33 - inside reference 44 - name attribute 56 - status attribute 56 @@ -8569,6 +8569,13 @@ Hoffman Expires April 20, 2019 [Page 153] Internet-Draft The "xml2rfc" version 3 Vocabulary October 2018 + seriesInfo element 55, 98 + asciiName attribute 55 + asciiValue attribute 55 + inside front 33 + inside reference 44 + name attribute 56 + status attribute 56 stream attribute 56 value attribute 57 seriesNo attribute @@ -8610,13 +8617,6 @@ Internet-Draft The "xml2rfc" version 3 Vocabulary October 2018 status attribute in seriesInfo element 56 stream attribute - in seriesInfo element 56 - street element 59, 98 - ascii attribute 59 - inside postal 42 - strong element 59, 98 - inside annotation 12 - inside blockquote 20 @@ -8625,6 +8625,13 @@ Hoffman Expires April 20, 2019 [Page 154] Internet-Draft The "xml2rfc" version 3 Vocabulary October 2018 + in seriesInfo element 56 + street element 59, 98 + ascii attribute 59 + inside postal 42 + strong element 59, 98 + inside annotation 12 + inside blockquote 20 inside c 75 inside cref 23 inside dd 26 @@ -8666,13 +8673,6 @@ Internet-Draft The "xml2rfc" version 3 Vocabulary October 2018 submissionType attribute in rfc element 52 sup element 61, 98 - inside annotation 12 - inside blockquote 21 - inside c 75 - inside cref 23 - inside dd 26 - inside dt 28 - inside em 29 @@ -8681,6 +8681,13 @@ Hoffman Expires April 20, 2019 [Page 155] Internet-Draft The "xml2rfc" version 3 Vocabulary October 2018 + inside annotation 12 + inside blockquote 21 + inside c 75 + inside cref 23 + inside dd 26 + inside dt 28 + inside em 29 inside li 36 inside postamble 77 inside preamble 78 @@ -8722,13 +8729,6 @@ Internet-Draft The "xml2rfc" version 3 Vocabulary October 2018 inside section 53 target attribute in displayreference element 26 - in eref element 31 - in format element 76 - in reference element 44 - in relref element 49 - in xref element 75 - tbody element 64, 98 - anchor attribute 65 @@ -8737,6 +8737,13 @@ Hoffman Expires April 20, 2019 [Page 156] Internet-Draft The "xml2rfc" version 3 Vocabulary October 2018 + in eref element 31 + in format element 76 + in reference element 44 + in relref element 49 + in xref element 75 + tbody element 64, 98 + anchor attribute 65 inside table 64 td element 65, 98 align attribute 66 @@ -8778,13 +8785,6 @@ Internet-Draft The "xml2rfc" version 3 Vocabulary October 2018 toc attribute in section element 54 tocDepth attribute - in rfc element 52 - tocInclude attribute - in rfc element 52 - tr element 70, 98 - anchor attribute 70 - inside tbody 64 - inside tfoot 67 @@ -8793,6 +8793,13 @@ Hoffman Expires April 20, 2019 [Page 157] Internet-Draft The "xml2rfc" version 3 Vocabulary October 2018 + in rfc element 52 + tocInclude attribute + in rfc element 52 + tr element 70, 98 + anchor attribute 70 + inside tbody 64 + inside tfoot 67 inside thead 69 tt element 70, 98 inside annotation 12 @@ -8834,13 +8841,6 @@ Internet-Draft The "xml2rfc" version 3 Vocabulary October 2018 inside li 35 inside note 38 inside section 54 - inside td 65 - inside th 67 - spacing attribute 72 - updates attribute - in rfc element 52 - uri element 72, 98 - inside address 12 @@ -8849,6 +8849,14 @@ Hoffman Expires April 20, 2019 [Page 158] Internet-Draft The "xml2rfc" version 3 Vocabulary October 2018 + inside td 65 + inside th 67 + spacing attribute 72 + updates attribute + in rfc element 52 + uri element 72, 98 + inside address 12 + V value attribute in seriesInfo element 57 @@ -8889,14 +8897,6 @@ Internet-Draft The "xml2rfc" version 3 Vocabulary October 2018 inside t 63 inside td 66 inside th 68 - inside tt 71 - inside ttcol 80 - pageno attribute 74 - target attribute 75 - xref formats - counter 73 - default 73 - none 74 @@ -8905,6 +8905,14 @@ Hoffman Expires April 20, 2019 [Page 159] Internet-Draft The "xml2rfc" version 3 Vocabulary October 2018 + inside tt 71 + inside ttcol 80 + pageno attribute 74 + target attribute 75 + xref formats + counter 73 + default 73 + none 74 title 74 Y @@ -8939,14 +8947,6 @@ Author's Address - - - - - - - - diff --git a/draft-iab-rfc7991bis.unpg.txt b/draft-iab-rfc7991bis.unpg.txt index 30dffbf..67776ae 100644 --- a/draft-iab-rfc7991bis.unpg.txt +++ b/draft-iab-rfc7991bis.unpg.txt @@ -5298,7 +5298,9 @@ Appendix C. RELAX NG Schema attribute originalSrc { text }?, (text* | svg) } - # https://www.rfc-editor.org/materials/format/SVG-1.2-RFC.rnc + # TODO: replace with link to RSE site, or provide an inline version + include "svg.rnc" + sourcecode = element sourcecode { attribute xml:base { text }?, @@ -6270,7 +6272,9 @@ Appendix D. Schema Differences from v2 + attribute originalSrc { text }?, + (text* | svg) + } - + # https://www.rfc-editor.org/materials/format/SVG-1.2-RFC.rnc + + # TODO: replace with link to RSE site, or provide an inline + + version + + include "svg.rnc" + sourcecode = + element sourcecode { + attribute xml:base { text }?, diff --git a/draft-iab-rfc7991bis.xml b/draft-iab-rfc7991bis.xml index 22b3b71..9fd1dad 100644 --- a/draft-iab-rfc7991bis.xml +++ b/draft-iab-rfc7991bis.xml @@ -13,7 +13,7 @@ @@ -7415,7 +7415,9 @@ namespace a = "http://relaxng.org/ns/compatibility/annotations/1.0" attribute originalSrc { text }?, (text* | svg) } -# https://www.rfc-editor.org/materials/format/SVG-1.2-RFC.rnc +# TODO: replace with link to RSE site, or provide an inline version +include "svg.rnc" + sourcecode = element sourcecode { attribute xml:base { text }?, @@ -8390,7 +8392,9 @@ to the v3 schema. + attribute originalSrc { text }?, + (text* | svg) + } -+ # https://www.rfc-editor.org/materials/format/SVG-1.2-RFC.rnc ++ # TODO: replace with link to RSE site, or provide an inline ++ version ++ include "svg.rnc" + sourcecode = + element sourcecode { + attribute xml:base { text }?, diff --git a/draft-iab-rfc7991bis.xml.bak b/draft-iab-rfc7991bis.xml.bak new file mode 100644 index 0000000..abd5725 --- /dev/null +++ b/draft-iab-rfc7991bis.xml.bak @@ -0,0 +1,8679 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +]> + + + + The "xml2rfc" version 3 Vocabulary + + ICANN +
paul.hoffman@icann.org
+
+ + + + + + This document defines the "xml2rfc" version 3 vocabulary: an XML-based + language used for writing RFCs and Internet-Drafts. It is heavily derived + from the version 2 vocabulary that is also under discussion. This document + obsoletes the earlier v3 grammar described in RFC 7991, which in turn + obsoleted the v2 grammar in RFC 7749. + + + + + + Discussion of this draft takes place on the xml2rfc-dev@ietf.org + mailing list, which has its home page at + . + + + +
+ + +
+ + This document describes version 3 ("v3") of the "xml2rfc" vocabulary: an XML-based + language ("Extensible Markup Language" ) used for writing RFCs + and Internet-Drafts . + + + This document obsoletes , + obsoleted the version 2 vocabulary ("v2") , which + contains the extended language definition. obsolted + the original version ("v1") . This document directly copies the + material from where possible. + + +The v3 format will be used as part of the new RFC Series format described in . +The new format will be handled by one or more new tools for preparing the XML and +converting it to other representations. +Features of the expected +tools are described in . That section defines some terms +used throughout this document, such as "prep tool" and "formatter". + + + Note that the vocabulary contains certain constructs that might not be used when generating + the final text; however, they can provide useful + data for other uses (such as index generation, populating a keyword database, or + syntax checks). + + +In this document, the term "format" is used when describing types of documents, primarily +XML and HTML. The term "representation" is used when talking about a specific instantiation +of a format, such as an XML document or an HTML document that was created by an XML document. + + +
+ + +Non-interoperable changes in later versions of this specification are likely 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. + + +
+ +
+ +The design criteria of the changes from v2 to v3 are as follows: + + + +The intention is that starting and editing a v3 document will be easier than for a v2 document. + +There will be good v2-to-v3 conversion tools for when an author wants to change versions. + +There are no current plans to make v3 XML the required submission format for drafts or +RFCs. That might happen eventually, but it is likely to be years away. + + + +There is a desire to keep as much of the v2 grammar as makes sense within the above design +criteria and not to make gratuitous changes to the v2 grammar. Another way to say this is +"we would rather encourage backwards compatibility but not be constrained by it." Still, the +goal of starting and editing a v3 document being easier than for a v2 document is more +important than backwards compatibility with v2, given the latter two design criteria. + + +v3 is upwards compatible with v2, meaning that a v2 document is meant to be a valid v3 +document as well. However, some features of v2 are deprecated in v3 in favor of new +elements. Deprecated features are listed in +and are described in . + + +
+ +
+ + +This is a (hopefully) complete list of all the technical changes between +and this document. + + + + +[[ More will appear here in future drafts. ]] + + + +
+ +
+ + +This is a (hopefully) complete list of all the technical changes between +and this document. + + +
+ + + +Add <dl>, <ul>, and <ol> +as new ways to make lists. This is a significant change from v2 in that the child under +these elements is <li>, not <t>. +<li> has a model of either containing one or more +<t> elements, or containing the flowing text normally found in +<t>. These lists are children of <section>s +and other lists +instead of <t>. + +Add <strong>, <em>, +<tt>, <sub>, and <sup> for character formatting. + +Add <aside> for incidental text that will be indented when displayed. + +Add <sourcecode> to differentiate from <artwork>. + +Add <table>, <thead>, <tbody>, <tfoot>, +<tr>, <td>, and <th> +to give table functionality like that in HTML. + +Add <boilerplate> to hold the automatically generated boilerplate text. + +Add <blockquote> to indicate a quotation as in a paragraph-like format. + +Add <name> to sections, notes, figures, and texttables to allow character formatting +(fixed-width font) in their titles and to allow references in the names. + +Add <postalLine>, free text that represents one line of the address. + +Add <displayreference> to allow display of more mnemonic anchor names +for automatically included references. + +Add <refcontent> to allow better control of text in a reference. + +Add <referencegroup> to allow referencing multi-RFC documents such +as STDs and BCPs. + +Add <relref> to allow referencing specific sections or anchors in references. + +Add <link> to point to a resource related to the RFC. + +Add <br> to allow line breaks (but not blank lines) in the generated output +for table cells. + +Add <svg> to allow easy inclusion of SVG drawings in <artwork>. + + + +
+ +
+ + + +Add "sortRefs", "symRefs", "tocDepth", and "tocInclude" attributes to <rfc> +to cover Processing Instructions (PIs) that were in v2 that are still needed in the grammar. +Add "prepTime" to indicate the time that the XML went through a preparation step. +Add "version" to indicate the version of xml2rfc vocabulary used in the document. +Add "scripts" to indicate which scripts are needed to render the document. +Add "expiresDate" when an Internet-Draft expires. + + +Add "ascii" attributes to <email>, +<organization>, <street>, +<city>, <region>, <country>, and <code>. +Also add "asciiFullname", "asciiInitials", and "asciiSurname" to <author>. +This allows an author to specify their information in their native scripts as the primary +entry and still allow the ASCII-equivalent values to appear in the processed documents. + +Add "anchor" attributes to many block elements to allow them to be linked with +<relref> and <xref>. + +Add the "section", "relative", and "sectionFormat" attributes to <xref>. + +Add the "numbered" and "removeInRFC" attributes to <section>. + +Add the "removeInRFC" attribute to <note>. + +Add "pn" to <artwork>, +<aside>, <blockquote>, <boilerplate>, <dt>, +<figure>, <iref>, <li>, <references>, <section>, +<sourcecode>, <t>, +and <table> to hold automatically generated +numbers for items in a section that don't have their own numbering (namely figures and tables). + +Add "display" to <cref> to indicate to tools whether or not +to display the comment. + +Add "keepWithNext" and "keepWithPrevious" to <t> as a hint to tools that +do pagination that they should try to keep the paragraph with the next/previous element. + + + +
+ +
+ +Deprecated elements and attributes are legacy vocabulary from v2 that are supported for input +to v3 tools. They are likely to be removed from those tools in the future. +Deprecated attributes are still listed in , and deprecated elements are listed in . +See for more information on tools and how they will handle +deprecated features. + + + +Deprecate <list> in favor of <dl>, <ul>, +and <ol>. + +Deprecate <spanx>; replace it with <strong>, +<em>, +and <tt>. + +Deprecate <vspace> because the major use for it, +creating pseudo-paragraph-breaks in lists, is now handled properly. + +Deprecate <texttable>, <ttcol>, and <c>; +replace them with the new table elements (<table> and the elements that can be +contained within it). + +Deprecate <facsimile> because it is rarely used. + +Deprecate <format> because it is not useful and has caused surprise for authors in the past. +If the goal is to provide a single URI (Uniform Resource Identifier) for +a reference, use the "target" attribute in <reference> instead. + +Deprecate <preamble> and <postamble> in favor of +simply using <t> before or after the figure. This also deprecates the "align" attribute in +<figure>. + +Deprecate the "title" attribute in <section>, <note>, +<figure>, <references>, and +<texttable> in favor of the new <name>. + +Deprecate the "alt" and "src" attributes in <figure> +because they overlap with the attributes in <artwork>. + +Deprecate the "xml:space" attribute in <artwork> because there was only one useful value. +Deprecate the "height" and "width" attributes in both <artwork> and <figure> +because they are not needed for the new output formats. + +Deprecate the "pageno" attribute in <xref> because it was unused in v2. +Deprecate the "none" values for the "format" attribute in <xref> +because it makes no sense semantically. + + + +
+ +
+ + + +Allow non-ASCII characters in the format; the characters that are actually allowed will +be determined by the RFC Series Editor. + +Allow <artwork> and <sourcecode> to be used on +their own in <section> +(no longer confine them to a figure). + +Give more specifics of handling the "type" attribute in <artwork>. + +Allow <strong>, <em>, +<tt>, <eref>, and +<xref> in <cref>. + +Allow the sub-elements inside a <reference> to be in any order. + +Turn off the autogeneration of anchors in <cref> because there is +no use case for them that cannot be achieved in other ways. + +Allow more than one <artwork>, or more than one +<sourcecode>, in <figure>. + +In <front>, make <date> optional. + +In <date>, add restrictions to the "date" and "year" attributes +when used in the <front> for the document's boilerplate text. + +In <postal>, allow the sub-elements to be in any order. Also allow the inclusion +of the new <postalLine> instead of the older elements. + +In <section>, restrict the names of the anchors that can be used on +some types of sections. + +Make <seriesInfo> a child of <front>, +and deprecated it as a child of <reference>. This also +deprecates some of the attributes from <rfc> and moves +them into <seriesInfo>. + +<t> now only contains non-block elements, so it no longer contains +<figure> elements. + +Do not generate the grammar from a DTD, but instead get it directly from the RELAX Next Generation (RNG) grammar +. + + + +
+ +
+ +
+ + The XML vocabulary here is defined in prose, based on the RELAX NG schema + contained in (specified in + RELAX NG Compact Notation (RNC)). + + + Note that the schema can be used for automated validity + checks, but certain constraints are only described in prose (example: + the conditionally required presence of the "abbrev" attribute). + +
+ +
+ +
+ + The sections below describe all elements and their attributes. + + + Note that attributes not labeled "mandatory" are optional. + + + Many elements have an optional "anchor" attribute. In all cases, the value of the "anchor" + attribute needs to be a valid XML "Name" (), + additionally constrained to US-ASCII characters . Thus, the character repertoire consists of + "A-Z", "a-z", "0-9", "_", "-", ".", and ":", where "0-9", ".", and "-" are disallowed as start characters. + Anchors are described in more detail in . + + + +Tools interpreting the XML described here will collapse horizontal whitespace and line breaks to a +single whitespace (except inside <artwork> and +<sourcecode>) and will trim leading and trailing whitespace. +Tab characters (U+0009) inside <artwork> and <sourcecode> are +prohibited. + + + +Some of the elements have attributes that are not described in this section because those attributes +are specific to the prep tool. People writing tools to process this format should read all of +the appendices for a complete description of these attributes. + + + + Every element in the v3 vocabulary can have an "xml:lang" attribute, an "xml:base" attribute, or + both. The xml:lang attribute specifies the language used in the element. This is sometimes useful + for renderers that display different fonts for ideographic characters used in China and Japan. + The xml:base attribute is sometimes added to an XML file when doing XML-to-XML conversion where the + base file has XInclude attributes (see ). + + + + + + +
+ + <abstract> + + + + + + Contains the Abstract of the document. + See for more information on restrictions for the Abstract. + + This element appears as a child element of <front> (). + + Content model: + + In any order, but at least one of: +
    +
  • + + <dl> elements ()
  • +
  • + + <ol> elements ()
  • +
  • + + <t> elements ()
  • +
  • + + <ul> elements ()
  • +
+ + +
+ "anchor" Attribute + + + + + Document-wide unique identifier for the Abstract. + +
+
+ + +
+ + <address> + + + + + + Provides address information for the author. + + This element appears as a child element of <author> (). + + Content model: + In this order: +
    + +
  1. + + One optional <postal> element ()
  2. + + +
  3. + + One optional <phone> element ()
  4. + + +
  5. + + One optional <facsimile> element ()
  6. + + +
  7. + + One optional <email> element ()
  8. + + +
  9. + + One optional <uri> element ()
  10. + +
+
+ + +
+ + <annotation> + + + + + + Provides additional prose augmenting a bibliographic reference. + This text is intended to be shown after the rest of the generated reference text. + + This element appears as a child element of <reference> (). + + Content model: + + In any order: +
    +
  • Text
  • +
  • + + <bcp14> elements ()
  • +
  • + + <cref> elements ()
  • +
  • + + <em> elements ()
  • +
  • + + <eref> elements ()
  • +
  • + + <iref> elements ()
  • +
  • + + <relref> elements ()
  • +
  • + + <spanx> elements ()
  • +
  • + + <strong> elements ()
  • +
  • + + <sub> elements ()
  • +
  • + + <sup> elements ()
  • +
  • + + <tt> elements ()
  • +
  • + + <xref> elements ()
  • +
+
+ + +
+ + <area> + + + + + + Provides information about the IETF area to which this document relates + (currently not used when generating documents). + + + The value ought to be either the full name or the abbreviation of one of + the IETF areas as listed on . + A list of full names and abbreviations will be kept by the RFC Series Editor. + + This element appears as a child element of <front> (). + + Content model: only text content. +
+ + +
+ + <artwork> + + + + + + This element allows the inclusion of "artwork" in the document. + <artwork> provides + full control of horizontal whitespace and line breaks; thus, it is + used for a variety of things, such as diagrams ("line art") and protocol unit diagrams. + Tab characters (U+0009) inside of this element are prohibited. + + + Alternatively, the "src" attribute allows referencing an external graphics + file, such as a vector drawing in SVG or a bitmap graphic file, using a URI. In this case, the textual + content acts as a fallback for output representations that do not support graphics; + thus, it ought to contain either (1) a "line art" variant of the graphics or (2) + prose that describes the included image in sufficient detail. + + + In , the <artwork> element was also used for source code and formal + languages; in v3, this is now done with <sourcecode>. + + + There are at least five ways to include SVG in artwork in Internet-Drafts: + + Inline, by including all of the SVG in the content of the element, + such as: <artwork type="svg"><svg xmlns="http://www.w3.org/2000/svg..."> + Inline, but using XInclude (see ), + such as: <artwork type="svg"><xi:include href=...> + As a data: URI, such as: <artwork type="svg" + src="data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3..."> + As a URI to an external entity, such as: <artwork type="svg" src="http://www.example.com/..."> + As a local file, such as: <artwork type="svg" src="diagram12.svg"> + + The use of SVG in Internet-Drafts and RFCs is covered in much more detail in + . + + + The above methods for inclusion of SVG art can also be used for including text artwork, but using a data: URI is probably + confusing for text artwork. + + + Formatters that do pagination should attempt to keep artwork on a single page. This is to prevent + artwork that is split across pages from looking like two separate pieces of artwork. + + +See for a description of how to deal with issues of using +"&" and "<" characters in artwork. + + This element appears as a child element of <aside> (), <blockquote> (), <dd> (), <figure> (), <li> (), <section> (), <td> (), and <th> (). + + Content model: + + Either: +
    + +
  • Text
  • + +
+ Or: +
    +
  • + + <svg> elements ()
  • +
+ + +
+ "align" Attribute + + + + + Controls whether the artwork appears left justified (default), centered, + or right justified. + Artwork is aligned relative to the left margin of the document. + + Allowed values: +
    +
  • "left" (default)
  • +
  • "center"
  • +
  • "right"
  • +
+
+ + +
+ "alt" Attribute + + + + + Alternative text description of the artwork (which is more than just a summary or caption). + When the art comes from the "src" attribute + and the format of that artwork supports alternate text, + the alternative text comes from the text of the artwork itself, not from this attribute. + The contents of this attribute are important to readers who are visually impaired, as well as + those reading on devices that cannot show the artwork well, or at all. + +
+ + +
+ "anchor" Attribute + + + + + Document-wide unique identifier for this artwork. + +
+ + +
+ "height" Attribute + + + + + Deprecated. + +
+ + +
+ "name" Attribute + + + + + A filename suitable for the contents (such as for extraction to a local file). + This attribute can + be helpful for other kinds of tools (such as automated syntax checkers, + which work by extracting the artwork). + Note that the "name" attribute does not need to be unique for <artwork> elements in a + document. If multiple <artwork> elements have the same "name" attribute, a processing tool might + assume that the elements are all fragments of a single file, and the tool can + collect those fragments for later processing. + See for a discussion of possible problems with the value of this attribute. + +
+ + +
+ "src" Attribute + + + + + The URI reference of a graphics file , or the name of a file on the local disk. + This can be a "data" URI that contains the contents of the graphics file. + Note that the inclusion of art with the "src" attribute depends on the capabilities of the processing tool + reading the XML document. Tools need to be able to handle the file: URI, and they should + be able to handle http: and https: URIs as well. The prep tool will be able to handle reading the "src" attribute. + + + If no URI scheme is given in the attribute, the attribute is considered to be a local filename + relative to the current directory. + Processing tools must be careful to not accept dangerous values for the filename, particularly those that contain + absolute references outside the current directory. + Document creators should think hard before using relative URIs due to possible later problems if files move + around on the disk. Also, documents should most likely use explicit URI schemes wherever possible. + + + In some cases, the prep tool may remove the "src" attribute after processing its value. + See for a description of this. + + + It is an error to have both a "src" attribute and content in the <artwork> element. + +
+ + +
+ "type" Attribute + + + + + Specifies the type of the artwork. The value of this attribute is free text with + certain values designated as preferred. + + + The preferred values for <artwork> types are: + + ascii-art + binary-art + call-flow + hex-dump + svg + + The RFC Series Editor will maintain a complete list of the preferred values on the RFC Editor + web site, and that list is expected to be updated over time. Thus, a consumer + of v3 XML should not cause a failure when it encounters an unexpected type or no type is specified. + The table will also indicate which type of art can appear in plain-text output (for example, type="svg" cannot). + +
+ + +
+ "width" Attribute + + + + + Deprecated. + +
+ + +
+ "xml:space" Attribute + + + + + Deprecated. + +
+
+ + +
+ + <aside> + + + + + + This element is a container for content that is semantically less important or tangential + to the content that surrounds it. + + This element appears as a child element of <section> (). + + Content model: + + In any order: +
    +
  • + + <artwork> elements ()
  • +
  • + + <dl> elements ()
  • +
  • + + <figure> elements ()
  • +
  • + + <iref> elements ()
  • +
  • + + <list> elements ()
  • +
  • + + <ol> elements ()
  • +
  • + + <t> elements ()
  • +
  • + + <table> elements ()
  • +
  • + + <ul> elements ()
  • +
+ + +
+ "anchor" Attribute + + + + + Document-wide unique identifier for this aside. + +
+
+ + +
+ + <author> + + + + + + Provides information about a document's author. This is used both for + the document itself (at the beginning of the document) and for + referenced documents. + + + The <author> elements contained within the document's <front> element + are used to fill the boilerplate and also to generate the "Author's Address" + section (see ). + + + Note that an "author" can also be just an organization (by not specifying any + of the "name" attributes, but adding the <organization> + child element). + + + Furthermore, the "role" attribute can be used to mark an author as + "editor". This is reflected both on the front page and in the "Author's Address" section, as well as in bibliographic + references. Note that this specification does not define a precise + meaning for the term "editor". + + This element appears as a child element of <front> (). + + Content model: + In this order: +
    + +
  1. + + One optional <organization> element ()
  2. + + +
  3. + + One optional <address> element ()
  4. + +
+ + +
+ "asciiFullname" Attribute + + + + + The ASCII equivalent of the author's full name. + +
+ + +
+ "asciiInitials" Attribute + + + + + The ASCII equivalent of the author's initials, to be used in conjunction with the separately specified asciiSurname. + +
+ + +
+ "asciiSurname" Attribute + + + + + The ASCII equivalent of the author's surname, to be used in conjunction with the separately specified asciiInitials. + +
+ + +
+ "fullname" Attribute + + + + + The full name (used in the automatically generated "Author's Address" section). + Although this attribute is optional, if one or more of the "asciiFullname", "asciiInitials", + or "asciiSurname" attributes have values, the "fullname" attribute is required. + +
+ + +
+ "initials" Attribute + + + + + An abbreviated variant of the given name(s), to be used in conjunction + with the separately specified surname. It usually appears on the front + page, in footers, and in references. + + + Some processors will post-process the value -- for instance, when it only + contains a single letter (in which case they might add a trailing dot). + Relying on this kind of post-processing can lead to results varying + across formatters and thus ought to be avoided. + +
+ + +
+ "role" Attribute + + + + + Specifies the role the author had in creating the document. + + Allowed values: +
    +
  • "editor"
  • +
+
+ + +
+ "surname" Attribute + + + + + The author's surname, to be used in conjunction with the separately + specified initials. It usually appears on the front page, in + footers, and in references. + +
+
+ + +
+ + <back> + + + + + + Contains the "back" part of the document: the references and appendices. In <back>, + <section> elements indicate appendices. + + This element appears as a child element of <rfc> (). + + Content model: + In this order: +
    + +
  1. + + Optional <displayreference> elements ()
  2. + + +
  3. + + Optional <references> elements ()
  4. + + +
  5. + + Optional <section> elements ()
  6. + +
+
+ + +
+ + <bcp14> + + + + + + Marks text that are phrases defined in such as "MUST", "SHOULD NOT", and so on. When shown + in some of the output representations, the text in this element might be highlighted. + The use of this element is optional. + + + This element is only to be used around the actual phrase from BCP 14, not the full + definition of a requirement. For example, it is correct to say + "The packet <bcp14>MUST</bcp14> be dropped.", but it is not correct to say + "<bcp14>The packet MUST be dropped.</bcp14>". + + This element appears as a child element of <annotation> (), <blockquote> (), <dd> (), <dt> (), <em> (), <li> (), <preamble> (), <refcontent> (), <strong> (), <sub> (), <sup> (), <t> (), <td> (), <th> (), and <tt> (). + + Content model: only text content. +
+ + +
+ + <blockquote> + + + + + + Specifies that a block of text is a quotation. + + This element appears as a child element of <section> (). + + Content model: + + Either: +
    +
  • + In any order, but at least one of: +
      +
    • + + <artwork> elements ()
    • +
    • + + <dl> elements ()
    • +
    • + + <figure> elements ()
    • +
    • + + <ol> elements ()
    • +
    • + + <sourcecode> elements ()
    • +
    • + + <t> elements ()
    • +
    • + + <ul> elements ()
    • +
    +
  • +
+ Or: +
    +
  • + In any order, but at least one of: +
      +
    • Text
    • +
    • + + <bcp14> elements ()
    • +
    • + + <cref> elements ()
    • +
    • + + <em> elements ()
    • +
    • + + <eref> elements ()
    • +
    • + + <iref> elements ()
    • +
    • + + <relref> elements ()
    • +
    • + + <strong> elements ()
    • +
    • + + <sub> elements ()
    • +
    • + + <sup> elements ()
    • +
    • + + <tt> elements ()
    • +
    • + + <xref> elements ()
    • +
    +
  • +
+ + +
+ "anchor" Attribute + + + + + Document-wide unique identifier for this quotation. + +
+ + +
+ "cite" Attribute + + + + + The source of the citation. This must be a URI. If the "quotedFrom" attribute is given, this URI will be + used by processing tools as the link for the text of that attribute. + +
+ + +
+ "quotedFrom" Attribute + + + + + Name of person or document the text in this element is quoted from. A formatter should render this + as visible text at the end of the quotation. + +
+
+ + +
+ + <boilerplate> + + + + + + Holds the boilerplate text for the document. This element is filled in by the prep tool. + + + This element contains <section> elements. Every <section> + element in this element must have the "numbered" attribute set to "false". + + This element appears as a child element of <front> (). + + Content model: + + + + + One or more <section> elements () + +
+ + +
+ + <br> + + + + + + Indicates that a line break should be inserted in the generated output by a formatting tool. + Multiple successive instances of this element are ignored. + + This element appears as a child element of <td> () and <th> (). + + Content model: this element does not have any contents. +
+ + +
+ + <city> + + + + + + Gives the city name in a postal address. + + This element appears as a child element of <postal> (). + + Content model: only text content. + + +
+ "ascii" Attribute + + + + + The ASCII equivalent of the city name. + +
+
+ + +
+ + <code> + + + + + + Gives the postal region code. + + This element appears as a child element of <postal> (). + + Content model: only text content. + + +
+ "ascii" Attribute + + + + + The ASCII equivalent of the postal code. + +
+
+ + +
+ + <country> + + + + + + Gives the country name or code in a postal address. + + This element appears as a child element of <postal> (). + + Content model: only text content. + + +
+ "ascii" Attribute + + + + + The ASCII equivalent of the country name. + +
+
+ + +
+ + <cref> + + + + + + Represents a comment. + + + Comments can be used in a document while it is work in progress. They + might appear either inline and visually highlighted, at the end of the document, + or not at all, depending on the formatting tool. + + This element appears as a child element of <annotation> (), <blockquote> (), <c> (), <dd> (), <dt> (), <em> (), <li> (), <name> (), <postamble> (), <preamble> (), <strong> (), <sub> (), <sup> (), <t> (), <td> (), <th> (), <tt> (), and <ttcol> (). + + Content model: + + In any order: +
    +
  • Text
  • +
  • + + <em> elements ()
  • +
  • + + <eref> elements ()
  • +
  • + + <relref> elements ()
  • +
  • + + <strong> elements ()
  • +
  • + + <sub> elements ()
  • +
  • + + <sup> elements ()
  • +
  • + + <tt> elements ()
  • +
  • + + <xref> elements ()
  • +
+ + +
+ "anchor" Attribute + + + + + Document-wide unique identifier for this comment. + +
+ + +
+ "display" Attribute + + + + + Suggests whether or not the comment should be displayed by formatting tools. This might be + set to "false" if you want to keep a comment in a document after the contents of the comment + have already been dealt with. + + Allowed values: +
    +
  • "true" (default)
  • +
  • "false"
  • +
+
+ + +
+ "source" Attribute + + + + + Holds the "source" of a comment, such as the name or the initials + of the person who made the comment. + +
+
+ + +
+ + <date> + + + + + + Provides information about the publication date. + This element is used for two cases: the boilerplate of the document + being produced, and inside bibliographic references that use the <front> element. + + + This element defines the date of publication for the current document (Internet-Draft or RFC). + When producing Internet-Drafts, the prep tool uses this date to compute the expiration date (see ). + When one or more of "year", + "month", or "day" are left out, the prep tool will attempt to use the + current system date if the attributes that are present are consistent with that + date. + + + In dates in <rfc> elements, the month must be a number or a month in English. + The prep tool will silently change text month names to numbers. + Similarly, the year must be a four-digit number. + + + When the prep tool is used to create Internet-Drafts, it will reject a submitted Internet-Draft that has a <date> + element in the boilerplate for itself that is anything other than today. That is, the tool + will not allow a submitter to specify a date other than the day of submission. To avoid this problem, + authors might simply not include a <date> element in the boilerplate. + + + In dates in <reference> elements, the date information can have prose text for the month or year. + For example, vague dates (year="ca. 2000"), date ranges (year="2012-2013"), + non-specific months (month="Second quarter"), and so on are allowed. + + + + This element appears as a child element of <front> (). + + Content model: this element does not have any contents. + + +
+ "day" Attribute + + + + + The day of publication. + +
+ + +
+ "month" Attribute + + + + + The month or months of publication. + +
+ + +
+ "year" Attribute + + + + + The year or years of publication. + +
+
+ + +
+ + <dd> + + + + + + The definition part of an entry in a definition list. + + This element appears as a child element of <dl> (). + + Content model: + + Either: +
    +
  • + In any order, but at least one of: +
      +
    • + + <artwork> elements ()
    • +
    • + + <dl> elements ()
    • +
    • + + <figure> elements ()
    • +
    • + + <ol> elements ()
    • +
    • + + <sourcecode> elements ()
    • +
    • + + <t> elements ()
    • +
    • + + <ul> elements ()
    • +
    +
  • +
+ Or: +
    +
  • + In any order, but at least one of: +
      +
    • Text
    • +
    • + + <bcp14> elements ()
    • +
    • + + <cref> elements ()
    • +
    • + + <em> elements ()
    • +
    • + + <eref> elements ()
    • +
    • + + <iref> elements ()
    • +
    • + + <relref> elements ()
    • +
    • + + <strong> elements ()
    • +
    • + + <sub> elements ()
    • +
    • + + <sup> elements ()
    • +
    • + + <tt> elements ()
    • +
    • + + <xref> elements ()
    • +
    +
  • +
+ + +
+ "anchor" Attribute + + + + + Document-wide unique identifier for this definition. + +
+
+ + +
+ + <displayreference> + + + + + + This element gives a mapping between the anchor of a reference and a name that will be displayed instead. + This allows authors to display more mnemonic anchor names for automatically included references. + The mapping in this element only applies to <xref> elements whose format is "default". + For example, if the reference uses the anchor "RFC6949", the following would cause that anchor in the body + of displayed documents to be "RFC-dev": +
+ +<displayreference target="RFC6949" to="RFC-dev"/> + +
+
+ + If a reference section is sorted, this element changes the sort order. + + + It is expected that this element will only be valid in input documents. It will likely be removed by prep + tools when preparing a final version after those tools have replaced all of the associated anchors, targets, and "derivedContent" + attributes. + + This element appears as a child element of <back> (). + + Content model: this element does not have any contents. + + +
+ "target" Attribute (Mandatory) + + + + + + This attribute must be the name of an anchor in a <reference> or <referencegroup> element. + +
+ + +
+ "to" Attribute (Mandatory) + + + + + + This attribute is a name that will be displayed as the anchor instead of the anchor that is given + in the <reference> element. The string given must start with one of the following + characters: 0-9, a-z, or A-Z. The other characters in the string must be 0-9, a-z, A-Z, "-", ".", or "_". + +
+
+ + +
+ + <dl> + + + + + + A definition list. Each entry has a pair of elements: a term (<dt>) and + a definition (<dd>). + (This is slightly different and simpler than the model used in HTML, which allows for multiple terms for + a single definition.) + + This element appears as a child element of <abstract> (), <aside> (), <blockquote> (), <dd> (), <li> (), <note> (), <section> (), <td> (), and <th> (). + + Content model: + + + One or more sequences of: + +
    + +
  1. + + One <dt> element
  2. + +
  3. + + One <dd> element
  4. + +
+ + +
+ "anchor" Attribute + + + + + Document-wide unique identifier for the list. + +
+ + +
+ "hanging" Attribute + + + + + The "hanging" attribute defines whether or not the term appears on the same line as the definition. + hanging="true" indicates that the term is to the left of the definition, while hanging="false" + indicates that the term will be on a separate line. + + Allowed values: +
    +
  • "false"
  • +
  • "true" (default)
  • +
+
+ + +
+ "spacing" Attribute + + + + + Defines whether or not there is a blank line between entries. spacing="normal" + indicates a single blank line, while spacing="compact" indicates no space between. + + Allowed values: +
    +
  • "normal" (default)
  • +
  • "compact"
  • +
+
+
+ + +
+ + <dt> + + + + + + The term being defined in a definition list. + + This element appears as a child element of <dl> (). + + Content model: + + In any order: +
    +
  • Text
  • +
  • + + <bcp14> elements ()
  • +
  • + + <cref> elements ()
  • +
  • + + <em> elements ()
  • +
  • + + <eref> elements ()
  • +
  • + + <iref> elements ()
  • +
  • + + <relref> elements ()
  • +
  • + + <strong> elements ()
  • +
  • + + <sub> elements ()
  • +
  • + + <sup> elements ()
  • +
  • + + <tt> elements ()
  • +
  • + + <xref> elements ()
  • +
+ + +
+ "anchor" Attribute + + + + + Document-wide unique identifier for this term. + +
+
+ + +
+ + <em> + + + + + + Indicates text that is semantically emphasized. Text enclosed within this element will be displayed as italic after processing. + This element can be combined with other character formatting elements, and the + formatting will be additive. + + This element appears as a child element of <annotation> (), <blockquote> (), <cref> (), <dd> (), <dt> (), <li> (), <preamble> (), <refcontent> (), <strong> (), <sub> (), <sup> (), <t> (), <td> (), <th> (), and <tt> (). + + Content model: + + In any order: +
    +
  • Text
  • +
  • + + <bcp14> elements ()
  • +
  • + + <cref> elements ()
  • +
  • + + <eref> elements ()
  • +
  • + + <iref> elements ()
  • +
  • + + <relref> elements ()
  • +
  • + + <strong> elements ()
  • +
  • + + <sub> elements ()
  • +
  • + + <sup> elements ()
  • +
  • + + <tt> elements ()
  • +
  • + + <xref> elements ()
  • +
+
+ + +
+ + <email> + + + + + + Provides an email address. + + + The value is expected to be the addr-spec defined in . + + This element appears as a child element of <address> (). + + Content model: only text content. + + +
+ "ascii" Attribute + + + + + The ASCII equivalent of the author's email address. This is only used if the email address has + any internationalized components. + +
+
+ + +
+ + <eref> + + + + + + Represents an "external" link (as specified in the "target" attribute). + This is useful for embedding URIs in the body of a document. + + + If the <eref> element has non-empty text content, formatters should use the content as the displayed text that is linked. + Otherwise, the formatter should use the value of the "target" attribute as the displayed text. + Formatters will link the displayed text to the value of the "target" attribute in a manner appropriate for the output format. + + + For example, with an input of: +
+ + This is described at + <eref target="http://www.example.com/reports/r12.html"/>. + +
+
+ + An HTML formatter might generate: +
+ + This is described at + <a href="http://www.example.com/reports/r12.html"> + http://www.example.com/reports/r12.html</a>. + +
+
+ + With an input of: +
+ + This is described + <eref target="http://www.example.com/reports/r12.html"> + in this interesting report</eref>. + +
+
+ + An HTML formatter might generate: +
+ + This is described + <a href="http://www.example.com/reports/r12.html"> + in this interesting report</a>. + +
+
+ This element appears as a child element of <annotation> (), <blockquote> (), <c> (), <cref> (), <dd> (), <dt> (), <em> (), <li> (), <name> (), <postamble> (), <preamble> (), <strong> (), <sub> (), <sup> (), <t> (), <td> (), <th> (), <tt> (), and <ttcol> (). + + Content model: only text content. + + +
+ "target" Attribute (Mandatory) + + + + + + URI of the link target . + This must begin with a scheme name (such as "https://") and thus not be relative to the URL of the current document. + +
+
+ + +
+ + <figure> + + + + + + Contains a figure with a caption with the figure number. + If the element contains a <name> element, the caption will also show that name. + + This element appears as a child element of <aside> (), <blockquote> (), <dd> (), <li> (), <section> (), <td> (), and <th> (). + + Content model: + In this order: +
    + +
  1. + + One optional <name> element ()
  2. + + +
  3. + + Optional <iref> elements ()
  4. + + +
  5. + + One optional <preamble> element ()
  6. + +
  7. + In any order, but at least one of: +
      +
    • + + <artwork> elements ()
    • +
    • + + <sourcecode> elements ()
    • +
    +
  8. + +
  9. + + One optional <postamble> element ()
  10. + +
+ + +
+ "align" Attribute + + + + + Deprecated. + + + Note: does not affect title or <artwork> alignment. + + Allowed values: +
    +
  • "left" (default)
  • +
  • "center"
  • +
  • "right"
  • +
+
+ + +
+ "alt" Attribute + + + + + Deprecated. If the goal is to provide a single URI for + a reference, use the "target" attribute in <reference> instead. + +
+ + +
+ "anchor" Attribute + + + + + Document-wide unique identifier for this figure. + +
+ + +
+ "height" Attribute + + + + + Deprecated. + +
+ + +
+ "src" Attribute + + + + + Deprecated. + +
+ + +
+ "suppress-title" Attribute + + + + + Deprecated. + + Allowed values: +
    +
  • "true"
  • +
  • "false" (default)
  • +
+
+ + +
+ "title" Attribute + + + + + Deprecated. Use <name> instead. + +
+ + +
+ "width" Attribute + + + + + Deprecated. + +
+
+ + +
+ + <front> + + + + + + Represents the "front matter": metadata (such as author information), + the Abstract, and additional notes. + + + A <front> element may have more than one <seriesInfo> element. + A <seriesInfo> element determines the document number (for RFCs) + or name (for Internet-Drafts). + Another <seriesInfo> element determines the "maturity level" + (defined in ), using values of "std" for + "Standards Track", "bcp" for "BCP", "info" for "Informational", "exp" for "Experimental", and + "historic" for "Historic". + The "name" attributes of those + multiple <seriesInfo> elements interact as described in . + + This element appears as a child element of <reference> () and <rfc> (). + + Content model: + In this order: +
    +
  1. + + One <title> element ()
  2. + +
  3. + + Optional <seriesInfo> elements ()
  4. + + +
  5. + + One or more <author> elements ()
  6. + + +
  7. + + One optional <date> element ()
  8. + + +
  9. + + Optional <area> elements ()
  10. + + +
  11. + + Optional <workgroup> elements ()
  12. + + +
  13. + + Optional <keyword> elements ()
  14. + + +
  15. + + One optional <abstract> element ()
  16. + + +
  17. + + Optional <note> elements ()
  18. + + +
  19. + + One optional <boilerplate> element ()
  20. + +
+
+ + +
+ + <iref> + + + + + + Provides terms for the document's index. + + + Index entries can be either regular entries (when just the "item" + attribute is given) or nested entries (by specifying "subitem" as well), + grouped under a regular entry. + + + Index entries generally refer to the exact place where the <iref> element + occurred. An exception is the occurrence as a child element of + <section>, in which case the whole section is + considered to be relevant for that index entry. In some formats, index + entries of this type might be displayed as ranges. + + + When the prep tool is creating index content, it collects the items in a case-sensitive fashion + for both the item and subitem level. + + This element appears as a child element of <annotation> (), <aside> (), <blockquote> (), <c> (), <dd> (), <dt> (), <em> (), <figure> (), <li> (), <postamble> (), <preamble> (), <section> (), <strong> (), <sub> (), <sup> (), <t> (), <table> (), <td> (), <th> (), <tt> (), and <ttcol> (). + + Content model: this element does not have any contents. + + +
+ "item" Attribute (Mandatory) + + + + + + The item to include. + +
+ + +
+ "primary" Attribute + + + + + Setting this to "true" declares the occurrence as "primary", + which might cause it to be highlighted in the index. + There is no restriction on the number of occurrences that can be "primary". + + Allowed values: +
    +
  • "true"
  • +
  • "false" (default)
  • +
+
+ + +
+ "subitem" Attribute + + + + + The subitem to include. + +
+
+ + +
+ + <keyword> + + + + + + Specifies a keyword applicable to the document. + + + Note that each element should only contain a single keyword; for multiple keywords, the + element can simply be repeated. + + + Keywords are used both in the RFC Index and in the metadata of generated + document representations. + + This element appears as a child element of <front> (). + + Content model: only text content. +
+ + +
+ + <li> + + + + + + A list element, used in <ol> and <ul>. + + This element appears as a child element of <ol> () and <ul> (). + + Content model: + + Either: +
    +
  • + In any order, but at least one of: +
      +
    • + + <artwork> elements ()
    • +
    • + + <dl> elements ()
    • +
    • + + <figure> elements ()
    • +
    • + + <ol> elements ()
    • +
    • + + <sourcecode> elements ()
    • +
    • + + <t> elements ()
    • +
    • + + <ul> elements ()
    • +
    +
  • +
+ Or: +
    +
  • + In any order, but at least one of: +
      +
    • Text
    • +
    • + + <bcp14> elements ()
    • +
    • + + <cref> elements ()
    • +
    • + + <em> elements ()
    • +
    • + + <eref> elements ()
    • +
    • + + <iref> elements ()
    • +
    • + + <relref> elements ()
    • +
    • + + <strong> elements ()
    • +
    • + + <sub> elements ()
    • +
    • + + <sup> elements ()
    • +
    • + + <tt> elements ()
    • +
    • + + <xref> elements ()
    • +
    +
  • +
+ + +
+ "anchor" Attribute + + + + + Document-wide unique identifier for this list item. + +
+
+ + +
+ + <link> + + + + + + A link to an external document that is related to the RFC. + + + The following are the supported types of external documents that can be pointed to in + a <link> element: + + + The current International Standard Serial Number (ISSN) for the RFC Series. + The value for the "rel" attribute is "item". + The link should use the form "urn:issn:". + + + The Digital Object Identifier (DOI) for this document. + The value for the "rel" attribute is "describedBy". + The link should use the form specified in ; + this is expected to change in the future. + + + The Internet-Draft that was submitted to the RFC Editor to become the published RFC. + The value for the "rel" attribute is "convertedFrom". + The link should be to an IETF-controlled web site that retains copies of Internet-Drafts. + + + A representation of the document offered by the document author. + The value for the "rel" attribute is "alternate". + The link can be to a personally run web site. + + + + + In RFC production mode, the prep tool needs to check the values for <link> before an RFC is published. + In draft production mode, the prep tool might remove some <link> elements during the draft submission process. + + This element appears as a child element of <rfc> (). + + Content model: this element does not have any contents. + + +
+ "href" Attribute (Mandatory) + + + + + + The URI of the external document. + +
+ + +
+ "rel" Attribute + + + + + The relationship of the external document to this one. The relationships are taken from + the "Link Relations" registry maintained by IANA . + +
+
+ + +
+ + <middle> + + + + + + Represents the main content of the document. + + This element appears as a child element of <rfc> (). + + Content model: + + + + + One or more <section> elements () + +
+ + +
+ + <name> + + + + + + The name of the section, note, figure, or texttable. This name can + indicate markup of flowing text (for example, including references or + making some characters use a fixed-width font). + + This element appears as a child element of <figure> (), <note> (), <references> (), <section> (), <table> (), and <texttable> (). + + Content model: + + In any order: +
    +
  • Text
  • +
  • + + <cref> elements ()
  • +
  • + + <eref> elements ()
  • +
  • + + <relref> elements ()
  • +
  • + + <tt> elements ()
  • +
  • + + <xref> elements ()
  • +
+
+ + +
+ + <note> + + + + + + Creates an unnumbered, titled block of text that appears after the Abstract. + + + It is usually used for additional information to reviewers (Working + Group information, mailing list, ...) or for additional publication + information such as "IESG Notes". + + This element appears as a child element of <front> (). + + Content model: + In this order: +
    + +
  1. + + One optional <name> element ()
  2. + +
  3. + In any order, but at least one of: +
      +
    • + + <dl> elements ()
    • +
    • + + <ol> elements ()
    • +
    • + + <t> elements ()
    • +
    • + + <ul> elements ()
    • +
    +
  4. +
+ + +
+ "removeInRFC" Attribute + + + + + If set to "true", this note is marked in the prep tool with text indicating that it should be + removed before the document is published as an RFC. + That text will be "This note is to be removed before publishing as an RFC." + + Allowed values: +
    +
  • "true"
  • +
  • "false" (default)
  • +
+
+ + +
+ "title" Attribute + + + + + Deprecated. Use <name> instead. + +
+
+ + +
+ + <ol> + + + + + + An ordered list. The labels on the items will be either a number or a letter, depending + on the value of the style attribute. + + This element appears as a child element of <abstract> (), <aside> (), <blockquote> (), <dd> (), <li> (), <note> (), <section> (), <td> (), and <th> (). + + Content model: + + + + + One or more <li> elements () + + + +
+ "anchor" Attribute + + + + + Document-wide unique identifier for the list. + +
+ + +
+ "group" Attribute + + + + + When the prep tool sees an <ol> element with a "group" attribute that has already been seen, + it continues the numbering of the list from where the previous list with the same + group name left off. + If an <ol> element has both a "group" attribute and a "start" attribute, the group's + numbering is reset to the given start value. + +
+ + +
+ "spacing" Attribute + + + + + Defines whether or not there is a blank line between entries. spacing="normal" + indicates a single blank line, while spacing="compact" indicates no space between. + + Allowed values: +
    +
  • "normal" (default)
  • +
  • "compact"
  • +
+
+ + +
+ "start" Attribute + + + + + The ordinal value at which to start the list. This defaults to "1" and must be an integer of 0 or greater. + +
+ + +
+ "type" Attribute + + + + + The type of the labels on list items. If the length of the type value is 1, the + meaning is the same as it is for HTML: + + Lowercase letters (a, b, c, ...) + Uppercase letters (A, B, C, ...) + Decimal numbers (1, 2, 3, ...) + Lowercase Roman numerals (i, ii, iii, ...) + Uppercase Roman numerals (I, II, III, ...) + + For types "a" and "A", after the 26th entry, the numbering starts at "aa"/"AA", then + "ab"/"AB", and so on. + + + If the length of the type value is greater than 1, the value must contain a + percent-encoded indicator and other text. + The value is a free-form text that allows counter values to be + inserted using a "percent-letter" format. For instance, "[REQ%d]" + generates labels of the form "[REQ1]", where "%d" inserts the + item number as a decimal number. + + + The following formats are supported: + + Lowercase letters (a, b, c, ...) + Uppercase letters (A, B, C, ...) + Decimal numbers (1, 2, 3, ...) + Lowercase Roman numerals (i, ii, iii, ...) + Uppercase Roman numerals (I, II, III, ...) + Represents a percent sign + + Other formats are reserved for future use. Only one percent encoding other than "%%" is allowed in a type string. + + + It is an error for the type string to be empty. + For bulleted lists, use the <ul> element. + For lists that have neither bullets nor numbers, use the <ul> element with the + 'empty="true"' attribute. + + + If no type attribute is given, the default type is the same as "type='%d.'". + +
+
+ + +
+ + <organization> + + + + + + Specifies the affiliation of an author. + + + This information appears both in the "Author's Address" section and + on the front page (see for more information). + If the value is long, an abbreviated variant can be specified in the + "abbrev" attribute. + + This element appears as a child element of <author> (). + + Content model: only text content. + + +
+ "abbrev" Attribute + + + + + Abbreviated variant. + +
+ + +
+ "ascii" Attribute + + + + + The ASCII equivalent of the organization's name. + +
+
+ + +
+ + <phone> + + + + + + Represents a phone number. + + + The value is expected to be the scheme-specific part of a "tel" URI + (and so does not include the prefix "tel:"), using the "global-number-digits" + syntax. See + for details. + + This element appears as a child element of <address> (). + + Content model: only text content. +
+ + +
+ + <postal> + + + + + + Contains optional child elements providing postal information. These elements will be + displayed in an order that is specific to formatters. + A postal address can contain only a set of <street>, <city>, + <region>, <code>, and <country> + elements, or only an ordered set of <postalLine> elements, but not both. + + This element appears as a child element of <address> (). + + Content model: + + Either: +
    +
  • + In any order: +
      +
    • + + <city> elements ()
    • +
    • + + <code> elements ()
    • +
    • + + <country> elements ()
    • +
    • + + <region> elements ()
    • +
    • + + <street> elements ()
    • +
    +
  • +
+ Or: +
    + +
  • + + One or more <postalLine> elements ()
  • + +
+
+ + +
+ + <postalLine> + + + + + + Represents one line of a postal address. When more than one <postalLine> is given, the prep tool + emits them in the order given. + + This element appears as a child element of <postal> (). + + Content model: only text content. + + +
+ "ascii" Attribute + + + + + The ASCII equivalent of the text in the address line. + +
+
+ + +
+ + <refcontent> + + + + + + Text that should appear between the title and the date of a reference. The purpose + of this element is to prevent the need to abuse <seriesInfo> to + get such text in a reference. + + + For example: +
+ +<reference anchor="April1"> + <front> + <title>On Being A Fool</title> + <author initials="K." surname="Phunny" fullname="Knot Phunny"/> + <date year="2000" month="April"/> + </front> + <refcontent>Self-published pamphlet</refcontent> +</reference> + +
+ would render as: +
+ + [April1] Phunny, K., "On Being A Fool", Self-published + pamphlet, April 2000. + +
+
+ This element appears as a child element of <reference> (). + + Content model: + + In any order: +
    +
  • Text
  • +
  • + + <bcp14> elements ()
  • +
  • + + <em> elements ()
  • +
  • + + <strong> elements ()
  • +
  • + + <sub> elements ()
  • +
  • + + <sup> elements ()
  • +
  • + + <tt> elements ()
  • +
+
+ + +
+ + <reference> + + + + + + Represents a bibliographic reference. + + This element appears as a child element of <referencegroup> () and <references> (). + + Content model: + In this order: +
    +
  1. + + One <front> element ()
  2. +
  3. + In any order: +
      +
    • + + <annotation> elements ()
    • +
    • + + <format> elements ()
    • +
    • + + <refcontent> elements ()
    • +
    • + + <seriesInfo> elements (; deprecated in this context)
    • +
    +
  4. +
+ + +
+ "anchor" Attribute (Mandatory) + + + + + + Document-wide unique identifier for this reference. Usually, this will + be used both to "label" the reference in the "References" section and + as an identifier in links to this reference entry. + +
+ + +
+ "quoteTitle" Attribute + + + + + Specifies whether or not the title in the reference should be quoted. + This can be used to prevent quoting, such as on errata. + + Allowed values: +
    +
  • "true" (default)
  • +
  • "false"
  • +
+
+ + +
+ "target" Attribute + + + + + Holds the URI for the reference. + +
+
+ + +
+ + <referencegroup> + + + + + + Represents a list of bibliographic references that will be represented as a single reference. + This is most often used to reference STDs and BCPs, where a single reference + (such as "BCP 9") may encompass more than one RFC. + + This element appears as a child element of <references> (). + + Content model: + + + + + One or more <reference> elements () + + + +
+ "anchor" Attribute (Mandatory) + + + + + + Document-wide unique identifier for this reference group. Usually, this will + be used both to "label" the reference group in the "References" section and + as an identifier in links to this reference entry. + +
+
+ + +
+ + <references> + + + + + + Contains a set of bibliographic references. + + + In the early days of the RFC Series, there was only one "References" section per RFC. This convention + was later changed to group references into two sets, "Normative" and "Informative", + as described in . + This vocabulary supports the split with the <name> child element. + In general, the title should be either "Normative References" or "Informative References". + + This element appears as a child element of <back> (). + + Content model: + In this order: +
    + +
  1. + + One optional <name> element ()
  2. + +
  3. + In any order: +
      +
    • + + <reference> elements ()
    • +
    • + + <referencegroup> elements ()
    • +
    +
  4. +
+ + +
+ "anchor" Attribute + + + + + An optional user-supplied identifier for this set of references. + +
+ + +
+ "title" Attribute + + + + + Deprecated. Use <name> instead. + +
+
+ + +
+ + <region> + + + + + + Provides the region name in a postal address. + + This element appears as a child element of <postal> (). + + Content model: only text content. + + +
+ "ascii" Attribute + + + + + The ASCII equivalent of the region name. + +
+
+ + +
+ + <relref> + + + + + + Represents a link to a specific part of a document that appears in a <reference> element. + Formatters that have links (such as HTML and PDF) render <relref> elements as external hyperlinks + to the specified part of the reference, creating the link target by combining the base URI from the + <reference> element with the "relative" attribute from this element. + The "target" attribute is required, and it must be the anchor of a <reference> element. + + + The "section" attribute is required, and the "relative" attribute is optional. + If the reference is not an RFC or Internet-Draft that is in the v3 format, the element needs to have a "relative" attribute; + in this case, the value of the "section" attribute is ignored. + + + An example of the <relref> element with text content might be: +
+ + See + <relref section="2.3" target="RFC9999" displayFormat="bare"> + the protocol overview</relref> + for more information. + +
+
+ + An HTML formatter might generate: +
+ + See + <a href="http://www.rfc-editor.org/rfc/rfc9999.html#s-2.3"> + the protocol overview</a> + for more information. + +
+ Note that the URL in the above example might be different when the RFC Editor deploys the v3 format. +
+ + This element appears as a child element of <annotation> (), <blockquote> (), <cref> (), <dd> (), <dt> (), <em> (), <li> (), <name> (), <preamble> (), <strong> (), <sub> (), <sup> (), <t> (), <td> (), <th> (), and <tt> (). + + Content model: only text content. + + +
+ "displayFormat" Attribute + + + + + This attribute is used to signal formatters what the desired format of the relative reference should be. + Formatters for document types that have linking capability should wrap each part of the displayed text in hyperlinks. + If there is content in the <relref> element, formatters will ignore the value of this attribute. + + + "of" + + + A formatter should display the relative reference as the word "Section" followed by a space, the contents of the "section" attribute + followed by a space, the word "of", another space, and the value from the "target" attribute enclosed in square brackets. + + + For example, with an input of: +
+ + See + <relref section="2.3" target="RFC9999" displayFormat="of"/> + for an overview. + +
+
+ + An HTML formatter might generate: +
+ + See + <a href="http://www.rfc-editor.org/info/rfc9999#s-2.3"> + Section 2.3</a> of + [<a href="#RFC9999">RFC9999</a>] + for an overview. + +
+
+ + Note that "displayFormat='of'" is the default for <relref>, so it does not need to be given in + a <relref> element if that format is desired. + +
+
+ + "comma" + + + A formatter should display the relative reference as the value from the "target" attribute enclosed in square brackets, + a comma, a space, the word "Section" followed by a space, and the "section" attribute. + + + For example, with an input of: +
+ + See + <relref section="2.3" target="RFC9999" displayFormat="comma"/>, + for an overview. + +
+
+ + An HTML formatter might generate: +
+ + See + [<a href="#RFC9999">RFC9999</a>], + <a href="http://www.rfc-editor.org/info/rfc9999#s-2.3"> + Section 2.3</a>, for an overview. + +
+
+
+
+ + "parens" + + + A formatter should display the relative reference as the value from the "target" attribute enclosed in square brackets, + a space, a left parenthesis, the word "Section" followed by a space, the "section" attribute, and a right parenthesis. + + + For example, with an input of: +
+ + See + <relref section="2.3" target="RFC9999" displayFormat="parens"/> + for an overview. + +
+
+ + An HTML formatter might generate: +
+ + See + [<a href="#RFC9999">RFC9999</a>] + (<a href="http://www.rfc-editor.org/info/rfc9999#s-2.3"> + Section 2.3</a>) + for an overview. + +
+
+
+
+ + "bare" + + + A formatter should display the relative reference as the contents of the "section" attribute + and nothing else. This is useful when there are multiple relative references to a single base reference. + + + For example: +
+ + See Sections + <relref section="2.3" target="RFC9999" displayFormat="bare"/> + and + <relref section="2.4" target="RFC9999" displayFormat="of"/> + for an overview. + +
+
+ + An HTML formatter might generate: +
+ + See Sections + <a href="http://www.rfc-editor.org/info/rfc9999#s-2.3"> + 2.3</a> + and + <a href="http://www.rfc-editor.org/info/rfc9999#s-2.4"> + Section 2.4</a> of + [<a href="#RFC9999">RFC9999</a>] + for an overview. + +
+
+
+
+ Allowed values: +
    +
  • "of" (default)
  • +
  • "comma"
  • +
  • "parens"
  • +
  • "bare"
  • +
+
+ + +
+ "relative" Attribute + + + + + Specifies a relative reference from the URI in the target reference. + This value must include whatever leading character is needed to create + the relative reference; typically, this is "#" for HTML documents. + +
+ + +
+ "section" Attribute (Mandatory) + + + + + + Specifies a section of the target reference. + If the reference is not an RFC or Internet-Draft in the v3 format, it is an error. + +
+ + +
+ "target" Attribute (Mandatory) + + + + + + The anchor of the reference for this element. If this value is not an anchor to a + <reference> or <referencegroup> element, it is an error. + If the reference at the target has no URI, it is an error. + +
+
+ + +
+ + <rfc> + + + + + + This is the root element of the xml2rfc vocabulary. + + + Content model: + In this order: +
    + +
  1. + + Optional <link> elements ()
  2. + +
  3. + + One <front> element ()
  4. +
  5. + + One <middle> element ()
  6. + +
  7. + + One optional <back> element ()
  8. + +
+ + +
+ "category" Attribute + + + + + Deprecated; instead, use the "name" attribute in <seriesInfo>. + +
+ + +
+ "consensus" Attribute + + + + + Affects the generated boilerplate. Note that the values of "no" and "yes" are deprecated and are + replaced by "false" (the default) and "true". + + + See for more information. + + Allowed values: +
    +
  • "no"
  • +
  • "yes"
  • +
  • "false" (default)
  • +
  • "true"
  • +
+
+ + +
+ "docName" Attribute + + + + + Deprecated; instead, use the "value" attribute in <seriesInfo>. + +
+ + +
+ "FAKEATTRIBUTE" Attribute + + + + + attribute description missing + +
+ + +
+ "indexInclude" Attribute + + + + + Specifies whether or not a formatter is requested to include an index in generated files. + If the source file has no <iref> elements, an index is + never generated. This option is useful for generating documents where the + source document has <iref> elements but the author no longer + wants an index. + + Allowed values: +
    +
  • "true" (default)
  • +
  • "false"
  • +
+
+ + +
+ "ipr" Attribute + + + + + Represents the Intellectual Property status of the document. + See for details. + +
+ + +
+ "iprExtract" Attribute + + + + + Identifies a single section within the document for which extraction "as is" + is explicitly allowed (only relevant for historic values of the "ipr" + attribute). + +
+ + +
+ "number" Attribute + + + + + Deprecated; instead, use the "value" attribute in <seriesInfo>. + +
+ + +
+ "obsoletes" Attribute + + + + + A comma-separated list of RFC numbers or + Internet-Draft names. + + + The prep tool will parse the attribute value so that incorrect + references can be detected. + +
+ + +
+ "prepTime" Attribute + + + + + The date that the XML was processed by a prep tool. + This is included in the XML file just before it is saved to disk. + The value is formatted using the "date-time" format defined in . + The "time-offset" should be "Z". + +
+ + +
+ "seriesNo" Attribute + + + + + Deprecated; instead, use the "value" attribute in <seriesInfo>. + +
+ + +
+ "sortRefs" Attribute + + + + + Specifies whether or not the prep tool will sort the references in each reference section. + + Allowed values: +
    +
  • "true"
  • +
  • "false" (default)
  • +
+
+ + +
+ "submissionType" Attribute + + + + + The document stream, as described in . + (The RFC Series Editor may change the list of allowed values in the future.) + + Allowed values: +
    +
  • "IETF" (default)
  • +
  • "IAB"
  • +
  • "IRTF"
  • +
  • "independent"
  • +
+
+ + +
+ "symRefs" Attribute + + + + + Specifies whether or not a formatter is requested to use symbolic references (such as "[RFC2119]"). If the + value for this is "false", the references come out as numbers (such as "[3]"). + + Allowed values: +
    +
  • "true" (default)
  • +
  • "false"
  • +
+
+ + +
+ "tocDepth" Attribute + + + + + Specifies the number of levels of headings that a formatter is requested to include in the table of contents; the default is "3". + +
+ + +
+ "tocInclude" Attribute + + + + + Specifies whether or not a formatter is requested to include a table of contents in generated files. + + Allowed values: +
    +
  • "true" (default)
  • +
  • "false"
  • +
+
+ + +
+ "updates" Attribute + + + + + A comma-separated list of RFC numbers or + Internet-Draft names. + + + The prep tool will parse the attribute value so that incorrect + references can be detected. + +
+ + +
+ "version" Attribute + + + + + Specifies the version of xml2rfc syntax used in this document. The only expected value (for now) is "3". + +
+
+ + +
+ + <section> + + + + + + Represents a section (when inside a <middle> element) or an appendix (when inside a + <back> element). + + + Subsections are created by nesting <section> elements inside <section> elements. + Sections are allowed to be empty. + + This element appears as a child element of <back> (), <boilerplate> (), <middle> (), and <section> (). + + Content model: + In this order: +
    + +
  1. + + One optional <name> element ()
  2. + +
  3. + In any order: +
      +
    • + + <artwork> elements ()
    • +
    • + + <aside> elements ()
    • +
    • + + <blockquote> elements ()
    • +
    • + + <dl> elements ()
    • +
    • + + <figure> elements ()
    • +
    • + + <iref> elements ()
    • +
    • + + <ol> elements ()
    • +
    • + + <sourcecode> elements ()
    • +
    • + + <t> elements ()
    • +
    • + + <table> elements ()
    • +
    • + + <texttable> elements ()
    • +
    • + + <ul> elements ()
    • +
    +
  4. + +
  5. + + Optional <section> elements ()
  6. + +
+ + +
+ "anchor" Attribute + + + + + Document-wide unique identifier for this section. + +
+ + +
+ "numbered" Attribute + + + + + If set to "false", the formatter is requested to not display a section number. The prep tool will verify that such a + section is not followed by a numbered section in this part of the document and will verify that the section is a + top-level section. + + Allowed values: +
    +
  • "true" (default)
  • +
  • "false"
  • +
+
+ + +
+ "removeInRFC" Attribute + + + + + If set to "true", this note is marked in the prep tool with text indicating that it should be + removed before the document is published as an RFC. + That text will be "This note is to be removed before publishing as an RFC." + + Allowed values: +
    +
  • "true"
  • +
  • "false" (default)
  • +
+
+ + +
+ "title" Attribute + + + + + Deprecated. Use <name> instead. + +
+ + +
+ "toc" Attribute + + + + + Indicates to a formatter whether or not the section is to be included in a + table of contents, if such a table of contents is produced. This only takes effect if the level of the section would have + appeared in the table of contents based on the "tocDepth" attribute of the + <rfc> element, and of course only if the table of contents + is being created based on the "tocInclude" attribute of the + <rfc> element. If this is set to "exclude", any section + below this one will be excluded as well. The "default" value indicates + inclusion of the section if it would be included by the tocDepth attribute of the + <rfc> element. + + Allowed values: +
    +
  • "include"
  • +
  • "exclude"
  • +
  • "default" (default)
  • +
+
+
+ + +
+ + <seriesInfo> + + + + + + Specifies the document series in which this document appears, and also + specifies an identifier within that series. + + + A processing tool determines whether it is working on an RFC or an Internet-Draft by inspecting the + "name" attribute of a <seriesInfo> element inside the + <front> element inside the <rfc> element, looking + for "RFC" or "Internet-Draft". (Specifying neither value in any of the + <seriesInfo> elements can be useful for producing other types of + documents but is out of scope for this specification.) + + +It is invalid to have multiple <seriesInfo> elements inside the same <front> +element containing the same "name" value. Some combinations of <seriesInfo> "name" attribute values +make no sense, such as having both <seriesInfo name="rfc"/> and <seriesInfo name="Internet-Draft"/> +in the same <front> element. + + This element appears as a child element of <front> () and <reference> (; deprecated in this context). + + Content model: this element does not have any contents. + + +
+ "asciiName" Attribute + + + + + The ASCII equivalent of the name field. + +
+ + +
+ "asciiValue" Attribute + + + + + The ASCII equivalent of the value field. + +
+ + +
+ "name" Attribute (Mandatory) + + + + + + The name of the series. The currently known values are "RFC", "Internet-Draft", + and "DOI". The RFC Series Editor + may change this list in the future. + + + Some of the values for "name" interact as follows: + + + + + If a <front> element contains a <seriesInfo> + element with a name of "Internet-Draft", it can also have at most one additional + <seriesInfo> element with a "status" attribute whose value is of + "standard", "full-standard", "bcp", "fyi", "informational", "experimental", or + "historic" to indicate the intended status of this Internet-Draft, if it were to be later + published as an RFC. If such an additional <seriesInfo> element has + one of those statuses, the name needs to be "". + + + If a <front> element contains a <seriesInfo> + element with a name of "RFC", it can also have at most one additional + <seriesInfo> element with a "status" attribute whose value is of "full-standard", "bcp", or "fyi" to indicate + the current status of this RFC. If such an additional <seriesInfo> + element has one of those statuses, the "value" attribute for that name needs to be the number within + that series. That <front> element might also contain an additional + <seriesInfo> element with the status of "info", "exp", or "historic" and a name of "" to + indicate the status of the RFC. + + + A <front> element that has a <seriesInfo> element + that has the name "Internet-Draft" cannot also have a <seriesInfo> + element that has the name "RFC". + + + The <seriesInfo> element can contain the DOI for the referenced document. + This cannot be used when the <seriesInfo> + element is an eventual child element of an <rfc> element -- + only as an eventual child of a <reference> element. + The "value" attribute should use the form specified in . + + + +
+ + +
+ "status" Attribute + + + + + The status of this document. The currently known values are "standard", "informational", "experimental", "bcp", "fyi", and "full-standard". + The RFC Series Editor may change this list in the future. + +
+ + +
+ "stream" Attribute + + + + + The stream (as described in ) that originated the document. + (The RFC Series Editor may change this list in the future.) + + Allowed values: +
    +
  • "IETF" (default)
  • +
  • "IAB"
  • +
  • "IRTF"
  • +
  • "independent"
  • +
+
+ + +
+ "value" Attribute (Mandatory) + + + + + + The identifier within the series specified by the "name" attribute. + + + For BCPs, FYIs, RFCs, and STDs, this is the number within the series. + For Internet-Drafts, it is the full draft name (ending with the two-digit + version number). For DOIs, the value is given, such as "10.17487/rfc1149", + as described in . + + + The name in the value should be the document name without any file + extension. For Internet-Drafts, the value for this attribute should + be "draft-ietf-somewg-someprotocol-07", not + "draft-ietf-somewg-someprotocol-07.txt". + +
+
+ + +
+ + <sourcecode> + + + + + + This element allows the inclusion of source code into the document. + + + When rendered, source code is always shown in a monospace font. + When <sourcecode> is a child of <figure> or <section>, it provides + full control of horizontal whitespace and line breaks. + When formatted, it is indented relative to the left margin of the enclosing element. + It is thus useful for source code and formal languages (such as ABNF or the RNC notation used in this document). + (When <sourcecode> is a child of other elements, it flows with the text that surrounds it.) + Tab characters (U+0009) inside of this element are prohibited. + + + + For artwork such as character-based art, diagrams of message layouts, and so on, + use the <artwork> element instead. + + + Output formatters that do pagination should attempt to keep source code on a single page. This is to prevent + source code that is split across pages from looking like two separate pieces of code. + + +See for a description of how to deal with issues of using +"&" and "<" characters in source code. + + This element appears as a child element of <blockquote> (), <dd> (), <figure> (), <li> (), <section> (), <td> (), and <th> (). + + Content model: only text content. + + +
+ "anchor" Attribute + + + + + Document-wide unique identifier for this source code. + +
+ + +
+ "name" Attribute + + + + + A filename suitable for the contents (such as for extraction to a local file). + This attribute can + be helpful for other kinds of tools (such as automated syntax checkers, + which work by extracting the source code). + Note that the "name" attribute does not need to be unique for <artwork> elements in a + document. If multiple <sourcecode> elements have the same "name" attribute, a formatter might + assume that the elements are all fragments of a single file, and such a formatter can + collect those fragments for later processing. + +
+ + +
+ "src" Attribute + + + + + The URI reference of a source file . + + + It is an error to have both a "src" attribute and content in the <sourcecode> element. + +
+ + +
+ "type" Attribute + + + + + Specifies the type of the source code. The value of this attribute is free text with + certain values designated as preferred. + + + The preferred values for <sourcecode> types are: + + abnf + asn.1 + bash + c++ + c + cbor + dtd + java + javascript + json + mib + perl + pseudocode + python + rnc + xml + yang + + The RFC Series Editor will maintain a complete list of the preferred values on the RFC Editor + web site, and that list is expected to be updated over time. Thus, a consumer + of v3 XML should not cause a failure when it encounters an unexpected type or no type is specified. + +
+
+ + +
+ + <street> + + + + + + Provides a street address. + + This element appears as a child element of <postal> (). + + Content model: only text content. + + +
+ "ascii" Attribute + + + + + The ASCII equivalent of the street address. + +
+
+ + +
+ + <strong> + + + + + + Indicates text that is semantically strong. Text enclosed within this element will be displayed as bold after processing. + This element can be combined with other character formatting elements, and the + formatting will be additive. + + This element appears as a child element of <annotation> (), <blockquote> (), <cref> (), <dd> (), <dt> (), <em> (), <li> (), <preamble> (), <refcontent> (), <sub> (), <sup> (), <t> (), <td> (), <th> (), and <tt> (). + + Content model: + + In any order: +
    +
  • Text
  • +
  • + + <bcp14> elements ()
  • +
  • + + <cref> elements ()
  • +
  • + + <em> elements ()
  • +
  • + + <eref> elements ()
  • +
  • + + <iref> elements ()
  • +
  • + + <relref> elements ()
  • +
  • + + <sub> elements ()
  • +
  • + + <sup> elements ()
  • +
  • + + <tt> elements ()
  • +
  • + + <xref> elements ()
  • +
+
+ + +
+ + <sub> + + + + + + Causes the text to be displayed as subscript, approximately half a letter-height lower than normal text. + This element can be combined with other character formatting elements, and the + formatting will be additive. + + This element appears as a child element of <annotation> (), <blockquote> (), <cref> (), <dd> (), <dt> (), <em> (), <li> (), <preamble> (), <refcontent> (), <strong> (), <t> (), <td> (), <th> (), and <tt> (). + + Content model: + + In any order: +
    +
  • Text
  • +
  • + + <bcp14> elements ()
  • +
  • + + <cref> elements ()
  • +
  • + + <em> elements ()
  • +
  • + + <eref> elements ()
  • +
  • + + <iref> elements ()
  • +
  • + + <relref> elements ()
  • +
  • + + <strong> elements ()
  • +
  • + + <tt> elements ()
  • +
  • + + <xref> elements ()
  • +
+
+ + +
+ + <sup> + + + + + + Causes the text to be displayed as superscript, approximately half a letter-height higher than normal text. + This element can be combined with other character formatting elements, and the + formatting will be additive. + + This element appears as a child element of <annotation> (), <blockquote> (), <cref> (), <dd> (), <dt> (), <em> (), <li> (), <preamble> (), <refcontent> (), <strong> (), <t> (), <td> (), <th> (), and <tt> (). + + Content model: + + In any order: +
    +
  • Text
  • +
  • + + <bcp14> elements ()
  • +
  • + + <cref> elements ()
  • +
  • + + <em> elements ()
  • +
  • + + <eref> elements ()
  • +
  • + + <iref> elements ()
  • +
  • + + <relref> elements ()
  • +
  • + + <strong> elements ()
  • +
  • + + <tt> elements ()
  • +
  • + + <xref> elements ()
  • +
+
+ + +
+ + <t> + + + + + + Contains a paragraph of text. + + This element appears as a child element of <abstract> (), <aside> (), <blockquote> (), <dd> (), <li> (), <list> (), <note> (), <section> (), <td> (), and <th> (). + + Content model: + + In any order: +
    +
  • Text
  • +
  • + + <bcp14> elements ()
  • +
  • + + <cref> elements ()
  • +
  • + + <em> elements ()
  • +
  • + + <eref> elements ()
  • +
  • + + <iref> elements ()
  • +
  • + + <list> elements ()
  • +
  • + + <relref> elements ()
  • +
  • + + <spanx> elements ()
  • +
  • + + <strong> elements ()
  • +
  • + + <sub> elements ()
  • +
  • + + <sup> elements ()
  • +
  • + + <tt> elements ()
  • +
  • + + <vspace> elements ()
  • +
  • + + <xref> elements ()
  • +
+ + +
+ "anchor" Attribute + + + + + Document-wide unique identifier for this paragraph. + +
+ + +
+ "hangText" Attribute + + + + + Deprecated. Instead, use <dd> inside of a definition list (<dl>). + +
+ + +
+ "keepWithNext" Attribute + + + + + Acts as a hint to the output formatters that do pagination to do a best-effort attempt to + keep the paragraph with the next element, whatever that happens to be. For example, the + HTML output @media print CSS ("CSS" refers to Cascading Style Sheets) might translate this to page-break-after: avoid. For PDF, the + paginator could attempt to keep the paragraph with the next element. Note: this attribute + is strictly a hint and not always actionable. + + Allowed values: +
    +
  • "false" (default)
  • +
  • "true"
  • +
+
+ + +
+ "keepWithPrevious" Attribute + + + + + Acts as a hint to the output formatters that do pagination to do a best-effort attempt to + keep the paragraph with the previous element, whatever that happens to be. For example, + the HTML output @media print CSS might translate this to page-break-before: avoid. For + PDF, the paginator could attempt to keep the paragraph with the previous element. Note: + this attribute is strictly a hint and not always actionable. + + Allowed values: +
    +
  • "false" (default)
  • +
  • "true"
  • +
+
+
+ + +
+ + <table> + + + + + + Contains a table with a caption with the table number. + If the element contains a <name> element, the caption will also show that name. + + + Inside the <table> element is, optionally, a <thead> element to + contain the rows that will be the table's heading and, optionally, a <tfoot> element + to contain the rows of the table's footer. If the XML is converted to a representation that has page + breaks (such as PDFs or printed HTML), the header and footer are meant to appear on each page. + + This element appears as a child element of <aside> () and <section> (). + + Content model: + In this order: +
    + +
  1. + + One optional <name> element ()
  2. + + +
  3. + + Optional <iref> elements ()
  4. + + +
  5. + + One optional <thead> element ()
  6. + + +
  7. + + One or more <tbody> elements ()
  8. + + +
  9. + + One optional <tfoot> element ()
  10. + +
+ + +
+ "anchor" Attribute + + + + + Document-wide unique identifier for this table. + +
+
+ + +
+ + <tbody> + + + + + + A container for a set of body rows for a table. + + This element appears as a child element of <table> (). + + Content model: + + + + + One or more <tr> elements () + + + +
+ "anchor" Attribute + + + + + Document-wide unique identifier for the tbody. + +
+
+ + +
+ + <td> + + + + + + A cell in a table row. + + This element appears as a child element of <tr> (). + + Content model: + + Either: +
    +
  • + In any order, but at least one of: +
      +
    • + + <artwork> elements ()
    • +
    • + + <dl> elements ()
    • +
    • + + <figure> elements ()
    • +
    • + + <ol> elements ()
    • +
    • + + <sourcecode> elements ()
    • +
    • + + <t> elements ()
    • +
    • + + <ul> elements ()
    • +
    +
  • +
+ Or: +
    +
  • + In any order: +
      +
    • Text
    • +
    • + + <bcp14> elements ()
    • +
    • + + <br> elements ()
    • +
    • + + <cref> elements ()
    • +
    • + + <em> elements ()
    • +
    • + + <eref> elements ()
    • +
    • + + <iref> elements ()
    • +
    • + + <relref> elements ()
    • +
    • + + <strong> elements ()
    • +
    • + + <sub> elements ()
    • +
    • + + <sup> elements ()
    • +
    • + + <tt> elements ()
    • +
    • + + <xref> elements ()
    • +
    +
  • +
+ + +
+ "align" Attribute + + + + + Controls whether the content of the cell appears left justified (default), centered, + or right justified. Note that "center" or "right" will probably only work well in cells with plain text; any + other elements might make the contents render badly. + + Allowed values: +
    +
  • "left" (default)
  • +
  • "center"
  • +
  • "right"
  • +
+
+ + +
+ "anchor" Attribute + + + + + Document-wide unique identifier for the cell. + +
+ + +
+ "colspan" Attribute + + + + + The number of columns that the cell is to span. For example, setting "colspan='3'" + indicates that the cell occupies the same horizontal space as three cells of + a row without any "colspan" attributes. + +
+ + +
+ "rowspan" Attribute + + + + + The number of rows that the cell is to span. For example, setting "rowspan='3'" + indicates that the cell occupies the same vertical space as three rows. + +
+
+ + +
+ + <tfoot> + + + + + + A container for a set of footer rows for a table. + + This element appears as a child element of <table> (). + + Content model: + + + + + One or more <tr> elements () + + + +
+ "anchor" Attribute + + + + + Document-wide unique identifier for the tfoot. + +
+
+ + +
+ + <th> + + + + + + A cell in a table row. When rendered, this will normally come out in boldface; other than that, + there is no difference between this and the <td> element. + + This element appears as a child element of <tr> (). + + Content model: + + Either: +
    +
  • + In any order, but at least one of: +
      +
    • + + <artwork> elements ()
    • +
    • + + <dl> elements ()
    • +
    • + + <figure> elements ()
    • +
    • + + <ol> elements ()
    • +
    • + + <sourcecode> elements ()
    • +
    • + + <t> elements ()
    • +
    • + + <ul> elements ()
    • +
    +
  • +
+ Or: +
    +
  • + In any order: +
      +
    • Text
    • +
    • + + <bcp14> elements ()
    • +
    • + + <br> elements ()
    • +
    • + + <cref> elements ()
    • +
    • + + <em> elements ()
    • +
    • + + <eref> elements ()
    • +
    • + + <iref> elements ()
    • +
    • + + <relref> elements ()
    • +
    • + + <strong> elements ()
    • +
    • + + <sub> elements ()
    • +
    • + + <sup> elements ()
    • +
    • + + <tt> elements ()
    • +
    • + + <xref> elements ()
    • +
    +
  • +
+ + +
+ "align" Attribute + + + + + Controls whether the content of the cell appears left justified (default), centered, + or right justified. Note that "center" or "right" will probably only work well in cells with plain text; any + other elements might make the contents render badly. + + Allowed values: +
    +
  • "left" (default)
  • +
  • "center"
  • +
  • "right"
  • +
+
+ + +
+ "anchor" Attribute + + + + + Document-wide unique identifier for the row. + +
+ + +
+ "colspan" Attribute + + + + + The number of columns that the cell is to span. For example, setting "colspan='3'" + indicates that the cell occupies the same horizontal space as three cells of + a row without any "colspan" attributes. + +
+ + +
+ "rowspan" Attribute + + + + + The number of rows that the cell is to span. For example, setting "rowspan='3'" + indicates that the cell occupies the same vertical space as three rows. + +
+
+ + +
+ + <thead> + + + + + + A container for a set of header rows for a table. + + This element appears as a child element of <table> (). + + Content model: + + + + + One or more <tr> elements () + + + +
+ "anchor" Attribute + + + + + Document-wide unique identifier for the thead. + +
+
+ + +
+ + <title> + + + + + + Represents the document title. + + + When this element appears in the <front> element of the current document, + the title might also appear in page headers or footers. If it is long + (~40 characters), the "abbrev" attribute can be used to specify an + abbreviated variant. + + This element appears as a child element of <front> (). + + Content model: only text content. + + +
+ "abbrev" Attribute + + + + + Specifies an abbreviated variant of the document title. + +
+ + +
+ "ascii" Attribute + + + + + The ASCII equivalent of the title. + +
+
+ + +
+ + <tr> + + + + + + A row of a table. + + This element appears as a child element of <tbody> (), <tfoot> (), and <thead> (). + + Content model: + + In any order, but at least one of: +
    +
  • + + <td> elements ()
  • +
  • + + <th> elements ()
  • +
+ + +
+ "anchor" Attribute + + + + + Document-wide unique identifier for the row. + +
+
+ + +
+ + <tt> + + + + + + Causes the text to be displayed in a constant-width font. + This element can be combined with other character formatting elements, and the + formatting will be additive. + + This element appears as a child element of <annotation> (), <blockquote> (), <cref> (), <dd> (), <dt> (), <em> (), <li> (), <name> (), <preamble> (), <refcontent> (), <strong> (), <sub> (), <sup> (), <t> (), <td> (), and <th> (). + + Content model: + + In any order: +
    +
  • Text
  • +
  • + + <bcp14> elements ()
  • +
  • + + <cref> elements ()
  • +
  • + + <em> elements ()
  • +
  • + + <eref> elements ()
  • +
  • + + <iref> elements ()
  • +
  • + + <relref> elements ()
  • +
  • + + <strong> elements ()
  • +
  • + + <sub> elements ()
  • +
  • + + <sup> elements ()
  • +
  • + + <xref> elements ()
  • +
+
+ + +
+ + <ul> + + + + + + An unordered list. The labels on the items will be symbols picked by the formatter. + + This element appears as a child element of <abstract> (), <aside> (), <blockquote> (), <dd> (), <li> (), <note> (), <section> (), <td> (), and <th> (). + + Content model: + + + + + One or more <li> elements () + + + +
+ "anchor" Attribute + + + + + Document-wide unique identifier for the list. + +
+ + +
+ "empty" Attribute + + + + + Defines whether or not the label is empty. empty="true" indicates that no label will be shown. + + Allowed values: +
    +
  • "false" (default)
  • +
  • "true"
  • +
+
+ + +
+ "spacing" Attribute + + + + + Defines whether or not there is a blank line between entries. spacing="normal" + indicates a single blank line, while spacing="compact" indicates no space between. + + Allowed values: +
    +
  • "normal" (default)
  • +
  • "compact"
  • +
+
+
+ + +
+ + <uri> + + + + + + Contains a web address associated with the author. + + + The contents should be a valid URI; this most likely will be an "http:" or "https:" URI. + + This element appears as a child element of <address> (). + + Content model: only text content. +
+ + +
+ + <workgroup> + + + + + + This element is used to specify the Working Group (IETF) or Research Group (IRTF) from which the document originates, + if any. The recommended format is the official name of the Working Group + (with some capitalization). + + + In Internet-Drafts, this is used in the upper left corner of the boilerplate, + replacing the "Network Working Group" string. Formatting software can + append the words "Working Group" or "Research Group", depending on + the "submissionType" property of the <rfc> element + (). + + This element appears as a child element of <front> (). + + Content model: only text content. +
+ + +
+ + <xref> + + + + + + A reference to an anchor in this document. + Formatters that have links (such as HTML and PDF) are likely to render <xref> elements as internal hyperlinks. + This element is useful for referring to references in the "References" section, to specific sections of this + document, to specific figures, and so on. + The "target" attribute is required. + + This element appears as a child element of <annotation> (), <blockquote> (), <c> (), <cref> (), <dd> (), <dt> (), <em> (), <li> (), <name> (), <postamble> (), <preamble> (), <strong> (), <sub> (), <sup> (), <t> (), <td> (), <th> (), <tt> (), and <ttcol> (). + + Content model: only text content. + + +
+ "format" Attribute + + + + + This attribute signals to formatters what the desired format of the reference should be. + Formatters for document types that have linking capability should wrap the displayed text in hyperlinks. + + + + "counter" + + + The "derivedContent" attribute will contain just a counter. + This is used for targets that are + <section>, <figure>, <table>, or items in an ordered list. + Using "format='counter'" where the target is any other type of element is an error. + + + For example, with an input of: +
+ + <section anchor="overview">Protocol Overview</section> + . . . + See Section <xref target="overview" format="counter"/> + for an overview. + +
+
+ + An HTML formatter might generate: + + + See Section <a href="#overview">1.7</a> for an overview. + +
+
+ + + "default" + + + If the element has no content, the "derivedContent" attribute will contain a text fragment that describes the referenced part + completely, such as "XML" for a target that is a <reference>, + or "Section 2" or "Table 4" for a target to a non-reference. + (If the element has content, the "derivedContent" attribute is filled with the content.) + + + For example, with an input of: +
+ + <section anchor="overview">Protocol Overview</section> + . . . + See <xref target="overview"/> for an overview. + +
+
+ + An HTML formatter might generate: + + + See <a href="#overview">Section 1.7</a> for an overview. + +
+
+ + + "none" + + + Deprecated. + + + + + + "title" + + + If the target is a <reference> element, the "derivedContent" attribute will contain the name of + the reference, extracted from the <title> child of the + <front> child of the reference. + Or, if the target element has a <name> child element, the "derivedContent" attribute will contain the + text content of that <name> element concatenated with the text content of + each descendant node of <name> (that is, stripping out all of the + XML markup, leaving only the text). + Or, if the target element does not contain a <name> child element, + the "derivedContent" attribute will contain the name of the "anchor" attribute of that element + with no other adornment. + + + + Allowed values: +
    +
  • "default" (default)
  • +
  • "title"
  • +
  • "counter"
  • +
  • "none"
  • +
+
+ + +
+ "pageno" Attribute + + + + + Deprecated. + + Allowed values: +
    +
  • "true"
  • +
  • "false" (default)
  • +
+
+ + +
+ "target" Attribute (Mandatory) + + + + + + Identifies the document component being referenced. + The value needs to match the value of the "anchor" attribute of an + element in the document; otherwise, it is an error. + +
+
+ +
+ +
+ +This section lists the elements from v2 that have been deprecated. Note that some elements in +v3 have attributes from v2 that are deprecated; those are not listed here. + + +
+ + + + + Deprecated. Instead, use <tr>, <td>, and <th>. + + This element appears as a child element of <texttable> (). + + Content model: + + In any order: + Text + + + <bcp14> elements () + + + <cref> elements () + + + <em> elements () + + + <eref> elements () + + + <iref> elements () + + + <spanx> elements () + + + <strong> elements () + + + <sub> elements () + + + <sup> elements () + + + <tt> elements () + + + <xref> elements () + + +
+ + +
+ + + + + Deprecated. The <email> element is a much more useful way to get in touch with authors. + + This element appears as a child element of <address> (). + Content model: only text content. +
+ + +
+ + + + + Deprecated. If the goal is to provide a single URI for + a reference, use the "target" attribute in <reference> instead. + + This element appears as a child element of <reference> (). + Content model: this element does not have any contents. + + +
+ + + + + Deprecated. + +
+ + +
+ + + + + Deprecated. + +
+ + +
+ + + + + Deprecated. + +
+
+ + +
+ + + + + Deprecated. Instead, use + <dl> for list/@style "hanging"; + <ul> for list/@style "empty" or "symbols"; and + <ol> for list/@style "letters", "numbers", "counter", or "format". + + This element appears as a child element of <t> (). + + Content model: + + + + + One or more <t> elements () + + + +
+ + + + + Deprecated. The functionality of this attribute has been replaced with <ol>/@start. + +
+ + +
+ + + + + Deprecated. Use <dl> instead. + +
+ + +
+ + + + + Deprecated. + +
+
+ + +
+ + + + + Deprecated. Instead, use a regular paragraph after the figure or table. + + This element appears as a child element of <figure> () and <texttable> (). + + Content model: + + In any order: + Text + + + <bcp14> elements () + + + <cref> elements () + + + <em> elements () + + + <eref> elements () + + + <iref> elements () + + + <spanx> elements () + + + <strong> elements () + + + <sub> elements () + + + <sup> elements () + + + <tt> elements () + + + <xref> elements () + + +
+ + +
+ + + + + Deprecated. Instead, use a regular paragraph before the figure or table. + + This element appears as a child element of <figure> () and <texttable> (). + + Content model: + + In any order: + Text + + + <bcp14> elements () + + + <cref> elements () + + + <em> elements () + + + <eref> elements () + + + <iref> elements () + + + <spanx> elements () + + + <strong> elements () + + + <sub> elements () + + + <sup> elements () + + + <tt> elements () + + + <xref> elements () + + +
+ + +
+ + + + + Deprecated. + + This element appears as a child element of <annotation> (), <c> (), <postamble> (), <preamble> (), and <t> (). + Content model: only text content. + + +
+ + + + + Deprecated. Instead of <spanx style="emph">, use <em>; + instead of <spanx style="strong">, use <strong>; + instead of <spanx style="verb">, use <tt>. + +
+ + +
+ + + + + Deprecated. + + Allowed values: + "default" + "preserve" (default) + + +
+
+ + +
+ + + + + Deprecated. Use <table> instead. + + This element appears as a child element of <aside> () and <section> (). + Content model: + In this order: + + + + One optional <name> element () + + + + + One optional <preamble> element () + + + + + One or more <ttcol> elements () + + + + + Optional <c> elements () + + + + + One optional <postamble> element () + + + + + +
+ + + + + Deprecated. + + Allowed values: + "left" + "center" (default) + "right" + + +
+ + +
+ + + + + Deprecated. + +
+ + +
+ + + + + Deprecated. + +
+ + +
+ + + + + Deprecated. + + Allowed values: + "true" + "false" (default) + + +
+ + +
+ + + + + Deprecated. + +
+
+ + +
+ + + + + Deprecated. Instead, use <tr>, <td>, and <th>. + + This element appears as a child element of <texttable> (). + + Content model: + + In any order: + Text + + + <cref> elements () + + + <eref> elements () + + + <iref> elements () + + + <xref> elements () + + + + +
+ + + + + Deprecated. + + Allowed values: + "left" (default) + "center" + "right" + + +
+ + +
+ + + + + Deprecated. + +
+
+ + +
+ + + + + Deprecated. In earlier versions of this format, <vspace> was often + used to get an extra blank line in a list element; in the v3 vocabulary, + that can be done instead by using multiple <t> elements inside the + <li> element. Other uses have no direct replacement. + + This element appears as a child element of <t> (). + Content model: this element does not have any contents. + + +
+ + + + + Deprecated. + +
+
+ +
+ +
+ + +The discussion of the use of SVG can be found in . +This element is part of the namespace "http://www.w3.org/2000/svg". + +
+ +
+ + +A common problem authors have with <artwork> and <sourcecode> +elements is that the XML processor returns errors +if the text in the artwork contains either the "&" or "<" character, or the string "]]>". +To avoid these problems, the "&" and "<" characters may be escaped using the strings +"&amp;" and "&lt;", respectively; the "]]>" string can be represented as "]]&gt;". +Alternatively, they may be surrounded in a CDATA structure: "<![CDATA[]]>". For example: + +
+Desired output: + allowed-chars = "." | "," | "&" | "<" | ">" | "|" + +Using escaping: +<sourcecode> + allowed-chars = "." | "," | "&amp;" | "&lt;" | "&gt;" | "|" +</sourcecode> + +Using CDATA: +<sourcecode> +<![CDATA[ allowed-chars = "." | "," | "&" | "<" | ">" | "|"]]> +</sourcecode> + +
+ +Using CDATA is not a panacea, but it does help prevent having to use escapes in places where +using escapes can cause other problems, such as difficulty of inclusion from other documents. + + +
+ +
+ + This format is based on and thus does not have any + issues representing arbitrary Unicode characters in text content. + The RFC Series Editor may restrict some of the characters that can be used in a particular RFC; + the rules for such restrictions are covered in . + +
+ +
+ + The "name" attribute of the <artwork> element + () + can be used to derive a filename for saving to a local file system. + Trusting this kind of information without pre-processing is a known + security risk; see for + more information. + + + The "src" attribute of the <artwork> element can be used to read files from + the local system. Processing tools must be careful to not accept dangerous values for the filename, + particularly those that contain absolute references outside the current directory. + + + The "type" attribute of the <artwork> and <sourcecode> elements is meant + to encourage formatters to automatically extract known types of content from + an RFC or Internet-Draft. While extraction is probably safe, those tools + might also think that they could further process the extracted content, + such as by rendering artwork or executing code. Doing so without first + sanity-checking the extracted content is clearly a terrible idea + from a security perspective. More generally, a tool that is reading XML input + needs to be suspicious of any content that it intends + to post-process. + + +When there is an external reference to a URL, a processor or renderer should fetch the content into a sandbox +and should have only a localized impact on the document processing and rendering. + + + All security considerations related to XML processing are + relevant as well (see ). + +
+ +
+
+ + + + IANA maintains the registry of Internet Media Types + at . + + + This document updates the specification for the Internet Media Type + "application/rfc+xml" from the one in . The following has been registered with IANA. + + + + + application + + + rfc+xml + + + There are no required parameters. + + + "charset": This parameter has identical semantics to the charset + parameter of the "application/xml" Media Type specified in . + + + Identical to those of "application/xml" as described in . + + + As defined in . In addition, as + this Media Type uses the "+xml" convention, it inherits the security + considerations described in . + + + Different implementations of this format have had interoperability issues. + It is not expected that publication of this application will cause those + implementations to be fixed. + + + This specification. + + + Applications that transform xml2rfc to output representations such + as plain text or HTML, plus additional analysis tools. + + + The "anchor" attribute is used for assigning document-wide unique + identifiers that can be used as shorthand pointers, as described + in . + + + + None + As specified for "application/xml" in . + .xml or .rfcxml when disambiguation from other XML files is needed + TEXT + + + + See the Author's Address section of RFC 7991. + + + COMMON + + + None + + + See the Author's Address section of RFC 7991. + + + RFC Series Editor (rse@rfc-editor.org) + + + + +
+ +
+ +IANA has registered "convertedFrom" in the "Link Relation Types" registry . + +Relation Name: convertedFrom + +Description: The document linked to was later converted to the document +that contains this link relation. For example, an RFC can have a link +to the Internet-Draft that became the RFC; in that case, the link +relation would be "convertedFrom". + +Reference: This document. + +Notes: This relation is different than "predecessor-version" in that +"predecessor-version" is for items in a version control system. It is also +different than "previous" in that this relation is used for converted resources, +not those that are part of a sequence of resources. + +Application Data: None + +
+ +
+ + + +
+ + + + + + + Key words for use in RFCs to Indicate Requirement Levels + + + + + + + +&rfc7991; + + + + Extensible Markup Language (XML) 1.0 (Fifth Edition) + + + + + + + + + + Latest version available at + . + + + + + + + + + + Guidelines to Authors of Internet-Drafts + + + + + + + + Link Relations + + IANA + + + + + +&rfc2026; +&rfc2397; +&rfc2629; +&rfc3339; +&rfc3470; +&rfc3667; +&rfc3966; +&rfc3978; +&rfc3986; +&rfc5234; +&rfc5378; +&rfc6068; +&rfc6266; +&rfc6838; +&rfc6949; +&rfc7303; +&rfc7322; +&rfc7669; +&rfc7749; +&rfc7841; +&rfc7996; +&rfc7997; +&rfc7998; + + + + RELAX NG Compact Syntax + +
+ jjc@jclark.com +
+
+ +
+ +
+ + + + Information Technology - Document Schema Definition + Languages (DSDL) - Part 2: Regular-Grammar-Based Validation - + RELAX NG (Second Edition) + + ISO/IEC + + + + + + A useful source of RNG-related information is . + + + + + + Legal Provisions Relating to IETF Documents + + IETF Trust + + + + + + + + Legal Provisions Relating to IETF Documents + + IETF Trust + + + + + + + + Legal Provisions Relating to IETF Documents + + IETF Trust + + + + + + + + Legal Provisions Relating to IETF Documents + + IETF Trust + + + + + + + + Legal Provisions Relating to IETF Documents + + IETF Trust + + + + + + + + UAX #24: Unicode Script Property + + The Unicode Consortium + + + + + + + + The Unicode Standard + + The Unicode Consortium + + + + + + + + Coded Character Set -- 7-bit American Standard Code for Information Interchange + + American National Standards Institute + + + + + + + + + XML Inclusions (XInclude) Version 1.0 (Second Edition) + + + + + + + + Latest version available at + . + + + + + + XPointer Framework + + + + + + + + + Latest version available at + . + + + +
+ +
+ +The values listed here will be defined by the RFC Series Editor. Those listed here +are believed to be the current values in use. + +
+ + This attribute value can take a long list of values, each of which describes an IPR policy for the document + (). + The values are not the result of a grand design, but they remain simply for historic + reasons. Of these values, only a few are currently in use; all others are + supported by various tools for backwards compatibility with old source + files. + + + + Disclaimer: THIS ONLY PROVIDES IMPLEMENTATION INFORMATION. IF YOU NEED + LEGAL ADVICE, PLEASE CONTACT A LAWYER. + For further information, refer to . + + + For the current "Copyright Notice" text, the submissionType attribute of the <rfc> element + () + determines whether a statement about "Code Components" is inserted (which is the + case for the value "IETF", which is the default). Other values, + such as "independent", suppress this part of the text. + + + +
+ + + The name for these values refers to version 2.0 of the IETF Trust's "Legal Provisions Relating + to IETF Documents", sometimes simply called the "TLP", which went into effect on February 15, 2009 . + Updates to the document were published on September 12, 2009 + and on December 28, 2009 , + modifying the license for code components (see + for further information). + The actual text is located in Section 6 ("Text to Be Included in IETF Documents") + of these documents. + + + The prep tool automatically produces the "correct" text, depending on the + document's date information (see above): + + + TLPstarting with publication date + + + 2009-11-01 + + + 2010-04-01 + + + + + +
+ + + This value should be used unless one of the more specific "*trust200902" + values is a better fit. It produces the text in Sections 6.a and 6.b of + the TLP. + +
+ +
+ + + This produces the additional text from Section 6.c.i of the TLP: + +
+ + This document may not be modified, and derivative works of it may + not be created, except to format it for publication as an RFC or + to translate it into languages other than English. + +
+ +
+ +
+ + + This produces the additional text from Section 6.c.ii of the TLP: + +
+ + This document may not be modified, and derivative works of it may + not be created, and it may not be published except as an Internet-Draft. + +
+ +
+ +
+ + + This produces the additional text from Section 6.c.iii of the TLP, frequently + called the "pre-5378 escape clause" referring to changes introduced in : + +
+ + This document may contain material from IETF Documents or IETF Contributions published or + made publicly available before November 10, 2008. The person(s) controlling the copyright in + some of this material may not have granted the IETF Trust the right to allow modifications of such + material outside the IETF Standards Process. Without obtaining an adequate license from the + person(s) controlling the copyright in such materials, this document may not be modified outside + the IETF Standards Process, and derivative works of it may not be created outside the IETF + Standards Process, except to format it for publication as an RFC or to translate it into languages + other than English. + +
+ + See Section 4 of + for further information about when to use this value. + + +
+
+ +
+ +
+ + + The attribute values "trust200811", + "noModificationTrust200811", and + "noDerivativesTrust200811" + are similar to their "trust200902" counterparts, except that they use text + specified in . + +
+ +
+ + + The attribute values "full3978", + "noModification3978", and + "noDerivatives3978" + are similar to their counterparts above, except that they use text + specified in . + +
+ +
+ + + The attribute values "full3667", + "noModification3667", and + "noDerivatives3667" + are similar to their counterparts above, except that they use text + specified in . + +
+ +
+ + + The attribute values "full2026" and + "noDerivativeWorks2026" + are similar to their counterparts above, except that they use text + specified in Section 10 of . + + + The special value "none" + was also used back then; it denied the IETF any rights beyond publication + as an Internet-Draft. + +
+
+
+ +
+ + The RFC Editor publishes documents from different "document streams", of which + the "IETF stream" is the most prominent. Other streams are the "Independent Submissions stream" + (used for things such as discussion of Internet-related technologies that are + not part of the IETF agenda), + the "IAB stream" (Internet Architecture Board), and the "IRTF stream" (Internet Research Task Force). + + + The values for the attribute are "IETF" (the default value), + "independent", "IAB", and "IRTF". + + + Historically, this attribute did not affect the final appearance of RFCs, except for + subtle differences in copyright notices. + Nowadays (as of ), the stream name appears in the first + line of the front page, and it also affects the text in the "Status of This Memo" + section. + + + For current documents, setting the "submissionType" attribute will + have the following effect: + + + For RFCs, the stream name appears in the upper left corner of the + first page (in Internet-Drafts, this is either "Network Working Group" + or the value of the <workgroup> element). + + + For RFCs, it affects the whole "Status of This Memo" section (see + ). + + + For all RFCs and Internet-Drafts, it determines whether the "Copyright + Notice" section mentions the Copyright on Code Components (see Section 6 of the TLP + ("Text to Be Included in IETF Documents")). + + + +
+ +
+ + For some of the publication streams (see ), + the "Status of This Memo" section depends on whether there was a consensus + to publish (again, see ). + + + The consensus attribute + can be used to supply this information. The acceptable values are "true" (the default) and "false"; +"yes" and "no" from v2 are deprecated. + + +The effect of this value for the various streams is: + + "independent": none. + "IAB": mention that there was an IAB consensus. + "IETF": mention that there was an IETF consensus. + "IRTF": mention that there was a research group consensus (where + the name of the research group is extracted from the <workgroup> + element). + + +
+ +
+
+ +This section describes topics that are specific to v3 processing tools. +Note that there is some +discussion of tools in the main body of the document as well. For example, some elements +have descriptions of how a processing tool might create output from the element. + +The expected design of the tools that will be used with v3 documents includes: + + + + +A "prep tool" that takes a v3 document, makes many checks, adds and changes many attribute +values, and creates a file that is a "prepared document". The prepared document is a valid v3 +document. The prep tool is described in . + +The prep tool is expected to have many modes: + + + +RFC mode -- The mode used by the RFC Editor to process the input from one of +the RFC streams and to process XML produced during the RFC editing process. +The restrictions on the canonical XML for RFCs, as well as how the non-canonical formats +will look, are described at +<https://www.rfc-editor.org/rse/wiki/doku.php?id=design:format-and-content-rfcs>. + +Draft mode -- The mode used by the Internet-Draft submission tool. The restrictions +for the XML from this mode will be described later. + +Diagnostic mode -- A mode that can be used by document authors to look for errors +or warnings before they submit their documents for publication. + +Consolidation mode -- Produces output where no external resources are required to render the file +output. This includes expanding the XInclude entities and DTD entities in place, and changing all +elements that have "src" attributes with external links into either "data:" URI or +content for the element, as specified in . + + + +Formatting tools that will create HTML, PDF, plain text, and possibly other output formats. +These formatters will be created by the IETF, but others can create such tools as well. +The IETF tools are expected to take prepared documents as input. + + + +There may also be processing tools that are meant to run on the computers of +authors. These tools may be used to produce interim versions of the non-canonical representations +so that authors can see how their XML might later be rendered, to +create documents in representations different than those supported by the RFC Editor, +to possibly create documents that are not meant to be Internet-Drafts or RFCs, +and to convert XML that has external information into XML that has that external information +included. + +The prep tool is expected to have clear error reporting, giving more +context than just a line number. For example, the error messages should differentiate between +errors in XML and those from the v3 format. + +In v2, the grammar was specified as a DTD. In v3, the grammar is specified only as RELAX +Next Generation (RNG). This means that tools need to work from the RNG, not from a DTD. +Some of the features of the v3 grammar cannot be specified as a DTD. + +
+ +All tools for the v3 format are expected to support XInclude . +XInclude specifies a processing model and syntax for general-purpose inclusion of information +that is either on the Internet or local to the user's computer. + + +In the v3 syntax, XInclude is expressed as the <xi:include> element. To use this +element, you need to include the "xi" namespace in the <rfc> element; that is, you need to specify +
+xmlns:xi="http://www.w3.org/2001/XInclude" +
+as one of the attributes in the <rfc> element.
+ +The most common way to use <xi:include> is to pull in references +that are already formed as XML. Currently, this can be done from xml2rfc.tools.ietf.org, but later this is +expected to be from the RFC Editor. For example, if a document has three normative +references, all RFCs, the document might contain: +
+<references> + <xi:include href="http://xml2rfc.tools.ietf.org/public/rfc/ + bibxml/reference.RFC.2119.xml"/> + <xi:include href="http://xml2rfc.tools.ietf.org/public/rfc/ + bibxml/reference.RFC.4869.xml"/> + <xi:include href="http://xml2rfc.tools.ietf.org/public/rfc/ + bibxml/reference.RFC.7169.xml"/> +</references> +
+
+ +<xi:include> can be used anywhere an XML element could be used (but not where +free text is used). For example, if three Internet-Drafts are all including a particular paragraph +or section verbatim, that text can be kept either in a file or somewhere on the web and can be +included with <xi:include>. An example of pulling something from the local disk would +be: +
+<x:include href="file://home/chris/ietf/drafts/commontext.xml"/> +
+
+ + +In general, XInclude should be used instead of ENTITY references and XML Processing Instructions (PIs) +that allow external inclusions. + + +
+ +
+ +People writing and reading Internet-Drafts and RFCs often want to make reference to +specific locations in those documents. In the case of RFC authors, it is common +to want to reference another part of their document, such as "see Section 3.2 of this +document." Readers, on the other hand, want to reference parts of documents that they +didn't write, such as "see Section 3.2 of RFC 6949." +The XML vocabulary in this document attempts to support both sets of people. + +Authors can leave anchors in a document that can later be used for references with the "anchor" +attribute. Anchors can be included in the numerous elements. The +author can then refer to that anchor in the "target" attribute of the <xref> +element. + +Readers can refer to any element that has an "anchor" attribute by that attribute. Note, however, +that most of the time, elements won't have anchors. In the common case, the reader wants to refer to +an element that does not have an "anchor" attribute, but that element has a "pn" attribute. + +Processing tools add the "pn" attribute to many elements during processing. This attribute and +its value are automatically generated by the tool if the attribute is not there; if the +attribute is already there, the tool may replace the value. + + +
+ +In the HTML representation of this XML vocabulary, both anchors and "pn" attributes will +be used in the "id" attributes of elements. Thus, there can be no overlap between the names entered +in "anchor" attributes, in "slugifiedName" attributes, and those that are generated for the "pn" attributes. +Also, there are some values for the "anchor" values that are reserved for sections, and those +sections can only have those anchor values. + +The following rules prevent this overlap: + + + +"pn" for regular sections always has the format "s-nnn", where "nnn" is the section number, or the appendix +identifier (which starts with a letter). +For example, this would be "s-2.1.3" for Section 2.1.3 and "s-a" for Appendix A. +For the <abstract> element, it is always "s-abstract". +For the <note> element, it is always "s-note-nnn", where "nnn" is a sequential value. +For sections in the <boilerplate> element, it is always "s-boilerplate-nnn", where "nnn" is a sequential value. + + +"pn" for <references> elements +has the format "s-nnn". It is important to note that "nnn" is a number, not letters, +even though the <references> appear in the back. +It is the number that is one higher than the highest top-level section number in <middle>. +If there are two or more <references>, "nnn" will include a dot as if +the <references> are a subsection of a section that is +numbered one higher than the highest top-level section number in <middle>. + +"pn" for <figure> elements +always has the format "f-nnn", where "nnn" is the figure number. +For example, this would be "f-5" for Figure 5. + +"pn" for <iref> elements +always has the format "i-ttt-nnn", where "ttt" is the +slugified item (plus a hyphen and the slugified subitem if there is a subitem), +and "nnn" is the instance of that item/subitem pair. +For example, this would be +"i-foo-1" for "<iref item='foo'>" and +"i-foo-bar-1" for "<iref item='foo' subitem='bar'>". + +"pn" for <table> elements +always has the format "t-nnn", where "nnn" is the table number. +For example, this would be "t-5" for Table 5. + +"pn" for all elements not listed above +always has the format "p-nnn-mmm", where "nnn" is the section number +and "mmm" is the relative position in the section. +For example, this would be "p-2.1.3-7" for the seventh part number in Section 2.1.3. + +"slugifiedName" always has the format "n-ttt", where "ttt" is the text of the name after +slugification. For example, this would be "n-protocol-overview" for the name "Protocol Overview". +The actual conversions done in slugification will be specified at a later time. + +Anchors must never overlap with any of the above. The easiest way to assure that is to +not pick an anchor name that starts with a single letter followed by a hyphen. If an anchor +does overlap with one of the types of names above, the processing tool will reject the +document. + + + + +
+ +
+ +
+ +Many elements in the v3 vocabulary have new attributes whose role is to hold values +generated by the prep tool. These attributes can exist in documents that are input to the +prep tool; however, any of these attributes might be added, removed, or changed by the +prep tool. Thus, it is explicitly unsafe for a document author to include these attributes +and expect that their values will survive processing by the prep tool. + +The attributes that are controlled by the prep tool are: + + +The "pn" attribute in any element -- The number for this item within the section. The numbering +is shared with other elements of a section. The "pn" attribute is added to many block-level elements +inside sections. + +<artwork> originalSrc -- This attribute is filled with the original value of the "src" +attribute if that attribute is removed by the prep tool. + +<figure> originalSrc -- This attribute is filled with the original value of the "src" +attribute if that attribute is removed by the prep tool. + +<name> "slugifiedName" attribute -- This attribute is filled with a "slugified" version of +the text in the element. This attribute can be used in the output formats for elements that have +both names and numbers. + +<relref> "derivedLink" attribute -- This attribute is filled with the link that is derived +from combining the URI from the reference and the relative part that is either a copy of the +"relative" attribute or a section number derived from the "section" attribute. + +<rfc> "expiresDate" attribute -- This attribute is filled with the date that an Internet-Draft +expires. The date is in the format yyyy-mm-dd. + +<rfc> "mode" attribute -- This attribute is filled with a string that indicates what +mode the prep tool was in when it processed the XML, such as whether it was processing a file +to become an Internet-Draft or an RFC. + +<rfc> "scripts" attribute -- This attribute is filled with a list of scripts needed to +render this document. The list is comma-separated, with no spaces allowed. The order is +unimportant. The names come from . For example, if the document has Chinese +characters in it, the value might be "Common,Latin,Han". + +<sourcecode> "originalSrc" attribute -- This attribute is filled with the original value of +the "src" attribute if that attribute is removed by the prep tool. + +<xref> "derivedContent" attribute -- This attribute is filled in if there is no content in +the <xref> element. The value for this attribute is based on the value in the "displayFormat" +attribute. +Examples of how this value is filled can be found in . + + + + +In addition, note that the contents of the <boilerplate> element +are controlled by the prep tool. + +
+ +
+ +
+ +The following is the RELAX NG schema for the v3 format. + +
+ +namespace a = "http://relaxng.org/ns/compatibility/annotations/1.0" + +# xml2rfc Version 3 grammar + +rfc = + element rfc { + attribute xml:base { text }?, + attribute xml:lang { text }?, + attribute FAKEATTRIBUTE { text }?, + attribute number { text }?, + [ a:defaultValue = "" ] attribute obsoletes { text }?, + [ a:defaultValue = "" ] attribute updates { text }?, + attribute category { text }?, + attribute mode { text }?, + [ a:defaultValue = "false" ] + attribute consensus { "no" | "yes" | "false" | "true" }?, + attribute seriesNo { text }?, + attribute ipr { text }?, + attribute iprExtract { xsd:IDREF }?, + [ a:defaultValue = "IETF" ] + attribute submissionType { + "IETF" | "IAB" | "IRTF" | "independent" + }?, + attribute docName { text }?, + [ a:defaultValue = "false" ] + attribute sortRefs { "true" | "false" }?, + [ a:defaultValue = "true" ] + attribute symRefs { "true" | "false" }?, + [ a:defaultValue = "true" ] + attribute tocInclude { "true" | "false" }?, + [ a:defaultValue = "3" ] attribute tocDepth { text }?, + attribute prepTime { text }?, + [ a:defaultValue = "true" ] + attribute indexInclude { "true" | "false" }?, + attribute version { text }?, + [ a:defaultValue = "Common,Latin" ] attribute scripts { text }?, + attribute expiresDate { text }?, + link*, + front, + middle, + back? + } + +link = + element link { + attribute xml:base { text }?, + attribute xml:lang { text }?, + attribute href { text }, + attribute rel { text }? + } + +front = + element front { + attribute xml:base { text }?, + attribute xml:lang { text }?, + title, + seriesInfo*, + author+, + date?, + area*, + workgroup*, + keyword*, + abstract?, + note*, + boilerplate? + } + +title = + element title { + attribute xml:base { text }?, + attribute xml:lang { text }?, + attribute abbrev { text }?, + attribute ascii { text }?, + text + } + +author = + element author { + attribute xml:base { text }?, + attribute xml:lang { text }?, + attribute initials { text }?, + attribute asciiInitials { text }?, + attribute surname { text }?, + attribute asciiSurname { text }?, + attribute fullname { text }?, + attribute role { "editor" }?, + attribute asciiFullname { text }?, + organization?, + address? + } + +organization = + element organization { + attribute xml:base { text }?, + attribute xml:lang { text }?, + attribute abbrev { text }?, + attribute ascii { text }?, + text + } + +address = + element address { + attribute xml:base { text }?, + attribute xml:lang { text }?, + postal?, + phone?, + facsimile?, + email?, + uri? + } + +postal = + element postal { + attribute xml:base { text }?, + attribute xml:lang { text }?, + ((city | code | country | region | street)* | postalLine+) + } + +street = + element street { + attribute xml:base { text }?, + attribute xml:lang { text }?, + attribute ascii { text }?, + text + } + +city = + element city { + attribute xml:base { text }?, + attribute xml:lang { text }?, + attribute ascii { text }?, + text + } + +region = + element region { + attribute xml:base { text }?, + attribute xml:lang { text }?, + attribute ascii { text }?, + text + } + +code = + element code { + attribute xml:base { text }?, + attribute xml:lang { text }?, + attribute ascii { text }?, + text + } + +country = + element country { + attribute xml:base { text }?, + attribute xml:lang { text }?, + attribute ascii { text }?, + text + } + +postalLine = + element postalLine { + attribute xml:base { text }?, + attribute xml:lang { text }?, + attribute ascii { text }?, + text + } + +phone = + element phone { + attribute xml:base { text }?, + attribute xml:lang { text }?, + text + } + +facsimile = + element facsimile { + attribute xml:base { text }?, + attribute xml:lang { text }?, + text + } + +email = + element email { + attribute xml:base { text }?, + attribute xml:lang { text }?, + attribute ascii { text }?, + text + } + +uri = + element uri { + attribute xml:base { text }?, + attribute xml:lang { text }?, + text + } + +date = + element date { + attribute xml:base { text }?, + attribute xml:lang { text }?, + attribute day { text }?, + attribute month { text }?, + attribute year { text }?, + empty + } + +area = + element area { + attribute xml:base { text }?, + attribute xml:lang { text }?, + text + } + +workgroup = + element workgroup { + attribute xml:base { text }?, + attribute xml:lang { text }?, + text + } + +keyword = + element keyword { + attribute xml:base { text }?, + attribute xml:lang { text }?, + text + } + +abstract = + element abstract { + attribute xml:base { text }?, + attribute xml:lang { text }?, + attribute anchor { xsd:ID }?, + attribute pn { text }?, + (dl | ol | t | ul)+ + } + +note = + element note { + attribute xml:base { text }?, + attribute xml:lang { text }?, + attribute title { text }?, + attribute pn { text }?, + [ a:defaultValue = "false" ] + attribute removeInRFC { "true" | "false" }?, + name?, + (dl | ol | t | ul)+ + } + +boilerplate = + element boilerplate { + attribute xml:base { text }?, + attribute xml:lang { text }?, + section+ + } + +middle = + element middle { + attribute xml:base { text }?, + attribute xml:lang { text }?, + section+ + } + +section = + element section { + attribute xml:base { text }?, + attribute xml:lang { text }?, + attribute anchor { xsd:ID }?, + attribute pn { text }?, + attribute title { text }?, + [ a:defaultValue = "true" ] + attribute numbered { "true" | "false" }?, + [ a:defaultValue = "default" ] + attribute toc { "include" | "exclude" | "default" }?, + [ a:defaultValue = "false" ] + attribute removeInRFC { "true" | "false" }?, + name?, + (artwork + | aside + | blockquote + | dl + | figure + | iref + | ol + | sourcecode + | t + | table + | texttable + | ul)*, + section* + } + +name = + element name { + attribute xml:base { text }?, + attribute xml:lang { text }?, + attribute slugifiedName { text }?, + (text | cref | eref | relref | tt | xref)* + } + +t = + element t { + attribute xml:base { text }?, + attribute xml:lang { text }?, + attribute anchor { xsd:ID }?, + attribute pn { text }?, + attribute hangText { text }?, + [ a:defaultValue = "false" ] + attribute keepWithNext { "false" | "true" }?, + [ a:defaultValue = "false" ] + attribute keepWithPrevious { "false" | "true" }?, + (text + | bcp14 + | cref + | em + | eref + | iref + | \list + | relref + | spanx + | strong + | sub + | sup + | tt + | vspace + | xref)* + } + +aside = + element aside { + attribute xml:base { text }?, + attribute xml:lang { text }?, + attribute anchor { xsd:ID }?, + attribute pn { text }?, + (artwork | dl | figure | iref | \list | ol | t | table | ul)* + } + +blockquote = + element blockquote { + attribute xml:base { text }?, + attribute xml:lang { text }?, + attribute anchor { xsd:ID }?, + attribute pn { text }?, + attribute cite { text }?, + attribute quotedFrom { text }?, + ((artwork | dl | figure | ol | sourcecode | t | ul)+ + | (text + | bcp14 + | cref + | em + | eref + | iref + | relref + | strong + | sub + | sup + | tt + | xref)+) + } + +\list = + element list { + attribute xml:base { text }?, + attribute xml:lang { text }?, + [ a:defaultValue = "empty" ] attribute style { text }?, + attribute hangIndent { text }?, + attribute counter { text }?, + attribute pn { text }?, + t+ + } + +ol = + element ol { + attribute xml:base { text }?, + attribute xml:lang { text }?, + attribute anchor { xsd:ID }?, + [ a:defaultValue = "1" ] attribute type { text }?, + [ a:defaultValue = "1" ] attribute start { text }?, + attribute group { text }?, + [ a:defaultValue = "normal" ] + attribute spacing { "normal" | "compact" }?, + attribute pn { text }?, + li+ + } + +ul = + element ul { + attribute xml:base { text }?, + attribute xml:lang { text }?, + attribute anchor { xsd:ID }?, + [ a:defaultValue = "normal" ] + attribute spacing { "normal" | "compact" }?, + ([ a:defaultValue = "false" ] + attribute empty { "false" | "true" }, + attribute pn { text }?)?, + li+ + } + +li = + element li { + attribute xml:base { text }?, + attribute xml:lang { text }?, + attribute anchor { xsd:ID }?, + attribute pn { text }?, + ((artwork | dl | figure | ol | sourcecode | t | ul)+ + | (text + | bcp14 + | cref + | em + | eref + | iref + | relref + | strong + | sub + | sup + | tt + | xref)+) + } + +dl = + element dl { + attribute xml:base { text }?, + attribute xml:lang { text }?, + attribute anchor { xsd:ID }?, + [ a:defaultValue = "normal" ] + attribute spacing { "normal" | "compact" }?, + [ a:defaultValue = "true" ] + attribute hanging { "false" | "true" }?, + attribute pn { text }?, + (dt, dd)+ + } + +dt = + element dt { + attribute xml:base { text }?, + attribute xml:lang { text }?, + attribute anchor { xsd:ID }?, + attribute pn { text }?, + (text + | bcp14 + | cref + | em + | eref + | iref + | relref + | strong + | sub + | sup + | tt + | xref)* + } + +dd = + element dd { + attribute xml:base { text }?, + attribute xml:lang { text }?, + attribute anchor { xsd:ID }?, + attribute pn { text }?, + ((artwork | dl | figure | ol | sourcecode | t | ul)+ + | (text + | bcp14 + | cref + | em + | eref + | iref + | relref + | strong + | sub + | sup + | tt + | xref)+) + } + +xref = + element xref { + attribute xml:base { text }?, + attribute xml:lang { text }?, + attribute target { xsd:IDREF }, + [ a:defaultValue = "false" ] + attribute pageno { "true" | "false" }?, + [ a:defaultValue = "default" ] + attribute format { "default" | "title" | "counter" | "none" }?, + attribute derivedContent { text }?, + text + } + +relref = + element relref { + attribute xml:base { text }?, + attribute xml:lang { text }?, + attribute target { xsd:IDREF }, + [ a:defaultValue = "of" ] + attribute displayFormat { "of" | "comma" | "parens" | "bare" }?, + attribute section { text }, + attribute relative { text }?, + attribute derivedLink { text }?, + text + } + +eref = + element eref { + attribute xml:base { text }?, + attribute xml:lang { text }?, + attribute target { text }, + text + } + +iref = + element iref { + attribute xml:base { text }?, + attribute xml:lang { text }?, + attribute item { text }, + [ a:defaultValue = "" ] attribute subitem { text }?, + [ a:defaultValue = "false" ] + attribute primary { "true" | "false" }?, + attribute pn { text }?, + empty + } + +cref = + element cref { + attribute xml:base { text }?, + attribute xml:lang { text }?, + attribute anchor { xsd:ID }?, + attribute source { text }?, + [ a:defaultValue = "true" ] + attribute display { "true" | "false" }?, + (text | em | eref | relref | strong | sub | sup | tt | xref)* + } + +tt = + element tt { + attribute xml:base { text }?, + attribute xml:lang { text }?, + (text + | bcp14 + | cref + | em + | eref + | iref + | relref + | strong + | sub + | sup + | xref)* + } + +strong = + element strong { + attribute xml:base { text }?, + attribute xml:lang { text }?, + (text + | bcp14 + | cref + | em + | eref + | iref + | relref + | sub + | sup + | tt + | xref)* + } + +em = + element em { + attribute xml:base { text }?, + attribute xml:lang { text }?, + (text + | bcp14 + | cref + | eref + | iref + | relref + | strong + | sub + | sup + | tt + | xref)* + } + +sub = + element sub { + attribute xml:base { text }?, + attribute xml:lang { text }?, + (text + | bcp14 + | cref + | em + | eref + | iref + | relref + | strong + | tt + | xref)* + } + +sup = + element sup { + attribute xml:base { text }?, + attribute xml:lang { text }?, + (text + | bcp14 + | cref + | em + | eref + | iref + | relref + | strong + | tt + | xref)* + } + +spanx = + element spanx { + attribute xml:base { text }?, + attribute xml:lang { text }?, + [ a:defaultValue = "preserve" ] + attribute xml:space { "default" | "preserve" }?, + [ a:defaultValue = "emph" ] attribute style { text }?, + text + } + +vspace = + element vspace { + attribute xml:base { text }?, + attribute xml:lang { text }?, + [ a:defaultValue = "0" ] attribute blankLines { text }?, + empty + } + +figure = + element figure { + attribute xml:base { text }?, + attribute xml:lang { text }?, + attribute anchor { xsd:ID }?, + attribute pn { text }?, + [ a:defaultValue = "" ] attribute title { text }?, + [ a:defaultValue = "false" ] + attribute suppress-title { "true" | "false" }?, + attribute src { text }?, + attribute originalSrc { text }?, + [ a:defaultValue = "left" ] + attribute align { "left" | "center" | "right" }?, + [ a:defaultValue = "" ] attribute alt { text }?, + [ a:defaultValue = "" ] attribute width { text }?, + [ a:defaultValue = "" ] attribute height { text }?, + name?, + iref*, + preamble?, + (artwork | sourcecode)+, + postamble? + } + +table = + element table { + attribute xml:base { text }?, + attribute xml:lang { text }?, + attribute anchor { xsd:ID }?, + attribute pn { text }?, + name?, + iref*, + thead?, + tbody+, + tfoot? + } + +preamble = + element preamble { + attribute xml:base { text }?, + attribute xml:lang { text }?, + (text + | bcp14 + | cref + | em + | eref + | iref + | relref + | spanx + | strong + | sub + | sup + | tt + | xref)* + } + +artwork = + element artwork { + attribute xml:base { text }?, + attribute xml:lang { text }?, + attribute anchor { xsd:ID }?, + attribute pn { text }?, + attribute xml:space { text }?, + [ a:defaultValue = "" ] attribute name { text }?, + [ a:defaultValue = "" ] attribute type { text }?, + attribute src { text }?, + [ a:defaultValue = "left" ] + attribute align { "left" | "center" | "right" }?, + [ a:defaultValue = "" ] attribute alt { text }?, + [ a:defaultValue = "" ] attribute width { text }?, + [ a:defaultValue = "" ] attribute height { text }?, + attribute originalSrc { text }?, + (text* | svg) + } +# TODO: replace with link to RSE site, or provide an inline version +include "svg.rnc" + +sourcecode = + element sourcecode { + attribute xml:base { text }?, + attribute xml:lang { text }?, + attribute anchor { xsd:ID }?, + attribute pn { text }?, + [ a:defaultValue = "" ] attribute name { text }?, + [ a:defaultValue = "" ] attribute type { text }?, + attribute src { text }?, + attribute originalSrc { text }?, + text + } + +thead = + element thead { + attribute xml:base { text }?, + attribute xml:lang { text }?, + attribute anchor { xsd:ID }?, + tr+ + } + +tbody = + element tbody { + attribute xml:base { text }?, + attribute xml:lang { text }?, + attribute anchor { xsd:ID }?, + tr+ + } + +tfoot = + element tfoot { + attribute xml:base { text }?, + attribute xml:lang { text }?, + attribute anchor { xsd:ID }?, + tr+ + } + +tr = + element tr { + attribute xml:base { text }?, + attribute xml:lang { text }?, + attribute anchor { xsd:ID }?, + (td | th)+ + } + +td = + element td { + attribute xml:base { text }?, + attribute xml:lang { text }?, + attribute anchor { xsd:ID }?, + [ a:defaultValue = "0" ] attribute colspan { text }?, + [ a:defaultValue = "0" ] attribute rowspan { text }?, + [ a:defaultValue = "left" ] + attribute align { "left" | "center" | "right" }?, + ((artwork | dl | figure | ol | sourcecode | t | ul)+ + | (text + | bcp14 + | br + | cref + | em + | eref + | iref + | relref + | strong + | sub + | sup + | tt + | xref)*) + } + +th = + element th { + attribute xml:base { text }?, + attribute xml:lang { text }?, + attribute anchor { xsd:ID }?, + [ a:defaultValue = "0" ] attribute colspan { text }?, + [ a:defaultValue = "0" ] attribute rowspan { text }?, + [ a:defaultValue = "left" ] + attribute align { "left" | "center" | "right" }?, + ((artwork | dl | figure | ol | sourcecode | t | ul)+ + | (text + | bcp14 + | br + | cref + | em + | eref + | iref + | relref + | strong + | sub + | sup + | tt + | xref)*) + } + +postamble = + element postamble { + attribute xml:base { text }?, + attribute xml:lang { text }?, + (text | cref | eref | iref | spanx | xref)* + } + +texttable = + element texttable { + attribute xml:base { text }?, + attribute xml:lang { text }?, + attribute anchor { xsd:ID }?, + [ a:defaultValue = "" ] attribute title { text }?, + [ a:defaultValue = "false" ] + attribute suppress-title { "true" | "false" }?, + [ a:defaultValue = "center" ] + attribute align { "left" | "center" | "right" }?, + [ a:defaultValue = "full" ] + attribute style { "all" | "none" | "headers" | "full" }?, + name?, + preamble?, + ttcol+, + c*, + postamble? + } + +ttcol = + element ttcol { + attribute xml:base { text }?, + attribute xml:lang { text }?, + attribute width { text }?, + [ a:defaultValue = "left" ] + attribute align { "left" | "center" | "right" }?, + (cref | eref | iref | xref | text)* + } + +c = + element c { + attribute xml:base { text }?, + attribute xml:lang { text }?, + (text | cref | eref | iref | spanx | xref)* + } + +bcp14 = + element bcp14 { + attribute xml:base { text }?, + attribute xml:lang { text }?, + text + } + +br = + element br { + attribute xml:base { text }?, + attribute xml:lang { text }?, + empty + } + +back = + element back { + attribute xml:base { text }?, + attribute xml:lang { text }?, + displayreference*, + references*, + section* + } + +displayreference = + element displayreference { + attribute xml:base { text }?, + attribute xml:lang { text }?, + attribute target { xsd:IDREF }, + attribute to { text } + } + +references = + element references { + attribute xml:base { text }?, + attribute xml:lang { text }?, + attribute pn { text }?, + attribute anchor { xsd:ID }?, + attribute title { text }?, + name?, + (reference | referencegroup)* + } + +reference = + element reference { + attribute xml:base { text }?, + attribute xml:lang { text }?, + attribute anchor { xsd:ID }, + attribute target { text }?, + [ a:defaultValue = "true" ] + attribute quoteTitle { "true" | "false" }?, + front, + (annotation | format | refcontent | seriesInfo)* + } + +referencegroup = + element referencegroup { + attribute xml:base { text }?, + attribute xml:lang { text }?, + attribute anchor { xsd:ID }, + reference+ + } + +seriesInfo = + element seriesInfo { + attribute xml:base { text }?, + attribute xml:lang { text }?, + attribute name { text }, + attribute value { text }, + attribute asciiName { text }?, + attribute asciiValue { text }?, + attribute status { text }?, + [ a:defaultValue = "IETF" ] + attribute stream { "IETF" | "IAB" | "IRTF" | "independent" }?, + empty + } + +format = + element format { + attribute xml:base { text }?, + attribute xml:lang { text }?, + attribute target { text }?, + attribute type { text }, + attribute octets { text }?, + empty + } + +annotation = + element annotation { + attribute xml:base { text }?, + attribute xml:lang { text }?, + (text + | bcp14 + | cref + | em + | eref + | iref + | relref + | spanx + | strong + | sub + | sup + | tt + | xref)* + } + +refcontent = + element refcontent { + attribute xml:base { text }?, + attribute xml:lang { text }?, + (text | bcp14 | em | strong | sub | sup | tt)* + } +start |= rfc + +
+
+ +
+ +The following is a non-normative comparison of the v3 format to the v2 format. +A "-" indicates lines removed from the v2 schema, and a "+" indicates lines added +to the v3 schema. + +
+ + namespace a = + "http://relaxng.org/ns/compatibility/annotations/1.0" + ++ # xml2rfc Version 3 grammar + rfc = + element rfc { ++ attribute xml:base { text }?, ++ attribute xml:lang { text }?, ++ attribute FAKEATTRIBUTE { text }?, + attribute number { text }?, + [ a:defaultValue = "" ] attribute obsoletes { text }?, + [ a:defaultValue = "" ] attribute updates { text }?, +- attribute category { "std" | "bcp" | "info" | "exp" | +- "historic" }?, +- attribute consensus { "no" | "yes" }?, ++ attribute category { text }?, ++ attribute mode { text }?, ++ [ a:defaultValue = "false" ] ++ attribute consensus { "no" | "yes" | "false" | "true" }?, + attribute seriesNo { text }?, +- attribute ipr { +- "full2026" +- | "noDerivativeWorks2026" +- | "none" +- | "full3667" +- | "noModification3667" +- | "noDerivatives3667" +- | "full3978" +- | "noModification3978" +- | "noDerivatives3978" +- | "trust200811" +- | "noModificationTrust200811" +- | "noDerivativesTrust200811" +- | "trust200902" +- | "noModificationTrust200902" +- | "noDerivativesTrust200902" +- | "pre5378Trust200902" +- }?, ++ attribute ipr { text }?, + attribute iprExtract { xsd:IDREF }?, + [ a:defaultValue = "IETF" ] + attribute submissionType { + "IETF" | "IAB" | "IRTF" | "independent" + }?, + attribute docName { text }?, +- [ a:defaultValue = "en" ] attribute xml:lang { text }?, ++ [ a:defaultValue = "false" ] ++ attribute sortRefs { "true" | "false" }?, ++ [ a:defaultValue = "true" ] ++ attribute symRefs { "true" | "false" }?, ++ [ a:defaultValue = "true" ] ++ attribute tocInclude { "true" | "false" }?, ++ [ a:defaultValue = "3" ] attribute tocDepth { text }?, ++ attribute prepTime { text }?, ++ [ a:defaultValue = "true" ] ++ attribute indexInclude { "true" | "false" }?, ++ attribute version { text }?, ++ [ a:defaultValue = "Common,Latin" ] attribute scripts { text ++ }?, ++ attribute expiresDate { text }?, ++ link*, + front, + middle, + back? + } ++ link = ++ element link { ++ attribute xml:base { text }?, ++ attribute xml:lang { text }?, ++ attribute href { text }, ++ attribute rel { text }? ++ } + front = + element front { +- title, author+, date, area*, workgroup*, keyword*, abstract?, +- note* ++ attribute xml:base { text }?, ++ attribute xml:lang { text }?, ++ title, ++ seriesInfo*, ++ author+, ++ date?, ++ area*, ++ workgroup*, ++ keyword*, ++ abstract?, ++ note*, ++ boilerplate? + } + title = + element title { ++ attribute xml:base { text }?, ++ attribute xml:lang { text }?, + attribute abbrev { text }?, ++ attribute ascii { text }?, + text + } + author = + element author { ++ attribute xml:base { text }?, ++ attribute xml:lang { text }?, + attribute initials { text }?, ++ attribute asciiInitials { text }?, + attribute surname { text }?, ++ attribute asciiSurname { text }?, + attribute fullname { text }?, + attribute role { "editor" }?, ++ attribute asciiFullname { text }?, + organization?, + address? + } + organization = + element organization { ++ attribute xml:base { text }?, ++ attribute xml:lang { text }?, + attribute abbrev { text }?, ++ attribute ascii { text }?, ++ text ++ } ++ address = ++ element address { ++ attribute xml:base { text }?, ++ attribute xml:lang { text }?, ++ postal?, ++ phone?, ++ facsimile?, ++ email?, ++ uri? ++ } ++ postal = ++ element postal { ++ attribute xml:base { text }?, ++ attribute xml:lang { text }?, ++ ((city | code | country | region | street)* | postalLine+) ++ } ++ street = ++ element street { ++ attribute xml:base { text }?, ++ attribute xml:lang { text }?, ++ attribute ascii { text }?, ++ text ++ } ++ city = ++ element city { ++ attribute xml:base { text }?, ++ attribute xml:lang { text }?, ++ attribute ascii { text }?, ++ text ++ } ++ region = ++ element region { ++ attribute xml:base { text }?, ++ attribute xml:lang { text }?, ++ attribute ascii { text }?, ++ text ++ } ++ code = ++ element code { ++ attribute xml:base { text }?, ++ attribute xml:lang { text }?, ++ attribute ascii { text }?, ++ text ++ } ++ country = ++ element country { ++ attribute xml:base { text }?, ++ attribute xml:lang { text }?, ++ attribute ascii { text }?, ++ text ++ } ++ postalLine = ++ element postalLine { ++ attribute xml:base { text }?, ++ attribute xml:lang { text }?, ++ attribute ascii { text }?, ++ text ++ } ++ phone = ++ element phone { ++ attribute xml:base { text }?, ++ attribute xml:lang { text }?, ++ text ++ } ++ facsimile = ++ element facsimile { ++ attribute xml:base { text }?, ++ attribute xml:lang { text }?, ++ text ++ } ++ email = ++ element email { ++ attribute xml:base { text }?, ++ attribute xml:lang { text }?, ++ attribute ascii { text }?, ++ text ++ } ++ uri = ++ element uri { ++ attribute xml:base { text }?, ++ attribute xml:lang { text }?, + text + } +- address = element address { postal?, phone?, facsimile?, email?, +- uri? } +- postal = element postal { street+, (city | region | code | +- country)* } +- street = element street { text } +- city = element city { text } +- region = element region { text } +- code = element code { text } +- country = element country { text } +- phone = element phone { text } +- facsimile = element facsimile { text } +- email = element email { text } +- uri = element uri { text } + date = + element date { ++ attribute xml:base { text }?, ++ attribute xml:lang { text }?, + attribute day { text }?, + attribute month { text }?, + attribute year { text }?, + empty + } +- area = element area { text } +- workgroup = element workgroup { text } +- keyword = element keyword { text } +- abstract = element abstract { t+ } ++ area = ++ element area { ++ attribute xml:base { text }?, ++ attribute xml:lang { text }?, ++ text ++ } ++ workgroup = ++ element workgroup { ++ attribute xml:base { text }?, ++ attribute xml:lang { text }?, ++ text ++ } ++ keyword = ++ element keyword { ++ attribute xml:base { text }?, ++ attribute xml:lang { text }?, ++ text ++ } ++ abstract = ++ element abstract { ++ attribute xml:base { text }?, ++ attribute xml:lang { text }?, ++ attribute anchor { xsd:ID }?, ++ attribute pn { text }?, ++ (dl | ol | t | ul)+ ++ } + note = + element note { +- attribute title { text }, +- t+ ++ attribute xml:base { text }?, ++ attribute xml:lang { text }?, ++ attribute title { text }?, ++ attribute pn { text }?, ++ [ a:defaultValue = "false" ] ++ attribute removeInRFC { "true" | "false" }?, ++ name?, ++ (dl | ol | t | ul)+ ++ } ++ boilerplate = ++ element boilerplate { ++ attribute xml:base { text }?, ++ attribute xml:lang { text }?, ++ section+ ++ } ++ middle = ++ element middle { ++ attribute xml:base { text }?, ++ attribute xml:lang { text }?, ++ section+ + } +- middle = element middle { section+ } + section = + element section { ++ attribute xml:base { text }?, ++ attribute xml:lang { text }?, + attribute anchor { xsd:ID }?, +- attribute title { text }, ++ attribute pn { text }?, ++ attribute title { text }?, ++ [ a:defaultValue = "true" ] ++ attribute numbered { "true" | "false" }?, + [ a:defaultValue = "default" ] + attribute toc { "include" | "exclude" | "default" }?, +- (t | figure | texttable | iref)*, ++ [ a:defaultValue = "false" ] ++ attribute removeInRFC { "true" | "false" }?, ++ name?, ++ (artwork ++ | aside ++ | blockquote ++ | dl ++ | figure ++ | iref ++ | ol ++ | sourcecode ++ | t ++ | table ++ | texttable ++ | ul)*, + section* + } ++ name = ++ element name { ++ attribute xml:base { text }?, ++ attribute xml:lang { text }?, ++ attribute slugifiedName { text }?, ++ (text | cref | eref | relref | tt | xref)* ++ } + t = + element t { ++ attribute xml:base { text }?, ++ attribute xml:lang { text }?, + attribute anchor { xsd:ID }?, ++ attribute pn { text }?, + attribute hangText { text }?, ++ [ a:defaultValue = "false" ] ++ attribute keepWithNext { "false" | "true" }?, ++ [ a:defaultValue = "false" ] ++ attribute keepWithPrevious { "false" | "true" }?, + (text +- | \list +- | figure +- | xref ++ | bcp14 ++ | cref ++ | em + | eref + | iref +- | cref ++ | \list ++ | relref + | spanx +- | vspace)* ++ | strong ++ | sub ++ | sup ++ | tt ++ | vspace ++ | xref)* ++ } ++ aside = ++ element aside { ++ attribute xml:base { text }?, ++ attribute xml:lang { text }?, ++ attribute anchor { xsd:ID }?, ++ attribute pn { text }?, ++ (artwork | dl | figure | iref | \list | ol | t | table | ul)* ++ } ++ blockquote = ++ element blockquote { ++ attribute xml:base { text }?, ++ attribute xml:lang { text }?, ++ attribute anchor { xsd:ID }?, ++ attribute pn { text }?, ++ attribute cite { text }?, ++ attribute quotedFrom { text }?, ++ ((artwork | dl | figure | ol | sourcecode | t | ul)+ ++ | (text ++ | bcp14 ++ | cref ++ | em ++ | eref ++ | iref ++ | relref ++ | strong ++ | sub ++ | sup ++ | tt ++ | xref)+) + } + \list = + element list { +- attribute style { text }?, ++ attribute xml:base { text }?, ++ attribute xml:lang { text }?, ++ [ a:defaultValue = "empty" ] attribute style { text }?, + attribute hangIndent { text }?, + attribute counter { text }?, ++ attribute pn { text }?, + t+ + } ++ ol = ++ element ol { ++ attribute xml:base { text }?, ++ attribute xml:lang { text }?, ++ attribute anchor { xsd:ID }?, ++ [ a:defaultValue = "1" ] attribute type { text }?, ++ [ a:defaultValue = "1" ] attribute start { text }?, ++ attribute group { text }?, ++ [ a:defaultValue = "normal" ] ++ attribute spacing { "normal" | "compact" }?, ++ attribute pn { text }?, ++ li+ ++ } ++ ul = ++ element ul { ++ attribute xml:base { text }?, ++ attribute xml:lang { text }?, ++ attribute anchor { xsd:ID }?, ++ [ a:defaultValue = "normal" ] ++ attribute spacing { "normal" | "compact" }?, ++ ([ a:defaultValue = "false" ] ++ attribute empty { "false" | "true" }, ++ attribute pn { text }?)?, ++ li+ ++ } ++ li = ++ element li { ++ attribute xml:base { text }?, ++ attribute xml:lang { text }?, ++ attribute anchor { xsd:ID }?, ++ attribute pn { text }?, ++ ((artwork | dl | figure | ol | sourcecode | t | ul)+ ++ | (text ++ | bcp14 ++ | cref ++ | em ++ | eref ++ | iref ++ | relref ++ | strong ++ | sub ++ | sup ++ | tt ++ | xref)+) ++ } ++ dl = ++ element dl { ++ attribute xml:base { text }?, ++ attribute xml:lang { text }?, ++ attribute anchor { xsd:ID }?, ++ [ a:defaultValue = "normal" ] ++ attribute spacing { "normal" | "compact" }?, ++ [ a:defaultValue = "true" ] ++ attribute hanging { "false" | "true" }?, ++ attribute pn { text }?, ++ (dt, dd)+ ++ } ++ dt = ++ element dt { ++ attribute xml:base { text }?, ++ attribute xml:lang { text }?, ++ attribute anchor { xsd:ID }?, ++ attribute pn { text }?, ++ (text ++ | bcp14 ++ | cref ++ | em ++ | eref ++ | iref ++ | relref ++ | strong ++ | sub ++ | sup ++ | tt ++ | xref)* ++ } ++ dd = ++ element dd { ++ attribute xml:base { text }?, ++ attribute xml:lang { text }?, ++ attribute anchor { xsd:ID }?, ++ attribute pn { text }?, ++ ((artwork | dl | figure | ol | sourcecode | t | ul)+ ++ | (text ++ | bcp14 ++ | cref ++ | em ++ | eref ++ | iref ++ | relref ++ | strong ++ | sub ++ | sup ++ | tt ++ | xref)+) ++ } + xref = + element xref { ++ attribute xml:base { text }?, ++ attribute xml:lang { text }?, + attribute target { xsd:IDREF }, +- [ a:defaultValue = "false" ] attribute pageno { "true" | +- "false" }?, ++ [ a:defaultValue = "false" ] ++ attribute pageno { "true" | "false" }?, + [ a:defaultValue = "default" ] +- attribute format { "counter" | "title" | "none" | "default" ++ attribute format { "default" | "title" | "counter" | "none" ++ }?, ++ attribute derivedContent { text }?, ++ text ++ } ++ relref = ++ element relref { ++ attribute xml:base { text }?, ++ attribute xml:lang { text }?, ++ attribute target { xsd:IDREF }, ++ [ a:defaultValue = "of" ] ++ attribute displayFormat { "of" | "comma" | "parens" | "bare" + }?, ++ attribute section { text }, ++ attribute relative { text }?, ++ attribute derivedLink { text }?, + text + } + eref = + element eref { ++ attribute xml:base { text }?, ++ attribute xml:lang { text }?, + attribute target { text }, + text + } + iref = + element iref { ++ attribute xml:base { text }?, ++ attribute xml:lang { text }?, + attribute item { text }, + [ a:defaultValue = "" ] attribute subitem { text }?, + [ a:defaultValue = "false" ] + attribute primary { "true" | "false" }?, ++ attribute pn { text }?, + empty + } + cref = + element cref { ++ attribute xml:base { text }?, ++ attribute xml:lang { text }?, + attribute anchor { xsd:ID }?, + attribute source { text }?, +- text ++ [ a:defaultValue = "true" ] ++ attribute display { "true" | "false" }?, ++ (text | em | eref | relref | strong | sub | sup | tt | xref)* ++ } ++ tt = ++ element tt { ++ attribute xml:base { text }?, ++ attribute xml:lang { text }?, ++ (text ++ | bcp14 ++ | cref ++ | em ++ | eref ++ | iref ++ | relref ++ | strong ++ | sub ++ | sup ++ | xref)* ++ } ++ strong = ++ element strong { ++ attribute xml:base { text }?, ++ attribute xml:lang { text }?, ++ (text ++ | bcp14 ++ | cref ++ | em ++ | eref ++ | iref ++ | relref ++ | sub ++ | sup ++ | tt ++ | xref)* ++ } ++ em = ++ element em { ++ attribute xml:base { text }?, ++ attribute xml:lang { text }?, ++ (text ++ | bcp14 ++ | cref ++ | eref ++ | iref ++ | relref ++ | strong ++ | sub ++ | sup ++ | tt ++ | xref)* ++ } ++ sub = ++ element sub { ++ attribute xml:base { text }?, ++ attribute xml:lang { text }?, ++ (text ++ | bcp14 ++ | cref ++ | em ++ | eref ++ | iref ++ | relref ++ | strong ++ | tt ++ | xref)* ++ } ++ sup = ++ element sup { ++ attribute xml:base { text }?, ++ attribute xml:lang { text }?, ++ (text ++ | bcp14 ++ | cref ++ | em ++ | eref ++ | iref ++ | relref ++ | strong ++ | tt ++ | xref)* + } + spanx = + element spanx { ++ attribute xml:base { text }?, ++ attribute xml:lang { text }?, + [ a:defaultValue = "preserve" ] + attribute xml:space { "default" | "preserve" }?, + [ a:defaultValue = "emph" ] attribute style { text }?, + text + } + vspace = + element vspace { ++ attribute xml:base { text }?, ++ attribute xml:lang { text }?, + [ a:defaultValue = "0" ] attribute blankLines { text }?, + empty + } + figure = + element figure { ++ attribute xml:base { text }?, ++ attribute xml:lang { text }?, + attribute anchor { xsd:ID }?, ++ attribute pn { text }?, + [ a:defaultValue = "" ] attribute title { text }?, + [ a:defaultValue = "false" ] + attribute suppress-title { "true" | "false" }?, + attribute src { text }?, ++ attribute originalSrc { text }?, + [ a:defaultValue = "left" ] + attribute align { "left" | "center" | "right" }?, + [ a:defaultValue = "" ] attribute alt { text }?, + [ a:defaultValue = "" ] attribute width { text }?, + [ a:defaultValue = "" ] attribute height { text }?, ++ name?, + iref*, + preamble?, +- artwork, ++ (artwork | sourcecode)+, + postamble? + } ++ table = ++ element table { ++ attribute xml:base { text }?, ++ attribute xml:lang { text }?, ++ attribute anchor { xsd:ID }?, ++ attribute pn { text }?, ++ name?, ++ iref*, ++ thead?, ++ tbody+, ++ tfoot? ++ } + preamble = +- element preamble { (text | xref | eref | iref | cref | spanx)* } ++ element preamble { ++ attribute xml:base { text }?, ++ attribute xml:lang { text }?, ++ (text ++ | bcp14 ++ | cref ++ | em ++ | eref ++ | iref ++ | relref ++ | spanx ++ | strong ++ | sub ++ | sup ++ | tt ++ | xref)* ++ } + artwork = + element artwork { +- [ a:defaultValue = "preserve" ] +- attribute xml:space { "default" | "preserve" }?, ++ attribute xml:base { text }?, ++ attribute xml:lang { text }?, ++ attribute anchor { xsd:ID }?, ++ attribute pn { text }?, ++ attribute xml:space { text }?, + [ a:defaultValue = "" ] attribute name { text }?, + [ a:defaultValue = "" ] attribute type { text }?, + attribute src { text }?, + [ a:defaultValue = "left" ] + attribute align { "left" | "center" | "right" }?, + [ a:defaultValue = "" ] attribute alt { text }?, + [ a:defaultValue = "" ] attribute width { text }?, + [ a:defaultValue = "" ] attribute height { text }?, +- text* ++ attribute originalSrc { text }?, ++ (text* | svg) ++ } ++ # TODO: replace with link to RSE site, or provide an inline ++ version ++ include "svg.rnc" ++ sourcecode = ++ element sourcecode { ++ attribute xml:base { text }?, ++ attribute xml:lang { text }?, ++ attribute anchor { xsd:ID }?, ++ attribute pn { text }?, ++ [ a:defaultValue = "" ] attribute name { text }?, ++ [ a:defaultValue = "" ] attribute type { text }?, ++ attribute src { text }?, ++ attribute originalSrc { text }?, ++ text ++ } ++ thead = ++ element thead { ++ attribute xml:base { text }?, ++ attribute xml:lang { text }?, ++ attribute anchor { xsd:ID }?, ++ tr+ ++ } ++ tbody = ++ element tbody { ++ attribute xml:base { text }?, ++ attribute xml:lang { text }?, ++ attribute anchor { xsd:ID }?, ++ tr+ ++ } ++ tfoot = ++ element tfoot { ++ attribute xml:base { text }?, ++ attribute xml:lang { text }?, ++ attribute anchor { xsd:ID }?, ++ tr+ ++ } ++ tr = ++ element tr { ++ attribute xml:base { text }?, ++ attribute xml:lang { text }?, ++ attribute anchor { xsd:ID }?, ++ (td | th)+ ++ } ++ td = ++ element td { ++ attribute xml:base { text }?, ++ attribute xml:lang { text }?, ++ attribute anchor { xsd:ID }?, ++ [ a:defaultValue = "0" ] attribute colspan { text }?, ++ [ a:defaultValue = "0" ] attribute rowspan { text }?, ++ [ a:defaultValue = "left" ] ++ attribute align { "left" | "center" | "right" }?, ++ ((artwork | dl | figure | ol | sourcecode | t | ul)+ ++ | (text ++ | bcp14 ++ | br ++ | cref ++ | em ++ | eref ++ | iref ++ | relref ++ | strong ++ | sub ++ | sup ++ | tt ++ | xref)*) ++ } ++ th = ++ element th { ++ attribute xml:base { text }?, ++ attribute xml:lang { text }?, ++ attribute anchor { xsd:ID }?, ++ [ a:defaultValue = "0" ] attribute colspan { text }?, ++ [ a:defaultValue = "0" ] attribute rowspan { text }?, ++ [ a:defaultValue = "left" ] ++ attribute align { "left" | "center" | "right" }?, ++ ((artwork | dl | figure | ol | sourcecode | t | ul)+ ++ | (text ++ | bcp14 ++ | br ++ | cref ++ | em ++ | eref ++ | iref ++ | relref ++ | strong ++ | sub ++ | sup ++ | tt ++ | xref)*) + } + postamble = +- element postamble { (text | xref | eref | iref | cref | spanx)* ++ element postamble { ++ attribute xml:base { text }?, ++ attribute xml:lang { text }?, ++ (text | cref | eref | iref | spanx | xref)* + } + texttable = + element texttable { ++ attribute xml:base { text }?, ++ attribute xml:lang { text }?, + attribute anchor { xsd:ID }?, + [ a:defaultValue = "" ] attribute title { text }?, + [ a:defaultValue = "false" ] + attribute suppress-title { "true" | "false" }?, + [ a:defaultValue = "center" ] + attribute align { "left" | "center" | "right" }?, + [ a:defaultValue = "full" ] + attribute style { "all" | "none" | "headers" | "full" }?, ++ name?, + preamble?, + ttcol+, + c*, + postamble? + } + ttcol = + element ttcol { ++ attribute xml:base { text }?, ++ attribute xml:lang { text }?, + attribute width { text }?, + [ a:defaultValue = "left" ] + attribute align { "left" | "center" | "right" }?, ++ (cref | eref | iref | xref | text)* ++ } ++ c = ++ element c { ++ attribute xml:base { text }?, ++ attribute xml:lang { text }?, ++ (text | cref | eref | iref | spanx | xref)* ++ } ++ bcp14 = ++ element bcp14 { ++ attribute xml:base { text }?, ++ attribute xml:lang { text }?, + text + } +- c = element c { (text | xref | eref | iref | cref | spanx)* } +- back = element back { references*, section* } ++ br = ++ element br { ++ attribute xml:base { text }?, ++ attribute xml:lang { text }?, ++ empty ++ } ++ back = ++ element back { ++ attribute xml:base { text }?, ++ attribute xml:lang { text }?, ++ displayreference*, ++ references*, ++ section* ++ } ++ displayreference = ++ element displayreference { ++ attribute xml:base { text }?, ++ attribute xml:lang { text }?, ++ attribute target { xsd:IDREF }, ++ attribute to { text } ++ } + references = + element references { +- [ a:defaultValue = "References" ] attribute title { text }?, +- reference+ ++ attribute xml:base { text }?, ++ attribute xml:lang { text }?, ++ attribute pn { text }?, ++ attribute anchor { xsd:ID }?, ++ attribute title { text }?, ++ name?, ++ (reference | referencegroup)* + } + reference = + element reference { ++ attribute xml:base { text }?, ++ attribute xml:lang { text }?, + attribute anchor { xsd:ID }, + attribute target { text }?, ++ [ a:defaultValue = "true" ] ++ attribute quoteTitle { "true" | "false" }?, + front, +- seriesInfo*, +- format*, +- annotation* ++ (annotation | format | refcontent | seriesInfo)* ++ } ++ referencegroup = ++ element referencegroup { ++ attribute xml:base { text }?, ++ attribute xml:lang { text }?, ++ attribute anchor { xsd:ID }, ++ reference+ + } + seriesInfo = + element seriesInfo { ++ attribute xml:base { text }?, ++ attribute xml:lang { text }?, + attribute name { text }, + attribute value { text }, ++ attribute asciiName { text }?, ++ attribute asciiValue { text }?, ++ attribute status { text }?, ++ [ a:defaultValue = "IETF" ] ++ attribute stream { "IETF" | "IAB" | "IRTF" | "independent" }?, + empty + } + format = + element format { ++ attribute xml:base { text }?, ++ attribute xml:lang { text }?, + attribute target { text }?, + attribute type { text }, + attribute octets { text }?, + empty + } + annotation = +- element annotation { (text | xref | eref | iref | cref | +- spanx)* } +- start = rfc ++ element annotation { ++ attribute xml:base { text }?, ++ attribute xml:lang { text }?, ++ (text ++ | bcp14 ++ | cref ++ | em ++ | eref ++ | iref ++ | relref ++ | spanx ++ | strong ++ | sub ++ | sup ++ | tt ++ | xref)* ++ } ++ refcontent = ++ element refcontent { ++ attribute xml:base { text }?, ++ attribute xml:lang { text }?, ++ (text | bcp14 | em | strong | sub | sup | tt)* ++ } ++ start |= rfc + +
+
+ +
+ + The IAB members at the time this memo was approved were + (in alphabetical order): + + +[[ A list will go here just before publication as an RFC ]] + +
+ +
+ + Thanks to everybody who reviewed this document and provided feedback and/or + specification text. Thanks especially go to Julian Reschke for editing + and those who provided feedback on that document. + + + We also thank Marshall T. Rose for both the original design and the reference + implementation of the "xml2rfc" processor. + +
+ +
+ +
diff --git a/refresh-inclusions.sh b/refresh-inclusions.sh index 663ffca..1f0c4c5 100755 --- a/refresh-inclusions.sh +++ b/refresh-inclusions.sh @@ -20,7 +20,7 @@ expand() { # end include /^<\?ENDINC .* \?>$/ { if ($2 != includefile) { - printf ("unexpected ENDINC, got %s but expected %s\n", $2, includefile) >> /dev/stderr + printf ("unexpected ENDINC, got %s but expected %s\n", $2, includefile) } includefile = ""; } diff --git a/xml2rfcv3-spec-deprecated.xml b/xml2rfcv3-spec-deprecated.xml index 9883c70..6f5316c 100644 --- a/xml2rfcv3-spec-deprecated.xml +++ b/xml2rfcv3-spec-deprecated.xml @@ -53,7 +53,7 @@ Deprecated. If the goal is to provide a single URI for - a reference, use the "target" attribute on <reference> instead. + a reference, use the "target" attribute in <reference> instead. This element appears as a child element of <reference> (). @@ -315,7 +315,7 @@ - Deprecated + Deprecated. Allowed values:
    @@ -331,7 +331,7 @@ - Deprecated + Deprecated. diff --git a/xml2rfcv3-spec.xml b/xml2rfcv3-spec.xml index 1ee388a..74a7cf8 100644 --- a/xml2rfcv3-spec.xml +++ b/xml2rfcv3-spec.xml @@ -97,7 +97,7 @@ - Provides additional prose augmenting a bibliographical reference. + Provides additional prose augmenting a bibliographic reference. This text is intended to be shown after the rest of the generated reference text. This element appears as a child element of <reference> (). @@ -161,7 +161,7 @@ The value ought to be either the full name or the abbreviation of one of the IETF areas as listed on . - The list will be kept by the RFC Series Editor. + A list of full names and abbreviations will be kept by the RFC Series Editor. This element appears as a child element of <front> (). @@ -179,7 +179,7 @@ This element allows the inclusion of "artwork" in the document. <artwork> provides - full control of horizontal whitespace and line breaks; thus is + full control of horizontal whitespace and line breaks; thus, it is used for a variety of things, such as diagrams ("line art") and protocol unit diagrams. Tab characters (U+0009) inside of this element are prohibited. @@ -198,7 +198,7 @@ There are at least five ways to include SVG in artwork in Internet-Drafts: Inline, by including all of the SVG in the content of the element, - such as: <artwork type="svg"><svg xmlns="http://www.w3.org/2000/svg" ..."> + such as: <artwork type="svg"><svg xmlns="http://www.w3.org/2000/svg..."> Inline, but using XInclude (see ), such as: <artwork type="svg"><xi:include href=...> As a data: URI, such as: <artwork type="svg" @@ -207,7 +207,7 @@ As a local file, such as: <artwork type="svg" src="diagram12.svg"> The use of SVG in Internet-Drafts and RFCs is covered in much more detail in - . + . The above methods for inclusion of SVG art can also be used for including text artwork, but using a data: URI is probably @@ -218,7 +218,7 @@ artwork that is split across pages from looking like two separate pieces of artwork. -See for a description of to deal with issues of using +See for a description of how to deal with issues of using "&" and "<" characters in artwork. This element appears as a child element of <aside> (), <blockquote> (), <dd> (), <figure> (), <li> (), <section> (), <td> (), and <th> (). @@ -247,7 +247,7 @@ See for a description of to deal with issues Controls whether the artwork appears left justified (default), centered, or right justified. - Artwork is aligned relative to left margin of document. + Artwork is aligned relative to the left margin of the document. Allowed values:
      @@ -265,7 +265,7 @@ See for a description of to deal with issues Alternative text description of the artwork (which is more than just a summary or caption). - When the art comes from the "src" attribute, + When the art comes from the "src" attribute and the format of that artwork supports alternate text, the alternative text comes from the text of the artwork itself, not from this attribute. The contents of this attribute are important to readers who are visually impaired, as well as @@ -306,8 +306,8 @@ See for a description of to deal with issues This attribute can be helpful for other kinds of tools (such as automated syntax checkers, which work by extracting the artwork). - Note that the "name" attribute does not need to be unique for artwork elements in a - document. If multiple artwork elements have the same name attribute, a processing tool might + Note that the "name" attribute does not need to be unique for <artwork> elements in a + document. If multiple <artwork> elements have the same "name" attribute, a processing tool might assume that the elements are all fragments of a single file, and the tool can collect those fragments for later processing. See for a discussion of possible problems with the value of this attribute. @@ -321,14 +321,14 @@ See for a description of to deal with issues - The URI reference of a graphics file (), or the name of a file on the local disk. + The URI reference of a graphics file , or the name of a file on the local disk. This can be a "data" URI that contains the contents of the graphics file. Note that the inclusion of art with the "src" attribute depends on the capabilities of the processing tool - reading the XML document. Tools need to be able to handle the file: URI, and should + reading the XML document. Tools need to be able to handle the file: URI, and they should be able to handle http: and https: URIs as well. The prep tool will be able to handle reading the "src" attribute. - If no URI scheme is given in the attribute, the attribute is considered to be a local file name + If no URI scheme is given in the attribute, the attribute is considered to be a local filename relative to the current directory. Processing tools must be careful to not accept dangerous values for the filename, particularly those that contain absolute references outside the current directory. @@ -337,7 +337,7 @@ See for a description of to deal with issues In some cases, the prep tool may remove the "src" attribute after processing its value. - See for a description of this. + See for a description of this. It is an error to have both a "src" attribute and content in the <artwork> element. @@ -363,10 +363,10 @@ See for a description of to deal with issues hex-dump svg - The RFC Series Editor will maintain a complete list of the preferred values on its + The RFC Series Editor will maintain a complete list of the preferred values on the RFC Editor web site, and that list is expected to be updated over time. Thus, a consumer of v3 XML should not cause a failure when it encounters an unexpected type or no type is specified. - The table will also indicate which type of art can appear in plaintext output (for example, type="svg" cannot). + The table will also indicate which type of art can appear in plain-text output (for example, type="svg" cannot). @@ -467,24 +467,20 @@ See for a description of to deal with issues The <author> elements contained within the document's <front> element - are used to fill the boilerplate, and also to generate the "Author's Address" + are used to fill the boilerplate and also to generate the "Author's Address" section (see ). Note that an "author" can also be just an organization (by not specifying any - of the name attributes, but adding the <organization> + of the "name" attributes, but adding the <organization> child element). Furthermore, the "role" attribute can be used to mark an author as - "editor". This is reflected both on the front page and in the "Author's Address" section, as well as in bibliographical + "editor". This is reflected both on the front page and in the "Author's Address" section, as well as in bibliographic references. Note that this specification does not define a precise meaning for the term "editor". - - See Section "Authors vs. Contributors" of - for more information. - This element appears as a child element of <front> (). Content model: @@ -560,7 +556,7 @@ See for a description of to deal with issues page, in footers, and in references. - Some processors will post-process the value, for instance when it only + Some processors will post-process the value -- for instance, when it only contains a single letter (in which case they might add a trailing dot). Relying on this kind of post-processing can lead to results varying across formatters and thus ought to be avoided. @@ -640,7 +636,7 @@ See for a description of to deal with issues - Marks text that are phrases defined in BCP 14 such as "MUST", "SHOULD NOT", and so on. When shown + Marks text that are phrases defined in such as "MUST", "SHOULD NOT", and so on. When shown in some of the output representations, the text in this element might be highlighted. The use of this element is optional. @@ -664,7 +660,7 @@ See for a description of to deal with issues - Specifies a block of text is a quotation. + Specifies that a block of text is a quotation. This element appears as a child element of <section> (). @@ -760,7 +756,7 @@ See for a description of to deal with issues - The source of the citation. This must be a URI. If the quotedFrom attribute is given, this URI will be + The source of the citation. This must be a URI. If the "quotedFrom" attribute is given, this URI will be used by processing tools as the link for the text of that attribute. @@ -787,7 +783,7 @@ See for a description of to deal with issues - Holds the boilerplate text for the document. This section is filled in by the prep tool. + Holds the boilerplate text for the document. This element is filled in by the prep tool. This element contains <section> elements. Every <section> @@ -1028,7 +1024,7 @@ See for a description of to deal with issues In dates in <reference> elements, the date information can have prose text for the month or year. For example, vague dates (year="ca. 2000"), date ranges (year="2012-2013"), - non-specific months (month="Second quarter") and so on are allowed. + non-specific months (month="Second quarter"), and so on are allowed. @@ -1179,13 +1175,13 @@ See for a description of to deal with issues This element gives a mapping between the anchor of a reference and a name that will be displayed instead. - This allows authors to display more mnemonic anchor names for automatically-included references. + This allows authors to display more mnemonic anchor names for automatically included references. The mapping in this element only applies to <xref> elements whose format is "default". For example, if the reference uses the anchor "RFC6949", the following would cause that anchor in the body of displayed documents to be "RFC-dev":
      -<displayreference target="RFC6449" to="RFC-dev"/> +<displayreference target="RFC6949" to="RFC-dev"/>
      @@ -1193,8 +1189,8 @@ See for a description of to deal with issues If a reference section is sorted, this element changes the sort order.
      - It is expected that this element will only be valid in input documents. It will be likely be removed by prep - tools when preparing a final version after those tools have replaced all of the associated anchors, targets, and derivedContent + It is expected that this element will only be valid in input documents. It will likely be removed by prep + tools when preparing a final version after those tools have replaced all of the associated anchors, targets, and "derivedContent" attributes. This element appears as a child element of <back> (). @@ -1223,7 +1219,7 @@ See for a description of to deal with issues This attribute is a name that will be displayed as the anchor instead of the anchor that is given in the <reference> element. The string given must start with one of the following - characters: 0-9, a-z, A-Z. The other characters in the string must be 0-9, a-z, A-Z, "-", ".", and "_". + characters: 0-9, a-z, or A-Z. The other characters in the string must be 0-9, a-z, A-Z, "-", ".", or "_". @@ -1279,7 +1275,7 @@ See for a description of to deal with issues - The hanging attribute defines whether or not the term appears on the same line as the definition. + The "hanging" attribute defines whether or not the term appears on the same line as the definition. hanging="true" indicates that the term is to the left of the definition, while hanging="false" indicates that the term will be on a separate line. @@ -1382,7 +1378,7 @@ See for a description of to deal with issues - Indicates text that is semantically emphasized. This element will be displayed as italic after processing. + Indicates text that is semantically emphasized. Text enclosed within this element will be displayed as italic after processing. This element can be combined with other character formatting elements, and the formatting will be additive. @@ -1471,7 +1467,7 @@ See for a description of to deal with issues
      If the <eref> element has non-empty text content, formatters should use the content as the displayed text that is linked. - Otherwise the formatter should use the value of the "target" attribute as the displayed text. + Otherwise, the formatter should use the value of the "target" attribute as the displayed text. Formatters will link the displayed text to the value of the "target" attribute in a manner appropriate for the output format. @@ -1484,7 +1480,7 @@ See for a description of to deal with issues - An HTML formatter might generate + An HTML formatter might generate:
      This is described at @@ -1504,7 +1500,7 @@ See for a description of to deal with issues
      - An HTML formatter might generate + An HTML formatter might generate:
      This is described @@ -1525,7 +1521,7 @@ See for a description of to deal with issues - URI of the link target (). + URI of the link target . This must begin with a scheme name (such as "https://") and thus not be relative to the URL of the current document. @@ -1609,7 +1605,7 @@ See for a description of to deal with issues Deprecated. If the goal is to provide a single URI for - a reference, use the "target" attribute on <reference> instead. + a reference, use the "target" attribute in <reference> instead. @@ -1698,7 +1694,7 @@ See for a description of to deal with issues the Abstract, and additional notes. - A <front> element may have more than one <seriesInfo> elements. + A <front> element may have more than one <seriesInfo> element. A <seriesInfo> element determines the document number (for RFCs) or name (for Internet-Drafts). Another <seriesInfo> element determines the "maturity level" @@ -1706,8 +1702,7 @@ See for a description of to deal with issues "Standards Track", "bcp" for "BCP", "info" for "Informational", "exp" for "Experimental", and "historic" for "Historic". The "name" attributes of those - multiple <seriesInfo> elements interact as described in the section on - <seriesInfo>. + multiple <seriesInfo> elements interact as described in . This element appears as a child element of <reference> () and <rfc> (). @@ -1977,14 +1972,15 @@ See for a description of to deal with issues a <link> element: - The current ISSN for the RFC series. + The current International Standard Serial Number (ISSN) for the RFC Series. The value for the "rel" attribute is "item". The link should use the form "urn:issn:". - The DOI for this document. + The Digital Object Identifier (DOI) for this document. The value for the "rel" attribute is "describedBy". - The link should use the form specified in . + The link should use the form specified in ; + this is expected to change in the future. The Internet-Draft that was submitted to the RFC Editor to become the published RFC. @@ -1994,7 +1990,7 @@ See for a description of to deal with issues A representation of the document offered by the document author. The value for the "rel" attribute is "alternate". - The link can be to a personally-run web site. + The link can be to a personally run web site. @@ -2026,7 +2022,7 @@ See for a description of to deal with issues The relationship of the external document to this one. The relationships are taken from - Link Relations registry maintained by IANA . + the "Link Relations" registry maintained by IANA . @@ -2062,8 +2058,9 @@ See for a description of to deal with issues - The name of the section, note, figure, or texttable. This name can have flow markup such - as to make some characters use a fixed-width font, or to include references. + The name of the section, note, figure, or texttable. This name can + indicate markup of flowing text (for example, including references or + making some characters use a fixed-width font). This element appears as a child element of <figure> (), <note> (), <references> (), <section> (), <table> (), and <texttable> (). @@ -2102,8 +2099,8 @@ See for a description of to deal with issues Creates an unnumbered, titled block of text that appears after the Abstract. - It is usually used for additional information to reviewers (working - group information, mailing list, ...), or for additional publication + It is usually used for additional information to reviewers (Working + Group information, mailing list, ...) or for additional publication information such as "IESG Notes". This element appears as a child element of <front> (). @@ -2144,7 +2141,7 @@ See for a description of to deal with issues If set to "true", this note is marked in the prep tool with text indicating that it should be removed before the document is published as an RFC. - That text will be “This note is to be removed before publishing as an RFC.”. + That text will be "This note is to be removed before publishing as an RFC." Allowed values:
        @@ -2208,7 +2205,7 @@ See for a description of to deal with issues When the prep tool sees an <ol> element with a "group" attribute that has already been seen, it continues the numbering of the list from where the previous list with the same group name left off. - If an <ol> element has both a "group" and "start" attribute, the group's + If an <ol> element has both a "group" attribute and a "start" attribute, the group's numbering is reset to the given start value. @@ -2237,7 +2234,7 @@ See for a description of to deal with issues - The ordinal value to start the list at. This defaults to "1", and must be an integer of 0 or greater. + The ordinal value at which to start the list. This defaults to "1" and must be an integer of 0 or greater. @@ -2257,7 +2254,7 @@ See for a description of to deal with issues Lowercase Roman numerals (i, ii, iii, ...) Uppercase Roman numerals (I, II, III, ...) - For type "a" and "A", after the 26th entry, the numbering starts at "aa"/"AA", then + For types "a" and "A", after the 26th entry, the numbering starts at "aa"/"AA", then "ab"/"AB", and so on. @@ -2301,7 +2298,7 @@ See for a description of to deal with issues - Specifies the affiliation () of an author. + Specifies the affiliation of an author. This information appears both in the "Author's Address" section and @@ -2349,7 +2346,7 @@ See for a description of to deal with issues The value is expected to be the scheme-specific part of a "tel" URI - (so does not include the prefix "tel:"), using the "global-number-digits" + (and so does not include the prefix "tel:"), using the "global-number-digits" syntax. See for details. @@ -2510,7 +2507,7 @@ See for a description of to deal with issues - Represents a bibliographical reference. + Represents a bibliographic reference. This element appears as a child element of <referencegroup> () and <references> (). @@ -2548,7 +2545,7 @@ See for a description of to deal with issues Document-wide unique identifier for this reference. Usually, this will - be used both to "label" the reference in the "References" section, and + be used both to "label" the reference in the "References" section and as an identifier in links to this reference entry. @@ -2592,8 +2589,8 @@ See for a description of to deal with issues Represents a list of bibliographic references that will be represented as a single reference. - This is most often used for references in the STD and BCP series, where a single reference - (such as "BCP 9") encompasses more than one RFC. + This is most often used to reference STDs and BCPs, where a single reference + (such as "BCP 9") may encompass more than one RFC. This element appears as a child element of <references> (). @@ -2614,7 +2611,7 @@ See for a description of to deal with issues Document-wide unique identifier for this reference group. Usually, this will - be used both to "label" the reference group in the "References" section, and + be used both to "label" the reference group in the "References" section and as an identifier in links to this reference entry. @@ -2629,12 +2626,12 @@ See for a description of to deal with issues - Contains a set of bibliographical references. + Contains a set of bibliographic references. - In the early days of the RFC series, there was only one "References" section per RFC. This convention + In the early days of the RFC Series, there was only one "References" section per RFC. This convention was later changed to group references into two sets, "Normative" and "Informative", - as described in ). + as described in . This vocabulary supports the split with the <name> child element. In general, the title should be either "Normative References" or "Informative References". @@ -2668,7 +2665,7 @@ See for a description of to deal with issues - An optional user-supplied for this section. + An optional user-supplied identifier for this set of references. @@ -2727,8 +2724,8 @@ See for a description of to deal with issues The "target" attribute is required, and it must be the anchor of a <reference> element. - The "section" attribute is required, and the "relative" attribute is option. - If reference is not an RFC or Internet-Draft that is in the v3 format, the element MUST have a "relative" attribute; + The "section" attribute is required, and the "relative" attribute is optional. + If the reference is not an RFC or Internet-Draft that is in the v3 format, the element needs to have a "relative" attribute; in this case, the value of the "section" attribute is ignored. @@ -2736,7 +2733,7 @@ See for a description of to deal with issues
        See - <relref section="2.3" target="RFC7878" displayFormat="bare"> + <relref section="2.3" target="RFC9999" displayFormat="bare"> the protocol overview</relref> for more information. @@ -2747,7 +2744,7 @@ See for a description of to deal with issues
        See - <a href="http://www.rfc-editor.org/rfc/rfc7878.html#s-2.3"> + <a href="http://www.rfc-editor.org/rfc/rfc9999.html#s-2.3"> the protocol overview</a> for more information. @@ -2782,7 +2779,7 @@ See for a description of to deal with issues
        See - <relref section="2.3" target="RFC7878" displayFormat="of"/> + <relref section="2.3" target="RFC9999" displayFormat="of"/> for an overview.
        @@ -2792,15 +2789,15 @@ See for a description of to deal with issues
        See - <a href="http://www.rfc-editor.org/info/rfc7878#s-2.3"> + <a href="http://www.rfc-editor.org/info/rfc9999#s-2.3"> Section 2.3</a> of - [<a href="#RFC7878">RFC7878</a>] + [<a href="#RFC9999">RFC9999</a>] for an overview.
        - Note that "displayFormat='of'" is the default for <relref> so it does not need to be given in + Note that "displayFormat='of'" is the default for <relref>, so it does not need to be given in a <relref> element if that format is desired. @@ -2817,7 +2814,7 @@ See for a description of to deal with issues
        See - <relref section="2.3" target="RFC7878" displayFormat="comma"/>, + <relref section="2.3" target="RFC9999" displayFormat="comma"/>, for an overview.
        @@ -2827,8 +2824,8 @@ See for a description of to deal with issues
        See - [<a href="#RFC7878">RFC7878</a>], - <a href="http://www.rfc-editor.org/info/rfc7878#s-2.3"> + [<a href="#RFC9999">RFC9999</a>], + <a href="http://www.rfc-editor.org/info/rfc9999#s-2.3"> Section 2.3</a>, for an overview.
        @@ -2847,18 +2844,18 @@ See for a description of to deal with issues
        See - <relref section="2.3" target="RFC7878" displayFormat="parens"/> + <relref section="2.3" target="RFC9999" displayFormat="parens"/> for an overview.
        - An HTML formatter might generate + An HTML formatter might generate:
        See - [<a href="#RFC7878">RFC7878</a>] - (<a href="http://www.rfc-editor.org/info/rfc7878#s-2.3"> + [<a href="#RFC9999">RFC9999</a>] + (<a href="http://www.rfc-editor.org/info/rfc9999#s-2.3"> Section 2.3</a>) for an overview. @@ -2877,10 +2874,10 @@ See for a description of to deal with issues For example:
        - See Section - <relref section="2.3" target="RFC7878" displayFormat="bare"/> + See Sections + <relref section="2.3" target="RFC9999" displayFormat="bare"/> and - <relref section="2.4" target="RFC7878" displayFormat="of"/> + <relref section="2.4" target="RFC9999" displayFormat="of"/> for an overview.
        @@ -2889,13 +2886,13 @@ See for a description of to deal with issues An HTML formatter might generate:
        - See Section - <a href="http://www.rfc-editor.org/info/rfc7878#s-2.3"> + See Sections + <a href="http://www.rfc-editor.org/info/rfc9999#s-2.3"> 2.3</a> and - <a href="http://www.rfc-editor.org/info/rfc7878#s-2.4"> + <a href="http://www.rfc-editor.org/info/rfc9999#s-2.4"> Section 2.4</a> of - [<a href="#RFC7878">RFC7878</a>] + [<a href="#RFC9999">RFC9999</a>] for an overview.
        @@ -3110,7 +3107,7 @@ See for a description of to deal with issues The date that the XML was processed by a prep tool. This is included in the XML file just before it is saved to disk. - The value is formatted using the 'date-time' format defined in Section 5.6 of . + The value is formatted using the "date-time" format defined in . The "time-offset" should be "Z". @@ -3185,7 +3182,7 @@ See for a description of to deal with issues - Specifies number of levels of heading that formatter is requested to include in the table of contents; the default is "3". + Specifies the number of levels of headings that a formatter is requested to include in the table of contents; the default is "3". @@ -3326,7 +3323,7 @@ See for a description of to deal with issues If set to "false", the formatter is requested to not display a section number. The prep tool will verify that such a - section is not followed by a numbered section in a part, and will verify that the section is a + section is not followed by a numbered section in this part of the document and will verify that the section is a top-level section. Allowed values: @@ -3345,7 +3342,7 @@ See for a description of to deal with issues If set to "true", this note is marked in the prep tool with text indicating that it should be removed before the document is published as an RFC. - That text will be “This note is to be removed before publishing as an RFC.”. + That text will be "This note is to be removed before publishing as an RFC." Allowed values:
          @@ -3378,8 +3375,8 @@ See for a description of to deal with issues <rfc> element, and of course only if the table of contents is being created based on the "tocInclude" attribute of the <rfc> element. If this is set to "exclude", any section - below this one will be excluded as well. The "default" value indicates to - include the section if it would be included by the tocDepth attribute of the + below this one will be excluded as well. The "default" value indicates + inclusion of the section if it would be included by the tocDepth attribute of the <rfc> element. Allowed values: @@ -3404,16 +3401,16 @@ See for a description of to deal with issues specifies an identifier within that series. - A processing tool determines if it is working on an RFC or an Internet-Draft by inspecting the + A processing tool determines whether it is working on an RFC or an Internet-Draft by inspecting the "name" attribute of a <seriesInfo> element inside the <front> element inside the <rfc> element, looking for "RFC" or "Internet-Draft". (Specifying neither value in any of the <seriesInfo> elements can be useful for producing other types of - documents, but is out of scope for this specification.) + documents but is out of scope for this specification.) It is invalid to have multiple <seriesInfo> elements inside the same <front> -element containing the same "name" value. Some combinations of <seriesInfo> name attribute values +element containing the same "name" value. Some combinations of <seriesInfo> "name" attribute values make no sense, such as having both <seriesInfo name="rfc"/> and <seriesInfo name="Internet-Draft"/> in the same <front> element. @@ -3451,7 +3448,7 @@ in the same <front> element. - The name of the series. The currently-known values are "RFC", "Internet-Draft" + The name of the series. The currently known values are "RFC", "Internet-Draft", and "DOI". The RFC Series Editor may change this list in the future. @@ -3467,29 +3464,29 @@ in the same <front> element. "standard", "full-standard", "bcp", "fyi", "informational", "experimental", or "historic" to indicate the intended status of this Internet-Draft, if it were to be later published as an RFC. If such an additional <seriesInfo> element has - one of those statuses, the name MUST be "". + one of those statuses, the name needs to be "". If a <front> element contains a <seriesInfo> element with a name of "RFC", it can also have at most one additional <seriesInfo> element with a "status" attribute whose value is of "full-standard", "bcp", or "fyi" to indicate the current status of this RFC. If such an additional <seriesInfo> - element has one of those statuses, the value attribute for that name MUST be the number within + element has one of those statuses, the "value" attribute for that name needs to be the number within that series. That <front> element might also contain an additional - <seriesInfo> with the status of "info, "exp", or "historic" and a name of "" to + <seriesInfo> element with the status of "info", "exp", or "historic" and a name of "" to indicate the status of the RFC. A <front> element that has a <seriesInfo> element - that has the name "Internet-Draft" MUST NOT also have a <seriesInfo> + that has the name "Internet-Draft" cannot also have a <seriesInfo> element that has the name "RFC". - The <seriesInfo> can contain the DOI for the referenced document. - This MUST NOT be used when <seriesInfo> - element is an eventual child element of a <rfc> element, - only as an enventual child of a <reference> element. - The value attribute should use the form specified in . + The <seriesInfo> element can contain the DOI for the referenced document. + This cannot be used when the <seriesInfo> + element is an eventual child element of an <rfc> element -- + only as an eventual child of a <reference> element. + The "value" attribute should use the form specified in . @@ -3502,7 +3499,7 @@ in the same <front> element. - The status of this document. The currently-known values are "standard", "informational", "experimental", "bcp", "fyi", and "full-standard". + The status of this document. The currently known values are "standard", "informational", "experimental", "bcp", "fyi", and "full-standard". The RFC Series Editor may change this list in the future. @@ -3514,7 +3511,7 @@ in the same <front> element. - The stream (as described in ) that originated of this document. + The stream (as described in ) that originated the document. (The RFC Series Editor may change this list in the future.) Allowed values: @@ -3539,7 +3536,7 @@ in the same <front> element. For BCPs, FYIs, RFCs, and STDs, this is the number within the series. For Internet-Drafts, it is the full draft name (ending with the two-digit - version number). For DOIs, the value is given such as "10.17487/rfc1149", + version number). For DOIs, the value is given, such as "10.17487/rfc1149", as described in . @@ -3560,15 +3557,15 @@ in the same <front> element. - This element allows the inclusion of sourcecode into the document. + This element allows the inclusion of source code into the document. - When rendered, sourcecode is always shown in a monospace font. + When rendered, source code is always shown in a monospace font. When <sourcecode> is a child of <figure> or <section>, it provides full control of horizontal whitespace and line breaks. - When formatted, it is indented indented relative to the left margin of the enclosing element. + When formatted, it is indented relative to the left margin of the enclosing element. It is thus useful for source code and formal languages (such as ABNF or the RNC notation used in this document). - (When <sourcecode> is a child of other elements, if flows with the text that surrounds it.) + (When <sourcecode> is a child of other elements, it flows with the text that surrounds it.) Tab characters (U+0009) inside of this element are prohibited. @@ -3581,8 +3578,8 @@ in the same <front> element. source code that is split across pages from looking like two separate pieces of code. -See for a description of to deal with issues of using -"&" and "<" characters in sourcecode. +See for a description of how to deal with issues of using +"&" and "<" characters in source code. This element appears as a child element of <blockquote> (), <dd> (), <figure> (), <li> (), <section> (), <td> (), and <th> (). @@ -3595,7 +3592,7 @@ See for a description of to deal with issues - Document-wide unique identifier for this sourcecode. + Document-wide unique identifier for this source code. @@ -3608,10 +3605,10 @@ See for a description of to deal with issues A filename suitable for the contents (such as for extraction to a local file). This attribute can - be helpful for other kinds of tools (such as automated syntax checkers + be helpful for other kinds of tools (such as automated syntax checkers, which work by extracting the source code). - Note that the "name" attribute does not need to be unique for artwork elements in a - document. If multiple sourcecode elements have the same name attribute, a formatter might + Note that the "name" attribute does not need to be unique for <artwork> elements in a + document. If multiple <sourcecode> elements have the same "name" attribute, a formatter might assume that the elements are all fragments of a single file, and such a formatter can collect those fragments for later processing. @@ -3624,7 +3621,7 @@ See for a description of to deal with issues - The URI reference of a source file (). + The URI reference of a source file . It is an error to have both a "src" attribute and content in the <sourcecode> element. @@ -3638,7 +3635,7 @@ See for a description of to deal with issues - Specifies the type of the sourcecode. The value of this attribute is free text with + Specifies the type of the source code. The value of this attribute is free text with certain values designated as preferred. @@ -3662,7 +3659,7 @@ See for a description of to deal with issues xml yang - The RFC Series Editor will maintain a complete list of the preferred values on its + The RFC Series Editor will maintain a complete list of the preferred values on the RFC Editor web site, and that list is expected to be updated over time. Thus, a consumer of v3 XML should not cause a failure when it encounters an unexpected type or no type is specified. @@ -3705,7 +3702,7 @@ See for a description of to deal with issues - Indicates text that is semantically strong. This element will be displayed as bold after processing. + Indicates text that is semantically strong. Text enclosed within this element will be displayed as bold after processing. This element can be combined with other character formatting elements, and the formatting will be additive. @@ -3929,7 +3926,7 @@ See for a description of to deal with issues - Deprecated. Instead use <dd> inside of a definition list (<dl>). + Deprecated. Instead, use <dd> inside of a definition list (<dl>). @@ -3940,9 +3937,9 @@ See for a description of to deal with issues - Acts as a hint to the output formatters that do pagination to do a best effort attempt to + Acts as a hint to the output formatters that do pagination to do a best-effort attempt to keep the paragraph with the next element, whatever that happens to be. For example, the - HTML output @media print CSS might translate this to page-break-after: avoid. For PDF, the + HTML output @media print CSS ("CSS" refers to Cascading Style Sheets) might translate this to page-break-after: avoid. For PDF, the paginator could attempt to keep the paragraph with the next element. Note: this attribute is strictly a hint and not always actionable. @@ -3960,7 +3957,7 @@ See for a description of to deal with issues - Acts as a hint to the output formatters that do pagination to do a best effort attempt to + Acts as a hint to the output formatters that do pagination to do a best-effort attempt to keep the paragraph with the previous element, whatever that happens to be. For example, the HTML output @media print CSS might translate this to page-break-before: avoid. For PDF, the paginator could attempt to keep the paragraph with the previous element. Note: @@ -3987,10 +3984,10 @@ See for a description of to deal with issues If the element contains a <name> element, the caption will also show that name. - Inside the <table> element is optionally a <thead> element to - contain the rows that will be the table's heading and optionally a <tfoot> element + Inside the <table> element is, optionally, a <thead> element to + contain the rows that will be the table's heading and, optionally, a <tfoot> element to contain the rows of the table's footer. If the XML is converted to a representation that has page - breaks (such as PDFs, or printed HTML), the header and footer are meant to appear on each page. + breaks (such as PDFs or printed HTML), the header and footer are meant to appear on each page. This element appears as a child element of <aside> () and <section> (). @@ -4167,7 +4164,7 @@ See for a description of to deal with issues Controls whether the content of the cell appears left justified (default), centered, - or right justified. Note that "center" or "right" probably only work well in cells with plain text; any + or right justified. Note that "center" or "right" will probably only work well in cells with plain text; any other elements might make the contents render badly. Allowed values: @@ -4347,7 +4344,7 @@ See for a description of to deal with issues Controls whether the content of the cell appears left justified (default), centered, - or right justified. Note that "center" or "right" probably only work well in cells with plain text; any + or right justified. Note that "center" or "right" will probably only work well in cells with plain text; any other elements might make the contents render badly. Allowed values: @@ -4601,7 +4598,7 @@ See for a description of to deal with issues - Defines whether or not the label is empty. empty="true" indicates that no label be shown. + Defines whether or not the label is empty. empty="true" indicates that no label will be shown. Allowed values:
            @@ -4708,7 +4705,7 @@ See for a description of to deal with issues The "derivedContent" attribute will contain just a counter. This is used for targets that are - <section>, <figure>, <table>, or item in an ordered list. + <section>, <figure>, <table>, or items in an ordered list. Using "format='counter'" where the target is any other type of element is an error. @@ -4723,7 +4720,10 @@ See for a description of to deal with issues
        - An HTML formatter might generate "See Section <a href="#overview">1.7</a> for an overview.". + An HTML formatter might generate: + + + See Section <a href="#overview">1.7</a> for an overview. @@ -4748,7 +4748,10 @@ See for a description of to deal with issues
        - An HTML formatter might generate "See <a href="#overview">Section 1.7</a> for an overview.". + An HTML formatter might generate: + + + See <a href="#overview">Section 1.7</a> for an overview. @@ -4814,7 +4817,7 @@ See for a description of to deal with issues Identifies the document component being referenced. The value needs to match the value of the "anchor" attribute of an - element in the document, otherwise it is an error. + element in the document; otherwise, it is an error. \ No newline at end of file diff --git a/xml2rfcvoc.mk b/xml2rfcvoc.mk deleted file mode 100644 index c7dbdda..0000000 --- a/xml2rfcvoc.mk +++ /dev/null @@ -1,38 +0,0 @@ -xml2rfc.all: \ - draft-iab-xml2rfc-latest.xml xml2rfcv3-annotated.rng - -xml2rfcv3.rnc: xml2rfcv3.rng - java -jar ../../tools/trang.jar -o lineLength=69 $< $@ - -#xml2rfcv3.dtd: xml2rfcv3.rng -# java -jar ../../tools/trang.jar $< $@ - -xml2rfcv3-annotated.rng: xml2rfcv3.rng annotate-rng.xslt draft-iab-xml2rfc-latest.xml - saxon $< annotate-rng.xslt doc=draft-iab-xml2rfc-latest.xml > $@ - -xml2rfcv3-spec.xml: xml2rfcv3.rng rng2xml2rfc.xslt - saxon $< rng2xml2rfc.xslt voc=v3 specsrc=draft-iab-xml2rfc-latest.xml > $@ - -xml2rfcv3-spec-deprecated.xml: xml2rfcv3.rng rng2xml2rfc.xslt - saxon $< rng2xml2rfc.xslt specsrc=draft-iab-xml2rfc-latest.xml deprecated=yes > $@ - -xml2rfcv3.rnc.folded: xml2rfcv3.rnc - ./fold-rnc.sh $< > $@ - -draft-iab-xml2rfc-latest.xml: xml2rfcv3-spec.xml xml2rfcv3-spec-deprecated.xml xml2rfcv3.rnc.folded differences-from-v2.txt - cp -v $@ $@.bak - ./refresh-inclusions.sh $@ - -xml2rfcv2 = xml2rfcv2.rnc - -differences-from-v2.txt: xml2rfcv3.rnc $(xml2rfcv2) - fold -w66 -s $(xml2rfcv2) > $@.v2 - fold -w66 -s $< > $@.v3 - diff -w --old-line-format='- %L' --new-line-format='+ %L' \ - --unchanged-line-format=' %L' -d $@.v2 $@.v3 \ - | sed "s/\&/\&/g" > $@ - rm -f $@.v2 $@.v3 - -xml2rfcv3-full.rng: xml2rfcv3.rng - ./postprocess-rng.py -