idnits 2.17.1 draft-reschke-xml2rfc-07.txt: Checking boilerplate required by RFC 5378 and the IETF Trust (see https://trustee.ietf.org/license-info): ---------------------------------------------------------------------------- -- The document has an IETF Trust Provisions (28 Dec 2009) Section 6.c(i) Publication Limitation clause. -- The document has an IETF Trust Provisions (28 Dec 2009) Section 6.c(ii) Publication Limitation clause. If this document is intended for submission to the IESG for publication, this constitutes an error. Checking nits according to https://www.ietf.org/id-info/1id-guidelines.txt: ---------------------------------------------------------------------------- No issues found here. Checking nits according to https://www.ietf.org/id-info/checklist : ---------------------------------------------------------------------------- == There are 1 instance of lines with non-RFC2606-compliant FQDNs in the document. -- The draft header indicates that this document obsoletes RFC2629, but the abstract doesn't seem to mention this, which it should. Miscellaneous warnings: ---------------------------------------------------------------------------- == The copyright year in the IETF Trust and authors Copyright Line does not match the current year == The document seems to contain a disclaimer for pre-RFC5378 work, but was first submitted on or after 10 November 2008. The disclaimer is usually necessary only for documents that revise or obsolete older RFCs, and that take significant amounts of text from those RFCs. If you can contact all authors of the source material and they are willing to grant the BCP78 rights to the IETF Trust, you can and should remove the disclaimer. Otherwise, the disclaimer is needed and you can ignore this comment. (See the Legal Provisions document at https://trustee.ietf.org/license-info for more information.) -- The document date (April 8, 2014) is 3664 days in the past. Is this intentional? Checking references for intended status: Proposed Standard ---------------------------------------------------------------------------- (See RFCs 3967 and 4897 for information about using normative references to lower-maturity documents in RFCs) -- Possible downref: Non-RFC (?) normative reference: ref. 'XML' -- Obsolete informational reference (is this intentional?): RFC 2223 (Obsoleted by RFC 7322) -- Obsolete informational reference (is this intentional?): RFC 2629 (Obsoleted by RFC 7749) -- Obsolete informational reference (is this intentional?): RFC 3023 (Obsoleted by RFC 7303) -- Obsolete informational reference (is this intentional?): RFC 5741 (Obsoleted by RFC 7841) == Outdated reference: A later version (-02) exists of draft-iab-styleguide-01 Summary: 0 errors (**), 0 flaws (~~), 4 warnings (==), 9 comments (--). Run idnits with the --verbose option for more detailed information about the items above. -------------------------------------------------------------------------------- 2 Network Working Group J. Reschke 3 Internet-Draft greenbytes 4 Obsoletes: 2629 (if approved) April 8, 2014 5 Intended status: Standards Track 6 Expires: October 10, 2014 8 The 'XML2RFC' version 2 Vocabulary 9 draft-reschke-xml2rfc-07 11 Abstract 13 This document defines the 'XML2RFC' version 2 vocabulary; an XML- 14 based language used for writing RFCs and Internet-Drafts. 16 Editorial Note (To be removed by RFC Editor) 18 Discussion of this draft takes place on the XML2RFC mailing list 19 (xml2rfc@ietf.org), which has its home page at 20 . 22 Status of This Memo 24 This Internet-Draft is submitted in full conformance with the 25 provisions of BCP 78 and BCP 79. 27 Internet-Drafts are working documents of the Internet Engineering 28 Task Force (IETF). Note that other groups may also distribute 29 working documents as Internet-Drafts. The list of current Internet- 30 Drafts is at http://datatracker.ietf.org/drafts/current/. 32 Internet-Drafts are draft documents valid for a maximum of six months 33 and may be updated, replaced, or obsoleted by other documents at any 34 time. It is inappropriate to use Internet-Drafts as reference 35 material or to cite them other than as "work in progress." 37 This Internet-Draft will expire on October 10, 2014. 39 Copyright Notice 41 Copyright (c) 2014 IETF Trust and the persons identified as the 42 document authors. All rights reserved. 44 This document is subject to BCP 78 and the IETF Trust's Legal 45 Provisions Relating to IETF Documents 46 (http://trustee.ietf.org/license-info) in effect on the date of 47 publication of this document. Please review these documents 48 carefully, as they describe your rights and restrictions with respect 49 to this document. Code Components extracted from this document must 50 include Simplified BSD License text as described in Section 4.e of 51 the Trust Legal Provisions and are provided without warranty as 52 described in the Simplified BSD License. 54 Table of Contents 56 1. Introduction . . . . . . . . . . . . . . . . . . . . . . . . . 4 57 1.1. Syntax Notation . . . . . . . . . . . . . . . . . . . . . 4 58 2. Elements . . . . . . . . . . . . . . . . . . . . . . . . . . . 4 59 2.1. . . . . . . . . . . . . . . . . . . . . . . . . 4 60 2.2.
. . . . . . . . . . . . . . . . . . . . . . . . 4 61 2.3. . . . . . . . . . . . . . . . . . . . . . . . 5 62 2.4. . . . . . . . . . . . . . . . . . . . . . . . . . . 6 63 2.5. . . . . . . . . . . . . . . . . . . . . . . . . 6 64 2.6. . . . . . . . . . . . . . . . . . . . . . . . . . 8 65 2.7. . . . . . . . . . . . . . . . . . . . . . . . . . . 9 66 2.8. . . . . . . . . . . . . . . . . . . . . . . . . . . . 10 67 2.9. . . . . . . . . . . . . . . . . . . . . . . . . . . 10 68 2.10. . . . . . . . . . . . . . . . . . . . . . . . . . . 10 69 2.11. . . . . . . . . . . . . . . . . . . . . . . . . 10 70 2.12. . . . . . . . . . . . . . . . . . . . . . . . . . . 11 71 2.13. . . . . . . . . . . . . . . . . . . . . . . . . . . 11 72 2.14. . . . . . . . . . . . . . . . . . . . . . . . . . 12 73 2.15. . . . . . . . . . . . . . . . . . . . . . . . . . . 12 74 2.16. . . . . . . . . . . . . . . . . . . . . . . . 13 75 2.17.
. . . . . . . . . . . . . . . . . . . . . . . . . 13 76 2.18. . . . . . . . . . . . . . . . . . . . . . . . . . 15 77 2.19. . . . . . . . . . . . . . . . . . . . . . . . . . 15 78 2.20. . . . . . . . . . . . . . . . . . . . . . . . . . . 16 79 2.21. . . . . . . . . . . . . . . . . . . . . . . . . 17 80 2.22. . . . . . . . . . . . . . . . . . . . . . . . . . . 17 81 2.23. . . . . . . . . . . . . . . . . . . . . . . . . . 19 82 2.24. . . . . . . . . . . . . . . . . . . . . . . . . . . 19 83 2.25. . . . . . . . . . . . . . . . . . . . . . . 20 84 2.26. . . . . . . . . . . . . . . . . . . . . . . . . . 20 85 2.27. . . . . . . . . . . . . . . . . . . . . . . . . . 20 86 2.28. . . . . . . . . . . . . . . . . . . . . . . . 21 87 2.29. . . . . . . . . . . . . . . . . . . . . . . . . 21 88 2.30. . . . . . . . . . . . . . . . . . . . . . . . 22 89 2.31. . . . . . . . . . . . . . . . . . . . . . . . 22 90 2.32. . . . . . . . . . . . . . . . . . . . . . . . . . 23 91 2.33. . . . . . . . . . . . . . . . . . . . . . . . . . . 23 92 2.34.
. . . . . . . . . . . . . . . . . . . . . . . . 26 93 2.35. . . . . . . . . . . . . . . . . . . . . . . . 27 94 2.36. . . . . . . . . . . . . . . . . . . . . . . . . . 28 95 2.37. . . . . . . . . . . . . . . . . . . . . . . . . . 29 96 2.38. . . . . . . . . . . . . . . . . . . . . . . . . . . . 29 97 2.39. . . . . . . . . . . . . . . . . . . . . . . . 30 98 2.40. . . . . . . . . . . . . . . . . . . . . . . . . . 32 99 2.41. <ttcol> . . . . . . . . . . . . . . . . . . . . . . . . . 32 100 2.42. <uri> . . . . . . . . . . . . . . . . . . . . . . . . . . 33 101 2.43. <vspace> . . . . . . . . . . . . . . . . . . . . . . . . . 33 102 2.44. <workgroup> . . . . . . . . . . . . . . . . . . . . . . . 33 103 2.45. <xref> . . . . . . . . . . . . . . . . . . . . . . . . . . 34 104 3. Special Unicode Code Points . . . . . . . . . . . . . . . . . 35 105 4. Including Files . . . . . . . . . . . . . . . . . . . . . . . 36 106 5. Internationalization Considerations . . . . . . . . . . . . . 37 107 6. Security Considerations . . . . . . . . . . . . . . . . . . . 37 108 7. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 37 109 7.1. Internet Media Type Registration . . . . . . . . . . . . . 37 110 8. Acknowledgments . . . . . . . . . . . . . . . . . . . . . . . 39 111 9. References . . . . . . . . . . . . . . . . . . . . . . . . . . 39 112 9.1. Normative References . . . . . . . . . . . . . . . . . . . 39 113 9.2. Informative References . . . . . . . . . . . . . . . . . . 39 114 Appendix A. Front Page Generation . . . . . . . . . . . . . . . . 41 115 A.1. The /rfc/@category Attribute . . . . . . . . . . . . . . . 41 116 A.2. The /rfc/@ipr Attribute . . . . . . . . . . . . . . . . . 41 117 A.2.1. Current Values: '*trust200902' . . . . . . . . . . . . 42 118 A.2.2. Historic Values . . . . . . . . . . . . . . . . . . . 44 119 Appendix B. Changes from RFC 2629 ('v1') . . . . . . . . . . . . 44 120 B.1. Removed Elements . . . . . . . . . . . . . . . . . . . . . 44 121 B.2. Changed Defaults . . . . . . . . . . . . . . . . . . . . . 44 122 B.3. Changed Elements . . . . . . . . . . . . . . . . . . . . . 45 123 B.4. New Elements . . . . . . . . . . . . . . . . . . . . . . . 45 124 Appendix C. Relax NG Schema . . . . . . . . . . . . . . . . . . . 45 125 Appendix D. Proposed Future Changes for 'v3' . . . . . . . . . . 51 126 D.1. Contact Information . . . . . . . . . . . . . . . . . . . 51 127 D.2. Figures . . . . . . . . . . . . . . . . . . . . . . . . . 52 128 D.3. Linking . . . . . . . . . . . . . . . . . . . . . . . . . 52 129 D.4. Lists . . . . . . . . . . . . . . . . . . . . . . . . . . 52 130 D.5. References . . . . . . . . . . . . . . . . . . . . . . . . 53 131 D.6. Archival Considerations . . . . . . . . . . . . . . . . . 53 132 D.7. Document Metadata . . . . . . . . . . . . . . . . . . . . 53 133 D.8. Including Material . . . . . . . . . . . . . . . . . . . . 53 134 D.9. Misc. . . . . . . . . . . . . . . . . . . . . . . . . . . 54 135 Index . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 54 137 1. Introduction 139 This document describes version 2 ('v2') of the 'XML2RFC' vocabulary; 140 an XML-based language ('Extensible Markup Language', [XML]) used for 141 writing RFCs ([RFCSTYLE]) and Internet-Drafts ([IDGUIDE]). 143 It obsoletes the original version ("v1") [RFC2629], which contained 144 the original language definition, and which was subsequently extended 145 ("v2"). Furthermore, it discusses potential extensions in a future 146 revision ("v3"). 148 Note that the vocabulary contains certain constructs that might not 149 be used when generating the final text; however, they can provide 150 useful data for other uses (such index generation, populating a 151 keyword database, or syntax checks). 153 1.1. Syntax Notation 155 The XML vocabulary here is defined in prose, based on the Relax NG 156 schema ([RNC]) contained in Appendix C (specified in Relax NG Compact 157 Notation, "RNC"). 159 Note that the schema can be used for automated validity checks, but 160 certain constraints are only described in prose (example: the 161 conditionally required presence of the "abbrev" attribute). 163 2. Elements 165 The sections below describe all elements and their attributes. 167 Note that attributes not labeled "mandatory" are optional. 169 2.1. <abstract> 171 Contains the abstract of the document. The abstract ought to be 172 self-contained and thus should not contain references or unexpanded 173 abbreviations. See Section 4.3 of [RFCSTYLE] for more information. 175 This element appears as child element of: <front> (Section 2.19). 177 Content model: 179 One or more <t> elements (Section 2.38) 181 2.2. <address> 183 Provides address information for the author. 185 This element appears as child element of: <author> (Section 2.6). 187 Content model: 189 In this order: 191 1. One optional <postal> element (Section 2.27) 193 2. One optional <phone> element (Section 2.26) 195 3. One optional <facsimile> element (Section 2.16) 197 4. One optional <email> element (Section 2.14) 199 5. One optional <uri> element (Section 2.42) 201 2.3. <annotation> 203 Provides additional prose augmenting a bibliographical reference. 205 For instance: 207 <annotation> 208 Latest version available at <eref 209 target='http://www.w3.org/TR/xml'/>. 210 </annotation> 212 ...will generate the text used in the reference for [XML]. 214 This element appears as child element of: <reference> (Section 2.30). 216 Content model: 218 In any order: 220 o Text 222 o <xref> elements (Section 2.45) 224 o <eref> elements (Section 2.15) 226 o <iref> elements (Section 2.20) 228 o <cref> elements (Section 2.12) 230 o <spanx> elements (Section 2.36) 232 2.4. <area> 234 Provides information about the IETF area this document applies to 235 (currently not used when generating documents). 237 The value ought to be either the fullname or the abbreviation of one 238 of the IETF areas as listed on <http://www.ietf.org/iesg/area.html>: 239 "Applications", "app", "General", "gen", "Internet", "int", 240 "Operations and Management", "ops", "Real-time Applications and 241 Infrastructure", "rai", "Routing", "rtg", "Security", "sec", 242 "Transport", "tsv". 244 This element appears as child element of: <front> (Section 2.19). 246 Content model: only text content. 248 2.5. <artwork> 250 This element allows the inclusion of "artwork" into the document. 252 <artwork> is the only element in the vocabulary that provides full 253 control of horizontal whitespace and line breaks, and thus is used 254 for a variety of things, such as: 256 o diagrams ("line art"), 258 o source code, 260 o formal languages (such as ABNF or the RNC notation used in this 261 document), 263 o complex tables, or 265 o protocol unit diagrams. 267 Alternatively, the "src" attribute allows referencing an external 268 graphics file, such as a bitmap or a vector drawing. In this case, 269 the textual content acts as fallback for output formats that do not 270 support graphics, and thus ought to contain either a "line art" 271 variant of the graphics, or otherwise prose that describes the 272 included image in sufficient detail. Note that RFCs occasionally are 273 published with enhanced diagrams; a recent example is [RFC5598]. 275 This element appears as child element of: <figure> (Section 2.17). 277 Content model: 279 Text 281 2.5.1. 'align' attribute 283 Controls whether the artwork appears left (default), centered, or 284 right. 286 Allowed values: 288 o "left" (default) 290 o "center" 292 o "right" 294 2.5.2. 'alt' attribute 296 Alternative text description of the artwork (not just the caption). 298 2.5.3. 'height' attribute 300 The suggested height of the graphics included using the "src" 301 attribute. 303 This attribute is format-dependent and ought to be avoided. 305 When generating HTML output, current implementations copy the 306 attribute "as is". For other output formats it is usually ignored. 308 2.5.4. 'name' attribute 310 A filename suitable for the contents (such as for extraction to a 311 local file). 313 This attribute generally isn't used for document generation, but it 314 can be helpful for other kinds of tools (such as automated syntax 315 checkers which work by extracting the source code). 317 2.5.5. 'src' attribute 319 The URI of a graphics file. 321 Note that this can be a "data" URI ([RFC2397]) as well, in which case 322 the graphics file essentially is in-lined. 324 2.5.6. 'type' attribute 326 Specifies the type of the artwork. 328 The value either is a well-known keyword (such as "abnf"), or an 329 Internet Media Type (see [RFC2046]). 331 How it is used depends on context and application. For instance, a 332 formatter can attempt to syntax-highlight code in certain known 333 languages. 335 2.5.7. 'width' attribute 337 The suggested width of the graphics included using the "src" 338 attribute. 340 This attribute is format-dependent and ought to be avoided. 342 When generating HTML output, current implementations copy the 343 attribute "as is". For other output formats it is usually ignored. 345 2.5.8. 'xml:space' attribute 347 Determines whitespace handling. 349 "preserve" is both the default value and the only meaningful setting 350 anyway (because that's what the <artwork> element is for). 352 See also Section 2.10 of [XML]. 354 Allowed values: 356 o "default" 358 o "preserve" (default) 360 2.6. <author> 362 Provides information about a document author. 364 The <author> elements contained within the document's <front> element 365 are used to fill the boilerplate, and also to generate the "Author's 366 Address" section (see Section 4.12 of [RFCSTYLE]). 368 Note that an "author" can also be just an organization (by not 369 specifying any of the name attributes, but adding the <organization> 370 child element). 372 Furthermore, the "role" attribute can be used to mark an author as 373 "editor". This is reflected both on the front page and in 374 bibliographical references. Note that this specification does not 375 define a precise meaning for the term "editor". 377 See Section "Authors vs. Contributors" of [RFCPOLICY] for more 378 information. 380 This element appears as child element of: <front> (Section 2.19). 382 Content model: 384 In this order: 386 1. One optional <organization> element (Section 2.25) 388 2. One optional <address> element (Section 2.2) 390 2.6.1. 'fullname' attribute 392 The full name (used in the automatically generated "Author's Address" 393 section). 395 2.6.2. 'initials' attribute 397 Author initials (used on the front page and in references). 399 Initials should be provided as a whitespace separated list of pairs 400 of a letter and a dot. 402 2.6.3. 'role' attribute 404 Specifies the role the author had in creating the document. 406 Allowed values: 408 o "editor" 410 2.6.4. 'surname' attribute 412 The author's surname. 414 2.7. <back> 416 Contains the "back" part of the document: the references and 417 appendices. 419 This element appears as child element of: <rfc> (Section 2.33). 421 Content model: 423 In this order: 425 1. Optional <references> elements (Section 2.31) 427 2. Optional <section> elements (Section 2.34) 429 2.8. <c> 431 Provides the content of a cell in a table. 433 This element appears as child element of: <texttable> (Section 2.39). 435 Content model: 437 In any order: 439 o Text 441 o <xref> elements (Section 2.45) 443 o <eref> elements (Section 2.15) 445 o <iref> elements (Section 2.20) 447 o <cref> elements (Section 2.12) 449 o <spanx> elements (Section 2.36) 451 2.9. <city> 453 Gives the city name in a postal address. 455 This element appears as child element of: <postal> (Section 2.27). 457 Content model: only text content. 459 2.10. <code> 461 Gives the postal region code. 463 This element appears as child element of: <postal> (Section 2.27). 465 Content model: only text content. 467 2.11. <country> 469 Gives the country in a postal address. 471 This element appears as child element of: <postal> (Section 2.27). 473 Content model: only text content. 475 2.12. <cref> 477 Represents a comment. 479 Comments can be used in a document while it is work-in-progress. 480 They usually appear either inline and visually highlighted, at the 481 end of the document (depending on file format and settings of the 482 formatter), or not at all (when generating an RFC). 484 This element appears as child element of: <annotation> (Section 2.3), 485 <c> (Section 2.8), <postamble> (Section 2.28), <preamble> 486 (Section 2.29), and <t> (Section 2.38). 488 Content model: only text content. 490 2.12.1. 'anchor' attribute 492 Document-wide unique identifier for this comment. The processor will 493 auto-generate an identifier when none is given. 495 The value needs to be a valid XML "Name" (Section 2.3 of [XML]). 497 2.12.2. 'source' attribute 499 Holds the "source" of a comment, such as the name or the initials of 500 the person who made the comment. 502 2.13. <date> 504 Provides information about the publication date. 506 Note that this element is used both for the boilerplate of the 507 document being produced, and also inside bibliographic references. 509 In the first case, it defines the publication date, which, when 510 producing Internet-Drafts, will be used for computing the expiration 511 date (see Section 8 of [IDGUIDE]). When "year", "month" or "day" are 512 left out, the processor will attempt to use the current system date 513 if the attributes that are specified do match the system date. 515 Note that month names need to match the full (English) month name 516 ("January", "February", "March", "April", "May, "June", "July", 517 "August", "September", "October", "November", or "December") in order 518 for expiration calculations to work (some implementations might 519 support additional formats, though). 521 In the second case, the date information will be embedded as-is into 522 the reference text. Therefore, also vague dates ("ca. 2000"), date 523 ranges, and so on, are allowed. 525 This element appears as child element of: <front> (Section 2.19). 527 Content model: this element does not have any contents. 529 2.13.1. 'day' attribute 531 Day of publication. 533 2.13.2. 'month' attribute 535 Month of publication. 537 2.13.3. 'year' attribute 539 Year of publication. 541 2.14. <email> 543 Provides an email address. 545 The value is expected to be the scheme-specific part of a "mailto" 546 URI (so does not include the prefix "mailto:"). See Section 2 of 547 [RFC6068] for details. 549 This element appears as child element of: <address> (Section 2.2). 551 Content model: only text content. 553 2.15. <eref> 555 Represents an "external" link (as specified in the "target" 556 attribute). 558 If the element has text content, that content will be used. 559 Otherwise, the value of the target attribute will be inserted in 560 angle brackets ([RFC3986], Appendix C). 562 This element appears as child element of: <annotation> (Section 2.3), 563 <c> (Section 2.8), <postamble> (Section 2.28), <preamble> 564 (Section 2.29), and <t> (Section 2.38). 566 Content model: only text content. 568 2.15.1. 'target' attribute (mandatory) 570 URI of the link target (see Section 3 of [RFC3986]). 572 2.16. <facsimile> 574 Represents the phone number of a fax machine. 576 The value is expected to be the scheme-specific part of a "tel" URI 577 (so does not include the prefix "tel:"), using the "global numbers" 578 syntax. See Section 3 of [RFC3966] for details. 580 This element appears as child element of: <address> (Section 2.2). 582 Content model: only text content. 584 2.17. <figure> 586 This element is used to represent a figure, consisting of an optional 587 preamble, the actual figure, an optional postamble, and an optional 588 title. 590 This element appears as child element of: <section> (Section 2.34), 591 and <t> (Section 2.38). 593 Content model: 595 In this order: 597 1. Optional <iref> elements (Section 2.20) 599 2. One optional <preamble> element (Section 2.29) 601 3. One <artwork> element (Section 2.5) 603 4. One optional <postamble> element (Section 2.28) 605 2.17.1. 'align' attribute 607 Used to change the alignment of <preamble> and <postamble>. 609 Note: does not affect title or <artwork> alignment. 611 Allowed values: 613 o "left" (default) 614 o "center" 616 o "right" 618 2.17.2. 'alt' attribute 620 Duplicates functionality available on <artwork>; avoid it. 622 2.17.3. 'anchor' attribute 624 Document-wide unique identifier for this figure. 626 Furthermore, the presence of this attribute causes the figure to be 627 numbered. 629 The value needs to be a valid XML "Name" (Section 2.3 of [XML]). 631 2.17.4. 'height' attribute 633 Duplicates functionality available on <artwork>; avoid it. 635 2.17.5. 'src' attribute 637 Duplicates functionality available on <artwork>; avoid it. 639 2.17.6. 'suppress-title' attribute 641 Figures that have an "anchor" attribute will automatically get an 642 autogenerated title (such as "Figure 1"), even if the "title" 643 attribute is absent. Setting this attribute to "true" will prevent 644 this. 646 Allowed values: 648 o "true" 650 o "false" (default) 652 2.17.7. 'title' attribute 654 The title for the figure; this usually appears on a line after the 655 figure. 657 2.17.8. 'width' attribute 659 Duplicates functionality available on <artwork>; avoid it. 661 2.18. <format> 663 Provides a link to an additional format variant for a reference. 665 Note that these additional links are neither used in published RFCs, 666 nor supported by all tools. If the goal is to provide a single URI 667 for a reference, the "target" attribute on <reference> can be used 668 instead. 670 This element appears as child element of: <reference> (Section 2.30). 672 Content model: this element does not have any contents. 674 2.18.1. 'octets' attribute 676 Octet length of linked-to document. 678 2.18.2. 'target' attribute 680 URI of document. 682 2.18.3. 'type' attribute (mandatory) 684 The type of the linked-to document, such as "TXT", "HTML", or "PDF". 686 2.19. <front> 688 Represent the "front matter": metadata (such as author information), 689 abstract, and additional notes. 691 This element appears as child element of: <reference> (Section 2.30), 692 and <rfc> (Section 2.33). 694 Content model: 696 In this order: 698 1. One <title> element (Section 2.40) 700 2. One or more <author> elements (Section 2.6) 702 3. One <date> element (Section 2.13) 704 4. Optional <area> elements (Section 2.4) 706 5. Optional <workgroup> elements (Section 2.44) 707 6. Optional <keyword> elements (Section 2.21) 709 7. One optional <abstract> element (Section 2.1) 711 8. Optional <note> elements (Section 2.24) 713 2.20. <iref> 715 Provides terms for the document's index. 717 Index entries can be either single items (when just the "item" 718 attribute is given) or nested items (by specifying "subitem" as 719 well). 721 For instance: 723 <iref item="Grammar" subitem="item"/> 725 will produce an index entry for "Grammar, item". 727 This element appears as child element of: <annotation> (Section 2.3), 728 <c> (Section 2.8), <figure> (Section 2.17), <postamble> 729 (Section 2.28), <preamble> (Section 2.29), <section> (Section 2.34), 730 and <t> (Section 2.38). 732 Content model: this element does not have any contents. 734 2.20.1. 'item' attribute (mandatory) 736 The item to include. 738 2.20.2. 'primary' attribute 740 Setting this to "true" declares the occurrence as "primary", which 741 might cause it to be highlighted in the index. 743 Allowed values: 745 o "true" 747 o "false" (default) 749 2.20.3. 'subitem' attribute 751 The subitem to include. 753 2.21. <keyword> 755 Specifies a keyword applicable to the document. 757 Note that each element should only contain a single keyword; for 758 multiple keywords, the element can simply be repeated. 760 Keywords are used both in the RFC Index and in the metadata of 761 generated document formats. 763 This element appears as child element of: <front> (Section 2.19). 765 Content model: only text content. 767 2.22. <list> 769 Delineates a text list. 771 Each list item is represented by a <t> element. The vocabulary 772 currently does not directly support list items consisting of multiple 773 paragraphs; if this is needed, <vspace> (Section 2.43) can be used as 774 workaround. 776 This element appears as child element of: <t> (Section 2.38). 778 Content model: 780 One or more <t> elements (Section 2.38) 782 2.22.1. 'counter' attribute 784 This attribute holds a token that serves as an identifier for a 785 counter. The intended use is continuation of lists. 787 Note that this attribute functions only when the style attribute is 788 using the "format..." syntax (Section 2.22.3); otherwise, it is 789 ignored. 791 2.22.2. 'hangIndent' attribute 793 For list styles with potentially wide labels, this attribute can 794 override the default indentation level, measured in characters. 796 Note that it only affects style with variable-width labels 797 ("format..." and "hanging", see below), and it may not affect formats 798 in which the list item text appears _below_ the label. 800 2.22.3. 'style' attribute 802 This attribute is used to control the display of a list. 804 The value of this attribute is inherited by any nested lists that do 805 not have this attribute set. It may be set to: 807 "empty" (or not set) 809 For unlabeled list items; it can also be used for indentation 810 purposes (this is the default value). 812 "hanging" 814 For lists where the items are labeled with a piece of text. 816 The label text is specified in the 'hangText' attribute of the <t> 817 element (Section 2.38.2). 819 "letters" 821 For ordered lists using letters as labels (lowercase letters 822 followed by a period; after "z", it rolls over to a two-letter 823 format). For nested lists, processors usually flip between 824 uppercase and lowercase. 826 "numbers" 828 For ordered lists using numbers as labels. 830 "symbols" 832 For unordered (bulleted) lists. 834 The style of the bullets is chosen automatically be the processor 835 (some implementations allow overriding the default using a 836 processing instruction). 838 And, finally: 840 "format ..." 842 For lists with customized labels, consisting of fixed text and an 843 item counter in various formats. 845 The value is a free-form text that allows counter values to be 846 inserted using a "percent-letter" format. For instance, "[REQ%d]" 847 generates labels of the form "[REQ1]", where "%d" inserts the item 848 number as decimal number. 850 The following formats are supported: 852 %c lowercase letters (a, b, c, etc.) 854 %C uppercase letters (A, B, C, etc.) 856 %d decimal numbers (1, 2, 3, etc.) 858 %i lowercase Roman numerals (i, ii, iii, etc.) 860 %I uppercase Roman numerals (I, II, III, etc.) 862 %% represents a percent sign 864 Other formats are reserved for future use. 866 2.23. <middle> 868 Represents the main content of the document. 870 This element appears as child element of: <rfc> (Section 2.33). 872 Content model: 874 One or more <section> elements (Section 2.34) 876 2.24. <note> 878 Creates an unnumbered section that appears after the abstract. 880 It is usually used for additional information to reviewers (working 881 group information, mailing list, ...), or for additional publication 882 information such as "IESG Notes". 884 This element appears as child element of: <front> (Section 2.19). 886 Content model: 888 One or more <t> elements (Section 2.38) 890 2.24.1. 'title' attribute (mandatory) 892 The title of the note. 894 2.25. <organization> 896 Specifies the affiliation of an author. 898 This information appears in both the "Author's Address" section and 899 on the front page ([RFCSTYLE], Section 4.1.1). If the value is long, 900 an abbreviated variant can be specified in the "abbrev" attribute. 902 This element appears as child element of: <author> (Section 2.6). 904 Content model: only text content. 906 2.25.1. 'abbrev' attribute 908 Abbreviated variant. 910 2.26. <phone> 912 Represents a phone number. 914 The value is expected to be the scheme-specific part of a "tel" URI 915 (so does not include the prefix "tel:"), using the "global numbers" 916 syntax. See Section 3 of [RFC3966] for details. 918 This element appears as child element of: <address> (Section 2.2). 920 Content model: only text content. 922 2.27. <postal> 924 Contains child elements providing postal information. 926 This element appears as child element of: <address> (Section 2.2). 928 Content model: 930 In this order: 932 1. One or more <street> elements (Section 2.37) 934 2. In any order: 936 * <city> elements (Section 2.9) 938 * <region> elements (Section 2.32) 940 * <code> elements (Section 2.10) 941 * <country> elements (Section 2.11) 943 2.28. <postamble> 945 Gives text that appears at the bottom of a figure or table. 947 This element appears as child element of: <figure> (Section 2.17), 948 and <texttable> (Section 2.39). 950 Content model: 952 In any order: 954 o Text 956 o <xref> elements (Section 2.45) 958 o <eref> elements (Section 2.15) 960 o <iref> elements (Section 2.20) 962 o <cref> elements (Section 2.12) 964 o <spanx> elements (Section 2.36) 966 2.29. <preamble> 968 Gives text that appears at the top of a figure or table. 970 This element appears as child element of: <figure> (Section 2.17), 971 and <texttable> (Section 2.39). 973 Content model: 975 In any order: 977 o Text 979 o <xref> elements (Section 2.45) 981 o <eref> elements (Section 2.15) 983 o <iref> elements (Section 2.20) 985 o <cref> elements (Section 2.12) 987 o <spanx> elements (Section 2.36) 989 2.30. <reference> 991 Represents a bibliographical reference. 993 This element appears as child element of: <references> 994 (Section 2.31). 996 Content model: 998 In this order: 1000 1. One <front> element (Section 2.19) 1002 2. Optional <seriesInfo> elements (Section 2.35) 1004 3. Optional <format> elements (Section 2.18) 1006 4. Optional <annotation> elements (Section 2.3) 1008 2.30.1. 'anchor' attribute (mandatory) 1010 Document-wide unique identifier for this reference. Usually, this 1011 will be used both to "label" the reference in the references section, 1012 and as an identifier in links to this reference entry. 1014 The value needs to be a valid XML "Name" (Section 2.3 of [XML]). 1016 2.30.2. 'target' attribute 1018 Holds the URI for the reference. 1020 Note that depending on the <seriesInfo> element, a URI might not be 1021 needed, nor desirable, as it can be automatically generated (for 1022 instance, for RFCs). 1024 2.31. <references> 1026 Contains a set of bibliographical references. 1028 In the early days of the RFC series, there was only one "References" 1029 section per RFC. This convention was later changed to group 1030 references into two sets, "Normative" and "Informative"; see Section 1031 4.8.6 of [RFCSTYLE]). This vocabulary supports the split with the 1032 "title" attribute. 1034 This element appears as child element of: <back> (Section 2.7). 1036 Content model: 1038 One or more <reference> elements (Section 2.30) 1040 2.31.1. 'title' attribute 1042 Provides the title for the References section (defaulting to 1043 "References"). 1045 In general, the title should be either "Normative References" or 1046 "Informative References". 1048 2.32. <region> 1050 Provides the region name in a postal address. 1052 This element appears as child element of: <postal> (Section 2.27). 1054 Content model: only text content. 1056 2.33. <rfc> 1058 This is the root element of the xml2rfc vocabulary. 1060 Processors distinguish between RFC mode ("number" attribute being 1061 present) and Internet-Draft mode ("docName" attribute being present): 1062 it is invalid to specify both. Setting neither "number" nor 1063 "docName" can be useful for producing other types of document but is 1064 out-of-scope for this specification. 1066 Content model: 1068 In this order: 1070 1. One <front> element (Section 2.19) 1072 2. One <middle> element (Section 2.23) 1074 3. One optional <back> element (Section 2.7) 1076 2.33.1. 'category' attribute 1078 Document category (see Appendix A.1). 1080 Allowed values: 1082 o "std" 1084 o "bcp" 1085 o "info" 1087 o "exp" 1089 o "historic" 1091 2.33.2. 'consensus' attribute 1093 Affects the generated boilerplate. 1095 See [RFC5741] for more information. 1097 Allowed values: 1099 o "no" 1101 o "yes" 1103 2.33.3. 'docName' attribute 1105 For Internet-Drafts, this specifies the draft name (which appears 1106 below the title). 1108 Note that the file extension is not part of the draft, so in general 1109 it should end with the current draft number ("-", plus two digits). 1111 Furthermore, it is good practice to disambiguate current editor 1112 copies from submitted drafts (for instance, by replacing the draft 1113 number with the string "latest"). 1115 See Section 7 of [IDGUIDE] for further information. 1117 2.33.4. 'ipr' attribute 1119 Represents the Intellectual Property status of the document. See 1120 Appendix A.2 for details. 1122 Allowed values: 1124 o "full2026" 1126 o "noDerivativeWorks2026" 1128 o "none" 1130 o "full3667" 1131 o "noModification3667" 1133 o "noDerivatives3667" 1135 o "full3978" 1137 o "noModification3978" 1139 o "noDerivatives3978" 1141 o "trust200811" 1143 o "noModificationTrust200811" 1145 o "noDerivativesTrust200811" 1147 o "trust200902" 1149 o "noModificationTrust200902" 1151 o "noDerivativesTrust200902" 1153 o "pre5378Trust200902" 1155 2.33.5. 'iprExtract' attribute 1157 Identifies a single section within the document (by its 'anchor' 1158 attribute) for which extraction "as-is" is explicitly allowed (this 1159 is only relevant for historic values of the "ipr" attribute). 1161 2.33.6. 'number' attribute 1163 The number of the RFC to be produced. 1165 2.33.7. 'obsoletes' attribute 1167 A comma-separated list of RFC _numbers_ or Internet-Draft names. 1169 Processors ought to parse the attribute value, so that incorrect 1170 references can be detected and, depending on output format, 1171 hyperlinks can be generated. Also, the value ought to be reformatted 1172 to insert whitespace after each comma if not already present. 1174 2.33.8. 'seriesNo' attribute 1176 When producing a document within document series (such as "STD"): the 1177 number within that series. 1179 2.33.9. 'submissionType' attribute 1181 The document stream. 1183 See Section 2 of [RFC5741] for details. 1185 Allowed values: 1187 o "IETF" (default) 1189 o "IAB" 1191 o "IRTF" 1193 o "independent" 1195 2.33.10. 'updates' attribute 1197 A comma-separated list of RFC _numbers_ or Internet-Draft names. 1199 Processors ought to parse the attribute value, so that incorrect 1200 references can be detected and, depending on output format, 1201 hyperlinks can be generated. Also, the value ought to be reformatted 1202 to insert whitespace after each comma if not already present. 1204 2.33.11. 'xml:lang' attribute 1206 The natural language used in the document (defaults to "en"). 1208 See Section 2.12 of [XML] for more information. 1210 2.34. <section> 1212 Represents a section (when inside a <middle> element) or an appendix 1213 (when inside a <back> element). 1215 Sub-sections are created by nesting <section> elements inside 1216 <section> elements. 1218 This element appears as child element of: <back> (Section 2.7), 1219 <middle> (Section 2.23), and <section> (Section 2.34). 1221 Content model: 1223 In this order: 1225 1. In any order: 1227 * <t> elements (Section 2.38) 1229 * <figure> elements (Section 2.17) 1231 * <texttable> elements (Section 2.39) 1233 * <iref> elements (Section 2.20) 1235 2. Optional <section> elements (Section 2.34) 1237 2.34.1. 'anchor' attribute 1239 Document-wide unique identifier for this section. 1241 The value needs to be a valid XML "Name" (Section 2.3 of [XML]). 1243 2.34.2. 'title' attribute (mandatory) 1245 The title of the section. 1247 2.34.3. 'toc' attribute 1249 Determines whether the section is included in the Table Of Contents. 1251 The processor usually has defaults for whether a Table Of Contents 1252 will be produced at all, and sections of which maximal depth will be 1253 included (frequently: 3). "include" and "exclude" allow overriding 1254 the processor's default behavior for the element they are specified 1255 on (they do not affect nested elements). 1257 Allowed values: 1259 o "include" 1261 o "exclude" 1263 o "default" (default) 1265 2.35. <seriesInfo> 1267 Specifies the document series in which this document appears, and 1268 also specifies an identifier within that series. 1270 This element appears as child element of: <reference> (Section 2.30). 1272 Content model: this element does not have any contents. 1274 2.35.1. 'name' attribute (mandatory) 1276 The name of the series. 1278 The following names trigger specific processing (such as for auto- 1279 generating links, and adding descriptions such as "work in 1280 progress"): "BCP", "FYI", "Internet-Draft", "RFC", and "STD". 1282 2.35.2. 'value' attribute (mandatory) 1284 The identifier within the series specified by the "name" attribute. 1286 For BCPs, FYIs, RFCs, and STDs this is the number within the series. 1287 For Internet-Drafts, it is the full draft name (ending with the two- 1288 digit version number). 1290 2.36. <spanx> 1292 Wraps a piece of text, indicating special formatting styles. 1294 When generating plain text, processors usually emulate font changes 1295 using characters such as "*" and "_". 1297 The following styles are defined: 1299 emph Simple emphasis (this is the default). 1301 strong Strong emphasis. 1303 verb "Verbatim" text (usually displayed usign a monospaced font 1304 face). 1306 This element appears as child element of: <annotation> (Section 2.3), 1307 <c> (Section 2.8), <postamble> (Section 2.28), <preamble> 1308 (Section 2.29), and <t> (Section 2.38). 1310 Content model: only text content. 1312 2.36.1. 'style' attribute 1314 The style to be used (defaults to "emph"). 1316 2.36.2. 'xml:space' attribute 1318 Determines whitespace handling. 1320 According to the DTD, the default value is "preserve". Tests however 1321 show that it doesn't have any effect on processing; thus this 1322 attribute will be removed in future versions of the vocabulary. 1324 See also Section 2.10 of [XML]. 1326 Allowed values: 1328 o "default" 1330 o "preserve" (default) 1332 2.37. <street> 1334 Provides a street address. 1336 This element appears as child element of: <postal> (Section 2.27). 1338 Content model: only text content. 1340 2.38. <t> 1342 Contains a paragraph of text. 1344 This element appears as child element of: <abstract> (Section 2.1), 1345 <list> (Section 2.22), <note> (Section 2.24), and <section> 1346 (Section 2.34). 1348 Content model: 1350 In any order: 1352 o Text 1354 o <list> elements (Section 2.22) 1356 o <figure> elements (Section 2.17) 1358 o <xref> elements (Section 2.45) 1360 o <eref> elements (Section 2.15) 1362 o <iref> elements (Section 2.20) 1364 o <cref> elements (Section 2.12) 1366 o <spanx> elements (Section 2.36) 1368 o <vspace> elements (Section 2.43) 1370 2.38.1. 'anchor' attribute 1372 Document-wide unique identifier for this paragraph. 1374 The value needs to be a valid XML "Name" (Section 2.3 of [XML]). 1376 2.38.2. 'hangText' attribute 1378 Holds the label ("hanging text") for items in lists using the 1379 "hanging" style (see Section 2.22.3). 1381 2.39. <texttable> 1383 Contains a table, consisting of an optional preamble, a header line, 1384 rows, an optional postamble, and an optional title. 1386 The number of columns in the table is determined by the number of 1387 <ttcol> elements. The number of rows in the table is determined by 1388 the number of <c> elements divided by the number of columns. There 1389 is no requirement that the number of <c> elements be evenly divisible 1390 by the number of columns. 1392 This element appears as child element of: <section> (Section 2.34). 1394 Content model: 1396 In this order: 1398 1. One optional <preamble> element (Section 2.29) 1400 2. One or more <ttcol> elements (Section 2.41) 1402 3. Optional <c> elements (Section 2.8) 1404 4. One optional <postamble> element (Section 2.28) 1406 2.39.1. 'align' attribute 1408 Determines the horizontal alignment of the table. 1410 Allowed values: 1412 o "left" 1414 o "center" (default) 1416 o "right" 1418 2.39.2. 'anchor' attribute 1420 Document-wide unique identifier for this table. 1422 Furthermore, the presence of this attribute causes the table to be 1423 numbered. 1425 The value needs to be a valid XML "Name" (Section 2.3 of [XML]). 1427 2.39.3. 'style' attribute 1429 Selects which borders should be drawn, where 1431 o "all" means borders around all table cells, 1433 o "full" is like "all" except no horizontal lines between table rows 1434 (except below the column titles), 1436 o "headers" adds just a separator between column titles and rows, 1437 and 1439 o "none" means no borders at all. 1441 Allowed values: 1443 o "all" 1445 o "none" 1447 o "headers" 1449 o "full" (default) 1451 2.39.4. 'suppress-title' attribute 1453 Tables that have an "anchor" attribute will automatically get an 1454 autogenerated title (such as "Table 1"), even if the "title" 1455 attribute is absent. Setting this attribute to "true" will prevent 1456 this. 1458 Allowed values: 1460 o "true" 1462 o "false" (default) 1464 2.39.5. 'title' attribute 1466 The title for the table; this usually appears on a line below the 1467 table body. 1469 2.40. <title> 1471 Represents the document title. 1473 When this element appears in the <front> element of the current 1474 document, the title might also appear in page headers or footers. If 1475 it's long (~40 characters), the "abbrev" attribute is used to 1476 specified an abbreviated variant. 1478 This element appears as child element of: <front> (Section 2.19). 1480 Content model: only text content. 1482 2.40.1. 'abbrev' attribute 1484 Specifies an abbreviated variant of the document title. 1486 2.41. <ttcol> 1488 Contains a column heading in a table. 1490 This element appears as child element of: <texttable> (Section 2.39). 1492 Content model: only text content. 1494 2.41.1. 'align' attribute 1496 Determines the horizontal alignment within the table column. 1498 Allowed values: 1500 o "left" (default) 1502 o "center" 1504 o "right" 1506 2.41.2. 'width' attribute 1508 The desired column width (as integer 0..100 followed by "%"). 1510 2.42. <uri> 1512 Contains a web address associated with the author. 1514 The contents should be a valid URI (see Section 3 of [RFC3986]). 1516 This element appears as child element of: <address> (Section 2.2). 1518 Content model: only text content. 1520 2.43. <vspace> 1522 This element can be used to force the inclusion of a single line 1523 break or multiple blank lines. 1525 Note that this is a purely presentational element and thus its use 1526 ought to be avoided. 1528 This element appears as child element of: <t> (Section 2.38). 1530 Content model: this element does not have any contents. 1532 2.43.1. 'blankLines' attribute 1534 Number of blank lines to be inserted, where "0" indicates a single 1535 line break (defaults to "0"). 1537 For paged output formats, no additional blank lines should be 1538 generated after a page break. 1540 2.44. <workgroup> 1542 This element is used to specify the Working Group the document 1543 originates from, if any. The recommended format is the official name 1544 of the Working Group (with some capitalization). 1546 In Internet-Drafts, this is used in the upper left corner of the 1547 boilerplate, replacing the "Network Working Group" string. 1548 Formatting software can append the words "Working Group" or "Research 1549 Group", depending on the "submissionType" property on the <rfc> 1550 element (Section 2.33.9). 1552 This element appears as child element of: <front> (Section 2.19). 1554 Content model: only text content. 1556 2.45. <xref> 1558 Inserts a reference to a different part of a document. 1560 The generated text depends on whether the <xref> is empty (in which 1561 case the processor will try to generate a meaningful text fragment), 1562 and the nature of the referenced document part. 1564 Any element that allows the "anchor" attribute can be referenced, 1565 however there are restrictions with respect to the text content being 1566 generated. For instance, a <t> can be a reference target, however, 1567 because paragraphs are not (visibly) numbered, the author will have 1568 to make sure that the prose is sufficient for a reader to understand 1569 what is being referred to. 1571 [[anchor2: This needs to be expanded with examples and with a 1572 discussion how the autogenerated text differs when <xref> is not 1573 empty]] 1575 This element appears as child element of: <annotation> (Section 2.3), 1576 <c> (Section 2.8), <postamble> (Section 2.28), <preamble> 1577 (Section 2.29), and <t> (Section 2.38). 1579 Content model: only text content. 1581 2.45.1. 'format' attribute 1583 This attribute is used to control the format of the generated 1584 reference text. 1586 "counter" 1588 Inserts a counter, such as the number of a section, figure, or 1589 table. 1591 "default" 1593 Inserts a text fragment that describes the referenced part 1594 completely, such as "Section 2", "Table 4", or "[XML]". 1596 "none" 1598 There will be no auto-generated text. 1600 "title" 1602 Inserts a title for the referenced element (usually obtained from 1603 the referenced element's "title" attribute; some processors also 1604 use the <title> child element or a <reference> target). 1606 Allowed values: 1608 o "counter" 1610 o "title" 1612 o "none" 1614 o "default" (default) 1616 2.45.2. 'pageno' attribute 1618 Unused. 1620 It's unclear what the purpose of this attribute is; processors seem 1621 to ignore it and it never was documented. 1623 Allowed values: 1625 o "true" 1627 o "false" (default) 1629 2.45.3. 'target' attribute (mandatory) 1631 Identifies the document component being referenced. 1633 The value needs to match the value of the "anchor" attribute of 1634 another element in the document. 1636 3. Special Unicode Code Points 1638 Although the current RFC format does not allow non-ASCII Unicode 1639 characters ([UNICODE]), some of them can be used to enforce certain 1640 behaviors of formatters. 1642 For instance: 1644 non-breaking space (U+00A0) 1646 Represents a space character where no line break should happen. 1647 This is frequenly used in titles (by excluding certain space 1648 characters from the line breaking algorithm, the processor will 1649 use the remaining whitespace ocurrences for line breaks). 1651 non-breaking hyphen (U+2011) 1652 Similarly, this represents a hyphen character where nevertheless 1653 no line breaking ought to occur. 1655 word joiner (U+2060) 1657 Also called "zero width non-breaking space" -- can be used to 1658 disallow line breaking between two non-whitespace characters. 1660 Note that in order to use these characters by name, they need to be 1661 declared either in the Document Type Definition (DTD, [XML], Section 1662 2.9), or in the "internal subset" ([XML], Section 2.8), like that: 1664 <?xml version="1.0"?> 1666 <!DOCTYPE rfc [ 1668 <!-- declare nbsp and friends --> 1669 <!ENTITY nbsp " "> 1670 <!ENTITY nbhy "‑"> 1671 <!ENTITY wj "⁠"> 1672 ]> 1674 4. Including Files 1676 This version of the vocabulary does not support an inclusion 1677 mechanism on it's own -- thus, a document always needs to be self- 1678 contained. 1680 That being said, some processors do support file inclusion using 1681 processing instructions (Section 2.6 of [XML]). 1683 Furthermore, XML itself allows inclusion of external content using 1684 the "internal subset" (Section 2.8 of [XML]). Unfortunately, this 1685 requires declaring the external data in the DTD upfront. 1687 For instance: 1689 <?xml version="1.0"?> 1691 <!DOCTYPE rfc [ 1693 <!-- allow later RFC2616 reference using "&rfc2616;" --> 1694 <!-- the data will be fetched from xml.resource.org --> 1695 <!ENTITY rfc2616 PUBLIC 1696 "http://xml.resource.org/public/rfc/bibxml/reference.RFC.2616.xml"> 1697 ]> 1699 ...declares the entity "rfc2616", which then can be used in the 1700 "references" section: 1702 <references> 1703 &rfc2616; 1704 </references> 1706 Note that this mechanism only works for well-formed XML fragments; 1707 thus any plain text that would need to be escaped in XML can't be 1708 included as-is. 1710 5. Internationalization Considerations 1712 This format is based on [XML], thus does not have any issues 1713 representing arbitrary Unicode [UNICODE] characters in text content. 1715 However, the current canonical RFC format is restricted to US-ASCII 1716 [USASCII] characters ([RFC2223], Section 3). Future versions are 1717 likely to relax this role, and it is expected that the vocabulary 1718 will be extended so that US-ACSII alternatives can be provided when 1719 that makes sense (for instance, in contact information). 1721 6. Security Considerations 1723 The "name" attribute on the <artwork> element (Section 2.5.4) can be 1724 used to derive a filename for saving to a local file system. 1725 Trusting this kind of information without pre-processing is a known 1726 security risk; see Section 4.3 of [RFC6266] for more information. 1728 Furthermore, all security considerations related to XML processing 1729 are relevant as well (see Section 7 of [RFC3470]). 1731 7. IANA Considerations 1733 7.1. Internet Media Type Registration 1735 IANA maintains the registry of Internet media types [BCP13] at 1736 <http://www.iana.org/assignments/media-types>. 1738 This document serves as the specification for the Internet media type 1739 "application/rfc+xml". The following is to be registered with IANA. 1741 Type name: application 1743 Subtype name: rfc+xml 1744 Required parameters: There are no required parameters. 1746 Optional parameters: "charset": This parameter has identical 1747 semantics as the charset parameter of the "application/xml" media 1748 type specified in [RFC3023]. 1750 Encoding considerations: Identical to those of "application/xml" as 1751 described in Section 3.2 of [RFC3023]. 1753 Security considerations: As defined in Section 6. In addition, as 1754 this media type uses the "+xml" convention, it inherits the 1755 security considerations described in Section 10 of [RFC3023]. 1757 Interoperability considerations: N/A 1759 Published specification: This specification. 1761 Applications that use this media type: Applications that either 1762 transform xml2rfc to output formats such as plain text or HTML, 1763 plus additional analysis tools. 1765 Fragment identifier considerations: The "anchor" attribute is used 1766 for assigning document-wide unique identifiers that can be uses as 1767 shorthand pointers, as described in Section 2.8 of [XPOINTER]. 1769 Additional information: 1771 Deprecated alias names for this type: None. 1773 Magic number(s): As specified for "application/xml" in Section 1774 3.2 of [RFC3023]. 1776 File extension(s): .xml 1778 Macintosh file type code(s): TEXT 1780 Person & email address to contact for further information: See 1781 Authors Section. 1783 Intended usage: COMMON 1785 Restrictions on usage: N/A 1787 Author: See Authors Section. 1789 Change controller: RFC Series Editor (rse@rfc-editor.org) 1791 8. Acknowledgments 1793 Thanks to everybody who reviewed this document and provided feedback 1794 and/or specification text, in particular Brian Carpenter, Tony 1795 Hansen, Paul Hoffman, Henrik Levkowetz, Alice Russo, Tom Taylor, Jim 1796 Schaad, and Nico Williams. 1798 We also thank Marshall T. Rose for both the original design and the 1799 reference implementation of the "xml2rfc" formatter. 1801 9. References 1803 9.1. Normative References 1805 [XML] Maler, E., Yergeau, F., Paoli, J., Sperberg-McQueen, M., 1806 and T. Bray, "Extensible Markup Language (XML) 1.0 1807 (Fifth Edition)", W3C Recommendation REC-xml-20081126, 1808 November 2008, 1809 <http://www.w3.org/TR/2008/REC-xml-20081126/>. 1811 Latest version available at <http://www.w3.org/TR/xml>. 1813 9.2. Informative References 1815 [BCP13] Freed, N., Klensin, J., and T. Hansen, "Media Type 1816 Specifications and Registration Procedures", BCP 13, 1817 RFC 6838, January 2013. 1819 [IDGUIDE] Housley, R., "Guidelines to Authors of Internet-Drafts", 1820 December 2010, 1821 <http://www.ietf.org/id-info/guidelines.html>. 1823 [RFC2026] Bradner, S., "The Internet Standards Process -- Revision 1824 3", BCP 9, RFC 2026, October 1996. 1826 [RFC2046] Freed, N. and N. Borenstein, "Multipurpose Internet Mail 1827 Extensions (MIME) Part Two: Media Types", RFC 2046, 1828 November 1996. 1830 [RFC2223] Postel, J. and J. Reynolds, "Instructions to RFC 1831 Authors", RFC 2223, October 1997. 1833 [RFC2397] Masinter, L., "The "data" URL scheme", RFC 2397, 1834 August 1998. 1836 [RFC2629] Rose, M., "Writing I-Ds and RFCs using XML", RFC 2629, 1837 June 1999. 1839 [RFC3023] Murata, M., St. Laurent, S., and D. Kohn, "XML Media 1840 Types", RFC 3023, January 2001. 1842 [RFC3470] Hollenbeck, S., Rose, M., and L. Masinter, "Guidelines 1843 for the Use of Extensible Markup Language (XML) within 1844 IETF Protocols", BCP 70, RFC 3470, January 2003. 1846 [RFC3966] Schulzrinne, H., "The tel URI for Telephone Numbers", 1847 RFC 3966, December 2004. 1849 [RFC3986] Berners-Lee, T., Fielding, R., and L. Masinter, "Uniform 1850 Resource Identifier (URI): Generic Syntax", STD 66, 1851 RFC 3986, January 2005. 1853 [RFC5598] Crocker, D., "Internet Mail Architecture", RFC 5598, 1854 July 2009. 1856 PDF version: <http://www.rfc-editor.org/rfc/rfc5598.pdf> 1858 [RFC5741] Daigle, L. and O. Kolkman, "RFC Streams, Headers, and 1859 Boilerplates", RFC 5741, December 2009. 1861 [RFC6068] Duerst, M., Masinter, L., and J. Zawinski, "The 'mailto' 1862 URI Scheme", RFC 6068, October 2010. 1864 [RFC6266] Reschke, J., "Use of the Content-Disposition Header 1865 Field in the Hypertext Transfer Protocol (HTTP)", 1866 RFC 6266, June 2011. 1868 [RFCPOLICY] RFC Editor, "RFC Editorial Guidelines and Procedures", 1869 February 2012, <http://www.rfc-editor.org/policy.html>. 1871 [RFCSTYLE] Heather, H. and S. Ginoza, "RFC Style Guide", 1872 draft-iab-styleguide-01 (work in progress), 1873 February 2014. 1875 [RNC] Clark, J., "RELAX NG Compact Syntax", OASIS , 1876 November 2002, <http://www.oasis-open.org/committees/ 1877 relax-ng/compact-20021121.html>. 1879 [TLP2.0] IETF Trust, "Legal Provisions Relating to IETF 1880 Documents", February 2009, 1881 <http://trustee.ietf.org/license-info/IETF-TLP-2.htm>. 1883 [TLP3.0] IETF Trust, "Legal Provisions Relating to IETF 1884 Documents", September 2009, 1885 <http://trustee.ietf.org/license-info/IETF-TLP-3.htm>. 1887 [TLP4.0] IETF Trust, "Legal Provisions Relating to IETF 1888 Documents", December 2009, 1889 <http://trustee.ietf.org/license-info/IETF-TLP-4.htm>. 1891 [UNICODE] The Unicode Consortium, "The Unicode Standard, Version 1892 6.3.0", September 2013, 1893 <http://www.unicode.org/versions/Unicode6.3.0/>. 1895 [USASCII] American National Standards Institute, "Coded Character 1896 Set -- 7-bit American Standard Code for Information 1897 Interchange", ANSI X3.4, 1986. 1899 [XINCLUDE] Marsh, J., Orchard, D., and D. Veillard, "XML Inclusions 1900 (XInclude) Version 1.0 (Second Edition)", W3C 1901 Recommendation REC-xinclude-20061115, November 2006, 1902 <http://www.w3.org/TR/2006/REC-xinclude-20061115/>. 1904 Latest version available at 1905 <http://www.w3.org/TR/xinclude/>. 1907 [XPOINTER] Grosso, P., Maler, E., Marsh, J., and N. Walsh, 1908 "XPointer Framework", W3C Recommendation REC-xptr- 1909 framework-20030325, March 2003, 1910 <http://www.w3.org/TR/2003/ 1911 REC-xptr-framework-20030325/>. 1913 Latest version available at 1914 <http://www.w3.org/TR/xptr-framework/>. 1916 Appendix A. Front Page Generation 1918 A.1. The /rfc/@category Attribute 1920 For RFCs, the "category" determines the "maturity level" (see Section 1921 4 of [RFC2026]). The allowed values are "std" for "Standards Track", 1922 "bcp" for "BCP", "info" for "Informational", "exp" for 1923 "Experimental", and "historic" for - surprise - "Historic". 1925 For Internet-Drafts, the category attribute is not needed, but will 1926 appear on the front page as "Intended Status". Supplying this 1927 information can be useful to reviewers. 1929 A.2. The /rfc/@ipr Attribute 1931 This attribute value can take a long list of values, each of which 1932 describes an IPR policy for the document. This attribute's values 1933 are not the result of a grand plan, but remain simply for historic 1934 reasons. Of these values, only a few are currently in use; all 1935 others are supported by the various tools for backwards compatibility 1936 with old source files. 1938 Note: some variations of the boilerplate are selected based on the 1939 document's date; therefore it is important to specify the "year", 1940 "month" and "day" attributes of the "<date>" element when 1941 archiving the XML source of an Internet-Draft on the day of 1942 submission. 1944 _Disclaimer: THIS ONLY PROVIDES IMPLEMENTATION INFORMATION. IF YOU 1945 NEED LEGAL ADVICE, PLEASE CONTACT A LAWYER._ For further information, 1946 refer to <http://trustee.ietf.org/docs/IETF-Copyright-FAQ.pdf>. 1948 For the current "Status Of This Memo" text, the "submissionType" 1949 attribute determines whether a statement about "Code Components" is 1950 inserted (which is the case for the value "IETF", which is the 1951 default). Other values, such as "independent", suppress this part of 1952 the text. 1954 A.2.1. Current Values: '*trust200902' 1956 The name for these values refers to the "IETF TRUST Legal Provisions 1957 Relating to IETF Documents", sometimes simply called the "TLP, that 1958 went into effect on February 15, 2009 ([TLP2.0]). Updates to this 1959 document were published on September 12, 2009 ([TLP3.0]) and on 1960 December 28, 2009 ([TLP4.0]), modifying the license for code 1961 components (see <http://trustee.ietf.org/license-info/> for further 1962 information). The actual text is located in Section 6 ("Text To Be 1963 Included in IETF Documents") of these documents. 1965 The tools will automatically produce the "correct" text depending on 1966 the document's date information (see above): 1968 +----------+--------------------------------+ 1969 | TLP | starting with publication date | 1970 +----------+--------------------------------+ 1971 | [TLP3.0] | 2009-11-01 | 1972 | [TLP4.0] | 2010-04-01 | 1973 +----------+--------------------------------+ 1975 A.2.1.1. trust200902 1977 This should be the default, unless one of the more specific 1978 '*trust200902' values is a better fit. It produces the text in 1979 Sections 6.a and 6.b of the TLP. 1981 A.2.1.2. noModificationTrust200902 1983 This produces additional text from Section 6.c.i of the TLP: 1985 This document may not be modified, and derivative works of it may 1986 not be created, except to format it for publication as an RFC or 1987 to translate it into languages other than English. 1989 Note: this clause is incompatible with RFCs that are published on 1990 the Standards Track. 1992 A.2.1.3. noDerivativesTrust200902 1994 This produces the additional text from Section 6.c.ii of the TLP: 1996 This document may not be modified, and derivative works of it may 1997 not be created, and it may not be published except as an Internet- 1998 Draft. 2000 Note: this clause is incompatible with RFCs. 2002 A.2.1.4. pre5378Trust200902 2004 This produces the additional text from Section 6.c.iii of the TLP, 2005 frequently called the "pre-5378 escape clause": 2007 This document may contain material from IETF Documents or IETF 2008 Contributions published or made publicly available before November 2009 10, 2008. The person(s) controlling the copyright in some of this 2010 material may not have granted the IETF Trust the right to allow 2011 modifications of such material outside the IETF Standards Process. 2012 Without obtaining an adequate license from the person(s) 2013 controlling the copyright in such materials, this document may not 2014 be modified outside the IETF Standards Process, and derivative 2015 works of it may not be created outside the IETF Standards Process, 2016 except to format it for publication as an RFC or to translate it 2017 into languages other than English. 2019 See Section 4 of 2020 <http://trustee.ietf.org/docs/IETF-Copyright-FAQ.pdf> for further 2021 information about when to use this value. 2023 Note: this text appears under "Copyright Notice", unless the 2024 document was published before November 2009, in which case it 2025 appears under "Status Of This Memo". 2027 A.2.2. Historic Values 2029 A.2.2.1. Historic Values: '*trust200811' 2031 The attribute values "trust200811", "noModificationTrust200811" and 2032 "noDerivativesTrust200811" are similar to their "trust200902" 2033 counterparts, except that they use text specified in <http:// 2034 trustee.ietf.org/license-info/archive/ 2035 IETF-Trust-License-Policy_11-10-08.pdf>. 2037 A.2.2.2. Historic Values: '*3978' 2039 The attribute values "full3978", "noModification3978" and 2040 "noDerivatives3978" are similar to their counterparts above, except 2041 that they use text specified in RFC 3978 (March 2005). 2043 A.2.2.3. Historic Values: '*3667' 2045 The attribute values "full3667", "noModification3667" and 2046 "noDerivatives3667" are similar to their counterparts above, except 2047 that they use text specified in RFC 3667 (February 2004). 2049 A.2.2.4. Historic Values: '*2026' 2051 The attribute values "full2026" and "noDerivativeWorks2026" are 2052 similar to their counterparts above, except that they use text 2053 specified in RFC 2026 (October 1996). 2055 The special value "none" was also used back then, and denied the IETF 2056 any rights beyond publication as Internet-Draft. 2058 Appendix B. Changes from RFC 2629 ('v1') 2060 [[v1diff: See <http://greenbytes.de/tech/webdav/ 2061 draft-reschke-xml2rfc-02.html#rfc.section.E> for a comparison of the 2062 schemata.]] 2064 B.1. Removed Elements 2066 The <appendix> element has been removed; to generate an appendix, 2067 place a <section> inside <back>. 2069 B.2. Changed Defaults 2071 Many attributes have lost their "default" value; this is to avoid 2072 having document semantics differ based on whether a DTD was specified 2073 and evaluated. Processors will handle absent values the way the 2074 default value was specified before. 2076 B.3. Changed Elements 2078 <artwork>: Has a set of new attributes: "name", "type", "src", 2079 "align", "alt", "width", and "height". (Section 2.5) 2081 <author>: The <organization> element is now optional. The "role" 2082 attribute was added. (Section 2.6) 2084 <country>: The requirement to use ISO 3166 codes was removed. 2085 (Section 2.11) 2087 <date>: All attributes are now optional. (Section 2.13) 2089 <figure>: Has a set of new attributes: "suppress-title", "src", 2090 "align", "alt", "width", and "height". (Section 2.17) 2092 <iref>: Has a new "primary" attribute. (Section 2.20) 2094 <list>: The "style" attribute isn't restricted to a set of enumerated 2095 values anymore. The "hangIndent" and "counter" attributes have been 2096 added. (Section 2.22) 2098 <rfc>: The "ipr" attribute has gained additional values. The 2099 attributes "consensus", "iprExtract", "submissionType", and "xml: 2100 lang" have been added. (Section 2.33) 2102 <reference>: <annotation> allows adding prose to a reference. The 2103 "anchor" attribute has been made mandatory. (Section 2.30) 2105 <references>: Can now appear multiple times, and carry a "title" 2106 attribute (so that normative and informative references can be 2107 split). (Section 2.31) 2109 <section>: The new "toc" attribute controls whether it will appear in 2110 the Table Of Contents. <iref> can now appear as direct child element. 2111 (Section 2.34) 2113 <t>: The "anchor" attribute can now be used as well, however there 2114 are restrictions on how they can be referred to. (Section 2.38) 2116 B.4. New Elements 2118 The following elements have been added: <annotation> (Section 2.3), 2119 <c> (Section 2.8), <cref> (Section 2.12), <format> (Section 2.18), 2120 <spanx> (Section 2.36), <texttable> (Section 2.39). 2122 Appendix C. Relax NG Schema 2123 namespace a = "http://relaxng.org/ns/compatibility/annotations/1.0" 2125 rfc = 2126 element rfc { 2127 attribute number { text }?, 2128 [ a:defaultValue = "" ] attribute obsoletes { text }?, 2129 [ a:defaultValue = "" ] attribute updates { text }?, 2130 attribute category { "std" | "bcp" | "info" | "exp" | "historic" 2131 }?, 2132 attribute consensus { "no" | "yes" }?, 2133 attribute seriesNo { text }?, 2134 attribute ipr { 2135 "full2026" 2136 | "noDerivativeWorks2026" 2137 | "none" 2138 | "full3667" 2139 | "noModification3667" 2140 | "noDerivatives3667" 2141 | "full3978" 2142 | "noModification3978" 2143 | "noDerivatives3978" 2144 | "trust200811" 2145 | "noModificationTrust200811" 2146 | "noDerivativesTrust200811" 2147 | "trust200902" 2148 | "noModificationTrust200902" 2149 | "noDerivativesTrust200902" 2150 | "pre5378Trust200902" 2151 }?, 2152 attribute iprExtract { xsd:IDREF }?, 2153 [ a:defaultValue = "IETF" ] 2154 attribute submissionType { 2155 "IETF" | "IAB" | "IRTF" | "independent" 2156 }?, 2157 attribute docName { text }?, 2158 [ a:defaultValue = "en" ] attribute xml:lang { text }?, 2159 front, 2160 middle, 2161 back? 2162 } 2163 front = 2164 element front { 2165 title, author+, date, area*, workgroup*, keyword*, abstract?, 2166 note* 2167 } 2168 title = 2169 element title { 2170 attribute abbrev { text }?, 2171 text 2172 } 2173 author = 2174 element author { 2175 attribute initials { text }?, 2176 attribute surname { text }?, 2177 attribute fullname { text }?, 2178 attribute role { "editor" }?, 2179 organization?, 2180 address? 2181 } 2182 organization = 2183 element organization { 2184 attribute abbrev { text }?, 2185 text 2186 } 2187 address = element address { postal?, phone?, facsimile?, email?, 2188 uri? } 2189 postal = element postal { street+, (city | region | code | country)* 2190 } 2191 street = element street { text } 2192 city = element city { text } 2193 region = element region { text } 2194 code = element code { text } 2195 country = element country { text } 2196 phone = element phone { text } 2197 facsimile = element facsimile { text } 2198 email = element email { text } 2199 uri = element uri { text } 2200 date = 2201 element date { 2202 attribute day { text }?, 2203 attribute month { text }?, 2204 attribute year { text }?, 2205 empty 2206 } 2207 area = element area { text } 2208 workgroup = element workgroup { text } 2209 keyword = element keyword { text } 2210 abstract = element abstract { t+ } 2211 note = 2212 element note { 2213 attribute title { text }, 2214 t+ 2215 } 2216 middle = element middle { section+ } 2217 section = 2218 element section { 2219 attribute anchor { xsd:ID }?, 2220 attribute title { text }, 2221 [ a:defaultValue = "default" ] 2222 attribute toc { "include" | "exclude" | "default" }?, 2223 (t | figure | texttable | iref)*, 2224 section* 2225 } 2226 t = 2227 element t { 2228 attribute anchor { xsd:ID }?, 2229 attribute hangText { text }?, 2230 (text 2231 | \list 2232 | figure 2233 | xref 2234 | eref 2235 | iref 2236 | cref 2237 | spanx 2238 | vspace)* 2239 } 2240 \list = 2241 element list { 2242 attribute style { text }?, 2243 attribute hangIndent { text }?, 2244 attribute counter { text }?, 2245 t+ 2246 } 2247 xref = 2248 element xref { 2249 attribute target { xsd:IDREF }, 2250 [ a:defaultValue = "false" ] attribute pageno { "true" | "false" 2251 }?, 2252 [ a:defaultValue = "default" ] 2253 attribute format { "counter" | "title" | "none" | "default" }?, 2254 text 2255 } 2256 eref = 2257 element eref { 2258 attribute target { text }, 2259 text 2260 } 2261 iref = 2262 element iref { 2263 attribute item { text }, 2264 [ a:defaultValue = "" ] attribute subitem { text }?, 2265 [ a:defaultValue = "false" ] 2266 attribute primary { "true" | "false" }?, 2267 empty 2268 } 2269 cref = 2270 element cref { 2271 attribute anchor { xsd:ID }?, 2272 attribute source { text }?, 2273 text 2274 } 2275 spanx = 2276 element spanx { 2277 [ a:defaultValue = "preserve" ] 2278 attribute xml:space { "default" | "preserve" }?, 2279 [ a:defaultValue = "emph" ] attribute style { text }?, 2280 text 2281 } 2282 vspace = 2283 element vspace { 2284 [ a:defaultValue = "0" ] attribute blankLines { text }?, 2285 empty 2286 } 2287 figure = 2288 element figure { 2289 attribute anchor { xsd:ID }?, 2290 [ a:defaultValue = "" ] attribute title { text }?, 2291 [ a:defaultValue = "false" ] 2292 attribute suppress-title { "true" | "false" }?, 2293 attribute src { text }?, 2294 [ a:defaultValue = "left" ] 2295 attribute align { "left" | "center" | "right" }?, 2296 [ a:defaultValue = "" ] attribute alt { text }?, 2297 [ a:defaultValue = "" ] attribute width { text }?, 2298 [ a:defaultValue = "" ] attribute height { text }?, 2299 iref*, 2300 preamble?, 2301 artwork, 2302 postamble? 2303 } 2304 preamble = 2305 element preamble { (text | xref | eref | iref | cref | spanx)* } 2306 artwork = 2307 element artwork { 2308 [ a:defaultValue = "preserve" ] 2309 attribute xml:space { "default" | "preserve" }?, 2310 [ a:defaultValue = "" ] attribute name { text }?, 2311 [ a:defaultValue = "" ] attribute type { text }?, 2312 attribute src { text }?, 2313 [ a:defaultValue = "left" ] 2314 attribute align { "left" | "center" | "right" }?, 2316 [ a:defaultValue = "" ] attribute alt { text }?, 2317 [ a:defaultValue = "" ] attribute width { text }?, 2318 [ a:defaultValue = "" ] attribute height { text }?, 2319 text* 2320 } 2321 postamble = 2322 element postamble { (text | xref | eref | iref | cref | spanx)* } 2323 texttable = 2324 element texttable { 2325 attribute anchor { xsd:ID }?, 2326 [ a:defaultValue = "" ] attribute title { text }?, 2327 [ a:defaultValue = "false" ] 2328 attribute suppress-title { "true" | "false" }?, 2329 [ a:defaultValue = "center" ] 2330 attribute align { "left" | "center" | "right" }?, 2331 [ a:defaultValue = "full" ] 2332 attribute style { "all" | "none" | "headers" | "full" }?, 2333 preamble?, 2334 ttcol+, 2335 c*, 2336 postamble? 2337 } 2338 ttcol = 2339 element ttcol { 2340 attribute width { text }?, 2341 [ a:defaultValue = "left" ] 2342 attribute align { "left" | "center" | "right" }?, 2343 text 2344 } 2345 c = element c { (text | xref | eref | iref | cref | spanx)* } 2346 back = element back { references*, section* } 2347 references = 2348 element references { 2349 [ a:defaultValue = "References" ] attribute title { text }?, 2350 reference+ 2351 } 2352 reference = 2353 element reference { 2354 attribute anchor { xsd:ID }, 2355 attribute target { text }?, 2356 front, 2357 seriesInfo*, 2358 format*, 2359 annotation* 2360 } 2361 seriesInfo = 2362 element seriesInfo { 2363 attribute name { text }, 2364 attribute value { text }, 2365 empty 2366 } 2367 format = 2368 element format { 2369 attribute target { text }?, 2370 attribute type { text }, 2371 attribute octets { text }?, 2372 empty 2373 } 2374 annotation = 2375 element annotation { (text | xref | eref | iref | cref | spanx)* } 2376 start = rfc 2378 (This schema was derived from version 1.3.6 of the xml2rfc DTD 2379 ('Document Type Definition', [XML], Section 2.8), available from <htt 2380 p://svn.tools.ietf.org/svn/tools/xml2rfc/vocabulary/v2/03/ 2381 xml2rfcv2.dtd>). 2383 Appendix D. Proposed Future Changes for 'v3' 2385 Discussion of "v3" changes takes place on the rfc-interest mailing 2386 list (rfc-interest@rfc-editor.org), which has its home page at 2387 <http://www.rfc-editor.org/mailman/listinfo/rfc-interest>. See also 2388 <https://www.rfc-editor.org/rse/wiki/doku.php?id=design:xml-tags> for 2389 a related Wiki page. 2391 D.1. Contact Information 2393 If contact information is changed to allow non-ASCII characters: add 2394 a place for a ASCII fallback (probably just for the author names). 2396 The content model for <postal> ought to be more strict to allow at 2397 most one of <city>, <region>, <code>, and <country>. 2399 It should be possible to have multiple <email> and <uri> elements 2400 (see also <http://trac.tools.ietf.org/tools/xml2rfc/trac/ticket/36>). 2402 <facsimile> looks outdated, while a container for IM (messaging) URIs 2403 is missing. Maybe this area needs to be aligned with vCard. 2405 Section 4.11 of [RFCSTYLE] hints at a "Contributors" Section that 2406 could supply contact information similar to the one in the auto- 2407 generated "Authors' Address" Section. Consider how to capture 2408 contributor contact information (probably not using <author> to avoid 2409 confusion). Furthermore, consider ways to augment the contact 2410 information section with prose. 2412 D.2. Figures 2414 Cleanup the set of overlapping attributes between <figure> and 2415 <artwork>. 2417 For artwork that consists of a sequence of items (such as messages in 2418 a protocol example), it would be good if a <figure> element could 2419 contain multiple <artwork> elements (to assist code to find good 2420 places for page breaks). 2422 Extend <figure> to support different types of artwork (such as by 2423 specifying certain type attribute values, see <http://greenbytes.de/ 2424 tech/webdav/rfc2629xslt/rfc2629xslt.html#artwork.types>), and also 2425 avoid having to markup code (such as ABNF) as "artwork". 2427 It would be good if "code components" could be marked as such. 2429 Finally, even in preformatted text use of markup could be useful to 2430 support (a) references, or (b) highlighting the important bits (<http 2431 ://greenbytes.de/tech/webdav/rfc2629xslt/ 2432 rfc2629xslt.html#ext-rfc2629.artwork>). 2434 D.3. Linking 2436 Extend <xref> so that subsection/anchors can be specified (see <http: 2437 //greenbytes.de/tech/webdav/rfc2629xslt/ 2438 rfc2629xslt.html#ext-rfc2629.xref>). 2440 Remove the "pageno" attribute which seems to be both undocumented and 2441 non-functional. 2443 D.4. Lists 2445 Allow multiple paragraphs in list items; eliminating the need to use 2446 <vspace> -- this could be achieved by adding a list item container 2447 element ("<lt>", see <http://greenbytes.de/tech/webdav/rfc2629xslt/ 2448 rfc2629xslt.html#ext.element.lt> and 2449 <http://www.ietf.org/mail-archive/web/xml2rfc/current/ 2450 msg02010.html>). 2452 Add support for a "dictionary" style; eliminating the need to combine 2453 "hanging" with <vspace> to force new lines (see thread around <http:/ 2454 /www.rfc-editor.org/pipermail/rfc-interest/2013-December/ 2455 005876.html>). 2457 D.5. References 2459 Allow overriding the "anchor" attribute of an included <reference> 2460 element. 2462 Add a way to add prose to a reference that avoids abuse of 2463 <seriesInfo>. 2465 Allow <reference>s that identify a document set such as a BCP. 2467 Deprecate or remove the <format> element; right now it's not used for 2468 the generation of the plain text document anyway. 2470 The "anchor" attribute is optional because it is not needed when 2471 using numeric references (symrefs processing instruction), and the 2472 reference actually is not in use. This is an edge case that doesn't 2473 need special support in the vocabulary and thus should be removed. 2475 D.6. Archival Considerations 2477 When this vocabulary becomes the canonical RFC format, it will need 2478 to be able to capture all generated information, such as section/ 2479 figure/table numbers, plus any auto-generated boilerplate (copyright 2480 statements etc.). 2482 D.7. Document Metadata 2484 Extend the concept of language tagging to at least examples and 2485 contact information to address potential japanese/chinese font 2486 confusion. 2488 Provide a way to indicate the intended level on the standards track. 2490 Include feedback information in a way so that generated documents can 2491 provide usable feedback links (see <http://greenbytes.de/tech/webdav/ 2492 rfc2629xslt/rfc2629xslt.html#ext.element.feedback>). 2494 D.8. Including Material 2496 As discussed in Section 4, file inclusion currently uses out-of-the- 2497 box XML mechanisms or processor-specific directives. 2499 We need to decide whether the vocabulary should have its own 2500 inclusion mechanism, or whether it would be better to use a generic 2501 solution such as [XINCLUDE] instead. 2503 D.9. Misc. 2505 Make the <date> element optional; all of its content is optional 2506 already. 2508 <spanx> has both a weird whitespace model ("preserve") and 2509 problematic styling. Consider to deprecate it in favor of elements 2510 such as <b>, <i>, and <tt>. 2512 Indented paragraphs currently can be created by abusing the <list>. 2513 It would be good to have a special element for this purpose. 2515 Provide a special element for inserting block quotes (<http:// 2516 greenbytes.de/tech/webdav/rfc2629xslt/ 2517 rfc2629xslt.html#ext.element.blockquote>). 2519 The content model for <cref> should be extended to allow more flow 2520 elements, such as <xref> and <eref>. 2522 Section titles should really be elements, not attributes (this would 2523 allow them to contain markup). 2525 Text tables are currently very constrained. For instance, it would 2526 be good if alignment of headers and table cells could be de-coupled 2527 (<http://trac.tools.ietf.org/tools/xml2rfc/trac/ticket/69>). 2529 Counters are currently restricted to lists, figures, and tables. 2530 Maybe there should be a generic mechanism that is not directly tied 2531 to other elements 2532 (<http://trac.tools.ietf.org/tools/xml2rfc/trac/ticket/68>). 2534 Index 2536 A 2537 abbrev attribute 2538 in organization element 20 2539 in title element 32 2540 abstract element 4 2541 inside front 16 2542 address element 4 2543 inside author 9 2544 align attribute 2545 in artwork element 7 2546 in figure element 13 2547 in texttable element 30 2548 in ttcol element 32 2549 alt attribute 2550 in artwork element 7 2551 in figure element 14 2552 anchor attribute 2553 in cref element 11 2554 in figure element 14 2555 in reference element 22 2556 in section element 27 2557 in t element 30 2558 in texttable element 31 2559 annotation element 5 2560 inside reference 22 2561 application/rfc+xml Media Type 37 2562 area element 6 2563 inside front 15 2564 artwork element 6 2565 align attribute 7 2566 alt attribute 7 2567 height attribute 7 2568 inside figure 13 2569 name attribute 7 2570 src attribute 7 2571 type attribute 7 2572 width attribute 8 2573 xml:space attribute 8 2574 Attributes 2575 abbrev 20, 32 2576 align 7, 13, 30, 32 2577 alt 7, 14 2578 anchor 11, 14, 22, 27, 30-31 2579 blankLines 33 2580 category 23 2581 consensus 24 2582 counter 17 2583 day 12 2584 docName 24 2585 format 34 2586 fullname 9 2587 hangIndent 17 2588 hangText 30 2589 height 7, 14 2590 initials 9 2591 ipr 24 2592 iprExtract 25 2593 item 16 2594 month 12 2595 name 7, 28 2596 number 25 2597 obsoletes 25 2598 octets 15 2599 pageno 35 2600 primary 16 2601 role 9 2602 seriesNo 25 2603 source 11 2604 src 7, 14 2605 style 18, 28, 31 2606 subitem 16 2607 submissionType 26 2608 suppress-title 14, 31 2609 surname 9 2610 target 13, 15, 22, 35 2611 title 14, 19, 23, 27, 32 2612 toc 27 2613 type 7, 15 2614 updates 26 2615 value 28 2616 width 8, 14, 32 2617 xml:lang 26 2618 xml:space 8, 28 2619 year 12 2620 author element 8 2621 fullname attribute 9 2622 initials attribute 9 2623 inside front 15 2624 role attribute 9 2625 surname attribute 9 2627 B 2628 back element 9 2629 inside rfc 23 2630 blankLines attribute 2631 in vspace element 33 2633 C 2634 c element 10 2635 inside texttable 30 2636 category attribute 2637 in rfc element 23 2638 city element 10 2639 inside postal 20 2640 code element 10 2641 inside postal 20 2642 consensus attribute 2643 in rfc element 24 2644 counter attribute 2645 in list element 17 2646 country element 10 2647 inside postal 21 2648 cref element 11 2649 anchor attribute 11 2650 inside annotation 5 2651 inside c 10 2652 inside postamble 21 2653 inside preamble 21 2654 inside t 29 2655 source attribute 11 2657 D 2658 date element 11 2659 day attribute 12 2660 inside front 15 2661 month attribute 12 2662 year attribute 12 2663 day attribute 2664 in date element 12 2665 docName attribute 2666 in rfc element 24 2668 E 2669 Elements 2670 abstract 4, 16 2671 address 4, 9 2672 annotation 5, 22 2673 area 6, 15 2674 artwork 6, 13 2675 author 8, 15 2676 back 9, 23 2677 c 10, 30 2678 city 10, 20 2679 code 10, 20 2680 country 10, 21 2681 cref 5, 10-11, 21, 29 2682 date 11, 15 2683 email 5, 12 2684 eref 5, 10, 12, 21, 29 2685 facsimile 5, 13 2686 figure 13, 27, 29 2687 format 15, 22 2688 front 15, 22-23 2689 iref 5, 10, 13, 16, 21, 27, 29 2690 keyword 16-17 2691 list 17, 29 2692 middle 19, 23 2693 note 16, 19 2694 organization 9, 20 2695 phone 5, 20 2696 postal 5, 20 2697 postamble 13, 21, 30 2698 preamble 13, 21, 30 2699 reference 22-23 2700 references 10, 22 2701 region 20, 23 2702 rfc 23 2703 section 10, 19, 26-27 2704 seriesInfo 22, 27 2705 spanx 5, 10, 21, 28-29 2706 street 20, 29 2707 t 4, 17, 19, 27, 29 2708 texttable 27, 30 2709 title 15, 32 2710 ttcol 30, 32 2711 uri 5, 33 2712 vspace 29, 33 2713 workgroup 15, 33 2714 xref 5, 10, 21, 29, 34 2715 email element 12 2716 inside address 5 2717 eref element 12 2718 inside annotation 5 2719 inside c 10 2720 inside postamble 21 2721 inside preamble 21 2722 inside t 29 2723 target attribute 13 2725 F 2726 facsimile element 13 2727 inside address 5 2728 figure element 13 2729 align attribute 13 2730 alt attribute 14 2731 anchor attribute 14 2732 height attribute 14 2733 inside section 27 2734 inside t 29 2735 src attribute 14 2736 suppress-title attribute 14 2737 title attribute 14 2738 width attribute 14 2739 format attribute 2740 in xref element 34 2741 format element 15 2742 inside reference 22 2743 octets attribute 15 2744 target attribute 15 2745 type attribute 15 2746 front element 15 2747 inside reference 22 2748 inside rfc 23 2749 fullname attribute 2750 in author element 9 2752 H 2753 hangIndent attribute 2754 in list element 17 2755 hangText attribute 2756 in t element 30 2757 height attribute 2758 in artwork element 7 2759 in figure element 14 2761 I 2762 initials attribute 2763 in author element 9 2764 ipr attribute 2765 '*2026' 44 2766 '*3667' 44 2767 '*3978' 44 2768 '*trust200811' 44 2769 '*trust200902' 42 2770 'noDerivativesTrust200902' 43 2771 'noModificationTrust200902' 43 2772 'pre5378Trust200902' 43 2773 'trust200902' 42 2774 in rfc element 24 2775 iprExtract attribute 2776 in rfc element 25 2777 iref element 16 2778 inside annotation 5 2779 inside c 10 2780 inside figure 13 2781 inside postamble 21 2782 inside preamble 21 2783 inside section 27 2784 inside t 29 2785 item attribute 16 2786 primary attribute 16 2787 subitem attribute 16 2788 item attribute 2789 in iref element 16 2791 K 2792 keyword element 17 2793 inside front 16 2795 L 2796 list element 17 2797 counter attribute 17 2798 hangIndent attribute 17 2799 inside t 29 2800 style attribute 18 2801 list styles 2802 empty 18 2803 format ... 18 2804 hanging 18 2805 letters 18 2806 numbers 18 2807 symbols 18 2809 M 2810 Media Type 2811 application/rfc+xml 37 2812 middle element 19 2813 inside rfc 23 2814 month attribute 2815 in date element 12 2817 N 2818 name attribute 2819 in artwork element 7 2820 in seriesInfo element 28 2821 note element 19 2822 inside front 16 2823 title attribute 19 2824 number attribute 2825 in rfc element 25 2827 O 2828 obsoletes attribute 2829 in rfc element 25 2830 octets attribute 2831 in format element 15 2832 organization element 20 2833 abbrev attribute 20 2834 inside author 9 2836 P 2837 pageno attribute 2838 in xref element 35 2840 phone element 20 2841 inside address 5 2842 postal element 20 2843 inside address 5 2844 postamble element 21 2845 inside figure 13 2846 inside texttable 30 2847 preamble element 21 2848 inside figure 13 2849 inside texttable 30 2850 primary attribute 2851 in iref element 16 2853 R 2854 reference element 22 2855 anchor attribute 22 2856 inside references 23 2857 target attribute 22 2858 references element 22 2859 inside back 10 2860 title attribute 23 2861 region element 23 2862 inside postal 20 2863 rfc element 23 2864 category attribute 23 2865 consensus attribute 24 2866 docName attribute 24 2867 ipr attribute 24 2868 iprExtract attribute 25 2869 number attribute 25 2870 obsoletes attribute 25 2871 seriesNo attribute 25 2872 submissionType attribute 26 2873 updates attribute 26 2874 xml:lang attribute 26 2875 role attribute 2876 in author element 9 2878 S 2879 section element 26 2880 anchor attribute 27 2881 inside back 10 2882 inside middle 19 2883 inside section 27 2884 title attribute 27 2885 toc attribute 27 2886 seriesInfo element 27 2887 inside reference 22 2888 name attribute 28 2889 value attribute 28 2890 seriesNo attribute 2891 in rfc element 25 2892 source attribute 2893 in cref element 11 2894 spanx element 28 2895 inside annotation 5 2896 inside c 10 2897 inside postamble 21 2898 inside preamble 21 2899 inside t 29 2900 style attribute 28 2901 xml:space attribute 28 2902 src attribute 2903 in artwork element 7 2904 in figure element 14 2905 street element 29 2906 inside postal 20 2907 style attribute 2908 in list element 18 2909 in spanx element 28 2910 in texttable element 31 2911 subitem attribute 2912 in iref element 16 2913 submissionType attribute 2914 in rfc element 26 2915 suppress-title attribute 2916 in figure element 14 2917 in texttable element 31 2918 surname attribute 2919 in author element 9 2921 T 2922 t element 29 2923 anchor attribute 30 2924 hangText attribute 30 2925 inside abstract 4 2926 inside list 17 2927 inside note 19 2928 inside section 27 2929 target attribute 2930 in eref element 13 2931 in format element 15 2932 in reference element 22 2933 in xref element 35 2934 texttable element 30 2935 align attribute 30 2936 anchor attribute 31 2937 inside section 27 2938 style attribute 31 2939 suppress-title attribute 31 2940 title attribute 32 2941 title attribute 2942 in figure element 14 2943 in note element 19 2944 in references element 23 2945 in section element 27 2946 in texttable element 32 2947 title element 32 2948 abbrev attribute 32 2949 inside front 15 2950 toc attribute 2951 in section element 27 2952 ttcol element 32 2953 align attribute 32 2954 inside texttable 30 2955 width attribute 32 2956 type attribute 2957 in artwork element 7 2958 in format element 15 2960 U 2961 updates attribute 2962 in rfc element 26 2963 uri element 33 2964 inside address 5 2966 V 2967 value attribute 2968 in seriesInfo element 28 2969 vspace element 33 2970 blankLines attribute 33 2971 inside t 29 2973 W 2974 width attribute 2975 in artwork element 8 2976 in figure element 14 2977 in ttcol element 32 2978 workgroup element 33 2979 inside front 15 2981 X 2982 xml:lang attribute 2983 in rfc element 26 2985 xml:space attribute 2986 in artwork element 8 2987 in spanx element 28 2988 xref element 34 2989 format attribute 34 2990 inside annotation 5 2991 inside c 10 2992 inside postamble 21 2993 inside preamble 21 2994 inside t 29 2995 pageno attribute 35 2996 target attribute 35 2997 xref formats 2998 counter 34 2999 default 34 3000 none 34 3001 title 34 3003 Y 3004 year attribute 3005 in date element 12 3007 Author's Address 3009 Julian F. Reschke 3010 greenbytes GmbH 3011 Hafenweg 16 3012 Muenster, NW 48155 3013 Germany 3015 EMail: julian.reschke@greenbytes.de 3016 URI: http://greenbytes.de/tech/webdav/