idnits 2.17.1 draft-reschke-xml2rfc-06.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 2, 2014) is 3675 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 2, 2014 5 Intended status: Standards Track 6 Expires: October 4, 2014 8 The 'XML2RFC' version 2 Vocabulary 9 draft-reschke-xml2rfc-06 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 4, 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.
. . . . . . . . . . . . . . . . . . . . . . . . 5 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. . . . . . . . . . . . . . . . . . . . . . . . . 11 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. . . . . . . . . . . . . . . . . . . . . . . . . . 31 99 2.41. <ttcol> . . . . . . . . . . . . . . . . . . . . . . . . . 32 100 2.42. <uri> . . . . . . . . . . . . . . . . . . . . . . . . . . 32 101 2.43. <vspace> . . . . . . . . . . . . . . . . . . . . . . . . . 33 102 2.44. <workgroup> . . . . . . . . . . . . . . . . . . . . . . . 33 103 2.45. <xref> . . . . . . . . . . . . . . . . . . . . . . . . . . 33 104 3. Special Unicode Code Points . . . . . . . . . . . . . . . . . 35 105 4. Including Files . . . . . . . . . . . . . . . . . . . . . . . 35 106 5. Internationalization Considerations . . . . . . . . . . . . . 36 107 6. Security Considerations . . . . . . . . . . . . . . . . . . . 36 108 7. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 37 109 7.1. Internet Media Type Registration . . . . . . . . . . . . . 37 110 8. Acknowledgments . . . . . . . . . . . . . . . . . . . . . . . 38 111 9. References . . . . . . . . . . . . . . . . . . . . . . . . . . 38 112 9.1. Normative References . . . . . . . . . . . . . . . . . . . 38 113 9.2. Informative References . . . . . . . . . . . . . . . . . . 38 114 Appendix A. Front Page Generation . . . . . . . . . . . . . . . . 40 115 A.1. The /rfc/@category Attribute . . . . . . . . . . . . . . . 41 116 A.2. The /rfc/@ipr Attribute . . . . . . . . . . . . . . . . . 41 117 A.2.1. Current Values: '*trust200902' . . . . . . . . . . . . 41 118 A.2.2. Historic Values . . . . . . . . . . . . . . . . . . . 43 119 Appendix B. Changes from RFC 2629 ('v1') . . . . . . . . . . . . 43 120 B.1. Removed Elements . . . . . . . . . . . . . . . . . . . . . 44 121 B.2. Changed Defaults . . . . . . . . . . . . . . . . . . . . . 44 122 B.3. Changed Elements . . . . . . . . . . . . . . . . . . . . . 44 123 B.4. New Elements . . . . . . . . . . . . . . . . . . . . . . . 45 124 Appendix C. Relax NG Schema . . . . . . . . . . . . . . . . . . . 45 125 Appendix D. Proposed Future Changes for 'v3' . . . . . . . . . . 50 126 D.1. Contact Information . . . . . . . . . . . . . . . . . . . 50 127 D.2. Figures . . . . . . . . . . . . . . . . . . . . . . . . . 51 128 D.3. Linking . . . . . . . . . . . . . . . . . . . . . . . . . 51 129 D.4. Lists . . . . . . . . . . . . . . . . . . . . . . . . . . 52 130 D.5. References . . . . . . . . . . . . . . . . . . . . . . . . 52 131 D.6. Archival Considerations . . . . . . . . . . . . . . . . . 52 132 D.7. Document Metadata . . . . . . . . . . . . . . . . . . . . 52 133 D.8. Including Material . . . . . . . . . . . . . . . . . . . . 53 134 D.9. Misc. . . . . . . . . . . . . . . . . . . . . . . . . . . 53 135 Index . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 53 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 [[anchor2: In the section below, some elements/attributes do not have 166 a prose description yet. This is because this is work-in-progress; 167 feedback with accurate descriptions is appreciated.]] 169 The sections below describe all elements and their attributes. 171 Note that attributes not labeled "mandatory" are optional. 173 2.1. <abstract> 175 Contains the abstract of the document. The abstract ought to be 176 self-contained and thus should not contain references or unexpanded 177 abbreviations. See Section 4.3 of [RFCSTYLE] for more information. 179 This element appears as child element of: <front> (Section 2.19). 181 Content model: 183 One or more <t> elements (Section 2.38) 185 2.2. <address> 187 Provides address information for the author. 189 This element appears as child element of: <author> (Section 2.6). 191 Content model: 193 In this order: 195 1. One optional <postal> element (Section 2.27) 197 2. One optional <phone> element (Section 2.26) 199 3. One optional <facsimile> element (Section 2.16) 201 4. One optional <email> element (Section 2.14) 203 5. One optional <uri> element (Section 2.42) 205 2.3. <annotation> 207 Provides additional prose augmenting a bibliographical reference. 209 For instance: 211 <annotation> 212 Latest version available at <eref 213 target='http://www.w3.org/TR/xml'/>. 214 </annotation> 216 ...will generate the text used in the reference for [XML]. 218 This element appears as child element of: <reference> (Section 2.30). 220 Content model: 222 In any order: 224 o Text 226 o <xref> elements (Section 2.45) 228 o <eref> elements (Section 2.15) 230 o <iref> elements (Section 2.20) 231 o <cref> elements (Section 2.12) 233 o <spanx> elements (Section 2.36) 235 2.4. <area> 237 Provides information about the IETF area this document applies to 238 (currently not used when generating documents). 240 The value ought to be either the fullname or the abbreviation of one 241 of the IETF areas as listed on <http://www.ietf.org/iesg/area.html>: 242 "Applications", "app", "General", "gen", "Internet", "int", 243 "Operations and Management", "ops", "Real-time Applications and 244 Infrastructure", "rai", "Routing", "rtg", "Security", "sec", 245 "Transport", "tsv". 247 This element appears as child element of: <front> (Section 2.19). 249 Content model: only text content. 251 2.5. <artwork> 253 This element allows the inclusion of "artwork" into the document. 255 <artwork> is the only element in the vocabulary that provides full 256 control of horizontal whitespace and line breaks, and thus is used 257 for a variety of things, such as: 259 o diagrams ("line art"), 261 o source code, 263 o formal languages (such as ABNF or the RNC notation used in this 264 document), 266 o complex tables, or 268 o protocol unit diagrams. 270 Alternatively, the "src" attribute allows referencing an external 271 graphics file, such as a bitmap or a vector drawing. In this case, 272 the textual content acts as fallback for output formats that do not 273 support graphics, and thus ought to contain either a "line art" 274 variant of the graphics, or otherwise prose that describes the 275 included image in sufficient detail. Note that RFCs occasionally are 276 published with enhanced diagrams; a recent example is [RFC5598]. 278 This element appears as child element of: <figure> (Section 2.17). 280 Content model: 282 Text 284 2.5.1. 'align' attribute 286 Controls whether the artwork appears left (default), centered, or 287 right. 289 Allowed values: 291 o "left" (default) 293 o "center" 295 o "right" 297 2.5.2. 'alt' attribute 299 Alternative text description of the artwork (not just the caption). 301 2.5.3. 'height' attribute 303 The suggested height of the graphics included using the "src" 304 attribute. 306 This attribute is format-dependent and ought to be avoided. 308 When generating HTML output, current implementations copy the 309 attribute "as is". For other output formats it is usually ignored. 311 2.5.4. 'name' attribute 313 A filename suitable for the contents (such as for extraction to a 314 local file). 316 This attribute generally isn't used for document generation, but it 317 can be helpful for other kinds of tools (such as automated syntax 318 checkers which work by extracting the source code). 320 2.5.5. 'src' attribute 322 The URI of a graphics file. 324 Note that this can be a "data" URI ([RFC2397]) as well, in which case 325 the graphics file essentially is in-lined. 327 2.5.6. 'type' attribute 329 Specifies the type of the artwork. 331 The value either is a well-known keyword (such as "abnf"), or an 332 Internet Media Type (see [RFC2046]). 334 How it is used depends on context and application. For instance, a 335 formatter can attempt to syntax-highlight code in certain known 336 languages. 338 2.5.7. 'width' attribute 340 The suggested width of the graphics included using the "src" 341 attribute. 343 This attribute is format-dependent and ought to be avoided. 345 When generating HTML output, current implementations copy the 346 attribute "as is". For other output formats it is usually ignored. 348 2.5.8. 'xml:space' attribute 350 Determines whitespace handling. 352 "preserve" is both the default value and the only meaningful setting 353 anyway (because that's what the <artwork> element is for). 355 See also Section 2.10 of [XML]. 357 Allowed values: 359 o "default" 361 o "preserve" (default) 363 2.6. <author> 365 Provides information about a document author. 367 The <author> elements contained within the document's <front> element 368 are used to fill the boilerplate, and also to generate the "Author's 369 Address" section (see Section 4.12 of [RFCSTYLE]). 371 Note that an "author" can also be just an organization (by not 372 specifying any of the name attributes, but adding the <organization> 373 child element). 375 Furthermore, the "role" attribute can be used to mark an author as 376 "editor". This is reflected both on the front page and in 377 bibliographical references. Note that this specification does not 378 define a precise meaning for the term "editor". 380 See Section "Authors vs. Contributors" of [RFCPOLICY] for more 381 information. 383 This element appears as child element of: <front> (Section 2.19). 385 Content model: 387 In this order: 389 1. One optional <organization> element (Section 2.25) 391 2. One optional <address> element (Section 2.2) 393 2.6.1. 'fullname' attribute 395 The full name (used in the automatically generated "Author's Address" 396 section). 398 2.6.2. 'initials' attribute 400 Author initials (used on the front page and in references). 402 Initials should be provided as a whitespace separated list of pairs 403 of a letter and a dot. 405 2.6.3. 'role' attribute 407 Specifies the role the author had in creating the document. 409 Allowed values: 411 o "editor" 413 2.6.4. 'surname' attribute 415 The author's surname. 417 2.7. <back> 419 Contains the "back" part of the document: the references and 420 appendices. 422 This element appears as child element of: <rfc> (Section 2.33). 424 Content model: 426 In this order: 428 1. Optional <references> elements (Section 2.31) 430 2. Optional <section> elements (Section 2.34) 432 2.8. <c> 434 Provides the content of a cell in a table. 436 This element appears as child element of: <texttable> (Section 2.39). 438 Content model: 440 In any order: 442 o Text 444 o <xref> elements (Section 2.45) 446 o <eref> elements (Section 2.15) 448 o <iref> elements (Section 2.20) 450 o <cref> elements (Section 2.12) 452 o <spanx> elements (Section 2.36) 454 2.9. <city> 456 Gives the city name in a postal address. 458 This element appears as child element of: <postal> (Section 2.27). 460 Content model: only text content. 462 2.10. <code> 464 Gives the postal region code. 466 This element appears as child element of: <postal> (Section 2.27). 468 Content model: only text content. 470 2.11. <country> 472 Gives the country in a postal address. 474 This element appears as child element of: <postal> (Section 2.27). 476 Content model: only text content. 478 2.12. <cref> 480 Represents a comment. 482 Comments can be used in a document while it is work-in-progress. 483 They usually appear either inline and visually highlighted, at the 484 end of the document (depending on file format and settings of the 485 formatter), or not at all (when generating an RFC). 487 This element appears as child element of: <annotation> (Section 2.3), 488 <c> (Section 2.8), <postamble> (Section 2.28), <preamble> 489 (Section 2.29), and <t> (Section 2.38). 491 Content model: only text content. 493 2.12.1. 'anchor' attribute 495 Document-wide unique identifier for this comment. The processor will 496 auto-generate an identifier when none is given. 498 The value needs to be a valid XML "Name" (Section 2.3 of [XML]). 500 2.12.2. 'source' attribute 502 Holds the "source" of a comment, such as the name or the initials of 503 the person who made the comment. 505 2.13. <date> 507 Provides information about the publication date. 509 Note that this element is used both for the boilerplate of the 510 document being produced, and also inside bibliographic references. 512 In the first case, it defines the publication date, which, when 513 producing Internet-Drafts, will be used for computing the expiration 514 date (see Section 8 of [IDGUIDE]). When "year", "month" or "day" are 515 left out, the processor will attempt to use the current system date 516 if the attributes that are specified do match the system date. 518 Note that month names need to match the full (English) month name 519 ("January", "February", "March", "April", "May, "June", "July", 520 "August", "September", "October", "November", or "December") in order 521 for expiration calculations to work (some implementations might 522 support additional formats, though). 524 In the second case, the date information will be embedded as-is into 525 the reference text. Therefore, also vague dates ("ca. 2000"), date 526 ranges, and so on, are allowed. 528 This element appears as child element of: <front> (Section 2.19). 530 Content model: this element does not have any contents. 532 2.13.1. 'day' attribute 534 Day of publication. 536 2.13.2. 'month' attribute 538 Month of publication. 540 2.13.3. 'year' attribute 542 Year of publication. 544 2.14. <email> 546 Provides an email address. 548 The value is expected to be the scheme-specific part of a "mailto" 549 URI (so does not include the prefix "mailto:"). See Section 2 of 550 [RFC6068] for details. 552 This element appears as child element of: <address> (Section 2.2). 554 Content model: only text content. 556 2.15. <eref> 558 Represents an "external" link (as specified in the "target" 559 attribute). 561 If the element has text content, that content will be used. 562 Otherwise, the value of the target attribute will be inserted in 563 angle brackets ([RFC3986], Appendix C). 565 This element appears as child element of: <annotation> (Section 2.3), 566 <c> (Section 2.8), <postamble> (Section 2.28), <preamble> 567 (Section 2.29), and <t> (Section 2.38). 569 Content model: only text content. 571 2.15.1. 'target' attribute (mandatory) 573 URI of the link target (see Section 3 of [RFC3986]). 575 2.16. <facsimile> 577 Represents the phone number of a fax machine. 579 The value is expected to be the scheme-specific part of a "tel" URI 580 (so does not include the prefix "tel:"), using the "global numbers" 581 syntax. See Section 3 of [RFC3966] for details. 583 This element appears as child element of: <address> (Section 2.2). 585 Content model: only text content. 587 2.17. <figure> 589 This element is used to represent a figure, consisting of an optional 590 preamble, the actual figure, an optional postamble, and an optional 591 title. 593 This element appears as child element of: <section> (Section 2.34), 594 and <t> (Section 2.38). 596 Content model: 598 In this order: 600 1. Optional <iref> elements (Section 2.20) 602 2. One optional <preamble> element (Section 2.29) 604 3. One <artwork> element (Section 2.5) 606 4. One optional <postamble> element (Section 2.28) 608 2.17.1. 'align' attribute 610 Used to change the alignment of <preamble> and <postamble>. 612 Note: does not affect title or <artwork> alignment. 614 Allowed values: 616 o "left" (default) 618 o "center" 620 o "right" 622 2.17.2. 'alt' attribute 624 Duplicates functionality available on <artwork>; avoid it. 626 2.17.3. 'anchor' attribute 628 Document-wide unique identifier for this figure. 630 Furthermore, the presence of this attribute causes the figure to be 631 numbered. 633 The value needs to be a valid XML "Name" (Section 2.3 of [XML]). 635 2.17.4. 'height' attribute 637 Duplicates functionality available on <artwork>; avoid it. 639 2.17.5. 'src' attribute 641 Duplicates functionality available on <artwork>; avoid it. 643 2.17.6. 'suppress-title' attribute 645 Figures that have an "anchor" attribute will automatically get an 646 autogenerated title (such as "Figure 1"), even if the "title" 647 attribute is absent. Setting this attribute to "false" will prevent 648 this. 650 Allowed values: 652 o "true" 654 o "false" (default) 656 2.17.7. 'title' attribute 658 The title for the figure; this usually appears on a line after the 659 figure. 661 2.17.8. 'width' attribute 663 Duplicates functionality available on <artwork>; avoid it. 665 2.18. <format> 667 Provides a link to an additional format variant for a reference. 669 Note that these additional links are neither used in published RFCs, 670 nor supported by all tools. If the goal is to provide a single URI 671 for a reference, the "target" attribute on <reference> can be used 672 instead. 674 This element appears as child element of: <reference> (Section 2.30). 676 Content model: this element does not have any contents. 678 2.18.1. 'octets' attribute 680 Octet length of linked-to document. 682 2.18.2. 'target' attribute 684 URI of document. 686 [[anchor3: Why is this optional?]] 688 2.18.3. 'type' attribute (mandatory) 690 The type of the linked-to document, such as "TXT", "HTML", or "PDF". 692 2.19. <front> 694 Represent the "front matter": metadata (such as author information), 695 abstract, and additional notes. 697 This element appears as child element of: <reference> (Section 2.30), 698 and <rfc> (Section 2.33). 700 Content model: 702 In this order: 704 1. One <title> element (Section 2.40) 706 2. One or more <author> elements (Section 2.6) 707 3. One <date> element (Section 2.13) 709 4. Optional <area> elements (Section 2.4) 711 5. Optional <workgroup> elements (Section 2.44) 713 6. Optional <keyword> elements (Section 2.21) 715 7. One optional <abstract> element (Section 2.1) 717 8. Optional <note> elements (Section 2.24) 719 2.20. <iref> 721 Provides terms for the document's index. 723 Index entries can be either single items (when just the "item" 724 attribute is given) or nested items (by specifying "subitem" as 725 well). 727 For instance: 729 <iref item="Grammar" subitem="item"/> 731 will produce an index entry for "Grammar, item". 733 This element appears as child element of: <annotation> (Section 2.3), 734 <c> (Section 2.8), <figure> (Section 2.17), <postamble> 735 (Section 2.28), <preamble> (Section 2.29), <section> (Section 2.34), 736 and <t> (Section 2.38). 738 Content model: this element does not have any contents. 740 2.20.1. 'item' attribute (mandatory) 742 The item to include. 744 2.20.2. 'primary' attribute 746 Setting this to "true" declares the occurrence as "primary", which 747 might cause it to be highlighted in the index. 749 Allowed values: 751 o "true" 753 o "false" (default) 755 2.20.3. 'subitem' attribute 757 The subitem to include. 759 2.21. <keyword> 761 Specifies a keyword applicable to the document. 763 Note that each element should only contain a single keyword; for 764 multiple keywords, the element can simply be repeated. 766 Keywords are used both in the RFC Index and in the metadata of 767 generated document formats. 769 This element appears as child element of: <front> (Section 2.19). 771 Content model: only text content. 773 2.22. <list> 775 Delineates a text list. 777 Each list item is represented by a <t> element. The vocabulary 778 currently does not directly support list items consisting of multiple 779 paragraphs; if this is needed, <vspace> (Section 2.43) can be used as 780 workaround. 782 This element appears as child element of: <t> (Section 2.38). 784 Content model: 786 One or more <t> elements (Section 2.38) 788 2.22.1. 'counter' attribute 790 This attribute holds a token that serves as an identifier for a 791 counter. The intended use is continuation of lists. 793 Note that this attribute functions only when the style attribute is 794 using the "format..." syntax (Section 2.22.3); otherwise, it is 795 ignored. 797 2.22.2. 'hangIndent' attribute 799 For list styles with potentially wide labels, this attribute can 800 override the default indentation level, measured in characters. 802 Note that it only affects style with variable-width labels 803 ("format..." and "hanging", see below), and it may not affect formats 804 in which the list item text appears _below_ the label. 806 2.22.3. 'style' attribute 808 This attribute is used to control the display of a list. 810 The value of this attribute is inherited by any nested lists that do 811 not have this attribute set. It may be set to: 813 "empty" (or not set) 815 For unlabeled list items; it can also be used for indentation 816 purposes (this is the default value). 818 "hanging" 820 For lists where the items are labeled with a piece of text. 822 The label text is specified in the 'hangText' attribute of the <t> 823 element (Section 2.38.2). 825 "letters" 827 For ordered lists using letters as labels (lowercase letters 828 followed by a period; after "z", it rolls over to a two-letter 829 format). For nested lists, processors usually flip between 830 uppercase and lowercase. 832 "numbers" 834 For ordered lists using numbers as labels. 836 "symbols" 838 For unordered (bulleted) lists. 840 The style of the bullets is chosen automatically be the processor 841 (some implementations allow overriding the default using a 842 processing instruction). 844 And, finally: 846 "format ..." 848 For lists with customized labels, consisting of fixed text and an 849 item counter in various formats. 851 The value is a free-form text that allows counter values to be 852 inserted using a "percent-letter" format. For instance, "[REQ%d]" 853 generates labels of the form "[REQ1]", where "%d" inserts the item 854 number as decimal number. 856 The following formats are supported: 858 %c lowercase letters (a, b, c, etc.) 860 %C uppercase letters (A, B, C, etc.) 862 %d decimal numbers (1, 2, 3, etc.) 864 %i lowercase Roman numerals (i, ii, iii, etc.) 866 %I uppercase Roman numerals (I, II, III, etc.) 868 %% represents a percent sign 870 Other formats are reserved for future use. 872 2.23. <middle> 874 Represents the main content of the document. 876 This element appears as child element of: <rfc> (Section 2.33). 878 Content model: 880 One or more <section> elements (Section 2.34) 882 2.24. <note> 884 Creates an unnumbered section that appears after the abstract. 886 It is usually used for additional information to reviewers (working 887 group information, mailing list, ...), or for additional publication 888 information such as "IESG Notes". 890 This element appears as child element of: <front> (Section 2.19). 892 Content model: 894 One or more <t> elements (Section 2.38) 896 2.24.1. 'title' attribute (mandatory) 898 The title of the note. 900 2.25. <organization> 902 Specifies the affiliation of an author. 904 This information appears in both the "Author's Address" section and 905 on the front page ([RFCSTYLE], Section 4.1.1). If the value is long, 906 an abbreviated variant can be specified in the "abbrev" attribute. 908 This element appears as child element of: <author> (Section 2.6). 910 Content model: only text content. 912 2.25.1. 'abbrev' attribute 914 Abbreviated variant. 916 2.26. <phone> 918 Represents a phone number. 920 The value is expected to be the scheme-specific part of a "tel" URI 921 (so does not include the prefix "tel:"), using the "global numbers" 922 syntax. See Section 3 of [RFC3966] for details. 924 This element appears as child element of: <address> (Section 2.2). 926 Content model: only text content. 928 2.27. <postal> 930 Contains child elements providing postal information. 932 This element appears as child element of: <address> (Section 2.2). 934 Content model: 936 In this order: 938 1. One or more <street> elements (Section 2.37) 940 2. In any order: 942 * <city> elements (Section 2.9) 943 * <region> elements (Section 2.32) 945 * <code> elements (Section 2.10) 947 * <country> elements (Section 2.11) 949 2.28. <postamble> 951 Gives text that appears at the bottom of a figure or table. 953 This element appears as child element of: <figure> (Section 2.17), 954 and <texttable> (Section 2.39). 956 Content model: 958 In any order: 960 o Text 962 o <xref> elements (Section 2.45) 964 o <eref> elements (Section 2.15) 966 o <iref> elements (Section 2.20) 968 o <cref> elements (Section 2.12) 970 o <spanx> elements (Section 2.36) 972 2.29. <preamble> 974 Gives text that appears at the top of a figure or table. 976 This element appears as child element of: <figure> (Section 2.17), 977 and <texttable> (Section 2.39). 979 Content model: 981 In any order: 983 o Text 985 o <xref> elements (Section 2.45) 987 o <eref> elements (Section 2.15) 989 o <iref> elements (Section 2.20) 990 o <cref> elements (Section 2.12) 992 o <spanx> elements (Section 2.36) 994 2.30. <reference> 996 Represents a bibliographical reference. 998 This element appears as child element of: <references> 999 (Section 2.31). 1001 Content model: 1003 In this order: 1005 1. One <front> element (Section 2.19) 1007 2. Optional <seriesInfo> elements (Section 2.35) 1009 3. Optional <format> elements (Section 2.18) 1011 4. Optional <annotation> elements (Section 2.3) 1013 2.30.1. 'anchor' attribute (mandatory) 1015 Document-wide unique identifier for this reference. Usually, this 1016 will be used both to "label" the reference in the references section, 1017 and as an identifier in links to this reference entry. 1019 The value needs to be a valid XML "Name" (Section 2.3 of [XML]). 1021 2.30.2. 'target' attribute 1023 Holds the URI for the reference. 1025 Note that depending on the <seriesInfo> element, a URI might not be 1026 needed, nor desirable, as it can be automatically generated (for 1027 instance, for RFCs). 1029 2.31. <references> 1031 Contains a set of bibliographical references. 1033 In the early days of the RFC series, there was only one "References" 1034 section per RFC. This convention was later changed to group 1035 references into two sets, "Normative" and "Informative"; see Section 1036 4.8.6 of [RFCSTYLE]). This vocabulary supports the split with the 1037 "title" attribute. 1039 This element appears as child element of: <back> (Section 2.7). 1041 Content model: 1043 One or more <reference> elements (Section 2.30) 1045 2.31.1. 'title' attribute 1047 Provides the title for the References section (defaulting to 1048 "References"). 1050 In general, the title should be either "Normative References" or 1051 "Informative References". 1053 2.32. <region> 1055 Provides the region name in a postal address. 1057 This element appears as child element of: <postal> (Section 2.27). 1059 Content model: only text content. 1061 2.33. <rfc> 1063 This is the root element of the xml2rfc vocabulary. 1065 Processors distinguish between RFC mode ("number" attribute being 1066 present) and Internet-Draft mode ("docName" attribute being present): 1067 it is invalid to specify both. Setting neither "number" nor 1068 "docName" can be useful for producing other types of document but is 1069 out-of-scope for this specification. 1071 Content model: 1073 In this order: 1075 1. One <front> element (Section 2.19) 1077 2. One <middle> element (Section 2.23) 1079 3. One optional <back> element (Section 2.7) 1081 2.33.1. 'category' attribute 1083 Document category (see Appendix A.1). 1085 Allowed values: 1087 o "std" 1089 o "bcp" 1091 o "info" 1093 o "exp" 1095 o "historic" 1097 2.33.2. 'consensus' attribute 1099 Affects the generated boilerplate. 1101 See [RFC5741] for more information. 1103 Allowed values: 1105 o "no" 1107 o "yes" 1109 2.33.3. 'docName' attribute 1111 For Internet-Drafts, this specifies the draft name (which appears 1112 below the title). 1114 Note that the file extension is not part of the draft, so in general 1115 it should end with the current draft number ("-", plus two digits). 1117 Furthermore, it is good practice to disambiguate current editor 1118 copies from submitted drafts (for instance, by replacing the draft 1119 number with the string "latest"). 1121 See Section 7 of [IDGUIDE] for further information. 1123 2.33.4. 'ipr' attribute 1125 Represents the Intellectual Property status of the document. See 1126 Appendix A.2 for details. 1128 Allowed values: 1130 o "full2026" 1132 o "noDerivativeWorks2026" 1133 o "none" 1135 o "full3667" 1137 o "noModification3667" 1139 o "noDerivatives3667" 1141 o "full3978" 1143 o "noModification3978" 1145 o "noDerivatives3978" 1147 o "trust200811" 1149 o "noModificationTrust200811" 1151 o "noDerivativesTrust200811" 1153 o "trust200902" 1155 o "noModificationTrust200902" 1157 o "noDerivativesTrust200902" 1159 o "pre5378Trust200902" 1161 2.33.5. 'iprExtract' attribute 1163 Identifies a Section within the document for which extraction "as-is" 1164 is explicitly allowed (only relevant for historic values of the "ipr" 1165 attribute). 1167 2.33.6. 'number' attribute 1169 The number of the RFC to be produced. 1171 2.33.7. 'obsoletes' attribute 1173 A comma-separated list of RFC _numbers_ or Internet-Draft names. 1175 2.33.8. 'seriesNo' attribute 1177 When producing a document within document series (such as "STD"): the 1178 number within that series. 1180 2.33.9. 'submissionType' attribute 1182 The document stream. 1184 See Section 2 of [RFC5741] for details. 1186 Allowed values: 1188 o "IETF" (default) 1190 o "IAB" 1192 o "IRTF" 1194 o "independent" 1196 2.33.10. 'updates' attribute 1198 A comma-separated list of RFC _numbers_ or Internet-Draft names. 1200 2.33.11. 'xml:lang' attribute 1202 The natural language used in the document (defaults to "en"). 1204 See Section 2.12 of [XML] for more information. 1206 2.34. <section> 1208 Represents a section (when inside a <middle> element) or an appendix 1209 (when inside a <back> element). 1211 Sub-sections are created by nesting <section> elements inside 1212 <section> elements. 1214 This element appears as child element of: <back> (Section 2.7), 1215 <middle> (Section 2.23), and <section> (Section 2.34). 1217 Content model: 1219 In this order: 1221 1. In any order: 1223 * <t> elements (Section 2.38) 1225 * <figure> elements (Section 2.17) 1226 * <texttable> elements (Section 2.39) 1228 * <iref> elements (Section 2.20) 1230 2. Optional <section> elements (Section 2.34) 1232 2.34.1. 'anchor' attribute 1234 Document-wide unique identifier for this section. 1236 The value needs to be a valid XML "Name" (Section 2.3 of [XML]). 1238 2.34.2. 'title' attribute (mandatory) 1240 The title of the section. 1242 2.34.3. 'toc' attribute 1244 Determines whether the section is included in the Table Of Contents. 1246 [[anchor4: Need to consider inheritance.]] 1248 Allowed values: 1250 o "include" 1252 o "exclude" 1254 o "default" (default) 1256 2.35. <seriesInfo> 1258 Specifies the document series in which this document appears, and 1259 also specifies an identifier within that series. 1261 This element appears as child element of: <reference> (Section 2.30). 1263 Content model: this element does not have any contents. 1265 2.35.1. 'name' attribute (mandatory) 1267 The name of the series. 1269 The following names trigger specific processing (such as for auto- 1270 generating links, and adding descriptions such as "work in 1271 progress"): "BCP", "FYI", "Internet-Draft", "RFC", and "STD". 1273 2.35.2. 'value' attribute (mandatory) 1275 The identifier within the series specified by the "name" attribute. 1277 For BCPs, FYIs, RFCs, and STDs this is the number within the series. 1278 For Internet-Drafts, it is the full draft name (ending with the two- 1279 digit version number). 1281 2.36. <spanx> 1283 Wraps a piece of text, indicating special formatting styles. 1285 When generating plain text, processors usually emulate font changes 1286 using characters such as "*" and "_". 1288 The following styles are defined: 1290 emph Simple emphasis (this is the default). 1292 strong Strong emphasis. 1294 verb "Verbatim" text (usually displayed usign a monospaced font 1295 face). 1297 This element appears as child element of: <annotation> (Section 2.3), 1298 <c> (Section 2.8), <postamble> (Section 2.28), <preamble> 1299 (Section 2.29), and <t> (Section 2.38). 1301 Content model: only text content. 1303 2.36.1. 'style' attribute 1305 The style to be used (defaults to "emph"). 1307 2.36.2. 'xml:space' attribute 1309 Determines whitespace handling. 1311 According to the DTD, the default value is "preserve". Tests however 1312 show that it doesn't have any effect on processing; thus this 1313 attribute will be removed in future versions of the vocabulary. 1315 See also Section 2.10 of [XML]. 1317 Allowed values: 1319 o "default" 1320 o "preserve" (default) 1322 2.37. <street> 1324 Provides a street address. 1326 This element appears as child element of: <postal> (Section 2.27). 1328 Content model: only text content. 1330 2.38. <t> 1332 Contains a paragraph of text. 1334 This element appears as child element of: <abstract> (Section 2.1), 1335 <list> (Section 2.22), <note> (Section 2.24), and <section> 1336 (Section 2.34). 1338 Content model: 1340 In any order: 1342 o Text 1344 o <list> elements (Section 2.22) 1346 o <figure> elements (Section 2.17) 1348 o <xref> elements (Section 2.45) 1350 o <eref> elements (Section 2.15) 1352 o <iref> elements (Section 2.20) 1354 o <cref> elements (Section 2.12) 1356 o <spanx> elements (Section 2.36) 1358 o <vspace> elements (Section 2.43) 1360 2.38.1. 'anchor' attribute 1362 Document-wide unique identifier for this paragraph. 1364 The value needs to be a valid XML "Name" (Section 2.3 of [XML]). 1366 2.38.2. 'hangText' attribute 1368 Holds the label ("hanging text") for items in lists using the 1369 "hanging" style (see Section 2.22.3). 1371 2.39. <texttable> 1373 Contains a table, consisting of an optional preamble, a header line, 1374 rows, an optional postamble, and a title. 1376 The number of columns in the table is determined by the number of 1377 <ttcol> elements. The number of rows in the table is determined by 1378 the number of <c> elements divided by the number of columns. There 1379 is no requirement that the number of <c> elements be evenly divisible 1380 by the number of columns. 1382 This element appears as child element of: <section> (Section 2.34). 1384 Content model: 1386 In this order: 1388 1. One optional <preamble> element (Section 2.29) 1390 2. One or more <ttcol> elements (Section 2.41) 1392 3. Optional <c> elements (Section 2.8) 1394 4. One optional <postamble> element (Section 2.28) 1396 2.39.1. 'align' attribute 1398 Determines the horizontal alignment of the table. 1400 Allowed values: 1402 o "left" 1404 o "center" (default) 1406 o "right" 1408 2.39.2. 'anchor' attribute 1410 Document-wide unique identifier for this table. 1412 Furthermore, the presence of this attribute causes the table to be 1413 numbered. 1415 The value needs to be a valid XML "Name" (Section 2.3 of [XML]). 1417 2.39.3. 'style' attribute 1419 Selects which borders should be drawn, where 1421 o "all" means borders around all table cells, 1423 o "full" is like "all" except no horizontal lines between table rows 1424 (except below the column titles), 1426 o "headers" adds just a separator between column titles and rows, 1427 and 1429 o "none" means no borders at all. 1431 Allowed values: 1433 o "all" 1435 o "none" 1437 o "headers" 1439 o "full" (default) 1441 2.39.4. 'suppress-title' attribute 1443 Tables that have an "anchor" attribute will automatically get an 1444 autogenerated title (such as "Table 1"), even if the "title" 1445 attribute is absent. Setting this attribute to "false" will prevent 1446 this. 1448 Allowed values: 1450 o "true" 1452 o "false" (default) 1454 2.39.5. 'title' attribute 1456 The title for the table; this usually appears on a line below the 1457 table body. 1459 2.40. <title> 1461 Represents the document title. 1463 When this element appears in the <front> element of the current 1464 document, the title might also appear in page headers or footers. If 1465 it's long (~40 characters), the "abbrev" attribute is used to 1466 specified an abbreviated variant. 1468 This element appears as child element of: <front> (Section 2.19). 1470 Content model: only text content. 1472 2.40.1. 'abbrev' attribute 1474 Specifies an abbreviated variant of the document title. 1476 2.41. <ttcol> 1478 Contains a column heading in a table. 1480 This element appears as child element of: <texttable> (Section 2.39). 1482 Content model: only text content. 1484 2.41.1. 'align' attribute 1486 Determines the horizontal alignment within the table column. 1488 Allowed values: 1490 o "left" (default) 1492 o "center" 1494 o "right" 1496 2.41.2. 'width' attribute 1498 The desired column width (as integer 0..100 followed by "%"). 1500 2.42. <uri> 1502 Contains a web address associated with the author. 1504 The contents should be a valid URI (see Section 3 of [RFC3986]). 1506 This element appears as child element of: <address> (Section 2.2). 1508 Content model: only text content. 1510 2.43. <vspace> 1512 This element can be used to force the inclusion of a single line 1513 break or multiple blank lines. 1515 Note that this is a purely presentational element and thus its use 1516 ought to be avoided. 1518 This element appears as child element of: <t> (Section 2.38). 1520 Content model: this element does not have any contents. 1522 2.43.1. 'blankLines' attribute 1524 Number of blank lines to be inserted, where "0" indicates a single 1525 line break (defaults to "0"). 1527 For paged output formats, no additional blank lines should be 1528 generated after a page break. 1530 2.44. <workgroup> 1532 This element is used to specify the Working Group the document 1533 originates from, if any. The recommended format is the official name 1534 of the Working Group (with some capitalization). 1536 In Internet-Drafts, this is used in the upper left corner of the 1537 boilerplate, replacing the "Network Working Group" string. 1538 Formatting software can append the words "Working Group" or "Research 1539 Group", depending on the "submissionType" property on the <rfc> 1540 element (Section 2.33.9). 1542 This element appears as child element of: <front> (Section 2.19). 1544 Content model: only text content. 1546 2.45. <xref> 1548 Inserts a reference to a different part of a document. 1550 The generated text depends on whether the <xref> is empty (in which 1551 case the processor will try to generate a meaningful text fragment), 1552 and the nature of the referenced document part. 1554 Any element that allows the "anchor" attribute can be referenced, 1555 however there are restrictions with respect to the text content being 1556 generated. For instance, a <t> can be a reference target, however, 1557 because paragraphs are not (visibly) numbered, the author will have 1558 to make sure that the prose is sufficient for a reader to understand 1559 what is being referred to. 1561 [[anchor5: This needs to be expanded with examples and with a 1562 discussion how the autogenerated text differs when <xref> is not 1563 empty]] 1565 This element appears as child element of: <annotation> (Section 2.3), 1566 <c> (Section 2.8), <postamble> (Section 2.28), <preamble> 1567 (Section 2.29), and <t> (Section 2.38). 1569 Content model: only text content. 1571 2.45.1. 'format' attribute 1573 This attribute is used to control the format of the generated 1574 reference text. 1576 "counter" 1578 Inserts a counter, such as the number of a section, figure, or 1579 table. 1581 "default" 1583 Inserts a text fragment that describes the referenced part 1584 completely, such as "Section 2", "Table 4", or "[XML]". 1586 "none" 1588 There will be no auto-generated text. 1590 "title" 1592 Inserts a title for the referenced element (usually obtained from 1593 the referenced element's "title" attribute; some processors also 1594 use the <title> child element or a <reference> target). 1596 Allowed values: 1598 o "counter" 1600 o "title" 1602 o "none" 1604 o "default" (default) 1606 2.45.2. 'pageno' attribute 1608 Unused. 1610 It's unclear what the purpose of this attribute is; processors seem 1611 to ignore it and it never was documented. 1613 Allowed values: 1615 o "true" 1617 o "false" (default) 1619 2.45.3. 'target' attribute (mandatory) 1621 Identifies the document component being referenced. 1623 The value needs to match the value of the "anchor" attribute of 1624 another element in the document. 1626 3. Special Unicode Code Points 1628 [[anchor6: Explain those code points where the processors implement 1629 something special, such as "nbsp".]] 1631 4. Including Files 1633 This version of the vocabulary does not support an inclusion 1634 mechanism on it's own -- thus, a document always needs to be self- 1635 contained. 1637 That being said, some processors do support file inclusion using 1638 processing instructions (Section 2.6 of [XML]). 1640 Furthermore, XML itself allows inclusion of external content using 1641 the "internal subset" (Section 2.8 of [XML]). Unfortunately, this 1642 requires declaring the external data in the DTD upfront. 1644 For instance: 1646 <?xml version="1.0"?> 1648 <!DOCTYPE rfc [ 1650 <!-- allow later RFC2616 reference using "&rfc2616;" --> 1651 <!-- the data will be fetched from xml.resource.org --> 1652 <!ENTITY rfc2616 PUBLIC 1653 "http://xml.resource.org/public/rfc/bibxml/reference.RFC.2616.xml"> 1654 ]> 1656 ...declares the entity "rfc2616", which then can be used in the 1657 "references" section: 1659 <references> 1660 &rfc2616; 1661 </references> 1663 Note that this mechanism only works for well-formed XML fragments; 1664 thus any plain text that would need to be escaped in XML can't be 1665 included as-is. 1667 5. Internationalization Considerations 1669 This format is based on [XML], thus does not have any issues 1670 representing arbitrary Unicode [UNICODE] characters in text content. 1672 However, the current canonical RFC format is restricted to US-ASCII 1673 [USASCII] characters ([RFC2223], Section 3). Future versions are 1674 likely to relax this role, and it is expected that the vocabulary 1675 will be extended so that US-ACSII alternatives can be provided when 1676 that makes sense (for instance, in contact information). 1678 6. Security Considerations 1680 [[anchor7: This section is likely incomplete.]] 1682 The "name" attribute on the <artwork> element (Section 2.5.4) can be 1683 used to derive a filename for saving to a local file system. 1684 Trusting this kind of information without pre-processing is a known 1685 security risk; see Section 4.3 of [RFC6266] for more information. 1687 Furthermore, all security considerations related to XML processing 1688 are relevant as well (see Section 7 of [RFC3470]). 1690 7. IANA Considerations 1692 7.1. Internet Media Type Registration 1694 IANA maintains the registry of Internet media types [BCP13] at 1695 <http://www.iana.org/assignments/media-types>. 1697 This document serves as the specification for the Internet media type 1698 "application/rfc+xml". The following is to be registered with IANA. 1700 Type name: application 1702 Subtype name: rfc+xml 1704 Required parameters: There are no required parameters. 1706 Optional parameters: "charset": This parameter has identical 1707 semantics as the charset parameter of the "application/xml" media 1708 type specified in [RFC3023]. 1710 Encoding considerations: Identical to those of "application/xml" as 1711 described in Section 3.2 of [RFC3023]. 1713 Security considerations: As defined in Section 6. In addition, as 1714 this media type uses the "+xml" convention, it inherits the 1715 security considerations described in Section 10 of [RFC3023]. 1717 Interoperability considerations: N/A 1719 Published specification: This specification. 1721 Applications that use this media type: Applications that either 1722 transform xml2rfc to output formats such as plain text or HTML, 1723 plus additional analysis tools. 1725 Fragment identifier considerations: The "anchor" attribute is used 1726 for assigning document-wide unique identifiers that can be uses as 1727 shorthand pointers, as described in Section 2.8 of [XPOINTER]. 1729 Additional information: 1731 Deprecated alias names for this type: None. 1733 Magic number(s): As specified for "application/xml" in Section 1734 3.2 of [RFC3023]. 1736 File extension(s): .xml 1738 Macintosh file type code(s): TEXT 1740 Person & email address to contact for further information: See 1741 Authors Section. 1743 Intended usage: COMMON 1745 Restrictions on usage: N/A 1747 Author: See Authors Section. 1749 Change controller: RFC Series Editor (rse@rfc-editor.org) 1751 8. Acknowledgments 1753 Thanks to everybody who reviewed this document and provided feedback 1754 and/or specification text, in particular Brian Carpenter, Tony 1755 Hansen, Paul Hoffman, Henrik Levkowetz, Alice Russo, Jim Schaad, and 1756 Nico Williams. 1758 We also thank Marshall T. Rose for both the original design and the 1759 reference implementation of the "xml2rfc" formatter. 1761 9. References 1763 9.1. Normative References 1765 [XML] Maler, E., Yergeau, F., Paoli, J., Sperberg-McQueen, M., 1766 and T. Bray, "Extensible Markup Language (XML) 1.0 1767 (Fifth Edition)", W3C Recommendation REC-xml-20081126, 1768 November 2008, 1769 <http://www.w3.org/TR/2008/REC-xml-20081126/>. 1771 Latest version available at <http://www.w3.org/TR/xml>. 1773 9.2. Informative References 1775 [BCP13] Freed, N., Klensin, J., and T. Hansen, "Media Type 1776 Specifications and Registration Procedures", BCP 13, 1777 RFC 6838, January 2013. 1779 [IDGUIDE] Housley, R., "Guidelines to Authors of Internet-Drafts", 1780 December 2010, 1781 <http://www.ietf.org/id-info/guidelines.html>. 1783 [RFC2026] Bradner, S., "The Internet Standards Process -- Revision 1784 3", BCP 9, RFC 2026, October 1996. 1786 [RFC2046] Freed, N. and N. Borenstein, "Multipurpose Internet Mail 1787 Extensions (MIME) Part Two: Media Types", RFC 2046, 1788 November 1996. 1790 [RFC2223] Postel, J. and J. Reynolds, "Instructions to RFC 1791 Authors", RFC 2223, October 1997. 1793 [RFC2397] Masinter, L., "The "data" URL scheme", RFC 2397, 1794 August 1998. 1796 [RFC2629] Rose, M., "Writing I-Ds and RFCs using XML", RFC 2629, 1797 June 1999. 1799 [RFC3023] Murata, M., St. Laurent, S., and D. Kohn, "XML Media 1800 Types", RFC 3023, January 2001. 1802 [RFC3470] Hollenbeck, S., Rose, M., and L. Masinter, "Guidelines 1803 for the Use of Extensible Markup Language (XML) within 1804 IETF Protocols", BCP 70, RFC 3470, January 2003. 1806 [RFC3966] Schulzrinne, H., "The tel URI for Telephone Numbers", 1807 RFC 3966, December 2004. 1809 [RFC3986] Berners-Lee, T., Fielding, R., and L. Masinter, "Uniform 1810 Resource Identifier (URI): Generic Syntax", STD 66, 1811 RFC 3986, January 2005. 1813 [RFC5598] Crocker, D., "Internet Mail Architecture", RFC 5598, 1814 July 2009. 1816 PDF version: <http://www.rfc-editor.org/rfc/rfc5598.pdf> 1818 [RFC5741] Daigle, L. and O. Kolkman, "RFC Streams, Headers, and 1819 Boilerplates", RFC 5741, December 2009. 1821 [RFC6068] Duerst, M., Masinter, L., and J. Zawinski, "The 'mailto' 1822 URI Scheme", RFC 6068, October 2010. 1824 [RFC6266] Reschke, J., "Use of the Content-Disposition Header 1825 Field in the Hypertext Transfer Protocol (HTTP)", 1826 RFC 6266, June 2011. 1828 [RFCPOLICY] RFC Editor, "RFC Editorial Guidelines and Procedures", 1829 February 2012, <http://www.rfc-editor.org/policy.html>. 1831 [RFCSTYLE] Heather, H. and S. Ginoza, "RFC Style Guide", 1832 draft-iab-styleguide-01 (work in progress), 1833 February 2014. 1835 [RNC] Clark, J., "RELAX NG Compact Syntax", OASIS , 1836 November 2002, <http://www.oasis-open.org/committees/ 1837 relax-ng/compact-20021121.html>. 1839 [TLP2.0] IETF Trust, "Legal Provisions Relating to IETF 1840 Documents", February 2009, 1841 <http://trustee.ietf.org/license-info/IETF-TLP-2.htm>. 1843 [TLP3.0] IETF Trust, "Legal Provisions Relating to IETF 1844 Documents", September 2009, 1845 <http://trustee.ietf.org/license-info/IETF-TLP-3.htm>. 1847 [TLP4.0] IETF Trust, "Legal Provisions Relating to IETF 1848 Documents", December 2009, 1849 <http://trustee.ietf.org/license-info/IETF-TLP-4.htm>. 1851 [UNICODE] The Unicode Consortium, "The Unicode Standard, Version 1852 6.3.0", September 2013, 1853 <http://www.unicode.org/versions/Unicode6.3.0/>. 1855 [USASCII] American National Standards Institute, "Coded Character 1856 Set -- 7-bit American Standard Code for Information 1857 Interchange", ANSI X3.4, 1986. 1859 [XINCLUDE] Marsh, J., Orchard, D., and D. Veillard, "XML Inclusions 1860 (XInclude) Version 1.0 (Second Edition)", W3C 1861 Recommendation REC-xinclude-20061115, November 2006, 1862 <http://www.w3.org/TR/2006/REC-xinclude-20061115/>. 1864 Latest version available at 1865 <http://www.w3.org/TR/xinclude/>. 1867 [XPOINTER] Grosso, P., Maler, E., Marsh, J., and N. Walsh, 1868 "XPointer Framework", W3C Recommendation REC-xptr- 1869 framework-20030325, March 2003, 1870 <http://www.w3.org/TR/2003/ 1871 REC-xptr-framework-20030325/>. 1873 Latest version available at 1874 <http://www.w3.org/TR/xptr-framework/>. 1876 Appendix A. Front Page Generation 1877 A.1. The /rfc/@category Attribute 1879 For RFCs, the "category" determines the "maturity level" (see Section 1880 4 of [RFC2026]). The allowed values are "std" for "Standards Track", 1881 "bcp" for "BCP", "info" for "Informational", "exp" for 1882 "Experimental", and "historic" for - surprise - "Historic". 1884 For Internet-Drafts, the category attribute is not needed, but will 1885 appear on the front page as "Intended Status". Supplying this 1886 information can be useful to reviewers. 1888 A.2. The /rfc/@ipr Attribute 1890 This attribute value can take a long list of values, each of which 1891 describes an IPR policy for the document. This attribute's values 1892 are not the result of a grand plan, but remain simply for historic 1893 reasons. Of these values, only a few are currently in use; all 1894 others are supported by the various tools for backwards compatibility 1895 with old source files. 1897 Note: some variations of the boilerplate are selected based on the 1898 document's date; therefore it is important to specify the "year", 1899 "month" and "day" attributes of the "<date>" element when 1900 archiving the XML source of an Internet-Draft on the day of 1901 submission. 1903 _Disclaimer: THIS ONLY PROVIDES IMPLEMENTATION INFORMATION. IF YOU 1904 NEED LEGAL ADVICE, PLEASE CONTACT A LAWYER._ For further information, 1905 refer to <http://trustee.ietf.org/docs/IETF-Copyright-FAQ.pdf>. 1907 For the current "Status Of This Memo" text, the "submissionType" 1908 attribute determines whether a statement about "Code Components" is 1909 inserted (which is the case for the value "IETF", which is the 1910 default). Other values, such as "independent", suppress this part of 1911 the text. 1913 A.2.1. Current Values: '*trust200902' 1915 The name for these values refers to the "IETF TRUST Legal Provisions 1916 Relating to IETF Documents", sometimes simply called the "TLP, that 1917 went into effect on February 15, 2009 ([TLP2.0]). Updates to this 1918 document were published on September 12, 2009 ([TLP3.0]) and on 1919 December 28, 2009 ([TLP4.0]), modifying the license for code 1920 components (see <http://trustee.ietf.org/license-info/> for further 1921 information). The actual text is located in Section 6 ("Text To Be 1922 Included in IETF Documents") of these documents. 1924 The tools will automatically produce the "correct" text depending on 1925 the document's date information (see above): 1927 +----------+--------------------------------+ 1928 | TLP | starting with publication date | 1929 +----------+--------------------------------+ 1930 | [TLP3.0] | 2009-11-01 | 1931 | [TLP4.0] | 2010-04-01 | 1932 +----------+--------------------------------+ 1934 A.2.1.1. trust200902 1936 This should be the default, unless one of the more specific 1937 '*trust200902' values is a better fit. It produces the text in 1938 Sections 6.a and 6.b of the TLP. 1940 A.2.1.2. noModificationTrust200902 1942 This produces additional text from Section 6.c.i of the TLP: 1944 This document may not be modified, and derivative works of it may 1945 not be created, except to format it for publication as an RFC or 1946 to translate it into languages other than English. 1948 Note: this clause is incompatible with RFCs that are published on 1949 the Standards Track. 1951 A.2.1.3. noDerivativesTrust200902 1953 This produces the additional text from Section 6.c.ii of the TLP: 1955 This document may not be modified, and derivative works of it may 1956 not be created, and it may not be published except as an Internet- 1957 Draft. 1959 Note: this clause is incompatible with RFCs. 1961 A.2.1.4. pre5378Trust200902 1963 This produces the additional text from Section 6.c.iii of the TLP, 1964 frequently called the "pre-5378 escape clause": 1966 This document may contain material from IETF Documents or IETF 1967 Contributions published or made publicly available before November 1968 10, 2008. The person(s) controlling the copyright in some of this 1969 material may not have granted the IETF Trust the right to allow 1970 modifications of such material outside the IETF Standards Process. 1971 Without obtaining an adequate license from the person(s) 1972 controlling the copyright in such materials, this document may not 1973 be modified outside the IETF Standards Process, and derivative 1974 works of it may not be created outside the IETF Standards Process, 1975 except to format it for publication as an RFC or to translate it 1976 into languages other than English. 1978 See Section 4 of 1979 <http://trustee.ietf.org/docs/IETF-Copyright-FAQ.pdf> for further 1980 information about when to use this value. 1982 Note: this text appears under "Copyright Notice", unless the 1983 document was published before November 2009, in which case it 1984 appears under "Status Of This Memo". 1986 A.2.2. Historic Values 1988 A.2.2.1. Historic Values: '*trust200811' 1990 The attribute values "trust200811", "noModificationTrust200811" and 1991 "noDerivativesTrust200811" are similar to their "trust200902" 1992 counterparts, except that they use text specified in <http:// 1993 trustee.ietf.org/license-info/archive/ 1994 IETF-Trust-License-Policy_11-10-08.pdf>. 1996 A.2.2.2. Historic Values: '*3978' 1998 The attribute values "full3978", "noModification3978" and 1999 "noDerivatives3978" are similar to their counterparts above, except 2000 that they use text specified in RFC 3978 (March 2005). 2002 A.2.2.3. Historic Values: '*3667' 2004 The attribute values "full3667", "noModification3667" and 2005 "noDerivatives3667" are similar to their counterparts above, except 2006 that they use text specified in RFC 3667 (February 2004). 2008 A.2.2.4. Historic Values: '*2026' 2010 The attribute values "full2026" and "noDerivativeWorks2026" are 2011 similar to their counterparts above, except that they use text 2012 specified in RFC 2026 (October 1996). 2014 The special value "none" was also used back then, and denied the IETF 2015 any rights beyond publication as Internet-Draft. 2017 Appendix B. Changes from RFC 2629 ('v1') 2019 [[v1diff: See <http://greenbytes.de/tech/webdav/ 2020 draft-reschke-xml2rfc-02.html#rfc.section.E> for a comparison of the 2021 schemata.]] 2023 B.1. Removed Elements 2025 The <appendix> element has been removed; to generate an appendix, 2026 place a <section> inside <back>. 2028 B.2. Changed Defaults 2030 Many attributes have lost their "default" value; this is to avoid 2031 having document semantics differ based on whether a DTD was specified 2032 and evaluated. Processors will handle absent values the way the 2033 default value was specified before. 2035 B.3. Changed Elements 2037 <artwork>: Has a set of new attributes: "name", "type", "src", 2038 "align", "alt", "width", and "height". (Section 2.5) 2040 <author>: The <organization> element is now optional. The "role" 2041 attribute was added. (Section 2.6) 2043 <country>: The requirement to use ISO 3166 codes was removed. 2044 (Section 2.11) 2046 <date>: All attributes are now optional. (Section 2.13) 2048 <figure>: Has a set of new attributes: "suppress-title", "src", 2049 "align", "alt", "width", and "height". (Section 2.17) 2051 <iref>: Has a new "primary" attribute. (Section 2.20) 2053 <list>: The "style" attribute isn't restricted to a set of enumerated 2054 values anymore. The "hangIndent" and "counter" attributes have been 2055 added. (Section 2.22) 2057 <rfc>: The "ipr" attribute has gained additional values. The 2058 attributes "consensus", "iprExtract", "submissionType", and "xml: 2059 lang" have been added. (Section 2.33) 2061 <reference>: <annotation> allows adding prose to a reference. The 2062 "anchor" attribute has been made mandatory. (Section 2.30) 2064 <references>: Can now appear multiple times, and carry a "title" 2065 attribute (so that normative and informative references can be 2066 split). (Section 2.31) 2068 <section>: The new "toc" attribute controls whether it will appear in 2069 the Table Of Contents. <iref> can now appear as direct child element. 2070 (Section 2.34) 2072 <t>: The "anchor" attribute can now be used as well, however there 2073 are restrictions on how they can be referred to. (Section 2.38) 2075 B.4. New Elements 2077 The following elements have been added: <annotation> (Section 2.3), 2078 <c> (Section 2.8), <cref> (Section 2.12), <format> (Section 2.18), 2079 <spanx> (Section 2.36), <texttable> (Section 2.39). 2081 Appendix C. Relax NG Schema 2083 namespace a = "http://relaxng.org/ns/compatibility/annotations/1.0" 2085 rfc = 2086 element rfc { 2087 attribute number { text }?, 2088 [ a:defaultValue = "" ] attribute obsoletes { text }?, 2089 [ a:defaultValue = "" ] attribute updates { text }?, 2090 attribute category { "std" | "bcp" | "info" | "exp" | "historic" 2091 }?, 2092 attribute consensus { "no" | "yes" }?, 2093 attribute seriesNo { text }?, 2094 attribute ipr { 2095 "full2026" 2096 | "noDerivativeWorks2026" 2097 | "none" 2098 | "full3667" 2099 | "noModification3667" 2100 | "noDerivatives3667" 2101 | "full3978" 2102 | "noModification3978" 2103 | "noDerivatives3978" 2104 | "trust200811" 2105 | "noModificationTrust200811" 2106 | "noDerivativesTrust200811" 2107 | "trust200902" 2108 | "noModificationTrust200902" 2109 | "noDerivativesTrust200902" 2110 | "pre5378Trust200902" 2111 }?, 2112 attribute iprExtract { xsd:IDREF }?, 2113 [ a:defaultValue = "IETF" ] 2114 attribute submissionType { 2115 "IETF" | "IAB" | "IRTF" | "independent" 2117 }?, 2118 attribute docName { text }?, 2119 [ a:defaultValue = "en" ] attribute xml:lang { text }?, 2120 front, 2121 middle, 2122 back? 2123 } 2124 front = 2125 element front { 2126 title, author+, date, area*, workgroup*, keyword*, abstract?, 2127 note* 2128 } 2129 title = 2130 element title { 2131 attribute abbrev { text }?, 2132 text 2133 } 2134 author = 2135 element author { 2136 attribute initials { text }?, 2137 attribute surname { text }?, 2138 attribute fullname { text }?, 2139 attribute role { "editor" }?, 2140 organization?, 2141 address? 2142 } 2143 organization = 2144 element organization { 2145 attribute abbrev { text }?, 2146 text 2147 } 2148 address = element address { postal?, phone?, facsimile?, email?, 2149 uri? } 2150 postal = element postal { street+, (city | region | code | country)* 2151 } 2152 street = element street { text } 2153 city = element city { text } 2154 region = element region { text } 2155 code = element code { text } 2156 country = element country { text } 2157 phone = element phone { text } 2158 facsimile = element facsimile { text } 2159 email = element email { text } 2160 uri = element uri { text } 2161 date = 2162 element date { 2163 attribute day { text }?, 2164 attribute month { text }?, 2165 attribute year { text }?, 2166 empty 2167 } 2168 area = element area { text } 2169 workgroup = element workgroup { text } 2170 keyword = element keyword { text } 2171 abstract = element abstract { t+ } 2172 note = 2173 element note { 2174 attribute title { text }, 2175 t+ 2176 } 2177 middle = element middle { section+ } 2178 section = 2179 element section { 2180 attribute anchor { xsd:ID }?, 2181 attribute title { text }, 2182 [ a:defaultValue = "default" ] 2183 attribute toc { "include" | "exclude" | "default" }?, 2184 (t | figure | texttable | iref)*, 2185 section* 2186 } 2187 t = 2188 element t { 2189 attribute anchor { xsd:ID }?, 2190 attribute hangText { text }?, 2191 (text 2192 | \list 2193 | figure 2194 | xref 2195 | eref 2196 | iref 2197 | cref 2198 | spanx 2199 | vspace)* 2200 } 2201 \list = 2202 element list { 2203 attribute style { text }?, 2204 attribute hangIndent { text }?, 2205 attribute counter { text }?, 2206 t+ 2207 } 2208 xref = 2209 element xref { 2210 attribute target { xsd:IDREF }, 2211 [ a:defaultValue = "false" ] attribute pageno { "true" | "false" 2212 }?, 2214 [ a:defaultValue = "default" ] 2215 attribute format { "counter" | "title" | "none" | "default" }?, 2216 text 2217 } 2218 eref = 2219 element eref { 2220 attribute target { text }, 2221 text 2222 } 2223 iref = 2224 element iref { 2225 attribute item { text }, 2226 [ a:defaultValue = "" ] attribute subitem { text }?, 2227 [ a:defaultValue = "false" ] 2228 attribute primary { "true" | "false" }?, 2229 empty 2230 } 2231 cref = 2232 element cref { 2233 attribute anchor { xsd:ID }?, 2234 attribute source { text }?, 2235 text 2236 } 2237 spanx = 2238 element spanx { 2239 [ a:defaultValue = "preserve" ] 2240 attribute xml:space { "default" | "preserve" }?, 2241 [ a:defaultValue = "emph" ] attribute style { text }?, 2242 text 2243 } 2244 vspace = 2245 element vspace { 2246 [ a:defaultValue = "0" ] attribute blankLines { text }?, 2247 empty 2248 } 2249 figure = 2250 element figure { 2251 attribute anchor { xsd:ID }?, 2252 [ a:defaultValue = "" ] attribute title { text }?, 2253 [ a:defaultValue = "false" ] 2254 attribute suppress-title { "true" | "false" }?, 2255 attribute src { text }?, 2256 [ a:defaultValue = "left" ] 2257 attribute align { "left" | "center" | "right" }?, 2258 [ a:defaultValue = "" ] attribute alt { text }?, 2259 [ a:defaultValue = "" ] attribute width { text }?, 2260 [ a:defaultValue = "" ] attribute height { text }?, 2261 iref*, 2262 preamble?, 2263 artwork, 2264 postamble? 2265 } 2266 preamble = 2267 element preamble { (text | xref | eref | iref | cref | spanx)* } 2268 artwork = 2269 element artwork { 2270 [ a:defaultValue = "preserve" ] 2271 attribute xml:space { "default" | "preserve" }?, 2272 [ a:defaultValue = "" ] attribute name { text }?, 2273 [ a:defaultValue = "" ] attribute type { text }?, 2274 attribute src { text }?, 2275 [ a:defaultValue = "left" ] 2276 attribute align { "left" | "center" | "right" }?, 2277 [ a:defaultValue = "" ] attribute alt { text }?, 2278 [ a:defaultValue = "" ] attribute width { text }?, 2279 [ a:defaultValue = "" ] attribute height { text }?, 2280 text* 2281 } 2282 postamble = 2283 element postamble { (text | xref | eref | iref | cref | spanx)* } 2284 texttable = 2285 element texttable { 2286 attribute anchor { xsd:ID }?, 2287 [ a:defaultValue = "" ] attribute title { text }?, 2288 [ a:defaultValue = "false" ] 2289 attribute suppress-title { "true" | "false" }?, 2290 [ a:defaultValue = "center" ] 2291 attribute align { "left" | "center" | "right" }?, 2292 [ a:defaultValue = "full" ] 2293 attribute style { "all" | "none" | "headers" | "full" }?, 2294 preamble?, 2295 ttcol+, 2296 c*, 2297 postamble? 2298 } 2299 ttcol = 2300 element ttcol { 2301 attribute width { text }?, 2302 [ a:defaultValue = "left" ] 2303 attribute align { "left" | "center" | "right" }?, 2304 text 2305 } 2306 c = element c { (text | xref | eref | iref | cref | spanx)* } 2307 back = element back { references*, section* } 2308 references = 2309 element references { 2311 [ a:defaultValue = "References" ] attribute title { text }?, 2312 reference+ 2313 } 2314 reference = 2315 element reference { 2316 attribute anchor { xsd:ID }, 2317 attribute target { text }?, 2318 front, 2319 seriesInfo*, 2320 format*, 2321 annotation* 2322 } 2323 seriesInfo = 2324 element seriesInfo { 2325 attribute name { text }, 2326 attribute value { text }, 2327 empty 2328 } 2329 format = 2330 element format { 2331 attribute target { text }?, 2332 attribute type { text }, 2333 attribute octets { text }?, 2334 empty 2335 } 2336 annotation = 2337 element annotation { (text | xref | eref | iref | cref | spanx)* } 2338 start = rfc 2340 (This schema was derived from version 1.3.6 of the xml2rfc DTD 2341 ('Document Type Definition', [XML], Section 2.8), available from <htt 2342 p://svn.tools.ietf.org/svn/tools/xml2rfc/vocabulary/v2/03/ 2343 xml2rfcv2.dtd>). 2345 Appendix D. Proposed Future Changes for 'v3' 2347 Discussion of "v3" changes takes place on the rfc-interest mailing 2348 list (rfc-interest@rfc-editor.org), which has its home page at 2349 <http://www.rfc-editor.org/mailman/listinfo/rfc-interest>. See also 2350 <https://www.rfc-editor.org/rse/wiki/doku.php?id=design:xml-tags> for 2351 a related Wiki page. 2353 D.1. Contact Information 2355 If contact information is changed to allow non-ASCII characters: add 2356 a place for a ASCII fallback (probably just for the author names). 2358 The content model for <postal> ought to be more strict to allow at 2359 most one of <city>, <region>, <code>, and <country>. 2361 It should be possible to have multiple <email> and <uri> elements 2362 (see also <http://trac.tools.ietf.org/tools/xml2rfc/trac/ticket/36>). 2364 <facsimile> looks outdated, while a container for IM (messaging) URIs 2365 is missing. Maybe this area needs to be aligned with vCard. 2367 Section 4.11 of [RFCSTYLE] hints at a "Contributors" Section that 2368 could supply contact information similar to the one in the auto- 2369 generated "Authors' Address" Section. Consider how to capture 2370 contributor contact information (probably not using <author> to avoid 2371 confusion). Furthermore, consider ways to augment the contact 2372 information section with prose. 2374 D.2. Figures 2376 Cleanup the set of overlapping attributes between <figure> and 2377 <artwork>. 2379 For artwork that consists of a sequence of items (such as messages in 2380 a protocol example), it would be good if a <figure> element could 2381 contain multiple <artwork> elements (to assist code to find good 2382 places for page breaks). 2384 Extend <figure> to support different types of artwork (such as by 2385 specifying certain type attribute values, see <http://greenbytes.de/ 2386 tech/webdav/rfc2629xslt/rfc2629xslt.html#artwork.types>), and also 2387 avoid having to markup code (such as ABNF) as "artwork". 2389 It would be good if "code components" could be marked as such. 2391 Finally, even in preformatted text use of markup could be useful to 2392 support (a) references, or (b) highlighting the important bits (<http 2393 ://greenbytes.de/tech/webdav/rfc2629xslt/ 2394 rfc2629xslt.html#ext-rfc2629.artwork>). 2396 D.3. Linking 2398 Extend <xref> so that subsection/anchors can be specified (see <http: 2399 //greenbytes.de/tech/webdav/rfc2629xslt/ 2400 rfc2629xslt.html#ext-rfc2629.xref>). 2402 Remove the "pageno" attribute which seems to be both undocumented and 2403 non-functional. 2405 D.4. Lists 2407 Allow multiple paragraphs in list items; eliminating the need to use 2408 <vspace> -- this could be achieved by adding a list item container 2409 element ("<lt>", see <http://greenbytes.de/tech/webdav/rfc2629xslt/ 2410 rfc2629xslt.html#ext.element.lt> and 2411 <http://www.ietf.org/mail-archive/web/xml2rfc/current/ 2412 msg02010.html>). 2414 Add support for a "dictionary" style; eliminating the need to combine 2415 "hanging" with <vspace> to force new lines (see thread around <http:/ 2416 /www.rfc-editor.org/pipermail/rfc-interest/2013-December/ 2417 005876.html>). 2419 D.5. References 2421 Allow overriding the "anchor" attribute of an included <reference> 2422 element. 2424 Add a way to add prose to a reference that avoids abuse of 2425 <seriesInfo>. 2427 Allow <reference>s that identify a document set such as a BCP. 2429 Deprecate or remove the <format> element; right now it's not used for 2430 the generation of the plain text document anyway. 2432 The "anchor" attribute is optional because it is not needed when 2433 using numeric references (symrefs processing instruction), and the 2434 reference actually is not in use. This is an edge case that doesn't 2435 need special support in the vocabulary and thus should be removed. 2437 D.6. Archival Considerations 2439 When this vocabulary becomes the canonical RFC format, it will need 2440 to be able to capture all generated information, such as section/ 2441 figure/table numbers, plus any auto-generated boilerplate (copyright 2442 statements etc.). 2444 D.7. Document Metadata 2446 Extend the concept of language tagging to at least examples and 2447 contact information to address potential japanese/chinese font 2448 confusion. 2450 Provide a way to indicate the intended level on the standards track. 2452 Include feedback information in a way so that generated documents can 2453 provide usable feedback links (see <http://greenbytes.de/tech/webdav/ 2454 rfc2629xslt/rfc2629xslt.html#ext.element.feedback>). 2456 D.8. Including Material 2458 As discussed in Section 4, file inclusion currently uses out-of-the- 2459 box XML mechanisms or processor-specific directives. 2461 We need to decide whether the vocabulary should have its own 2462 inclusion mechanism, or whether it would be better to use a generic 2463 solution such as [XINCLUDE] instead. 2465 D.9. Misc. 2467 Make the <date> element optional; all of its content is optional 2468 already. 2470 <spanx> has both a weird whitespace model ("preserve") and 2471 problematic styling. Consider to deprecate it in favor of elements 2472 such as <b>, <i>, and <tt>. 2474 Indented paragraphs currently can be created by abusing the <list>. 2475 It would be good to have a special element for this purpose. 2477 Provide a special element for inserting block quotes (<http:// 2478 greenbytes.de/tech/webdav/rfc2629xslt/ 2479 rfc2629xslt.html#ext.element.blockquote>). 2481 The content model for <cref> should be extended to allow more flow 2482 elements, such as <xref> and <eref>. 2484 Section titles should really be elements, not attributes (this would 2485 allow them to contain markup). 2487 Text tables are currently very constrained. For instance, it would 2488 be good if alignment of headers and table cells could be de-coupled 2489 (<http://trac.tools.ietf.org/tools/xml2rfc/trac/ticket/69>). 2491 Counters are currently restricted to lists, figures, and tables. 2492 Maybe there should be a generic mechanism that is not directly tied 2493 to other elements 2494 (<http://trac.tools.ietf.org/tools/xml2rfc/trac/ticket/68>). 2496 Index 2498 A 2499 abbrev attribute 2500 in organization element 20 2501 in title element 32 2502 abstract element 4 2503 inside front 16 2504 address element 5 2505 inside author 9 2506 align attribute 2507 in artwork element 7 2508 in figure element 13 2509 in texttable element 30 2510 in ttcol element 32 2511 alt attribute 2512 in artwork element 7 2513 in figure element 14 2514 anchor attribute 2515 in cref element 11 2516 in figure element 14 2517 in reference element 22 2518 in section element 27 2519 in t element 29 2520 in texttable element 30 2521 annotation element 5 2522 inside reference 22 2523 application/rfc+xml Media Type 37 2524 area element 6 2525 inside front 16 2526 artwork element 6 2527 align attribute 7 2528 alt attribute 7 2529 height attribute 7 2530 inside figure 13 2531 name attribute 7 2532 src attribute 7 2533 type attribute 8 2534 width attribute 8 2535 xml:space attribute 8 2536 Attributes 2537 abbrev 20, 32 2538 align 7, 13, 30, 32 2539 alt 7, 14 2540 anchor 11, 14, 22, 27, 29-30 2541 blankLines 33 2542 category 23 2543 consensus 24 2544 counter 17 2545 day 12 2546 docName 24 2547 format 34 2548 fullname 9 2549 hangIndent 17 2550 hangText 30 2551 height 7, 14 2552 initials 9 2553 ipr 24 2554 iprExtract 25 2555 item 16 2556 month 12 2557 name 7, 27 2558 number 25 2559 obsoletes 25 2560 octets 15 2561 pageno 35 2562 primary 16 2563 role 9 2564 seriesNo 25 2565 source 11 2566 src 7, 14 2567 style 18, 28, 31 2568 subitem 17 2569 submissionType 26 2570 suppress-title 14, 31 2571 surname 9 2572 target 13, 15, 22, 35 2573 title 14, 20, 23, 27, 31 2574 toc 27 2575 type 8, 15 2576 updates 26 2577 value 28 2578 width 8, 15, 32 2579 xml:lang 26 2580 xml:space 8, 28 2581 year 12 2582 author element 8 2583 fullname attribute 9 2584 initials attribute 9 2585 inside front 15 2586 role attribute 9 2587 surname attribute 9 2589 B 2590 back element 9 2591 inside rfc 23 2592 blankLines attribute 2593 in vspace element 33 2595 C 2596 c element 10 2597 inside texttable 30 2598 category attribute 2599 in rfc element 23 2600 city element 10 2601 inside postal 20 2602 code element 10 2603 inside postal 21 2604 consensus attribute 2605 in rfc element 24 2606 counter attribute 2607 in list element 17 2608 country element 11 2609 inside postal 21 2610 cref element 11 2611 anchor attribute 11 2612 inside annotation 6 2613 inside c 10 2614 inside postamble 21 2615 inside preamble 22 2616 inside t 29 2617 source attribute 11 2619 D 2620 date element 11 2621 day attribute 12 2622 inside front 16 2623 month attribute 12 2624 year attribute 12 2625 day attribute 2626 in date element 12 2627 docName attribute 2628 in rfc element 24 2630 E 2631 Elements 2632 abstract 4, 16 2633 address 5, 9 2634 annotation 5, 22 2635 area 6, 16 2636 artwork 6, 13 2637 author 8, 15 2638 back 9, 23 2639 c 10, 30 2640 city 10, 20 2641 code 10, 21 2642 country 11, 21 2643 cref 6, 10-11, 21-22, 29 2644 date 11, 16 2645 email 5, 12 2646 eref 5, 10, 12, 21, 29 2647 facsimile 5, 13 2648 figure 13, 26, 29 2649 format 15, 22 2650 front 15, 22-23 2651 iref 5, 10, 13, 16, 21, 27, 29 2652 keyword 16-17 2653 list 17, 29 2654 middle 19, 23 2655 note 16, 19 2656 organization 9, 20 2657 phone 5, 20 2658 postal 5, 20 2659 postamble 13, 21, 30 2660 preamble 13, 21, 30 2661 reference 22-23 2662 references 10, 22 2663 region 21, 23 2664 rfc 23 2665 section 10, 19, 26-27 2666 seriesInfo 22, 27 2667 spanx 6, 10, 21-22, 28-29 2668 street 20, 29 2669 t 4, 17, 19, 26, 29 2670 texttable 27, 30 2671 title 15, 31 2672 ttcol 30, 32 2673 uri 5, 32 2674 vspace 29, 33 2675 workgroup 16, 33 2676 xref 5, 10, 21, 29, 33 2677 email element 12 2678 inside address 5 2679 eref element 12 2680 inside annotation 5 2681 inside c 10 2682 inside postamble 21 2683 inside preamble 21 2684 inside t 29 2685 target attribute 13 2687 F 2688 facsimile element 13 2689 inside address 5 2690 figure element 13 2691 align attribute 13 2692 alt attribute 14 2693 anchor attribute 14 2694 height attribute 14 2695 inside section 26 2696 inside t 29 2697 src attribute 14 2698 suppress-title attribute 14 2699 title attribute 14 2700 width attribute 15 2701 format attribute 2702 in xref element 34 2703 format element 15 2704 inside reference 22 2705 octets attribute 15 2706 target attribute 15 2707 type attribute 15 2708 front element 15 2709 inside reference 22 2710 inside rfc 23 2711 fullname attribute 2712 in author element 9 2714 H 2715 hangIndent attribute 2716 in list element 17 2717 hangText attribute 2718 in t element 30 2719 height attribute 2720 in artwork element 7 2721 in figure element 14 2723 I 2724 initials attribute 2725 in author element 9 2726 ipr attribute 2727 '*2026' 43 2728 '*3667' 43 2729 '*3978' 43 2730 '*trust200811' 43 2731 '*trust200902' 41 2732 'noDerivativesTrust200902' 42 2733 'noModificationTrust200902' 42 2734 'pre5378Trust200902' 42 2735 'trust200902' 42 2736 in rfc element 24 2737 iprExtract attribute 2738 in rfc element 25 2739 iref element 16 2740 inside annotation 5 2741 inside c 10 2742 inside figure 13 2743 inside postamble 21 2744 inside preamble 21 2745 inside section 27 2746 inside t 29 2747 item attribute 16 2748 primary attribute 16 2749 subitem attribute 17 2750 item attribute 2751 in iref element 16 2753 K 2754 keyword element 17 2755 inside front 16 2757 L 2758 list element 17 2759 counter attribute 17 2760 hangIndent attribute 17 2761 inside t 29 2762 style attribute 18 2763 list styles 2764 empty 18 2765 format ... 18 2766 hanging 18 2767 letters 18 2768 numbers 18 2769 symbols 18 2771 M 2772 Media Type 2773 application/rfc+xml 37 2774 middle element 19 2775 inside rfc 23 2776 month attribute 2777 in date element 12 2779 N 2780 name attribute 2781 in artwork element 7 2782 in seriesInfo element 27 2783 note element 19 2784 inside front 16 2785 title attribute 20 2786 number attribute 2787 in rfc element 25 2789 O 2790 obsoletes attribute 2791 in rfc element 25 2792 octets attribute 2793 in format element 15 2794 organization element 20 2795 abbrev attribute 20 2796 inside author 9 2798 P 2799 pageno attribute 2800 in xref element 35 2801 phone element 20 2802 inside address 5 2803 postal element 20 2804 inside address 5 2805 postamble element 21 2806 inside figure 13 2807 inside texttable 30 2808 preamble element 21 2809 inside figure 13 2810 inside texttable 30 2811 primary attribute 2812 in iref element 16 2814 R 2815 reference element 22 2816 anchor attribute 22 2817 inside references 23 2818 target attribute 22 2819 references element 22 2820 inside back 10 2821 title attribute 23 2822 region element 23 2823 inside postal 21 2824 rfc element 23 2825 category attribute 23 2826 consensus attribute 24 2827 docName attribute 24 2828 ipr attribute 24 2829 iprExtract attribute 25 2830 number attribute 25 2831 obsoletes attribute 25 2832 seriesNo attribute 25 2833 submissionType attribute 26 2834 updates attribute 26 2835 xml:lang attribute 26 2836 role attribute 2837 in author element 9 2839 S 2840 section element 26 2841 anchor attribute 27 2842 inside back 10 2843 inside middle 19 2844 inside section 27 2845 title attribute 27 2846 toc attribute 27 2847 seriesInfo element 27 2848 inside reference 22 2849 name attribute 27 2850 value attribute 28 2851 seriesNo attribute 2852 in rfc element 25 2853 source attribute 2854 in cref element 11 2855 spanx element 28 2856 inside annotation 6 2857 inside c 10 2858 inside postamble 21 2859 inside preamble 22 2860 inside t 29 2861 style attribute 28 2862 xml:space attribute 28 2863 src attribute 2864 in artwork element 7 2865 in figure element 14 2866 street element 29 2867 inside postal 20 2868 style attribute 2869 in list element 18 2870 in spanx element 28 2871 in texttable element 31 2872 subitem attribute 2873 in iref element 17 2874 submissionType attribute 2875 in rfc element 26 2876 suppress-title attribute 2877 in figure element 14 2878 in texttable element 31 2879 surname attribute 2880 in author element 9 2882 T 2883 t element 29 2884 anchor attribute 29 2885 hangText attribute 30 2886 inside abstract 4 2887 inside list 17 2888 inside note 19 2889 inside section 26 2890 target attribute 2891 in eref element 13 2892 in format element 15 2893 in reference element 22 2894 in xref element 35 2895 texttable element 30 2896 align attribute 30 2897 anchor attribute 30 2898 inside section 27 2899 style attribute 31 2900 suppress-title attribute 31 2901 title attribute 31 2902 title attribute 2903 in figure element 14 2904 in note element 20 2905 in references element 23 2906 in section element 27 2907 in texttable element 31 2908 title element 31 2909 abbrev attribute 32 2910 inside front 15 2911 toc attribute 2912 in section element 27 2913 ttcol element 32 2914 align attribute 32 2915 inside texttable 30 2916 width attribute 32 2917 type attribute 2918 in artwork element 8 2919 in format element 15 2921 U 2922 updates attribute 2923 in rfc element 26 2924 uri element 32 2925 inside address 5 2927 V 2928 value attribute 2929 in seriesInfo element 28 2930 vspace element 33 2931 blankLines attribute 33 2932 inside t 29 2934 W 2935 width attribute 2936 in artwork element 8 2937 in figure element 15 2938 in ttcol element 32 2939 workgroup element 33 2940 inside front 16 2942 X 2943 xml:lang attribute 2944 in rfc element 26 2945 xml:space attribute 2946 in artwork element 8 2947 in spanx element 28 2948 xref element 33 2949 format attribute 34 2950 inside annotation 5 2951 inside c 10 2952 inside postamble 21 2953 inside preamble 21 2954 inside t 29 2955 pageno attribute 35 2956 target attribute 35 2957 xref formats 2958 counter 34 2959 default 34 2960 none 34 2961 title 34 2963 Y 2964 year attribute 2965 in date element 12 2967 Author's Address 2969 Julian F. Reschke 2970 greenbytes GmbH 2971 Hafenweg 16 2972 Muenster, NW 48155 2973 Germany 2975 EMail: julian.reschke@greenbytes.de 2976 URI: http://greenbytes.de/tech/webdav/