Skip to main content

The 'XML2RFC' version 3 Vocabulary
draft-hoffman-xml2rfc-17

The information below is for an old version of the document.
Document Type
This is an older version of an Internet-Draft whose latest revision state is "Replaced".
Author Paul E. Hoffman
Last updated 2015-04-17
Replaced by draft-iab-xml2rfc, draft-iab-xml2rfc, RFC 7991
RFC stream (None)
Formats
Reviews
Additional resources
Stream Stream state (No stream defined)
Consensus boilerplate Unknown
RFC Editor Note (None)
IESG IESG state I-D Exists
Telechat date (None)
Responsible AD (None)
Send notices to (None)
draft-hoffman-xml2rfc-17
Network Working Group                                         P. Hoffman
Internet-Draft                                            VPN Consortium
Obsoletes: 2629 (if approved)                             April 17, 2015
Intended status: Informational
Expires: October 19, 2015

                   The 'XML2RFC' version 3 Vocabulary
                        draft-hoffman-xml2rfc-17

Abstract

   This document defines the "XML2RFC" version 3 vocabulary; an XML-
   based language used for writing RFCs and Internet-Drafts.  It is
   heavily derived from the version 2 vocabulary that is also under
   discussion.  This document obsoletes the v2 grammar described in RFC
   2629 and its expected followup, draft-iab-xml2rfc.

Editorial Note (To be removed by RFC Editor)

   Discussion of this draft takes place on the rfc-interest mailing list
   (rfc-interest@rfc-editor.org), which has its home page at
   <https://www.rfc-editor.org/mailman/listinfo/rfc-interest>.

Status of This Memo

   This Internet-Draft is submitted in full conformance with the
   provisions of BCP 78 and BCP 79.

   Internet-Drafts are working documents of the Internet Engineering
   Task Force (IETF).  Note that other groups may also distribute
   working documents as Internet-Drafts.  The list of current Internet-
   Drafts is at http://datatracker.ietf.org/drafts/current/.

   Internet-Drafts are draft documents valid for a maximum of six months
   and may be updated, replaced, or obsoleted by other documents at any
   time.  It is inappropriate to use Internet-Drafts as reference
   material or to cite them other than as "work in progress."

   This Internet-Draft will expire on October 19, 2015.

Copyright Notice

   Copyright (c) 2015 IETF Trust and the persons identified as the
   document authors.  All rights reserved.

   This document is subject to BCP 78 and the IETF Trust's Legal
   Provisions Relating to IETF Documents

Hoffman                 Expires October 19, 2015                [Page 1]
Internet-Draft                  XML2RFCv3                     April 2015

   (http://trustee.ietf.org/license-info) in effect on the date of
   publication of this document.  Please review these documents
   carefully, as they describe your rights and restrictions with respect
   to this document.  Code Components extracted from this document must
   include Simplified BSD License text as described in Section 4.e of
   the Trust Legal Provisions and are provided without warranty as
   described in the Simplified BSD License.

Table of Contents

   1.  Introduction  . . . . . . . . . . . . . . . . . . . . . . . .   5
     1.1.  Design Criteria for the Changes in v3 . . . . . . . . . .   5
     1.2.  Differences from v2 to v3 . . . . . . . . . . . . . . . .   6
       1.2.1.  New Elements in v3  . . . . . . . . . . . . . . . . .   6
       1.2.2.  New Attributes for Existing Elements  . . . . . . . .   7
       1.2.3.  Elements and Attributes Deprecated from v2  . . . . .   8
       1.2.4.  Additional Changes from v2  . . . . . . . . . . . . .   9
     1.3.  Syntax Notation . . . . . . . . . . . . . . . . . . . . .   9
   2.  Elements  . . . . . . . . . . . . . . . . . . . . . . . . . .  10
     2.1.  <abstract>  . . . . . . . . . . . . . . . . . . . . . . .  10
     2.2.  <address> . . . . . . . . . . . . . . . . . . . . . . . .  11
     2.3.  <annotation>  . . . . . . . . . . . . . . . . . . . . . .  11
     2.4.  <area>  . . . . . . . . . . . . . . . . . . . . . . . . .  12
     2.5.  <artwork> . . . . . . . . . . . . . . . . . . . . . . . .  12
     2.6.  <aside> . . . . . . . . . . . . . . . . . . . . . . . . .  16
     2.7.  <author>  . . . . . . . . . . . . . . . . . . . . . . . .  16
     2.8.  <back>  . . . . . . . . . . . . . . . . . . . . . . . . .  18
     2.9.  <bcp14> . . . . . . . . . . . . . . . . . . . . . . . . .  18
     2.10. <blockquote>  . . . . . . . . . . . . . . . . . . . . . .  19
     2.11. <boilerplate> . . . . . . . . . . . . . . . . . . . . . .  20
     2.12. <br>  . . . . . . . . . . . . . . . . . . . . . . . . . .  20
     2.13. <city>  . . . . . . . . . . . . . . . . . . . . . . . . .  21
     2.14. <code>  . . . . . . . . . . . . . . . . . . . . . . . . .  21
     2.15. <country> . . . . . . . . . . . . . . . . . . . . . . . .  21
     2.16. <cref>  . . . . . . . . . . . . . . . . . . . . . . . . .  21
     2.17. <date>  . . . . . . . . . . . . . . . . . . . . . . . . .  23
     2.18. <dd>  . . . . . . . . . . . . . . . . . . . . . . . . . .  24
     2.19. <displayreference>  . . . . . . . . . . . . . . . . . . .  25
     2.20. <dl>  . . . . . . . . . . . . . . . . . . . . . . . . . .  26
     2.21. <dt>  . . . . . . . . . . . . . . . . . . . . . . . . . .  27
     2.22. <em>  . . . . . . . . . . . . . . . . . . . . . . . . . .  27
     2.23. <email> . . . . . . . . . . . . . . . . . . . . . . . . .  28
     2.24. <eref>  . . . . . . . . . . . . . . . . . . . . . . . . .  29
     2.25. <figure>  . . . . . . . . . . . . . . . . . . . . . . . .  29
     2.26. <front> . . . . . . . . . . . . . . . . . . . . . . . . .  31
     2.27. <iref>  . . . . . . . . . . . . . . . . . . . . . . . . .  32
     2.28. <keyword> . . . . . . . . . . . . . . . . . . . . . . . .  33
     2.29. <li>  . . . . . . . . . . . . . . . . . . . . . . . . . .  33

Hoffman                 Expires October 19, 2015                [Page 2]
Internet-Draft                  XML2RFCv3                     April 2015

     2.30. <link>  . . . . . . . . . . . . . . . . . . . . . . . . .  34
     2.31. <middle>  . . . . . . . . . . . . . . . . . . . . . . . .  35
     2.32. <name>  . . . . . . . . . . . . . . . . . . . . . . . . .  35
     2.33. <note>  . . . . . . . . . . . . . . . . . . . . . . . . .  36
     2.34. <ol>  . . . . . . . . . . . . . . . . . . . . . . . . . .  37
     2.35. <organization>  . . . . . . . . . . . . . . . . . . . . .  39
     2.36. <phone> . . . . . . . . . . . . . . . . . . . . . . . . .  39
     2.37. <postal>  . . . . . . . . . . . . . . . . . . . . . . . .  40
     2.38. <postalLine>  . . . . . . . . . . . . . . . . . . . . . .  40
     2.39. <refcontent>  . . . . . . . . . . . . . . . . . . . . . .  40
     2.40. <reference> . . . . . . . . . . . . . . . . . . . . . . .  41
     2.41. <referencegroup>  . . . . . . . . . . . . . . . . . . . .  42
     2.42. <references>  . . . . . . . . . . . . . . . . . . . . . .  43
     2.43. <region>  . . . . . . . . . . . . . . . . . . . . . . . .  44
     2.44. <rfc> . . . . . . . . . . . . . . . . . . . . . . . . . .  44
     2.45. <section> . . . . . . . . . . . . . . . . . . . . . . . .  48
     2.46. <seriesInfo>  . . . . . . . . . . . . . . . . . . . . . .  50
     2.47. <sourcecode>  . . . . . . . . . . . . . . . . . . . . . .  52
     2.48. <street>  . . . . . . . . . . . . . . . . . . . . . . . .  54
     2.49. <strong>  . . . . . . . . . . . . . . . . . . . . . . . .  54
     2.50. <sub> . . . . . . . . . . . . . . . . . . . . . . . . . .  55
     2.51. <sup> . . . . . . . . . . . . . . . . . . . . . . . . . .  56
     2.52. <t> . . . . . . . . . . . . . . . . . . . . . . . . . . .  57
     2.53. <table> . . . . . . . . . . . . . . . . . . . . . . . . .  59
     2.54. <tbody> . . . . . . . . . . . . . . . . . . . . . . . . .  60
     2.55. <td>  . . . . . . . . . . . . . . . . . . . . . . . . . .  60
     2.56. <tfoot> . . . . . . . . . . . . . . . . . . . . . . . . .  62
     2.57. <th>  . . . . . . . . . . . . . . . . . . . . . . . . . .  62
     2.58. <thead> . . . . . . . . . . . . . . . . . . . . . . . . .  64
     2.59. <title> . . . . . . . . . . . . . . . . . . . . . . . . .  64
     2.60. <tr>  . . . . . . . . . . . . . . . . . . . . . . . . . .  64
     2.61. <tt>  . . . . . . . . . . . . . . . . . . . . . . . . . .  65
     2.62. <ul>  . . . . . . . . . . . . . . . . . . . . . . . . . .  66
     2.63. <uri> . . . . . . . . . . . . . . . . . . . . . . . . . .  66
     2.64. <workgroup> . . . . . . . . . . . . . . . . . . . . . . .  67
     2.65. <xref>  . . . . . . . . . . . . . . . . . . . . . . . . .  67
     2.66. <svg> (in namespace http://www.w3.org/2000/svg) . . . . .  70
   3.  Elements from v2 That Have Been Deprecated  . . . . . . . . .  71
     3.1.  <c> . . . . . . . . . . . . . . . . . . . . . . . . . . .  71
     3.2.  <facsimile> . . . . . . . . . . . . . . . . . . . . . . .  71
     3.3.  <format>  . . . . . . . . . . . . . . . . . . . . . . . .  72
     3.4.  <list>  . . . . . . . . . . . . . . . . . . . . . . . . .  72
     3.5.  <postamble> . . . . . . . . . . . . . . . . . . . . . . .  73
     3.6.  <preamble>  . . . . . . . . . . . . . . . . . . . . . . .  73
     3.7.  <spanx> . . . . . . . . . . . . . . . . . . . . . . . . .  74
     3.8.  <texttable> . . . . . . . . . . . . . . . . . . . . . . .  75
     3.9.  <ttcol> . . . . . . . . . . . . . . . . . . . . . . . . .  76
     3.10. <vspace>  . . . . . . . . . . . . . . . . . . . . . . . .  77

Hoffman                 Expires October 19, 2015                [Page 3]
Internet-Draft                  XML2RFCv3                     April 2015

   4.  Internationalization Considerations . . . . . . . . . . . . .  77
   5.  Security Considerations . . . . . . . . . . . . . . . . . . .  77
   6.  IANA Considerations . . . . . . . . . . . . . . . . . . . . .  78
     6.1.  Internet Media Type Registration  . . . . . . . . . . . .  78
     6.2.  Link Relation Registration  . . . . . . . . . . . . . . .  79
   7.  Acknowledgments . . . . . . . . . . . . . . . . . . . . . . .  79
   8.  References  . . . . . . . . . . . . . . . . . . . . . . . . .  80
     8.1.  Normative References  . . . . . . . . . . . . . . . . . .  80
     8.2.  Informative References  . . . . . . . . . . . . . . . . .  80
   Appendix A.  Front Page ('Boilerplate') Generation  . . . . . . .  83
     A.1.  The /rfc/@ipr Attribute . . . . . . . . . . . . . . . . .  83
       A.1.1.  Current Values: '*trust200902'  . . . . . . . . . . .  83
       A.1.2.  Historic Values . . . . . . . . . . . . . . . . . . .  85
     A.2.  The /rfc/@submissionType Attribute  . . . . . . . . . . .  86
     A.3.  The /rfc/@consensus Attribute . . . . . . . . . . . . . .  86
   Appendix B.  The v3 Format and Processors . . . . . . . . . . . .  87
     B.1.  Including External Text . . . . . . . . . . . . . . . . .  88
     B.2.  Anchors and IDs . . . . . . . . . . . . . . . . . . . . .  89
       B.2.1.  Overlapping Values  . . . . . . . . . . . . . . . . .  89
   Appendix C.  Relax NG Schema  . . . . . . . . . . . . . . . . . .  90
   Appendix D.  Schema Differences from v2 . . . . . . . . . . . . . 106
   Index . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 121

Hoffman                 Expires October 19, 2015                [Page 4]
Internet-Draft                  XML2RFCv3                     April 2015

1.  Introduction

   This document describes version 3 ("v3") of the "XML2RFC" vocabulary;
   an XML-based language ('Extensible Markup Language', [XML]) used for
   writing RFCs ([RFC7322]) and Internet-Drafts ([IDGUIDE]).

   This document obsoletes the version 2 vocabulary ("v2") [XML2RFCv2],
   which contains the extended language definition.  That document in
   turn obsoletes the original version ("v1") [RFC2629].  This document
   directly copies the material from [XML2RFCv2] where possible; as that
   document makes its way toward RFC publication, this document will
   incorporate as many of the changes as possible.

   The v3 format will be used as part of the new RFC series described in
   [RFC6949].  The new format will be handled by one or more new
   processors for checking the XML and converting it to other
   representations.  Features of the expected processors are described
   in Appendix B.

   Note that the vocabulary contains certain constructs that might not
   be used when generating of the final text; however, they can provide
   useful data for other uses (such as index generation, populating a
   keyword database, or syntax checks).

   In this document, the term "format" is used when describing types of
   documents, primarily XML and HTML.  The term "representation" is used
   when talking about a specific instatiation of a format, such as an
   XML document or an HTML document that was created by an XML document.

   The following two sections are a hopefully-complete list of all the
   technical changes between [XML2RFCv2] and this document, as well as
   the design criteria for those changes.

1.1.  Design Criteria for the Changes in v3

   The design criteria of the changes from v2 to v3 are:

   o  The intention is that starting and editing a v3 document will be
      easier than for a v2 document.

   o  There will be good v2-to-v3 conversion tools for when an author
      wants to change versions.

   o  There are no current plans to make v3 XML the required submission
      representation for drafts or RFCs.  That might happen eventually,
      but it is likely to be years away.

   There is a desire to keep as much of the v2 grammar as makes sense

Hoffman                 Expires October 19, 2015                [Page 5]
Internet-Draft                  XML2RFCv3                     April 2015

   within the above design criteria and not to make gratuitous changes
   to the v2 grammar.  Another way to say this is "we would rather
   encourage backward compatibility but not be constrained by it".
   Still, the goal of starting and editing a v3 document being easier
   than for a v2 document is more important than backwards compatibility
   with v2, given the latter two design criteria.

   v3 is upwards compatible with v2, meaning that a v2 document is meant
   to be a valid v3 document as well.  However, some features of v2 are
   deprecated in v3 in favor of new elements.  Deprecated features are
   listed in Section 1.2.3, and are described in [XML2RFCv2].

1.2.  Differences from v2 to v3

   The format changes in v3 are listed in the following subsections.

1.2.1.  New Elements in v3

   o  Add <dl>, <ul>, and <ol> as new ways to make lists.  This is a
      significant change from v2 in that the child under these elements
      is <li>, not <t>. <li> has a model of either containing one or
      more <t> elements, or containing the flowing text normally found
      in <t>.  These lists are children of <section>s and other lists
      instead of <t>.

   o  Add <strong>, <em>, <tt>, <sub>, and <sup> for character
      formatting.

   o  Add <aside> for incidental text that will be indented when
      displayed.

   o  Add <sourcecode> to differentiate from <artwork>.

   o  Add <table>, <thead>, <tbody>, <tfoot>, <tr>, <td>, and <th> to
      give table functionality like that in HTML.

   o  Add <boilerplate> to hold the automatically-generated boilerplate
      text.

   o  Add <blockquote> to indicate a quotation as in a paragraph-like
      format.

   o  Add <name> to sections, notes, figures, and texttables to allow
      character formatting (fixed-width font) in their titles, and to
      allow references.

   o  Add <postalLine>, free text that represents one line of the
      address.

Hoffman                 Expires October 19, 2015                [Page 6]
Internet-Draft                  XML2RFCv3                     April 2015

   o  Add <displayreference> to allow display of more mneumonic anchor
      names for automatically-included references.

   o  Add <refcontent> to allow better control of text in a reference.

   o  Add <referencegroup> to allow referemcing multi-RFC documents such
      as STDs and BCPs.

   o  Add <link> to point to a resource related to the RFC.

   o  Add <br> to allow line breaks (but not blank lines) in the
      generated output for table cells.

   o  Add <svg> to allow easy inclusion of SVG drawings in <artwork>.

1.2.2.  New Attributes for Existing Elements

   o  Add "sortRefs", "symRefs", "tocDepth", and "tocInclude" attributes
      to <rfc> to cover processor instructions (PIs) that were in v2
      that are still needed in the grammar.  Also add "finalizedTime" to
      indicate the time that the XML is published.

   o  Add "ascii" attributes to <email>, <organization>, <street>,
      <city>, <region> and <code>.  Also add "asciiFullname",
      "asciiInitials", and "asciiSurname" to <author>.  This allows an
      author to specify their information in their native scripts as the
      primary entry and still allow the ASCII-equivalent values to
      appear in the processed documents.

   o  Add the "section", "relative", and "sectionFormat" attributes to
      <xref>.

   o  Add the "numbered" and "removeInRFC" attributes to <section>.

   o  Add the "removeInRFC" attribute to <note>.

   o  Add "pn" to <artwork>, <aside>, <blockquote>, <dt>, <figure>,
      <li>, <section> <sourcecode>, <t>, and <table> to hold
      automatically generated numbers for items in a section that don't
      have their own numbering (namely figures and tables).

   o  Add "display" to <cref> to indicate to processors whether or not
      to display the comment.

   o  Add "keepWithNext" and "keepWithPrevious" to <t> as a hint to
      processors that do pagination that the should try to keep the
      paragraph with the next/previous element.

Hoffman                 Expires October 19, 2015                [Page 7]
Internet-Draft                  XML2RFCv3                     April 2015

1.2.3.  Elements and Attributes Deprecated from v2

   Deprecated elements and attributes are legacy vocabulary from v2 that
   are supported for input to v3 processors.  They are likely to be
   removed from those processors in the future.  Instead of being listed
   in Section 2, they are listed in in Section 3.  See Appendix B for
   more information on processors and how they will handle deprecated
   features.

   o  Deprecate <list> in favor of <dl>, <ul>, and <ol>.

   o  Deprecate <spanx>; replace it with <strong>, <em>, and <tt>.

   o  Deprecate <vspace> because the major use for it, creating pseudo-
      paragraph-breaks in lists, is now handled properly.

   o  Deprecate <texttable>, <ttcol>, and <c>; replace them with the new
      table elements (<table> and the elements that can be contained
      within it).

   o  Deprecate <facsimile> because it is rarely used and is not
      actually useful; <email> is a much more useful way to get in touch
      with authors.

   o  Deprecate <format> because it is not useful and has caused
      surprise for authors in the past.  If the goal is to provide a
      single URI (Uniform Resource Identifier) for a reference, use the
      "target" attribute on <reference> instead.

   o  Deprecate <preamble> and <postamble> in favor of simply using <t>
      before or after the figure.  This also deprecates the "align"
      attribute in <figure>.

   o  Deprecate the "title" attribute in <section>, <note>, <figure>,
      <references>, and <texttable> in favor of the new <name>.

   o  Deprecate the "alt", and "src" attributes in <figure> because they
      overlap with the attributes in <artwork>.

   o  Deprecate the "xml:space" attribute in <artwork> because there was
      only one useful value.  Deprecate "height" and "width" attribute
      in both <artwork> and <figure> because they are not needed for the
      new output formats.

   o  Deprecate the "pageno" attribute in <xref> because it was unused
      in v2.  Deprecate the "none" and "title" values for the "format"
      attribute in <xref> because the former makes no sense semantically
      and the latter because it has unpredictable output.

Hoffman                 Expires October 19, 2015                [Page 8]
Internet-Draft                  XML2RFCv3                     April 2015

1.2.4.  Additional Changes from v2

   o  Allow non-ASCII characters in the format; the characters that are
      actually allowed will be determined by the RFC Editor.

   o  Allow <artwork> and <sourcecode> to be used on their own in
      <section> (no longer confine them to a figure).

   o  Give more specifics of handling the "type" attribute in <artwork>.

   o  Allow <strong>, <em>, <tt>, <eref>, and <xref> in <cref>.

   o  Allow the sub-elements inside a <reference> to be in any order.

   o  Turned off the auto-generation of anchors in <cref> because there
      is no use case for them that cannot be achieved in other ways.

   o  Allow more than one <artwork>, or more than one <sourcecode>, in
      <figure>.

   o  In <front>, make <date> optional.

   o  In <postal>, allow the sub-elements to be in any order.  Also
      allow the inclusion of the new <postalLine> instead of the older
      elements.

   o  In <section>, restricted the names of the anchors that can be used
      on some types of sections.

   o  Made <seriesInfo> a child of <front>, and deprecated it as a child
      of <reference>.  This also deprecates some of the attributes from
      <rfc> and moves them into <seriesInfo>.

   o  <t> now only contains non-block elements, so it no longer contains
      <figure> elements.

   o  Do not generate the grammar from a DTD, but instead get it
      directly from the Relax Next Generation (RNG) grammar [RNG].

1.3.  Syntax Notation

   The XML vocabulary here is defined in prose, based on the Relax NG
   schema ([RNC]) contained in Appendix C (specified in Relax NG Compact
   Notation, "RNC").

   Note that the schema can be used for automated validity checks, but
   certain constraints are only described in prose (example: the
   conditionally required presence of the "abbrev" attribute).

Hoffman                 Expires October 19, 2015                [Page 9]
Internet-Draft                  XML2RFCv3                     April 2015

2.  Elements

   The sections below describe all elements and their attributes.

   Note that attributes not labeled "mandatory" are optional.

   Many elements have an optional "anchor" attribute.  In all cases, the
   value of the "anchor" attribute needs to be a valid XML "Name"
   (Section 2.3 of [XML]), additionally constrained to US-ASCII
   characters ([USASCII]).  Thus, the character repertoire consists of
   "A-Z", "a-z", "0-9", "_", "-", ".", and ":", where "0-9", ".", and
   "-" are disallowed as start character.  Anchors are described in more
   detail in Appendix B.2.

   Except inside <artwork> and <sourcecode>, horizontal whitespace and
   linebreaks are collapsed into a single whitespace, and leading and
   trailing whitespace are trimmed off.

   Every element in the v3 vocabulary can have an "xml:lang" attribute,
   an "xml:base" attribute, or both.  The xml:lang attribute specifies
   the language used in the element.  This is sometimes useful for
   renderers which display different fonts for ideographic characters
   used in China and Japan.  The xml:base attribute is sometimes added
   to an XML file when doing XML-to-XML conversion where the base file
   has XInclude atttributes (see Appendix B.1).  These attributes are
   not listed in the element descriptions here, but will later be added
   to the RNG used for the v3 processors.

2.1.  <abstract>

   Contains the abstract of the document.  See [RFC7322] for more
   information on restrictions for the abstract.

   This element appears as a child element of: <front> (Section 2.26).

   Content model:

   In any order, but at least one of:

   o  <dl> elements (Section 2.20)

   o  <ol> elements (Section 2.34)

   o  <t> elements (Section 2.52)

   o  <ul> elements (Section 2.62)

Hoffman                 Expires October 19, 2015               [Page 10]
Internet-Draft                  XML2RFCv3                     April 2015

2.1.1.  'pn' attribute

   The name for the abstract.  See Appendix B.2.1 for a description of
   this.

2.2.  <address>

   Provides address information for the author.

   This element appears as a child element of: <author> (Section 2.7).

   Content model:

   In this order:

   1.  One optional <postal> element (Section 2.37)

   2.  One optional <phone> element (Section 2.36)

   3.  One optional <facsimile> element (Section 3.2)

   4.  One optional <email> element (Section 2.23)

   5.  One optional <uri> element (Section 2.63)

2.3.  <annotation>

   Provides additional prose augmenting a bibliographical reference.

   This element appears as a child element of: <reference>
   (Section 2.40).

   Content model:

   In any order:

   o  Text

   o  <bcp14> elements (Section 2.9)

   o  <cref> elements (Section 2.16)

   o  <em> elements (Section 2.22)

   o  <eref> elements (Section 2.24)

   o  <iref> elements (Section 2.27)

Hoffman                 Expires October 19, 2015               [Page 11]
Internet-Draft                  XML2RFCv3                     April 2015

   o  <spanx> elements (Section 3.7)

   o  <strong> elements (Section 2.49)

   o  <sub> elements (Section 2.50)

   o  <sup> elements (Section 2.51)

   o  <tt> elements (Section 2.61)

   o  <xref> elements (Section 2.65)

2.3.1.  'ascii' attribute

   The ASCII equivalent of the annotation.

2.4.  <area>

   Provides information about the IETF area to which this document
   relates (currently not used when generating documents).

   The value ought to be either the full name or the abbreviation of one
   of the IETF areas as listed on <http://www.ietf.org/iesg/area.html>.
   The list at the time that this document is being published is:
   "Applications", "app", "General", "gen", "Internet", "int",
   "Operations and Management", "ops", "Real-time Applications and
   Infrastructure", "rai", "Routing", "rtg", "Security", "sec",
   "Transport", "tsv".

   This element appears as a child element of: <front> (Section 2.26).

   Content model: only text content.

2.5.  <artwork>

   This element allows the inclusion of "artwork" into the document.
   <artwork> provides full control of horizontal whitespace and line
   breaks, and thus is used for a variety of things, such as diagrams
   ("line art") and protocol unit diagrams.

   Alternatively, the "src" attribute allows referencing an external
   graphics file, such as a bitmap or a vector drawing in SVG, using a
   URI.  In this case, the textual content acts as fallback for output
   representations that do not support graphics, and thus ought to
   contain either a "line art" variant of the graphics, or otherwise
   prose that describes the included image in sufficient detail.

   If the artwork includes either "&" or "<" characters, or the string

Hoffman                 Expires October 19, 2015               [Page 12]
Internet-Draft                  XML2RFCv3                     April 2015

   "]]>" those characters need to be encoded using escaping or CDATA
   block(s); see <sourcecode> for a fuller description of these
   solutions.

   In [XML2RFCv2], the <artwork> element was also used for source code
   and formal languages; in v3, this is now done with <sourcecode>.

   There are at least five ways to include SVG in artwork in Internet
   Drafts:

   o  Inline, by including all of the SVG in the content of the element,
      such as: <artwork type="svg"><svg xmlns...">

   o  Inline, but using XInclude (see Appendix B.1), such as: <artwork
      type="svg"><xi:include href=...>

   o  As a data: URI, such as: <artwork type="svg" src="data:image/
      svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3...">

   o  As a URI to an external entity, such as: <artwork type="svg"
      src="http://www.example.com/...">

   o  As a local file, such as: <artwork type="svg" src="diagram12.svg">

   The use of SVG in Internet Drafts and RFCs is covered in much more
   detail in [SVGforRFCs].

   The four methods for inclusion of SVG art can also be used for
   including text artwork, but using a data: URI is probably confusing
   for text artwork.

   Output formatters that do pagination should attempt to keep artwork
   on a single page.  This is to prevent artwork that is split across
   pages from looking like two separate pieces of artwork.

   This element appears as a child element of: <aside> (Section 2.6),
   <blockquote> (Section 2.10), <dd> (Section 2.18), <figure>
   (Section 2.25), <li> (Section 2.29), <section> (Section 2.45), <td>
   (Section 2.55), and <th> (Section 2.57).

   Content model:

   Either:

      Text

   Or:

Hoffman                 Expires October 19, 2015               [Page 13]
Internet-Draft                  XML2RFCv3                     April 2015

      <svg> elements (Section 2.66)

2.5.1.  'align' attribute

   Controls whether the artwork appears left justified (default),
   centered, or right justified.

   Allowed values:

   o  "left" (default)

   o  "center"

   o  "right"

2.5.2.  'alt' attribute

   Alternative text description of the artwork (which is more than just
   a summary or caption).  When the art comes from the "src" attribute,
   and the format of that artwork supports alternate text, the
   alternative text comes from the text of the artwork itself, not from
   this attribute.  The contents of this attribute are important to
   readers who are visually impaired, as well as those reading on
   devices that cannot show the artwork well, or at all.

2.5.3.  'anchor' attribute

   Document-wide unique identifier for this artwork.

2.5.4.  'height' attribute

   Deprecated.

2.5.5.  'name' attribute

   A filename suitable for the contents (such as for extraction to a
   local file).  This attribute can be helpful for other kinds of tools
   (such as automated syntax checkers which work by extracting the
   artwork).  Note that the "name" attribute does not need to be unique
   for artwork elements in a document.  If multiple artwork elements
   have the same name attribute, a processor might assume that the
   elements are all fragments of a single file, and the processor can
   collect those fragments for later processing.

2.5.6.  'pn' attribute

   The number for this artwork within the section.  The numbering is
   shared with other elements of a section.  This is described in more

Hoffman                 Expires October 19, 2015               [Page 14]
Internet-Draft                  XML2RFCv3                     April 2015

   detail in Appendix B.2.

2.5.7.  'src' attribute

   The URI reference of a graphics file ([RFC3986]), or the name of a
   file on the local disk.  This can be a "data" URI ([RFC2397]) that
   contains the contents of the graphics file.  Note that the inclusion
   of art with the "src" attribute depends on the capabilities of the
   processor reading the XML document.  Processors need to be able to
   handle the file: URI, and should be able to handle http: and https:
   URIs as well.

   If no URI scheme is given in the attribute, the attribute is
   considered to be a local file name.  Processors must be careful to
   not accept dangerous values for the filename, particularly those that
   contain absolute references outside the current directory.

2.5.8.  'type' attribute

   Specifies the type of the artwork.  The value of this attribute is
   free text with certain values designated as preferred.  A private
   processor (as described in Appendix B) might add type-specific
   formatting to artwork with the preferred values.  If a processor
   encounters a value for "type" that is not one of the preferred
   values, it can issue a warning but should still use the artwork as if
   it had no "type" attribute.

   The preferred values for <artwork> types are:

   o  ascii-art

   o  call-flow

   o  hex-dump

   o  svg

   The RFC Editor will maintain a complete list of the preferred values
   on its web site, and that list is expected to be updated over time.
   Thus, a consumer of v3 XML should not cause a failure when it
   encounters an unexpected type.

2.5.9.  'width' attribute

   Deprecated.

Hoffman                 Expires October 19, 2015               [Page 15]
Internet-Draft                  XML2RFCv3                     April 2015

2.5.10.  'xml:space' attribute

   Deprecated.

2.6.  <aside>

   This element is a container for content that is semantically less
   important or tangential to the content that surrounds it.

   This element appears as a child element of: <section> (Section 2.45).

   Content model:

   In any order:

   o  <artwork> elements (Section 2.5)

   o  <dl> elements (Section 2.20)

   o  <figure> elements (Section 2.25)

   o  <iref> elements (Section 2.27)

   o  <list> elements (Section 3.4)

   o  <ol> elements (Section 2.34)

   o  <t> elements (Section 2.52)

   o  <table> elements (Section 2.53)

   o  <ul> elements (Section 2.62)

2.6.1.  'anchor' attribute

   Document-wide unique identifier for this aside.

2.6.2.  'pn' attribute

   The number for this aside within the section.  The numbering is
   shared with other elements of a section.  This is described in more
   detail in Appendix B.2.

2.7.  <author>

   Provides information about a document's author.  This is used both
   for the document itself (at the beginning of the document) and for
   referenced documents.

Hoffman                 Expires October 19, 2015               [Page 16]
Internet-Draft                  XML2RFCv3                     April 2015

   The <author> elements contained within the document's <front> element
   are used to fill the boilerplate, and also to generate the "Author's
   Address" section (see [RFC7322]).

   Note that an "author" can also be just an organization (by not
   specifying any of the name attributes, but adding the <organization>
   child element).

   Furthermore, the "role" attribute can be used to mark an author as
   "editor".  This is reflected both on the front page and in
   bibliographical references.  Note that this specification does not
   define a precise meaning for the term "editor".

   See Section "Authors vs. Contributors" of [RFCPOLICY] for more
   information.

   This element appears as a child element of: <front> (Section 2.26).

   Content model:

   In this order:

   1.  One optional <organization> element (Section 2.35)

   2.  One optional <address> element (Section 2.2)

2.7.1.  'asciiFullname' attribute

   The ASCII equivalent of the author's full name.

2.7.2.  'asciiInitials' attribute

   The ASCII equivalent of the author's intials.

2.7.3.  'asciiSurname' attribute

   The ASCII equivalent of the author's surname.

2.7.4.  'fullname' attribute

   The full name (used in the automatically generated "Author's Address"
   section).

2.7.5.  'initials' attribute

   Author initials (used on the front page and in references).

   The value contains one or more initials, each followed by a period.

Hoffman                 Expires October 19, 2015               [Page 17]
Internet-Draft                  XML2RFCv3                     April 2015

   Initials should be provided as a whitespace separated list of pairs
   of a letter and a dot.

2.7.6.  'role' attribute

   Specifies the role the author had in creating the document.

   Allowed values:

   o  "editor"

2.7.7.  'surname' attribute

   The author's surname (used on the front page and in references).

2.8.  <back>

   Contains the "back" part of the document: the references and
   appendices.  In <back>, <section> elements indicate appendices.

   This element appears as a child element of: <rfc> (Section 2.44).

   Content model:

   In this order:

   1.  Optional <displayreference> elements (Section 2.19)

   2.  Optional <references> elements (Section 2.42)

   3.  Optional <section> elements (Section 2.45)

2.9.  <bcp14>

   Marks text that are phrases defined in BCP 14 such as "MUST", "SHOULD
   NOT", and so on.  When shown in some of the output representations,
   the text in this element might be highlighted.  The use of this
   element is optional.

   This element is only to be used around the actual phrase from BCP 14,
   not the full definition of a requirement.  For example, it is correct
   to say "The packet <bcp14>MUST</bcp14> be dropped.", but it not
   correct to say "<bcp14>The packet MUST be dropped.</bcp14>".

   This element appears as a child element of: <annotation>
   (Section 2.3), <blockquote> (Section 2.10), <c> (Section 3.1), <dd>
   (Section 2.18), <dt> (Section 2.21), <em> (Section 2.22), <li>
   (Section 2.29), <postamble> (Section 3.5), <preamble> (Section 3.6),

Hoffman                 Expires October 19, 2015               [Page 18]
Internet-Draft                  XML2RFCv3                     April 2015

   <refcontent> (Section 2.39), <strong> (Section 2.49), <sub>
   (Section 2.50), <sup> (Section 2.51), <t> (Section 2.52), <td>
   (Section 2.55), <th> (Section 2.57), and <tt> (Section 2.61).

   Content model: only text content.

2.10.  <blockquote>

   Specifies a block of text is a quotation.

   This element appears as a child element of: <section> (Section 2.45).

   Content model:

   Either:

      In any order, but at least one of:

      *  <artwork> elements (Section 2.5)

      *  <dl> elements (Section 2.20)

      *  <figure> elements (Section 2.25)

      *  <ol> elements (Section 2.34)

      *  <sourcecode> elements (Section 2.47)

      *  <t> elements (Section 2.52)

      *  <ul> elements (Section 2.62)

   Or:

      In any order, but at least one of:

      *  Text

      *  <bcp14> elements (Section 2.9)

      *  <cref> elements (Section 2.16)

      *  <em> elements (Section 2.22)

      *  <eref> elements (Section 2.24)

      *  <iref> elements (Section 2.27)

Hoffman                 Expires October 19, 2015               [Page 19]
Internet-Draft                  XML2RFCv3                     April 2015

      *  <strong> elements (Section 2.49)

      *  <sub> elements (Section 2.50)

      *  <sup> elements (Section 2.51)

      *  <tt> elements (Section 2.61)

      *  <xref> elements (Section 2.65)

2.10.1.  'anchor' attribute

   Document-wide unique identifier for this quotation.

2.10.2.  'cite' attribute

   The source of the citation.  This must be a URI.  If the quotedFrom
   attribute is given, this URI will be used by processors as the link
   for the text of that attribute.

2.10.3.  'pn' attribute

   The number for this blockquote within the section.  The numbering is
   shared with other elements of a section.  This is described in more
   detail in Appendix B.2.

2.10.4.  'quotedFrom' attribute

   Name of person or document the text in this element is quoted from.
   This will be rendered by the processor as visible text at the end of
   the quotation.

2.11.  <boilerplate>

   Holds the boilerplate text for the document.  This section is filled
   in by the RFC Processor.

   This element appears as a child element of: <front> (Section 2.26).

   Content model:

   One or more <section> elements (Section 2.45)

2.12.  <br>

   Indicates that a line break should be inserted in the generated
   output by the processor.  Multiple successive instances of this
   element does not cause blank lines to appear in the output, and is

Hoffman                 Expires October 19, 2015               [Page 20]
Internet-Draft                  XML2RFCv3                     April 2015

   thus not useful.

   This element appears as a child element of: <td> (Section 2.55), and
   <th> (Section 2.57).

   Content model: this element does not have any contents.

2.13.  <city>

   Gives the city name in a postal address.

   This element appears as a child element of: <postal> (Section 2.37).

   Content model: only text content.

2.13.1.  'ascii' attribute

   The ASCII equivalent of the city name.

2.14.  <code>

   Gives the postal region code.

   This element appears as a child element of: <postal> (Section 2.37).

   Content model: only text content.

2.14.1.  'ascii' attribute

   The ASCII equivalent of the postal code.

2.15.  <country>

   Gives the country in a postal address.

   This element appears as a child element of: <postal> (Section 2.37).

   Content model: only text content.

2.16.  <cref>

   Represents a comment.

   Comments can be used in a document while it is work-in-progress.
   They usually appear either inline and visually highlighted, at the
   end of the document (depending on file representation and settings of
   the processor), or not at all (when generating an RFC).

Hoffman                 Expires October 19, 2015               [Page 21]
Internet-Draft                  XML2RFCv3                     April 2015

   This element appears as a child element of: <annotation>
   (Section 2.3), <blockquote> (Section 2.10), <c> (Section 3.1), <dd>
   (Section 2.18), <dt> (Section 2.21), <em> (Section 2.22), <li>
   (Section 2.29), <name> (Section 2.32), <postamble> (Section 3.5),
   <preamble> (Section 3.6), <strong> (Section 2.49), <sub>
   (Section 2.50), <sup> (Section 2.51), <t> (Section 2.52), <td>
   (Section 2.55), <th> (Section 2.57), <tt> (Section 2.61), and <ttcol>
   (Section 3.9).

   Content model:

   In any order:

   o  Text

   o  <em> elements (Section 2.22)

   o  <eref> elements (Section 2.24)

   o  <strong> elements (Section 2.49)

   o  <sub> elements (Section 2.50)

   o  <sup> elements (Section 2.51)

   o  <tt> elements (Section 2.61)

   o  <xref> elements (Section 2.65)

2.16.1.  'anchor' attribute

   Document-wide unique identifier for this comment.

2.16.2.  'display' attribute

   Says whether or not the the comment should be displayed by
   processors.  This might be set to "false" if you want to keep a
   comment in a document after the contents of the comment have already
   been dealt with.

   Allowed values:

   o  "true" (default)

   o  "false"

Hoffman                 Expires October 19, 2015               [Page 22]
Internet-Draft                  XML2RFCv3                     April 2015

2.16.3.  'source' attribute

   Holds the "source" of a comment, such as the name or the initials of
   the person who made the comment.

2.17.  <date>

   Provides information about the publication date.

   Note that this element is used both for the boilerplate of the
   document being produced, and also inside bibliographic references
   that use the <front> element.

   In the boilerplate case, it defines the date of publication for the
   current document (Internet Draft or RFC).  When producing Internet-
   Drafts, the Draft Processor uses this date to compute the expiration
   date (see [IDGUIDE]).  When one or more of "year", "month", or "day"
   are left out, the processor will attempt to use the current system
   date if the attributes that are present are consistent with that
   date.

   Also in the first case, that month names, if given, need to match the
   full English month name: "January", "February", "March", "April",
   "May, "June", "July", "August", "September", "October", "November",
   or "December".

   The draft processor will reject a submitted Internet Draft that has a
   <date> element in the boilerplate for itself that is anything other
   than today.  That is, the draft processor will not allow a submitter
   to specify a date other than the day of submission.  To avoid this
   problem, authors might simply not include a <date> element in the
   boilerplate.

   In the case of bibliographic references, the date information can
   have prose text for the month or year.  For example, vague dates
   (year="ca. 2000"), date ranges (year="2012-2013"), non-specific
   months (month="Second quarter") and so on, are allowed.

   This element appears as a child element of: <front> (Section 2.26).

   Content model: this element does not have any contents.

2.17.1.  'day' attribute

   In the "boilerplate" case: the day of publication; this is a number.
   Otherwise: an indication of the publication day, with the format not
   being restricted.

Hoffman                 Expires October 19, 2015               [Page 23]
Internet-Draft                  XML2RFCv3                     April 2015

2.17.2.  'month' attribute

   In the "boilerplate" case: the month of publication; this is the
   English name of the month.  Otherwise: an indication of the
   publication month, with the format not being restricted.

2.17.3.  'year' attribute

   In the "boilerplate" case: the year of publication; this is a number
   (usually four-digit).  Otherwise: an indication of the publication
   year, with the format not being restricted.

2.18.  <dd>

   The definition part of an entry in a definition list.

   This element appears as a child element of: <dl> (Section 2.20).

   Content model:

   Either:

      In any order, but at least one of:

      *  <artwork> elements (Section 2.5)

      *  <dl> elements (Section 2.20)

      *  <figure> elements (Section 2.25)

      *  <ol> elements (Section 2.34)

      *  <sourcecode> elements (Section 2.47)

      *  <t> elements (Section 2.52)

      *  <ul> elements (Section 2.62)

   Or:

      In any order, but at least one of:

      *  Text

      *  <bcp14> elements (Section 2.9)

      *  <cref> elements (Section 2.16)

Hoffman                 Expires October 19, 2015               [Page 24]
Internet-Draft                  XML2RFCv3                     April 2015

      *  <em> elements (Section 2.22)

      *  <eref> elements (Section 2.24)

      *  <iref> elements (Section 2.27)

      *  <strong> elements (Section 2.49)

      *  <sub> elements (Section 2.50)

      *  <sup> elements (Section 2.51)

      *  <tt> elements (Section 2.61)

      *  <xref> elements (Section 2.65)

2.19.  <displayreference>

   This element gives a mapping between the anchor of a reference and a
   name that will be displayed instead.  This allows authors to display
   more mneumonic anchor names for automatically-included references.
   For example, if the reference uses the anchor "RFC6949", the
   following would cause that anchor in the body of displayed documents
   to be "RFC-dev":

   <displayreference target="RFC6449" to="RFC-dev"/>

   If a reference section is sorted, this element changes the sort
   order.

   This element appears as a child element of: <back> (Section 2.8).

   Content model: this element does not have any contents.

2.19.1.  'target' attribute (mandatory)

   This attribute must be the name of an anchor in a <reference>
   element.

2.19.2.  'to' attribute (mandatory)

   This attribute is a name that will be displayed as the anchor instead
   of the anchor that is given in the <reference> element.  The string
   given must start with one of the following characters: 0-9, a-z, A-Z.
   The other characters in the string must be 0-9, a-z, A-Z, "-", ".",
   and "_".

Hoffman                 Expires October 19, 2015               [Page 25]
Internet-Draft                  XML2RFCv3                     April 2015

2.20.  <dl>

   A definition list.  Each entry has a pair of elements: a term (<dt>)
   and a definition (<dd>).  (This is slightly different than the model
   used in HTML, whicl allows for multiple terms for a single
   definition.)

   This element appears as a child element of: <abstract> (Section 2.1),
   <aside> (Section 2.6), <blockquote> (Section 2.10), <dd>
   (Section 2.18), <li> (Section 2.29), <note> (Section 2.33), <section>
   (Section 2.45), <td> (Section 2.55), and <th> (Section 2.57).

   Content model:

   One or more sequences of:

   1.  One <dt> element

   2.  One <dd> element

2.20.1.  'hanging' attribute

   The hanging attribute defines whether or not the term appears on the
   same line as the definition. hanging="true" indicates that the term
   is to the left of the definition, while hanging="false" indicates
   that the term will be on a separate line.

   Allowed values:

   o  "false"

   o  "true" (default)

2.20.2.  'spacing' attribute

   Defines whether or not there is a blank line between entries.
   spacing="normal" indicates a single blank line, while
   spacing="compact" indicates no space between.

   Allowed values:

   o  "normal" (default)

   o  "compact"

Hoffman                 Expires October 19, 2015               [Page 26]
Internet-Draft                  XML2RFCv3                     April 2015

2.21.  <dt>

   The term being defined in a definition list.

   This element appears as a child element of: <dl> (Section 2.20).

   Content model:

   In any order:

   o  Text

   o  <bcp14> elements (Section 2.9)

   o  <cref> elements (Section 2.16)

   o  <em> elements (Section 2.22)

   o  <eref> elements (Section 2.24)

   o  <iref> elements (Section 2.27)

   o  <strong> elements (Section 2.49)

   o  <sub> elements (Section 2.50)

   o  <sup> elements (Section 2.51)

   o  <tt> elements (Section 2.61)

   o  <xref> elements (Section 2.65)

2.21.1.  'anchor' attribute

   Document-wide unique identifier for this term.

2.21.2.  'pn' attribute

   The number for this term within the section.  The numbering is shared
   with other elements of a section.  This is described in more detail
   in Appendix B.2.

2.22.  <em>

   Indicates text that is semantically empahsized.  This element will be
   displayed as italic after processing.  This element can be combined
   with other character formatting elements, and the formatting will be
   additive.

Hoffman                 Expires October 19, 2015               [Page 27]
Internet-Draft                  XML2RFCv3                     April 2015

   This element appears as a child element of: <annotation>
   (Section 2.3), <blockquote> (Section 2.10), <c> (Section 3.1), <cref>
   (Section 2.16), <dd> (Section 2.18), <dt> (Section 2.21), <li>
   (Section 2.29), <postamble> (Section 3.5), <preamble> (Section 3.6),
   <refcontent> (Section 2.39), <strong> (Section 2.49), <sub>
   (Section 2.50), <sup> (Section 2.51), <t> (Section 2.52), <td>
   (Section 2.55), <th> (Section 2.57), and <tt> (Section 2.61).

   Content model:

   In any order:

   o  Text

   o  <bcp14> elements (Section 2.9)

   o  <cref> elements (Section 2.16)

   o  <eref> elements (Section 2.24)

   o  <iref> elements (Section 2.27)

   o  <strong> elements (Section 2.49)

   o  <sub> elements (Section 2.50)

   o  <sup> elements (Section 2.51)

   o  <tt> elements (Section 2.61)

   o  <xref> elements (Section 2.65)

2.23.  <email>

   Provides an email address.

   The value is expected to be the scheme-specific part of a "mailto"
   URI (so does not include the prefix "mailto:").  See Section 2 of
   [RFC6068] for details.

   This element appears as a child element of: <address> (Section 2.2).

   Content model: only text content.

2.23.1.  'ascii' attribute

   The ASCII equivalent of the author's email address.  This is only
   used if the email address has one or two internationalized

Hoffman                 Expires October 19, 2015               [Page 28]
Internet-Draft                  XML2RFCv3                     April 2015

   components.

2.24.  <eref>

   Represents an "external" link (as specified in the "target"
   attribute).  This can be used for creating linked references, such as
   in HTML output.

   If the element has text content, that content will be used.
   Otherwise, the value of the target attribute will be inserted in
   angle brackets ([RFC3986], Appendix C).

   This element appears as a child element of: <annotation>
   (Section 2.3), <blockquote> (Section 2.10), <c> (Section 3.1), <cref>
   (Section 2.16), <dd> (Section 2.18), <dt> (Section 2.21), <em>
   (Section 2.22), <li> (Section 2.29), <name> (Section 2.32),
   <postamble> (Section 3.5), <preamble> (Section 3.6), <strong>
   (Section 2.49), <sub> (Section 2.50), <sup> (Section 2.51), <t>
   (Section 2.52), <td> (Section 2.55), <th> (Section 2.57), <tt>
   (Section 2.61), and <ttcol> (Section 3.9).

   Content model: only text content.

2.24.1.  'target' attribute (mandatory)

   URI of the link target (see Section 3 of [RFC3986]).

2.25.  <figure>

   Contains a figure with a caption with the figure number.  If the
   element contains a <name> element, the caption will also show that
   name.

   This element appears as a child element of: <aside> (Section 2.6),
   <blockquote> (Section 2.10), <dd> (Section 2.18), <li>
   (Section 2.29), <section> (Section 2.45), <td> (Section 2.55), and
   <th> (Section 2.57).

   Content model:

   In this order:

   1.  One optional <name> element (Section 2.32)

   2.  Optional <iref> elements (Section 2.27)

   3.  One optional <preamble> element (Section 3.6)

Hoffman                 Expires October 19, 2015               [Page 29]
Internet-Draft                  XML2RFCv3                     April 2015

   4.  In any order, but at least one of:

       *  <artwork> elements (Section 2.5)

       *  <sourcecode> elements (Section 2.47)

   5.  One optional <postamble> element (Section 3.5)

2.25.1.  'align' attribute

   Deprecated.

   Note: does not affect title or <artwork> alignment.

   Allowed values:

   o  "left" (default)

   o  "center"

   o  "right"

2.25.2.  'alt' attribute

   Deprecated.  If the goal is to provide a single URI for a reference,
   use the "target" attribute on <reference> instead.

2.25.3.  'anchor' attribute

   Document-wide unique identifier for this figure.

2.25.4.  'height' attribute

   Deprecated.

2.25.5.  'pn' attribute

   The number for this figure.  This attribute and its value are
   automatically generated by the RFC Processor.

2.25.6.  'src' attribute

   Deprecated.

2.25.7.  'suppress-title' attribute

   Deprecated.  Figures always now get captions.

Hoffman                 Expires October 19, 2015               [Page 30]
Internet-Draft                  XML2RFCv3                     April 2015

   Allowed values:

   o  "true"

   o  "false" (default)

2.25.8.  'title' attribute

   Deprecated.  Use <name> instead.

2.25.9.  'width' attribute

   Deprecated.

2.26.  <front>

   Represent the "front matter": metadata (such as author information),
   abstract, and additional notes.

   A <front> element may have more than one <seriesInfo> elements.  A
   <seriesInfo> element determines the document number (for RFCs) or
   name (for Internet-Drafts).  Another <seriesInfo> element determines
   the "maturity level" (see Section 4 of [RFC2026]), using values of
   "std" for "Standards Track", "bcp" for "BCP", "info" for
   "Informational", "exp" for "Experimental", and "historic" for
   "Historic".  The "name" attributes of those multiple <seriesInfo>
   elements interact as described in the section on <seriesInfo>.

   This element appears as a child element of: <reference>
   (Section 2.40), and <rfc> (Section 2.44).

   Content model:

   In this order:

   1.   One <title> element (Section 2.59)

   2.   One or more <author> elements (Section 2.7)

   3.   One optional <date> element (Section 2.17)

   4.   Optional <area> elements (Section 2.4)

   5.   Optional <workgroup> elements (Section 2.64)

   6.   Optional <keyword> elements (Section 2.28)

Hoffman                 Expires October 19, 2015               [Page 31]
Internet-Draft                  XML2RFCv3                     April 2015

   7.   One optional <abstract> element (Section 2.1)

   8.   Optional <seriesInfo> elements (Section 2.46)

   9.   Optional <note> elements (Section 2.33)

   10.  One optional <boilerplate> element (Section 2.11)

2.27.  <iref>

   Provides terms for the document's index.

   Index entries can be either be regular entries (when just the "item"
   attribute is given) or nested entries (by specifying "subitem" as
   well), grouped under a regular entry.

   Index entries generally refer to the exact place where the <iref>
   element occured.  An exception is the occurence as a child element of
   <section>, in which case the whole section is considered to be
   relevant for that index entry.  In some formats, index entries of
   this type might be displayed as range.

   This element appears as a child element of: <annotation>
   (Section 2.3), <aside> (Section 2.6), <blockquote> (Section 2.10),
   <c> (Section 3.1), <dd> (Section 2.18), <dt> (Section 2.21), <em>
   (Section 2.22), <figure> (Section 2.25), <li> (Section 2.29),
   <postamble> (Section 3.5), <preamble> (Section 3.6), <section>
   (Section 2.45), <strong> (Section 2.49), <sub> (Section 2.50), <sup>
   (Section 2.51), <t> (Section 2.52), <table> (Section 2.53), <td>
   (Section 2.55), <th> (Section 2.57), <tt> (Section 2.61), and <ttcol>
   (Section 3.9).

   Content model: this element does not have any contents.

2.27.1.  'item' attribute (mandatory)

   The item to include.

2.27.2.  'primary' attribute

   Setting this to "true" declares the occurrence as "primary", which
   might cause it to be highlighted in the index.

   Allowed values:

   o  "true"

Hoffman                 Expires October 19, 2015               [Page 32]
Internet-Draft                  XML2RFCv3                     April 2015

   o  "false" (default)

2.27.3.  'subitem' attribute

   The subitem to include.

2.28.  <keyword>

   Specifies a keyword applicable to the document.

   Note that each element should only contain a single keyword; for
   multiple keywords, the element can simply be repeated.

   Keywords are used both in the RFC Index and in the metadata of
   generated document representations.

   This element appears as a child element of: <front> (Section 2.26).

   Content model: only text content.

2.29.  <li>

   A list element, used in <ol> and <ul>.

   This element appears as a child element of: <ol> (Section 2.34), and
   <ul> (Section 2.62).

   Content model:

   Either:

      In any order, but at least one of:

      *  <artwork> elements (Section 2.5)

      *  <dl> elements (Section 2.20)

      *  <figure> elements (Section 2.25)

      *  <ol> elements (Section 2.34)

      *  <sourcecode> elements (Section 2.47)

      *  <t> elements (Section 2.52)

      *  <ul> elements (Section 2.62)

   Or:

Hoffman                 Expires October 19, 2015               [Page 33]
Internet-Draft                  XML2RFCv3                     April 2015

      In any order, but at least one of:

      *  Text

      *  <bcp14> elements (Section 2.9)

      *  <cref> elements (Section 2.16)

      *  <em> elements (Section 2.22)

      *  <eref> elements (Section 2.24)

      *  <iref> elements (Section 2.27)

      *  <strong> elements (Section 2.49)

      *  <sub> elements (Section 2.50)

      *  <sup> elements (Section 2.51)

      *  <tt> elements (Section 2.61)

      *  <xref> elements (Section 2.65)

2.29.1.  'anchor' attribute

   Document-wide unique identifier for this list item.

2.29.2.  'pn' attribute

   The number for this list item within the section.  The numbering is
   shared with other elements of a section.  This is described in more
   detail in Appendix B.2.

2.30.  <link>

   A link to an external document that is related to the RFC.

   The following are the supported types of external documents that can
   be pointed to in a <link> element:

   o  The current ISSN for the RFC Series.  The value for the "rel"
      attribute is "item".  The link should use the form "urn:issn:".

   o  The DOI for this document.  The value for the "rel" attribute is
      "describedBy".  The link should use the form specified in [DOI].

Hoffman                 Expires October 19, 2015               [Page 34]
Internet-Draft                  XML2RFCv3                     April 2015

   o  The Internet Draft that was submitted to the RFC Editor to become
      the published RFC.  The value for the "rel" attribute is
      "derivedFrom".  The link should be to an IETF-controlled web site
      that retains copies of Internet Drafts.

   o  A representation of the document offered by the document author.
      The value for the "rel" attribute is "alternate".  The link can be
      to a personally-run web site.

   The RFC Processor needs to check the values for <link> before an RFC
   is published.  The Draft Processor might remove some <link> elements
   during the draft submission process.

   This element appears as a child element of: <rfc> (Section 2.44).

   Content model: this element does not have any contents.

2.30.1.  'href' attribute (mandatory)

   The URI of the external document.

2.30.2.  'rel' attribute

   The relationship of the external document to this one.  The
   relationships are taken from Link Relations registry maintained by
   IANA [LINKRELATIONS].

2.31.  <middle>

   Represents the main content of the document.

   This element appears as a child element of: <rfc> (Section 2.44).

   Content model:

   One or more <section> elements (Section 2.45)

2.32.  <name>

   The name of the section, note, figure, or texttable.  This name can
   have flow markup such as to make some characters use a fixed-width
   font, or to include references.

   This element appears as a child element of: <figure> (Section 2.25),
   <note> (Section 2.33), <references> (Section 2.42), <section>
   (Section 2.45), <table> (Section 2.53), and <texttable>
   (Section 3.8).

Hoffman                 Expires October 19, 2015               [Page 35]
Internet-Draft                  XML2RFCv3                     April 2015

   Content model:

   In any order:

   o  Text

   o  <cref> elements (Section 2.16)

   o  <eref> elements (Section 2.24)

   o  <tt> elements (Section 2.61)

   o  <xref> elements (Section 2.65)

2.32.1.  'slugifiedName' attribute

   This attribute is filled in by a processor with a "slugified" version
   of the text in the element.  This attribute can be used in the output
   formats for elements that have both names and numbers.

2.33.  <note>

   Creates an unnumbered section that appears after the abstract.

   It is usually used for additional information to reviewers (working
   group information, mailing list, ...), or for additional publication
   information such as "IESG Notes".

   This element appears as a child element of: <front> (Section 2.26).

   Content model:

   In this order:

   1.  One <name> element (Section 2.32)

   2.  In any order, but at least one of:

       *  <dl> elements (Section 2.20)

       *  <ol> elements (Section 2.34)

       *  <t> elements (Section 2.52)

       *  <ul> elements (Section 2.62)

Hoffman                 Expires October 19, 2015               [Page 36]
Internet-Draft                  XML2RFCv3                     April 2015

2.33.1.  'pn' attribute

   The name for this note.  See Appendix B.2.1 for a description of
   this.

2.33.2.  'removeInRFC' attribute

   If set to "yes", this note is marked in the processor with text
   indicating that it should be removed before the document is published
   as an RFC.

   Allowed values:

   o  "true"

   o  "false"

2.33.3.  'title' attribute

   Deprecated.  Use <name> instead.

2.34.  <ol>

   An ordered list.  The labels on the items will be either a number or
   a letter, depending on the value of the style attribute.

   This element appears as a child element of: <abstract> (Section 2.1),
   <aside> (Section 2.6), <blockquote> (Section 2.10), <dd>
   (Section 2.18), <li> (Section 2.29), <note> (Section 2.33), <section>
   (Section 2.45), <td> (Section 2.55), and <th> (Section 2.57).

   Content model:

   One or more <li> elements (Section 2.29)

2.34.1.  'group' attribute

   When a processor sees an <ol> element with a "group" attribute that
   has already been seen, the processor continues the numbering of the
   list from where the previous list with the same group name left off.
   If an <ol> element has both a "group" and "start" attribute, the
   group's numbering is reset to the given start value.

2.34.2.  'spacing' attribute

   Defines whether or not there is a blank line between entries.
   spacing="normal" indicates a single blank line, while
   spacing="compact" indicates no space between.

Hoffman                 Expires October 19, 2015               [Page 37]
Internet-Draft                  XML2RFCv3                     April 2015

   Allowed values:

   o  "normal" (default)

   o  "compact"

2.34.3.  'start' attribute

   The ordinal value to start the list at.  This defaults to "1", and
   must be an integer of 0 or greater.

2.34.4.  'style' attribute

   The style of the labels on list items.  If the length of the style
   value is 1, the meaning is the same as it is for HTML:

   a  Lowercase letters (a, b, c, ...)

   A  Uppercase letters (A, B, C, ...)

   1  Decimal numbers (1, 2, 3, ...)

   i  Lowercase Roman numerals (i, ii, iii, ...)

   I  Uppercase Roman numerals (I, II, III, ...)

   For style "a" and "A", after the 26th entry, the numbering starts at
   "aa"/"AA", then "ab"/"AB", and so on.

   If the length of the style value is greater than 1, the value must
   contain a percent-encoded indicator and other text.  The value is a
   free-form text that allows counter values to be inserted using a
   "percent-letter" format.  For instance, "[REQ%d]" generates labels of
   the form "[REQ1]", where "%d" inserts the item number as decimal
   number.

   The following formats are supported:

   %c Lowercase letters (a, b, c, ...)

   %C Uppercase letters (A, B, C, ...)

   %d Decimal numbers (1, 2, 3, ...)

   %i Lowercase Roman numerals (i, ii, iii, ...)

Hoffman                 Expires October 19, 2015               [Page 38]
Internet-Draft                  XML2RFCv3                     April 2015

   %I Uppercase Roman numerals (I, II, III, ...)

   %% Represents a percent sign

   Other formats are reserved for future use.

   It is an error for the style string to be empty, and processors will
   reject documents with an element that has such a style.  For bulleted
   lists, you use the <ul> element.  For lists that have neither bullets
   nor numbers, use the <ul> element with the 'empty="true"' attribute.

   If no "style" attribute is given, the default style is the same as
   "style='%d.'".

2.35.  <organization>

   Specifies the affiliation of an author.

   This information appears in both the "Author's Address" section and
   on the front page (see [RFC7322] for more information).  If the value
   is long, an abbreviated variant can be specified in the "abbrev"
   attribute.

   This element appears as a child element of: <author> (Section 2.7).

   Content model: only text content.

2.35.1.  'abbrev' attribute

   Abbreviated variant.

2.35.2.  'ascii' attribute

   The ASCII equivalent of the organization's name.

2.36.  <phone>

   Represents a phone number.

   The value is expected to be the scheme-specific part of a "tel" URI
   (so does not include the prefix "tel:"), using the "global numbers"
   syntax.  See Section 3 of [RFC3966] for details.

   This element appears as a child element of: <address> (Section 2.2).

   Content model: only text content.

Hoffman                 Expires October 19, 2015               [Page 39]
Internet-Draft                  XML2RFCv3                     April 2015

2.37.  <postal>

   Contains optional child elements providing postal information.  These
   elements will be displayed in an order that is processor-specific.  A
   postal address can contain only a set of <street>, <city>, <region>,
   <code>, and <country> elements, or only an ordered set of
   <postalLine> elements, but not both.

   This element appears as a child element of: <address> (Section 2.2).

   Content model:

   Either:

      In any order:

      *  <city> elements (Section 2.13)

      *  <code> elements (Section 2.14)

      *  <country> elements (Section 2.15)

      *  <region> elements (Section 2.43)

      *  <street> elements (Section 2.48)

   Or:

      One or more <postalLine> elements (Section 2.38)

2.38.  <postalLine>

   Represents one line of a postal address.  When more than one
   <postalLine> is given, the processor emits them in the order given.

   This element appears as a child element of: <postal> (Section 2.37).

   Content model: only text content.

2.38.1.  'ascii' attribute

   The ASCII equivalent of the text in the address line.

2.39.  <refcontent>

   Text that should appear between the title and the date of a
   reference.  The purpose of this element is to prevent the need to
   abuse <seriesInfo> to get such text in a reference.

Hoffman                 Expires October 19, 2015               [Page 40]
Internet-Draft                  XML2RFCv3                     April 2015

   For example:

   <reference anchor="April1">
     <front>
       <title>On Being A Fool</title>
       <author initials="K." surname="Phunny" fullname="Knot Phunny"/>
       <date year="2000" month="April"/>
     </front>
     <refcontent>Self-published pamphlet</refcontent>
   </reference>

   would render as:

      [April1]     Phunny, K., "On Being A Fool", Self-published
                   pamphlet, April 2000.

   This element appears as a child element of: <reference>
   (Section 2.40).

   Content model:

   In any order:

   o  Text

   o  <bcp14> elements (Section 2.9)

   o  <em> elements (Section 2.22)

   o  <strong> elements (Section 2.49)

   o  <sub> elements (Section 2.50)

   o  <sup> elements (Section 2.51)

   o  <tt> elements (Section 2.61)

2.39.1.  'ascii' attribute

   The ASCII equivalent of the added text.

2.40.  <reference>

   Represents a bibliographical reference.

   This element appears as a child element of: <referencegroup>
   (Section 2.41), and <references> (Section 2.42).

Hoffman                 Expires October 19, 2015               [Page 41]
Internet-Draft                  XML2RFCv3                     April 2015

   Content model:

   In this order:

   1.  One <front> element (Section 2.26)

   2.  In any order:

       *  <annotation> elements (Section 2.3)

       *  <format> elements (Section 3.3)

       *  <refcontent> elements (Section 2.39)

       *  <seriesInfo> elements (Section 2.46; deprecated in this
          context)

2.40.1.  'anchor' attribute (mandatory)

   Document-wide unique identifier for this reference.  Usually, this
   will be used both to "label" the reference in the references section,
   and as an identifier in links to this reference entry.

2.40.2.  'quoteTitle' attribute

   Specifies whether or not the title in the reference should be quoted.
   This can be used to prevent quoting, such as on errata.

   Allowed values:

   o  "true" (default)

   o  "false"

2.40.3.  'target' attribute

   Holds the URI for the reference.

2.41.  <referencegroup>

   Represents a list of bibliographic references that will be
   represented as a single reference.  This is most often used for
   references in the STD and BCP series, where a single reference (such
   as "BCP 9") encompasses more than one RFC.

   This element appears as a child element of: <references>
   (Section 2.42).

Hoffman                 Expires October 19, 2015               [Page 42]
Internet-Draft                  XML2RFCv3                     April 2015

   Content model:

   One or more <reference> elements (Section 2.40)

2.41.1.  'anchor' attribute (mandatory)

   Document-wide unique identifier for this reference group.  Usually,
   this will be used both to "label" the reference group in the
   references section, and as an identifier in links to this reference
   entry.

2.42.  <references>

   Contains a set of bibliographical references.

   In the early days of the RFC series, there was only one "References"
   section per RFC.  This convention was later changed to group
   references into two sets, "Normative" and "Informative" as described
   in [RFC7322]).  This vocabulary supports the split with the <name>
   child element.  In general, the title should be either "Normative
   References" or "Informative References".

   By default, the order of references is significant.  Processors,
   however, can be instructed to sort them based on their anchor names.

   This element appears as a child element of: <back> (Section 2.8).

   Content model:

   In this order:

   1.  One optional <name> element (Section 2.32)

   2.  In any order:

       *  <reference> elements (Section 2.40)

       *  <referencegroup> elements (Section 2.41)

2.42.1.  'anchor' attribute

   The number for this section.  This attribute and its value are
   automatically generated by the RFC Processor, and are ignored by
   other processors.

Hoffman                 Expires October 19, 2015               [Page 43]
Internet-Draft                  XML2RFCv3                     April 2015

2.42.2.  'pn' attribute

   The number for this reference section.  This attribute and its value
   are automatically generated by the RFC Processor, and are ignored by
   other processors.

2.42.3.  'title' attribute

   Deprecated.  Use <name> instead.  Processors will flag reference
   sections that have no <name> element as errors because all sections
   need a name.

2.43.  <region>

   Provides the region name in a postal address.

   This element appears as a child element of: <postal> (Section 2.37).

   Content model: only text content.

2.43.1.  'ascii' attribute

   The ASCII equivalent of the region name.

2.44.  <rfc>

   This is the root element of the xml2rfc vocabulary.

   Content model:

   In this order:

   1.  Optional <link> elements (Section 2.30)

   2.  One <front> element (Section 2.26)

   3.  One <middle> element (Section 2.31)

   4.  One optional <back> element (Section 2.8)

2.44.1.  'category' attribute

   Deprecated; instead, use the "name" attribute in <seriesInfo>.

2.44.2.  'consensus' attribute

   Affects the generated boilerplate.

Hoffman                 Expires October 19, 2015               [Page 44]
Internet-Draft                  XML2RFCv3                     April 2015

   See [RFC5741] for more information.

   Allowed values:

   o  "no"

   o  "yes"

   o  "false"

   o  "true"

2.44.3.  'docName' attribute

   Deprecated; instead, use the "value" attribute in <seriesInfo>.

2.44.4.  'finalizedTime' attribute

   The date that the XML was finalized by the RFC Editor when publising
   an RFC.  This is included in the XML file just before publication,
   and is stripped by processors from all other XML files.  The value is
   formatted using the format from [RFC3339].

2.44.5.  'ipr' attribute

   Represents the Intellectual Property status of the document.  See
   Appendix A.1 for details.

   Allowed values:

   o  "full2026"

   o  "noDerivativeWorks2026"

   o  "none"

   o  "full3667"

   o  "noModification3667"

   o  "noDerivatives3667"

   o  "full3978"

   o  "noModification3978"

   o  "noDerivatives3978"

Hoffman                 Expires October 19, 2015               [Page 45]
Internet-Draft                  XML2RFCv3                     April 2015

   o  "trust200811"

   o  "noModificationTrust200811"

   o  "noDerivativesTrust200811"

   o  "trust200902"

   o  "noModificationTrust200902"

   o  "noDerivativesTrust200902"

   o  "pre5378Trust200902"

2.44.6.  'iprExtract' attribute

   Identifies a single section within the document for which extraction
   "as-is" is explicitly allowed (only relevant for historic values of
   the "ipr" attribute).

2.44.7.  'number' attribute

   Deprecated; instead, use the "value" attribute in <seriesInfo>.

2.44.8.  'obsoletes' attribute

   A comma-separated list of RFC numbers or Internet-Draft names.

   Processors ought to parse the attribute value, so that incorrect
   references can be detected and, depending on output representation,
   hyperlinks can be generated.  Also, the value ought to be reformatted
   to insert whitespace after each comma if not already present.

2.44.9.  'seriesNo' attribute

   Deprecated; instead, use the "value" attribute in <seriesInfo>.

2.44.10.  'sortRefs' attribute

   Specifies whether or not a processor will sort the references in each
   reference section.

   Allowed values:

   o  "true"

   o  "false"

Hoffman                 Expires October 19, 2015               [Page 46]
Internet-Draft                  XML2RFCv3                     April 2015

2.44.11.  'submissionType' attribute

   The document stream.

   See Section 2 of [RFC5741] for details.

   Allowed values:

   o  "IETF" (default)

   o  "IAB"

   o  "IRTF"

   o  "independent"

2.44.12.  'symRefs' attribute

   Specifies whether or not a processor will use symbolic references
   (such as "[RFC2119]").  If the value for this is "no", the references
   come out as numbers (such as "[3]").

   Allowed values:

   o  "true"

   o  "false"

2.44.13.  'tocDepth' attribute

   Specifies number of levels of heading for a processor to include in
   the table of contents; the default is "3".

2.44.14.  'tocInclude' attribute

   Specifies whether or not a processor will include a table of contents
   in generated files.

   Allowed values:

   o  "true"

   o  "false"

Hoffman                 Expires October 19, 2015               [Page 47]
Internet-Draft                  XML2RFCv3                     April 2015

2.44.15.  'updates' attribute

   A comma-separated list of RFC numbers or Internet-Draft names.

   Processors ought to parse the attribute value, so that incorrect
   references can be detected and, depending on output representation,
   hyperlinks can be generated.  Also, the value ought to be reformatted
   to insert whitespace after each comma if not already present.

2.45.  <section>

   Represents a section (when inside a <middle> element) or an appendix
   (when inside a <back> element).

   Sub-sections are created by nesting <section> elements inside
   <section> elements.  Sections are allowed to be empty.

   This element appears as a child element of: <back> (Section 2.8),
   <boilerplate> (Section 2.11), <middle> (Section 2.31), and <section>
   (Section 2.45).

   Content model:

   In this order:

   1.  One optional <name> element (Section 2.32)

   2.  In any order:

       *  <artwork> elements (Section 2.5)

       *  <aside> elements (Section 2.6)

       *  <blockquote> elements (Section 2.10)

       *  <dl> elements (Section 2.20)

       *  <figure> elements (Section 2.25)

       *  <iref> elements (Section 2.27)

       *  <ol> elements (Section 2.34)

       *  <sourcecode> elements (Section 2.47)

       *  <t> elements (Section 2.52)

Hoffman                 Expires October 19, 2015               [Page 48]
Internet-Draft                  XML2RFCv3                     April 2015

       *  <table> elements (Section 2.53)

       *  <texttable> elements (Section 3.8)

       *  <ul> elements (Section 2.62)

   3.  Optional <section> elements (Section 2.45)

2.45.1.  'anchor' attribute

   Document-wide unique identifier for this section.

2.45.2.  'numbered' attribute

   If set to "no", this section does not get a section number.
   Processors will verify that such a section is not followed by a
   numbered section in a part, and will verify that the section is a
   top-level section.

   Allowed values:

   o  "true"

   o  "false"

2.45.3.  'pn' attribute

   The number for this section, if one is generated by the processor.
   This attribute and its value are automatically generated by the RFC
   Processor, and are ignored by other processors.

2.45.4.  'removeInRFC' attribute

   If set to "yes", this section is marked in the processor with a
   paragraph at the beginning of the section indicating that it should
   be removed before the document is published as an RFC.

   Allowed values:

   o  "true"

   o  "false"

2.45.5.  'title' attribute

   Deprecated.  Use <name> instead.  Processors will flag sections that
   have no <name> element as errors because all sections need a name.

Hoffman                 Expires October 19, 2015               [Page 49]
Internet-Draft                  XML2RFCv3                     April 2015

2.45.6.  'toc' attribute

   Indicates to a processor whether or not the section is to be included
   in the table of contents.  This only takes effect if the level of the
   section would have appeared in the table of contents based on the
   "tocDepth" attribute of the <rfc> element, and of course only if the
   table of contents is being created based on the "tocInclude"
   attribute of the <rfc> element.  If this is set to "exclude", any
   section below this one will be excluded as well.  The "default" value
   indicates to include the section if it would be included by the
   tocDepth attribute of the <rfc> element.

   Allowed values:

   o  "include"

   o  "exclude"

   o  "default" (default)

2.46.  <seriesInfo>

   Specifies the document series in which this document appears, and
   also specifies an identifier within that series.

   A processor determines if it is working on an RFC or an Internet-
   Draft by inspecting the "name" attribute of a <seriesInfo> element
   inside the <front> element inside the <rfc> element, looking for
   "rfc" or "Internet-Draft".  (Specifying neither value in any of the
   <seriesInfo> elements can be useful for producing other types of
   documents, but is out-of-scope for this specification.)

   It is invalid to have multiple <seriesInfo> elements inside the
   <front> element inside the <rfc> element that have "name" values of
   "rfc", or that have "name" values of "Internet-Draft", or that have
   both "rfc" and "Internet-Draft".

   This element appears as a child element of: <front> (Section 2.26),
   and <reference> (Section 2.40; deprecated in this context).

   Content model: this element does not have any contents.

2.46.1.  'asciiName' attribute

   The ASCII equivalent of the name field.

Hoffman                 Expires October 19, 2015               [Page 50]
Internet-Draft                  XML2RFCv3                     April 2015

2.46.2.  'asciiValue' attribute

   The ASCII equivalent of the value field.

2.46.3.  'name' attribute (mandatory)

   The name of the series.

   Some of the values for "name" interact as follows:

   o  If a <front> element contains a <seriesInfo> element with a name
      of "Internet-Draft", it can also have at most one additional
      <seriesInfo> element with a name of "std", "bcp", "fyi", "exp", or
      "historic" to indicate the intended status of this Internet Draft,
      if it were to be later published as an RFC.  If such an additional
      <seriesInfo> element has one of those names, the value attribute
      for that name MUST be "".

   o  If a <front> element contains a <seriesInfo> element with a name
      of "rfc", it can also have at most one additional <seriesInfo>
      element with a name of "std", "bcp", or "fyi" to indicate the
      current status of this RFC.  If such an additional <seriesInfo>
      element has one of those names, the value attribute for that name
      MUST be the number within that series.  That <front> element might
      also contain an additional <seriesInfo> with the name "exp" or
      "historic" and a value of "" to indicate the status of the RFC.

   o  A <front> element that has a <seriesInfo> element that has the
      name "Internet-Draft" MUST NOT also have a <seriesInfo> element
      that has the name "rfc".

   o  The DOI for the referenced document.  This MUST NOT be used when
      <seriesInfo> element is an eventual child element of a <rfc>
      element, only as an enventual child of a <reference> element.  The
      value attribute should use the form specified in [DOI].

   Other values might be added at a later time by the RFC Editor.

2.46.4.  'value' attribute (mandatory)

   The identifier within the series specified by the "name" attribute.

   For BCPs, FYIs, RFCs, and STDs this is the number within the series.
   For Internet-Drafts, it is the full draft name (ending with the two-
   digit version number).  For DOIs, the value is given such as
   "10.123456/rfc1149", (the actual value will be specified later in
   [DOI]).

Hoffman                 Expires October 19, 2015               [Page 51]
Internet-Draft                  XML2RFCv3                     April 2015

   The name in the value should be the document name without any file
   extension.  For Internet Drafts, the value for this attribute should
   be "draft-ietf-somewg-someprotocol-07", not
   "draft-ietf-somewg-someprotocol-07.txt".

2.47.  <sourcecode>

   This element allows the inclusion of sourcecode into the document.

   <sourcecode> provides full control of horizontal whitespace and line
   breaks.  It is thus useful for source code and formal languages (such
   as ABNF or the RNC notation used in this document).  When rendered,
   sourcecode is always shown in a monospace font.

   For artwork such as character-based art, diagrams of message layouts,
   and so on, use the <artwork> element instead.

   A common problem authors have with <sourcecode> is that the XML
   processor returns errors if the text in the artwork contains either
   the "&" or "<" character, or the string "]]>".  To avoid these
   problems, the "&" and "<" characters may be escaped using the strings
   "&amp;" and "&lt;", respectively; the "]]>" string can be represented
   as "]]&gt;".  Alternatively, they may be surrounded in a CDATA
   structure: "<![CDATA[]]>".  For example:

   Desired output:
      allowed-chars = "." | "," | "&" | "<" | ">" | "|"

   Using escaping:
   <sourcecode>
      allowed-chars = "." | "," | "&amp;" | "&lt;" | "&gt;" | "|"
   </sourcecode>

   Using CDATA:
   <sourcecode>
   <![CDATA[   allowed-chars = "." | "," | "&" | "<" | ">" | "|"]]>
   </sourcecode>

   Using CDATA is not a panacea, but it does help prevent having to use
   escapes in places where using using escapes can cause other problems,
   such as difficulty of inclusion from other documents.

   Output formatters that do pagination should attempt to keep source
   code on a single page.  This is to prevent source code that is split
   across pages from looking like two separate pieces of code.

   This element appears as a child element of: <blockquote>
   (Section 2.10), <dd> (Section 2.18), <figure> (Section 2.25), <li>

Hoffman                 Expires October 19, 2015               [Page 52]
Internet-Draft                  XML2RFCv3                     April 2015

   (Section 2.29), <section> (Section 2.45), <td> (Section 2.55), and
   <th> (Section 2.57).

   Content model: only text content.

2.47.1.  'anchor' attribute

   Document-wide unique identifier for this sourcecode.

2.47.2.  'name' attribute

   A filename suitable for the contents (such as for extraction to a
   local file).  This attribute can be helpful for other kinds of tools
   (such as automated syntax checkers which work by extracting the
   source code).  Note that the "name" attribute does not need to be
   unique for artwork elements in a document.  If multiple sourcecode
   elements have the same name attribute, a processor might assume that
   the elements are all fragments of a single file, and the processor
   can collect those fragments for later processing.

2.47.3.  'pn' attribute

   The number for this sourceode within the section.  The numbering is
   shared with other elements of a section.  This is described in more
   detail in Appendix B.2.

2.47.4.  'src' attribute

   The URI reference of a source file ([RFC3986]).

2.47.5.  'type' attribute

   Specifies the type of the sourcecode.  The value of this attribute is
   free text with certain values designated as preferred.  A private
   processor (as described in Appendix B) might add type-specific
   formatting to sourcecode with the preferred values.  If a processor
   encounters a value for "type" that is not one of the preferred
   values, it can issue a warning but should still use the artwork as if
   it had no "type" attribute.

   The preferred values for <sourcecode> types are:

   o  abnf

   o  asn.1

   o  bash

Hoffman                 Expires October 19, 2015               [Page 53]
Internet-Draft                  XML2RFCv3                     April 2015

   o  c++

   o  c

   o  cbor

   o  dtd

   o  java

   o  javascript

   o  json

   o  mib

   o  perl

   o  pseudocode

   o  python

   o  rnc

   o  xml

   The RFC Editor will maintain a complete list of the preferred values
   on its web site, and that list is expected to be updated over time.
   Thus, a consumer of v3 XML should not cause a failure when it
   encounters an unexpected type.

2.48.  <street>

   Provides a street address.

   This element appears as a child element of: <postal> (Section 2.37).

   Content model: only text content.

2.48.1.  'ascii' attribute

   The ASCII equivalent of the street address.

2.49.  <strong>

   Indicates text that is semantically strong.  This element will be
   displayed as bold after processing.  This element can be combined
   with other character formatting elements, and the formatting will be

Hoffman                 Expires October 19, 2015               [Page 54]
Internet-Draft                  XML2RFCv3                     April 2015

   additive.

   This element appears as a child element of: <annotation>
   (Section 2.3), <blockquote> (Section 2.10), <c> (Section 3.1), <cref>
   (Section 2.16), <dd> (Section 2.18), <dt> (Section 2.21), <em>
   (Section 2.22), <li> (Section 2.29), <postamble> (Section 3.5),
   <preamble> (Section 3.6), <refcontent> (Section 2.39), <sub>
   (Section 2.50), <sup> (Section 2.51), <t> (Section 2.52), <td>
   (Section 2.55), <th> (Section 2.57), and <tt> (Section 2.61).

   Content model:

   In any order:

   o  Text

   o  <bcp14> elements (Section 2.9)

   o  <cref> elements (Section 2.16)

   o  <em> elements (Section 2.22)

   o  <eref> elements (Section 2.24)

   o  <iref> elements (Section 2.27)

   o  <sub> elements (Section 2.50)

   o  <sup> elements (Section 2.51)

   o  <tt> elements (Section 2.61)

   o  <xref> elements (Section 2.65)

2.50.  <sub>

   Causes the text to be displayed as subscript, approximately half a
   letter-height lower than normal text.  This element can be combined
   with other character formatting elements, and the formatting will be
   additive.

   This element appears as a child element of: <annotation>
   (Section 2.3), <blockquote> (Section 2.10), <c> (Section 3.1), <cref>
   (Section 2.16), <dd> (Section 2.18), <dt> (Section 2.21), <em>
   (Section 2.22), <li> (Section 2.29), <postamble> (Section 3.5),
   <preamble> (Section 3.6), <refcontent> (Section 2.39), <strong>
   (Section 2.49), <t> (Section 2.52), <td> (Section 2.55), <th>
   (Section 2.57), and <tt> (Section 2.61).

Hoffman                 Expires October 19, 2015               [Page 55]
Internet-Draft                  XML2RFCv3                     April 2015

   Content model:

   In any order:

   o  Text

   o  <bcp14> elements (Section 2.9)

   o  <cref> elements (Section 2.16)

   o  <em> elements (Section 2.22)

   o  <eref> elements (Section 2.24)

   o  <iref> elements (Section 2.27)

   o  <strong> elements (Section 2.49)

   o  <tt> elements (Section 2.61)

   o  <xref> elements (Section 2.65)

2.51.  <sup>

   Causes the text to be displayed as superscript, approximately half a
   letter-height higher than normal text.  This element can be combined
   with other character formatting elements, and the formatting will be
   additive.

   This element appears as a child element of: <annotation>
   (Section 2.3), <blockquote> (Section 2.10), <c> (Section 3.1), <cref>
   (Section 2.16), <dd> (Section 2.18), <dt> (Section 2.21), <em>
   (Section 2.22), <li> (Section 2.29), <postamble> (Section 3.5),
   <preamble> (Section 3.6), <refcontent> (Section 2.39), <strong>
   (Section 2.49), <t> (Section 2.52), <td> (Section 2.55), <th>
   (Section 2.57), and <tt> (Section 2.61).

   Content model:

   In any order:

   o  Text

   o  <bcp14> elements (Section 2.9)

   o  <cref> elements (Section 2.16)

Hoffman                 Expires October 19, 2015               [Page 56]
Internet-Draft                  XML2RFCv3                     April 2015

   o  <em> elements (Section 2.22)

   o  <eref> elements (Section 2.24)

   o  <iref> elements (Section 2.27)

   o  <strong> elements (Section 2.49)

   o  <tt> elements (Section 2.61)

   o  <xref> elements (Section 2.65)

2.52.  <t>

   Contains a paragraph of text.

   This element appears as a child element of: <abstract> (Section 2.1),
   <aside> (Section 2.6), <blockquote> (Section 2.10), <dd>
   (Section 2.18), <li> (Section 2.29), <list> (Section 3.4), <note>
   (Section 2.33), <section> (Section 2.45), <td> (Section 2.55), and
   <th> (Section 2.57).

   Content model:

   In any order:

   o  Text

   o  <bcp14> elements (Section 2.9)

   o  <cref> elements (Section 2.16)

   o  <em> elements (Section 2.22)

   o  <eref> elements (Section 2.24)

   o  <iref> elements (Section 2.27)

   o  <list> elements (Section 3.4)

   o  <spanx> elements (Section 3.7)

   o  <strong> elements (Section 2.49)

   o  <sub> elements (Section 2.50)

   o  <sup> elements (Section 2.51)

Hoffman                 Expires October 19, 2015               [Page 57]
Internet-Draft                  XML2RFCv3                     April 2015

   o  <tt> elements (Section 2.61)

   o  <vspace> elements (Section 3.10)

   o  <xref> elements (Section 2.65)

2.52.1.  'anchor' attribute

   Document-wide unique identifier for this paragraph.

2.52.2.  'hangText' attribute

   Deprecated.  Instead use <dd> inside of a definition list (<dl>).

2.52.3.  'keepWithNext' attribute

   Acts as a hint to the output formatters that do pagination to do a
   best effort attempt to keep the paragraph with the next element,
   whatever that happens to be.  For example, the HTML output @media
   print CSS might translate this to page-break-after: avoid.  For PDF,
   the paginator could attempt to keep the paragraph with the next
   element.  Note: this attribute is strictly a hint and not always
   actionable.

   Allowed values:

   o  "false" (default)

   o  "true"

2.52.4.  'keepWithPrevious' attribute

   Acts as a hint to the output formatters that do pagination to do a
   best effort attempt to keep the paragraph with the previous element,
   whatever that happens to be.  For example, the HTML output @media
   print CSS might translate this to page-break-before: avoid.  For PDF,
   the paginator could attempt to keep the paragraph with the previous
   element.  Note: this attribute is strictly a hint and not always
   actionable.

   Allowed values:

   o  "false" (default)

   o  "true"

Hoffman                 Expires October 19, 2015               [Page 58]
Internet-Draft                  XML2RFCv3                     April 2015

2.52.5.  'pn' attribute

   The number for this paragraph within the section.  The numbering is
   shared with other elements of a section.  This is described in more
   detail in Appendix B.2.

2.53.  <table>

   Contains a table with a caption with the table number.  If the
   element contains a <name> element, the caption will also show that
   name.

   Insde the <table> element is optionlly a <thead> element to contain
   the rows that will be the table's heading and optionally a <tfoot>
   element to contain the rows of the table's footer.  If the XML is
   converted to a representation that has page breaks (such as PDFs, or
   printed HTML), the header and footer are meant to appear on each
   page.

   This element appears as a child element of: <aside> (Section 2.6),
   and <section> (Section 2.45).

   Content model:

   In this order:

   1.  One optional <name> element (Section 2.32)

   2.  Optional <iref> elements (Section 2.27)

   3.  One optional <thead> element (Section 2.58)

   4.  One or more <tbody> elements (Section 2.54)

   5.  One optional <tfoot> element (Section 2.56)

2.53.1.  'anchor' attribute

   Document-wide unique identifier for this table.

2.53.2.  'pn' attribute

   The number for this table.  This attribute and its value are
   automatically generated by the RFC Processor.

Hoffman                 Expires October 19, 2015               [Page 59]
Internet-Draft                  XML2RFCv3                     April 2015

2.54.  <tbody>

   A container for a set of body rows for a table.

   This element appears as a child element of: <table> (Section 2.53).

   Content model:

   One or more <tr> elements (Section 2.60)

2.55.  <td>

   A cell in a table row.

   This element appears as a child element of: <tr> (Section 2.60).

   Content model:

   Either:

      One or more <t> elements (Section 2.52)

   Or:

      In any order, but at least one of:

      *  Text

      *  <artwork> elements (Section 2.5)

      *  <bcp14> elements (Section 2.9)

      *  <br> elements (Section 2.12)

      *  <cref> elements (Section 2.16)

      *  <dl> elements (Section 2.20)

      *  <em> elements (Section 2.22)

      *  <eref> elements (Section 2.24)

      *  <figure> elements (Section 2.25)

      *  <iref> elements (Section 2.27)

      *  <ol> elements (Section 2.34)

Hoffman                 Expires October 19, 2015               [Page 60]
Internet-Draft                  XML2RFCv3                     April 2015

      *  <sourcecode> elements (Section 2.47)

      *  <strong> elements (Section 2.49)

      *  <sub> elements (Section 2.50)

      *  <sup> elements (Section 2.51)

      *  <tt> elements (Section 2.61)

      *  <ul> elements (Section 2.62)

      *  <xref> elements (Section 2.65)

2.55.1.  'align' attribute

   Controls whether the content of the cell appears left justified
   (default), centered, or right justified.  Note that "center" or
   "right" probably only work well in cells with plain text; any other
   elements might make the contents render badly.

   Allowed values:

   o  "left" (default)

   o  "center"

   o  "right"

2.55.2.  'border' attribute

   The width of the border for this cell.  The default is 0, meaning no
   border.

2.55.3.  'colspan' attribute

   The number of columns that the cell to span.  For example, setting
   "colspan='3'" indicates that the cell occupies the same horizontal
   space as three cells in the row above or below this one.

2.55.4.  'rowspan' attribute

   The number of rows that the cell to span.  For example, setting
   "rowspan='3'" indicates that the cell occupies the same vertical
   space as three rows.

Hoffman                 Expires October 19, 2015               [Page 61]
Internet-Draft                  XML2RFCv3                     April 2015

2.56.  <tfoot>

   A container for a set of footer rows for a table.

   This element appears as a child element of: <table> (Section 2.53).

   Content model:

   One or more <tr> elements (Section 2.60)

2.57.  <th>

   A cell in a table row.  When rendered, this will normally come out in
   boldface; other than that, there is no difference between this and
   the <td> element.

   This element appears as a child element of: <tr> (Section 2.60).

   Content model:

   Either:

      One or more <t> elements (Section 2.52)

   Or:

      In any order, but at least one of:

      *  Text

      *  <artwork> elements (Section 2.5)

      *  <bcp14> elements (Section 2.9)

      *  <br> elements (Section 2.12)

      *  <cref> elements (Section 2.16)

      *  <dl> elements (Section 2.20)

      *  <em> elements (Section 2.22)

      *  <eref> elements (Section 2.24)

      *  <figure> elements (Section 2.25)

      *  <iref> elements (Section 2.27)

Hoffman                 Expires October 19, 2015               [Page 62]
Internet-Draft                  XML2RFCv3                     April 2015

      *  <ol> elements (Section 2.34)

      *  <sourcecode> elements (Section 2.47)

      *  <strong> elements (Section 2.49)

      *  <sub> elements (Section 2.50)

      *  <sup> elements (Section 2.51)

      *  <tt> elements (Section 2.61)

      *  <ul> elements (Section 2.62)

      *  <xref> elements (Section 2.65)

2.57.1.  'align' attribute

   Controls whether the content of the cell appears left justified
   (default), centered, or right justified.  Note that "center" or
   "right" probably only work well in cells with plain text; any other
   elements might make the contents render badly.

   Allowed values:

   o  "left" (default)

   o  "center"

   o  "right"

2.57.2.  'border' attribute

   The width of the border for this cell.  The default is 0, meaning no
   border.

2.57.3.  'colspan' attribute

   The number of columns that the cell to span.  For example, setting
   "colspan='3'" indicates that the cell occupies the same horizontal
   space as three cells in the row above or below this one.

2.57.4.  'rowspan' attribute

   The number of rows that the cell to span.  For example, setting
   "rowspan='3'" indicates that the cell occupies the same vertical
   space as three rows.

Hoffman                 Expires October 19, 2015               [Page 63]
Internet-Draft                  XML2RFCv3                     April 2015

2.58.  <thead>

   A container for a set of header rows for a table.

   This element appears as a child element of: <table> (Section 2.53).

   Content model:

   One or more <tr> elements (Section 2.60)

2.59.  <title>

   Represents the document title.

   When this element appears in the <front> element of the current
   document, the title might also appear in page headers or footers.  If
   it is long (~40 characters), the "abbrev" attribute is used to
   specify an abbreviated variant.

   This element appears as a child element of: <front> (Section 2.26).

   Content model: only text content.

2.59.1.  'abbrev' attribute

   Specifies an abbreviated variant of the document title.

2.59.2.  'ascii' attribute

   The ASCII equivalent of the title.

2.60.  <tr>

   A row of a table.

   This element appears as a child element of: <tbody> (Section 2.54),
   <tfoot> (Section 2.56), and <thead> (Section 2.58).

   Content model:

   In any order, but at least one of:

   o  <td> elements (Section 2.55)

   o  <th> elements (Section 2.57)

Hoffman                 Expires October 19, 2015               [Page 64]
Internet-Draft                  XML2RFCv3                     April 2015

2.60.1.  'border' attribute

   The width of the border for this row.  The default is 0, meaning no
   border.  If the cells in this row also have "border" attributes,
   those values override this value for those cells.

2.61.  <tt>

   Causes the text to be displayed in a constant-width font.  This
   element can be combined with other character formatting elements, and
   the formatting will be additive.

   This element appears as a child element of: <annotation>
   (Section 2.3), <blockquote> (Section 2.10), <c> (Section 3.1), <cref>
   (Section 2.16), <dd> (Section 2.18), <dt> (Section 2.21), <em>
   (Section 2.22), <li> (Section 2.29), <name> (Section 2.32),
   <postamble> (Section 3.5), <preamble> (Section 3.6), <refcontent>
   (Section 2.39), <strong> (Section 2.49), <sub> (Section 2.50), <sup>
   (Section 2.51), <t> (Section 2.52), <td> (Section 2.55), and <th>
   (Section 2.57).

   Content model:

   In any order:

   o  Text

   o  <bcp14> elements (Section 2.9)

   o  <cref> elements (Section 2.16)

   o  <em> elements (Section 2.22)

   o  <eref> elements (Section 2.24)

   o  <iref> elements (Section 2.27)

   o  <strong> elements (Section 2.49)

   o  <sub> elements (Section 2.50)

   o  <sup> elements (Section 2.51)

   o  <xref> elements (Section 2.65)

Hoffman                 Expires October 19, 2015               [Page 65]
Internet-Draft                  XML2RFCv3                     April 2015

2.62.  <ul>

   An unordered list.  The labels on the items will be symbols picked by
   the processor.

   This element appears as a child element of: <abstract> (Section 2.1),
   <aside> (Section 2.6), <blockquote> (Section 2.10), <dd>
   (Section 2.18), <li> (Section 2.29), <note> (Section 2.33), <section>
   (Section 2.45), <td> (Section 2.55), and <th> (Section 2.57).

   Content model:

   One or more <li> elements (Section 2.29)

2.62.1.  'empty' attribute

   Defines whether or not the label is empty. empty="true" indicates
   that no label be shown.

   Allowed values:

   o  "false" (default)

   o  "true"

2.62.2.  'spacing' attribute

   Defines whether or not there is a blank line between entries.
   spacing="normal" indicates a single blank line, while
   spacing="compact" indicates no space between.

   Allowed values:

   o  "normal" (default)

   o  "compact"

2.63.  <uri>

   Contains a web address associated with the author.

   The contents should be a valid URI (see Section 3 of [RFC3986]).

   This element appears as a child element of: <address> (Section 2.2).

   Content model: only text content.

Hoffman                 Expires October 19, 2015               [Page 66]
Internet-Draft                  XML2RFCv3                     April 2015

2.64.  <workgroup>

   This element is used to specify the Working Group (IETF) or Research
   Group (IRTF) from which the document originates, if any.  The
   recommended format is the official name of the Working Group (with
   some capitalization).

   In Internet-Drafts, this is used in the upper left corner of the
   boilerplate, replacing the "Network Working Group" string.
   Formatting software can append the words "Working Group" or "Research
   Group", depending on the "submissionType" property on the <rfc>
   element (Section 2.44.11).

   This element appears as a child element of: <front> (Section 2.26).

   Content model: only text content.

2.65.  <xref>

   Inserts a reference to a different part of a document.

   The generated text depends on whether the <xref> is empty (in which
   case the processor will try to generate a meaningful text fragment),
   and the nature of the referenced document part.

   If the element is empty, a converter must invent text to show for the
   reference.  If the element is filled in and the format being
   converted to supports links, the text from the element is surrounded
   by a link to the reference.

   Any element that allows the "anchor" attribute can be referenced;
   however, there are restrictions with respect to the text content
   being generated.  For instance, a <t> can be a reference target,
   however, because paragraphs are not (visibly) numbered, the author
   will have to make sure that the prose is sufficient for a reader to
   understand what is being referred to.

   This element appears as a child element of: <annotation>
   (Section 2.3), <blockquote> (Section 2.10), <c> (Section 3.1), <cref>
   (Section 2.16), <dd> (Section 2.18), <dt> (Section 2.21), <em>
   (Section 2.22), <li> (Section 2.29), <name> (Section 2.32),
   <postamble> (Section 3.5), <preamble> (Section 3.6), <strong>
   (Section 2.49), <sub> (Section 2.50), <sup> (Section 2.51), <t>
   (Section 2.52), <td> (Section 2.55), <th> (Section 2.57), <tt>
   (Section 2.61), and <ttcol> (Section 3.9).

   Content model: only text content.

Hoffman                 Expires October 19, 2015               [Page 67]
Internet-Draft                  XML2RFCv3                     April 2015

2.65.1.  'format' attribute

   This attribute is used to control the format of the generated
   reference text.

   "counter"

      Inserts just a counter; this is used for the number of a section,
      figure, or table.  For example:

     <section anchor="overview">Protocol Overview</section>
     . . .
     See Section <xref target="overview" format="counter"/>
     for an overview.

      might generate

     See Section 1.7 for an overview.

   "default"

      Inserts a text fragment that describes the referenced part
      completely, such as "Section 2" or "Table 4" for internal links,
      or "[XML]" for links to references.  For example:

     <section anchor="overview">Protocol Overview</section>
     . . .
     See <xref target="overview"/> for an overview.

      might generate

     See Section 1.7 for an overview.

   "none"

      There will be no auto-generated text.  This is useful for creating
      a link that will appear in the processed text.

   "title"

      Inserts a title for the referenced element (usually obtained from
      the referenced element's <name> child element.  If the target is a
      reference, then the <title> element inside the <front> element is
      used.

   Allowed values:

Hoffman                 Expires October 19, 2015               [Page 68]
Internet-Draft                  XML2RFCv3                     April 2015

   o  "counter"

   o  "title"

   o  "none"

   o  "default" (default)

2.65.2.  'pageno' attribute

   Deprecated.

   Allowed values:

   o  "true"

   o  "false" (default)

2.65.3.  'relative' attribute

   Specifies a relative reference from the main target.  Rendering
   relative references is based on the format for the converted
   document.

2.65.4.  'section' attribute

   Specifies a section for the generated reference.  For example,

        See <xref section="2.3" target="RFC6949"/> for more information.

   would generate

        See Section 2.3 of [RFC6949] for more information.

2.65.5.  'sectionFormat' attribute

   The format that the section reference will be displayed in.  The
   acceptable values are:

   o  "of" (default)

   o  "comma"

   o  "parens"

   o  "section"

Hoffman                 Expires October 19, 2015               [Page 69]
Internet-Draft                  XML2RFCv3                     April 2015

   o  "number-only"

   For example:

     See <xref target="RFC6949" section="2.3" sectionFormat="of"/>
     for more information.

     See <xref target="RFC6949" section="2.4" sectionFormat="comma"/>
     for more information.

     See <xref target="RFC6949" section="2.5" sectionFormat="parens"/>
     for more information.

     See <xref target="RFC6949" section="2.6" sectionFormat="section"/>
     of that document for more information.

     See Sections <xref target="RFC6949" section="2.7"
     sectionFormat="number-only"/> and <xref target="RFC6949"
     section="2.8" sectionFormat="number-only"/> of that
     document for more information.

   would generate

      See Section 2.3 of [RFC6949] for more information.

      See [RFC6949], Section 2.4 for more information.

      See [RFC6949] (Section 2.5) for more information.

      See Section 2.6 of that document for more information.

      See Sections 2.7 and 2.8 of that document for more information.

2.65.6.  'target' attribute (mandatory)

   Identifies the document component being referenced.

   The value needs to match the value of the "anchor" attribute of
   another element in the document.

2.66.  <svg> (in namespace http://www.w3.org/2000/svg)

   This element holds SVG art.  The use of SVG in Internet Drafts and
   RFCs is covered in much more detail in [SVGforRFCs].

   This element appears as a child element of: <artwork> (Section 2.5).

   Content model: any elements.

Hoffman                 Expires October 19, 2015               [Page 70]
Internet-Draft                  XML2RFCv3                     April 2015

3.  Elements from v2 That Have Been Deprecated

   This section lists the elements from v2 that have been deprecated.
   Note that some elements in v3 have attributes from v2 that are
   deprecated; those are not listed here.

3.1.  <c>

   Deprecated.  Instead, use <tr>, <td>, and <th>.

   This element appears as a child element of: <texttable>
   (Section 3.8).

   Content model:

   In any order:

   o  Text

   o  <bcp14> elements (Section 2.9)

   o  <cref> elements (Section 2.16)

   o  <em> elements (Section 2.22)

   o  <eref> elements (Section 2.24)

   o  <iref> elements (Section 2.27)

   o  <spanx> elements (Section 3.7)

   o  <strong> elements (Section 2.49)

   o  <sub> elements (Section 2.50)

   o  <sup> elements (Section 2.51)

   o  <tt> elements (Section 2.61)

   o  <xref> elements (Section 2.65)

3.2.  <facsimile>

   Deprecated.  The <email> element is a much more useful way to get in
   touch with authors.

   This element appears as a child element of: <address> (Section 2.2).

Hoffman                 Expires October 19, 2015               [Page 71]
Internet-Draft                  XML2RFCv3                     April 2015

   Content model: only text content.

3.3.  <format>

   Deprecated.  If the goal is to provide a single URI for a reference,
   use the "target" attribute on <reference> instead.

   This element appears as a child element of: <reference>
   (Section 2.40).

   Content model: this element does not have any contents.

3.3.1.  'octets' attribute

   Deprecated.

3.3.2.  'target' attribute

   Deprecated.

3.3.3.  'type' attribute (mandatory)

   Deprecated.

3.4.  <list>

   Deprecated.  Instead, use <dl> for list/@style "hanging"; <ul> for
   list/@style "empty" or "symbols"; and <ol> for list/@style "letters",
   "numbers", "counter", or "format".

   This element appears as a child element of: <t> (Section 2.52).

   Content model:

   One or more <t> elements (Section 2.52)

3.4.1.  'counter' attribute

   Deprecated.  The functionality of this attribute has been replaced
   with <ol>/@start.

3.4.2.  'hangIndent' attribute

   Deprecated.  Use <dl> instead.

Hoffman                 Expires October 19, 2015               [Page 72]
Internet-Draft                  XML2RFCv3                     April 2015

3.4.3.  'style' attribute

   Deprecated.

3.5.  <postamble>

   Deprecated.  Instead, use a regular paragraph after the figure or
   table.

   This element appears as a child element of: <figure> (Section 2.25),
   and <texttable> (Section 3.8).

   Content model:

   In any order:

   o  Text

   o  <bcp14> elements (Section 2.9)

   o  <cref> elements (Section 2.16)

   o  <em> elements (Section 2.22)

   o  <eref> elements (Section 2.24)

   o  <iref> elements (Section 2.27)

   o  <spanx> elements (Section 3.7)

   o  <strong> elements (Section 2.49)

   o  <sub> elements (Section 2.50)

   o  <sup> elements (Section 2.51)

   o  <tt> elements (Section 2.61)

   o  <xref> elements (Section 2.65)

3.6.  <preamble>

   Deprecated.  Instead, use a regular paragraph before the figure or
   table.

   This element appears as a child element of: <figure> (Section 2.25),
   and <texttable> (Section 3.8).

Hoffman                 Expires October 19, 2015               [Page 73]
Internet-Draft                  XML2RFCv3                     April 2015

   Content model:

   In any order:

   o  Text

   o  <bcp14> elements (Section 2.9)

   o  <cref> elements (Section 2.16)

   o  <em> elements (Section 2.22)

   o  <eref> elements (Section 2.24)

   o  <iref> elements (Section 2.27)

   o  <spanx> elements (Section 3.7)

   o  <strong> elements (Section 2.49)

   o  <sub> elements (Section 2.50)

   o  <sup> elements (Section 2.51)

   o  <tt> elements (Section 2.61)

   o  <xref> elements (Section 2.65)

3.7.  <spanx>

   Deprecated.

   This element appears as a child element of: <annotation>
   (Section 2.3), <c> (Section 3.1), <postamble> (Section 3.5),
   <preamble> (Section 3.6), and <t> (Section 2.52).

   Content model: only text content.

3.7.1.  'style' attribute

   Deprecated.  Instead of <spanx style="emph">, use <em>; instead of
   <spanx style="strong">, use <strong>; instead of <spanx
   style="verb">, use <tt>.

3.7.2.  'xml:space' attribute

   Deprecated.

Hoffman                 Expires October 19, 2015               [Page 74]
Internet-Draft                  XML2RFCv3                     April 2015

   Allowed values:

   o  "default"

   o  "preserve" (default)

3.8.  <texttable>

   Deprecated.  Use <table> instead.

   This element appears as a child element of: <aside> (Section 2.6),
   and <section> (Section 2.45).

   Content model:

   In this order:

   1.  One optional <name> element (Section 2.32)

   2.  One optional <preamble> element (Section 3.6)

   3.  One or more <ttcol> elements (Section 3.9)

   4.  Optional <c> elements (Section 3.1)

   5.  One optional <postamble> element (Section 3.5)

3.8.1.  'align' attribute

   Deprecated

   Allowed values:

   o  "left"

   o  "center" (default)

   o  "right"

3.8.2.  'anchor' attribute

   Deprecated

3.8.3.  'style' attribute

   Deprecated.

Hoffman                 Expires October 19, 2015               [Page 75]
Internet-Draft                  XML2RFCv3                     April 2015

3.8.4.  'suppress-title' attribute

   Deprecated.

   Allowed values:

   o  "true"

   o  "false" (default)

3.8.5.  'title' attribute

   Deprecated.

3.9.  <ttcol>

   Deprecated.  Instead, use <tr>, <td>, and <th>.

   This element appears as a child element of: <texttable>
   (Section 3.8).

   Content model:

   In any order:

   o  <cref> elements (Section 2.16)

   o  <eref> elements (Section 2.24)

   o  <iref> elements (Section 2.27)

   o  <xref> elements (Section 2.65)

   o  Text

3.9.1.  'align' attribute

   Deprecated.

   Allowed values:

   o  "left" (default)

   o  "center"

   o  "right"

Hoffman                 Expires October 19, 2015               [Page 76]
Internet-Draft                  XML2RFCv3                     April 2015

3.9.2.  'width' attribute

   Deprecated.

3.10.  <vspace>

   Deprecated.  In earlier versions of this format, <vspace> was often
   used to get an extra blank line in a list element; in the v3
   vocabulary, that can be done instead by using multiple <t> elements
   inside the <li> element.  Other uses have no direct replacement.

   This element appears as a child element of: <t> (Section 2.52).

   Content model: this element does not have any contents.

3.10.1.  'blankLines' attribute

   Deprecated.

4.  Internationalization Considerations

   This format is based on [XML], thus does not have any issues
   representing arbitrary Unicode [UNICODE] characters in text content.
   The RFC Editor may restrict some of the characters that can be used
   in a particular RFC; the rules for such restrictions are covered in
   [NONASCII].

5.  Security Considerations

   The "name" attribute on the <artwork> element (Section 2.5.5) can be
   used to derive a filename for saving to a local file system.
   Trusting this kind of information without pre-processing is a known
   security risk; see Section 4.3 of [RFC6266] for more information.

   The "src" attribute on the <artwork> element can be used to read
   files from the local system.  Processors must be careful to not
   accept dangerous values for the filename, particularly those that
   contain absolute references outside the current directory.

   The "type" attribute of the <artwork> and <sourcecode> elements is
   meant to encourage processors to automatically extract known types of
   content from an RFC or Internet Draft.  While extraction is probably
   safe, those processors might also think that they could further
   process the extracted content such as by rendering artwork or
   executing code.  Doing so without first sanity-checking the extracted
   content is clearly a terrible idea from a security perspective.  More
   generally, a processor that is reading RFCs or Internet Drafts needs
   to be suspicious of any content that it intends to post-process.

Hoffman                 Expires October 19, 2015               [Page 77]
Internet-Draft                  XML2RFCv3                     April 2015

   All security considerations related to XML processing are relevant as
   well (see Section 7 of [RFC3470]).

6.  IANA Considerations

6.1.  Internet Media Type Registration

   IANA maintains the registry of Internet media types [BCP13] at
   <http://www.iana.org/assignments/media-types>.

   This document updates the specification for the Internet media type
   "application/rfc+xml" from the one in [XML2RFCv2].  The following is
   to be registered with IANA.

   Type name:  application

   Subtype name:  rfc+xml

   Required parameters:  There are no required parameters.

   Optional parameters:  "charset": This parameter has identical
      semantics as the charset parameter of the "application/xml" media
      type specified in Section 9.1 of [RFC7303].

   Encoding considerations:  Identical to those of "application/xml" as
      described in Section 9.1 of [RFC7303].

   Security considerations:  As defined in Section 5.  In addition, as
      this media type uses the "+xml" convention, it inherits the
      security considerations described in Section 10 of [RFC7303].

   Interoperability considerations:  N/A

   Published specification:  This specification.

   Applications that use this media type:  Applications that transform
      xml2rfc to output representations such as plain text or HTML, plus
      additional analysis tools.

   Fragment identifier considerations:  The "anchor" attribute is used
      for assigning document-wide unique identifiers that can be used as
      shorthand pointers, as described in Section 2.8 of [XPOINTER].

   Additional information:

Hoffman                 Expires October 19, 2015               [Page 78]
Internet-Draft                  XML2RFCv3                     April 2015

      Deprecated alias names for this type:  None.

      Magic number(s):  As specified for "application/xml" in Section
         9.1 of [RFC7303].

      File extension(s):  .xml or .rfcxml when disambiguation from other
         XML files is needed

      Macintosh file type code(s):  TEXT

   Person & email address to contact for further information:  See
      Authors Section.

   Intended usage:  COMMON

   Restrictions on usage:  N/A

   Author:  See Authors Section.

   Change controller:  RFC Series Editor (rse@rfc-editor.org)

6.2.  Link Relation Registration

   The following is a proposed addition to [LINKRELATIONS].

   Relation Name: convertedFrom

   Description: The document linked to was later converted to the
   document that contains this link relation.  For example, an RFC can
   have a link to the Internet Draft that became the RFC; in that case,
   the link relation would be "convertedFrom".

   Reference: This document.

   Notes: This relation is different than "predecessor-version" in that
   "predecessor-version" is for items in a version control system.  It
   is also different that "previous" in that this relation is used for
   converted resources, not those that are part of a sequence of
   resources.

   Application Data: none

7.  Acknowledgments

   Thanks to everybody who reviewed this document and provided feedback
   and/or specification text.  Thanks especially go to Julian Reschke
   for editing [XML2RFCv2] and those who provided feedback on that
   document.

Hoffman                 Expires October 19, 2015               [Page 79]
Internet-Draft                  XML2RFCv3                     April 2015

   We also thank Marshall T. Rose for both the original design and the
   reference implementation of the "xml2rfc" processor.

8.  References

8.1.  Normative References

   [XML]            Maler, E., Yergeau, F., Paoli, J., Sperberg-McQueen,
                    M., and T. Bray, "Extensible Markup Language (XML)
                    1.0 (Fifth Edition)", W3C Recommendation REC-xml-
                    20081126, November 2008,
                    <http://www.w3.org/TR/2008/REC-xml-20081126/>.

                    Latest version available at
                    <http://www.w3.org/TR/xml>.

   [XML2RFCv2]      Reschke, J., "The 'XML2RFC' version 2 Vocabulary",
                    draft-iab-xml2rfc (work in progress), 2014.

8.2.  Informative References

   [BCP13]          Freed, N., Klensin, J., and T. Hansen, "Media Type
                    Specifications and Registration Procedures", BCP 13,
                    RFC 6838, January 2013,
                    <http://www.rfc-editor.org/info/rfc6838>.

   [DOI]            Levine, J., "Assigning Digital Object Identifiers to
                    RFCs", draft-iab-doi (work in progress), 2014.

   [IDGUIDE]        Housley, R., "Guidelines to Authors of Internet-
                    Drafts",
                    <http://www.ietf.org/id-info/guidelines.html>.

   [LINKRELATIONS]  IANA, "Link Relations", <http://www.iana.org/
                    assignments/link-relations/link-relations.xhtml>.

   [NONASCII]       Flanagan, H., "The Use of Non-ASCII Characters in
                    RFCs", draft-flanagan-nonascii (work in progress),
                    2014.

   [RFC2026]        Bradner, S., "The Internet Standards Process --
                    Revision 3", BCP 9, RFC 2026, October 1996,
                    <http://www.rfc-editor.org/info/rfc2026>.

   [RFC2397]        Masinter, L., "The "data" URL scheme", RFC 2397,
                    August 1998,
                    <http://www.rfc-editor.org/info/rfc2397>.

Hoffman                 Expires October 19, 2015               [Page 80]
Internet-Draft                  XML2RFCv3                     April 2015

   [RFC2629]        Rose, M., "Writing I-Ds and RFCs using XML",
                    RFC 2629, June 1999,
                    <http://www.rfc-editor.org/info/rfc2629>.

   [RFC3339]        Klyne, G., Ed. and C. Newman, "Date and Time on the
                    Internet: Timestamps", RFC 3339, July 2002,
                    <http://www.rfc-editor.org/info/rfc3339>.

   [RFC3470]        Hollenbeck, S., Rose, M., and L. Masinter,
                    "Guidelines for the Use of Extensible Markup
                    Language (XML) within IETF Protocols", BCP 70,
                    RFC 3470, January 2003,
                    <http://www.rfc-editor.org/info/rfc3470>.

   [RFC3667]        Bradner, S., "IETF Rights in Contributions",
                    RFC 3667, February 2004,
                    <http://www.rfc-editor.org/info/rfc3667>.

   [RFC3966]        Schulzrinne, H., "The tel URI for Telephone
                    Numbers", RFC 3966, December 2004,
                    <http://www.rfc-editor.org/info/rfc3966>.

   [RFC3978]        Bradner, S., "IETF Rights in Contributions",
                    RFC 3978, March 2005,
                    <http://www.rfc-editor.org/info/rfc3978>.

   [RFC3986]        Berners-Lee, T., Fielding, R., and L. Masinter,
                    "Uniform Resource Identifier (URI): Generic Syntax",
                    STD 66, RFC 3986, January 2005,
                    <http://www.rfc-editor.org/info/rfc3986>.

   [RFC5741]        Daigle, L. and O. Kolkman, "RFC Streams, Headers,
                    and Boilerplates", RFC 5741, December 2009,
                    <http://www.rfc-editor.org/info/rfc5741>.

   [RFC6068]        Duerst, M., Masinter, L., and J. Zawinski, "The
                    'mailto' URI Scheme", RFC 6068, October 2010,
                    <http://www.rfc-editor.org/info/rfc6068>.

   [RFC6266]        Reschke, J., "Use of the Content-Disposition Header
                    Field in the Hypertext Transfer Protocol (HTTP)",
                    RFC 6266, June 2011,
                    <http://www.rfc-editor.org/info/rfc6266>.

   [RFC6949]        Flanagan, H. and N. Brownlee, "RFC Series Format
                    Requirements and Future Development", RFC 6949,
                    May 2013, <http://www.rfc-editor.org/info/rfc6949>.

Hoffman                 Expires October 19, 2015               [Page 81]
Internet-Draft                  XML2RFCv3                     April 2015

   [RFC7303]        Thompson, H. and C. Lilley, "XML Media Types",
                    RFC 7303, July 2014,
                    <http://www.rfc-editor.org/info/rfc7303>.

   [RFC7322]        Heather, H. and S. Ginoza, "RFC Style Guide",
                    RFC 7322, September 2014,
                    <http://www.rfc-editor.org/info/rfc7322>.

   [RFCPOLICY]      RFC Editor, "RFC Editorial Guidelines and
                    Procedures",
                    <http://www.rfc-editor.org/policy.html>.

   [RNC]            Clark, J., "RELAX NG Compact Syntax", OASIS ,
                    November 2002, <http://www.oasis-open.org/
                    committees/relax-ng/compact-20021121.html>.

   [RNG]            ISO/IEC, "Information Technology - Document Schema
                    Definition Languages (DSDL) - Part 2: Regular-
                    Grammar-Based Validation - RELAX NG. Second
                    Edition.", ISO/IEC 19757-2:2008(E), December 2008.

                    A useful source of RNG-related information is
                    <http://relaxng.org/>.

   [SVGforRFCs]     Brownlee, N., "SVG Drawings for RFCs: SVG 1.2 RFC",
                    draft-brownlee-svg-rfc (work in progress), 2015.

   [TLP2.0]         IETF Trust, "Legal Provisions Relating to IETF
                    Documents", February 2009, <http://trustee.ietf.org/
                    license-info/IETF-TLP-2.htm>.

   [TLP3.0]         IETF Trust, "Legal Provisions Relating to IETF
                    Documents", September 2009, <http://
                    trustee.ietf.org/license-info/IETF-TLP-3.htm>.

   [TLP4.0]         IETF Trust, "Legal Provisions Relating to IETF
                    Documents", December 2009, <http://trustee.ietf.org/
                    license-info/IETF-TLP-4.htm>.

   [UNICODE]        The Unicode Consortium, "The Unicode Standard,
                    Version 6.3.0", September 2013,
                    <http://www.unicode.org/versions/Unicode6.3.0/>.

   [USASCII]        American National Standards Institute, "Coded
                    Character Set -- 7-bit American Standard Code for
                    Information Interchange", ANSI X3.4, 1986.

   [XInclude]       Marsh, J., Orchard, D., and D. Veillard, "XML

Hoffman                 Expires October 19, 2015               [Page 82]
Internet-Draft                  XML2RFCv3                     April 2015

                    Inclusions (XInclude) Version 1.0 (Second Edition)",
                    W3C Recommendation REC-xinclude-20061115,
                    November 2006, <http://www.w3.org/TR/xinclude/>.

                    Latest version available at
                    <http://www.w3.org/TR/xinclude/>.

   [XPOINTER]       Grosso, P., Maler, E., Marsh, J., and N. Walsh,
                    "XPointer Framework", W3C Recommendation REC-xptr-
                    framework-20030325, March 2003, <http://www.w3.org/
                    TR/2003/REC-xptr-framework-20030325/>.

                    Latest version available at
                    <http://www.w3.org/TR/xptr-framework/>.

Appendix A.  Front Page ('Boilerplate') Generation

A.1.  The /rfc/@ipr Attribute

   This attribute value can take a long list of values, each of which
   describes an IPR policy for the document (Section 2.44.5).  The
   values are not the result of a grand design, but remain simply for
   historic reasons.  Of these values, only a few are currently in use;
   all others are supported by various tools for backwards compatibility
   with old source files.

      *Note:* some variations of the boilerplate are selected based on
      the document's date; therefore it is important to specify the
      "year", "month" and "day" attributes of the <date> element when
      archiving the XML source of an Internet-Draft on the day of
      submission.

   _Disclaimer: THIS ONLY PROVIDES IMPLEMENTATION INFORMATION.  IF YOU
   NEED LEGAL ADVICE, PLEASE CONTACT A LAWYER._ For further information,
   refer to <http://trustee.ietf.org/docs/IETF-Copyright-FAQ.pdf>.

   For the current "Status Of This Memo" text, the submissionType
   attribute (Section 2.44.11) determines whether a statement about
   "Code Components" is inserted (which is the case for the value
   "IETF", which is the default).  Other values, such as "independent",
   suppress this part of the text.

A.1.1.  Current Values: '*trust200902'

   The name for these values refers to the "IETF TRUST Legal Provisions
   Relating to IETF Documents", sometimes simply called the "TLP", which
   went into effect on February 15, 2009 ([TLP2.0]).  Updates to this
   document were published on September 12, 2009 ([TLP3.0]) and on

Hoffman                 Expires October 19, 2015               [Page 83]
Internet-Draft                  XML2RFCv3                     April 2015

   December 28, 2009 ([TLP4.0]), modifying the license for code
   components (see <http://trustee.ietf.org/license-info/> for further
   information).  The actual text is located in Section 6 ("Text To Be
   Included in IETF Documents") of these documents.

   Formatters will automatically produce the "correct" text depending on
   the document's date information (see above):

   +----------+--------------------------------+
   | TLP      | starting with publication date |
   +----------+--------------------------------+
   | [TLP3.0] | 2009-11-01                     |
   | [TLP4.0] | 2010-04-01                     |
   +----------+--------------------------------+

A.1.1.1.  trust200902

   This value should be used unless one of the more specific
   '*trust200902' values is a better fit.  It produces the text in
   Sections 6.a and 6.b of the TLP.

A.1.1.2.  noModificationTrust200902

   This produces additional text from Section 6.c.i of the TLP:

      This document may not be modified, and derivative works of it may
      not be created, except to format it for publication as an RFC or
      to translate it into languages other than English.

      *Note:* this clause is incompatible with RFCs that are published
      on the Standards Track.

A.1.1.3.  noDerivativesTrust200902

   This produces the additional text from Section 6.c.ii of the TLP:

      This document may not be modified, and derivative works of it may
      not be created, and it may not be published except as an Internet-
      Draft.

      *Note:* this clause is incompatible with RFCs.

A.1.1.4.  pre5378Trust200902

   This produces the additional text from Section 6.c.iii of the TLP,
   frequently called the "pre-5378 escape clause":

Hoffman                 Expires October 19, 2015               [Page 84]
Internet-Draft                  XML2RFCv3                     April 2015

      This document may contain material from IETF Documents or IETF
      Contributions published or made publicly available before November
      10, 2008.  The person(s) controlling the copyright in some of this
      material may not have granted the IETF Trust the right to allow
      modifications of such material outside the IETF Standards Process.
      Without obtaining an adequate license from the person(s)
      controlling the copyright in such materials, this document may not
      be modified outside the IETF Standards Process, and derivative
      works of it may not be created outside the IETF Standards Process,
      except to format it for publication as an RFC or to translate it
      into languages other than English.

   See Section 4 of
   <http://trustee.ietf.org/docs/IETF-Copyright-FAQ.pdf> for further
   information about when to use this value.

      *Note:* this text appears under "Copyright Notice", unless the
      document was published before November 2009, in which case it
      appears under "Status Of This Memo".

A.1.2.  Historic Values

A.1.2.1.  Historic Values: '*trust200811'

   The attribute values "trust200811", "noModificationTrust200811" and
   "noDerivativesTrust200811" are similar to their "trust200902"
   counterparts, except that they use text specified in <http://
   trustee.ietf.org/license-info/archive/
   IETF-Trust-License-Policy_11-10-08.pdf>.

A.1.2.2.  Historic Values: '*3978'

   The attribute values "full3978", "noModification3978" and
   "noDerivatives3978" are similar to their counterparts above, except
   that they use text specified in Section 5 of [RFC3978].

A.1.2.3.  Historic Values: '*3667'

   The attribute values "full3667", "noModification3667" and
   "noDerivatives3667" are similar to their counterparts above, except
   that they use text specified in Section 5 of [RFC3667].

A.1.2.4.  Historic Values: '*2026'

   The attribute values "full2026" and "noDerivativeWorks2026" are
   similar to their counterparts above, except that they use text
   specified in Section 10 of [RFC2026].

Hoffman                 Expires October 19, 2015               [Page 85]
Internet-Draft                  XML2RFCv3                     April 2015

   The special value "none" was also used back then, and denied the IETF
   any rights beyond publication as Internet-Draft.

A.2.  The /rfc/@submissionType Attribute

   The RFC Editor publishes documents from different "document streams",
   of which the "IETF stream" is the most prominent one.  Other streams
   are the "independent stream" (used for things such as administrative
   information or April 1st RFCs), the "IAB stream" (Internet
   Architecture Board) and the "IRTF stream" (Internet Research Task
   Force).

   The values for the attribute are "IETF" (the default value),
   "independent", "IAB", and "IRTF".

   Historically, this attribute did not affect the final appearance of
   RFCs, except for subtle differences in Copyright notices.  Nowadays
   (as of [RFC5741]), the stream name appears in the first line of the
   front page, and it also affects the text in the "Status Of This Memo"
   section.

   For current documents, setting submissionType attribute will have the
   following effect:

   o  For RFCs, the stream name appears in the upper left corner of the
      first page (in Internet Drafts, this is either "Network Working
      Group", or the value of the <workgroup> element).

   o  For RFCs, if affects the whole "Status Of This Memo" section (see
      Section 3.2.2 of [RFC5741]).

   o  For all RFCs and Internet Drafts, it determines whether the
      "Copyright Notice" mentions the Copyright on Code Components (see
      TLP, Section "Text To Be Included in IETF Documents").

A.3.  The /rfc/@consensus Attribute

   For some of the publication streams (see Appendix A.2), the "Status
   Of This Memo" section depends on whether there was a consensus to
   publish (again, see Section 3.2.2 of [RFC5741]).

   The consensus attribute ("yes"/"no", defaulting to "yes") can be used
   to supply this information.  The effect for the various streams is:

   o  "independent" and "IAB": none.

   o  "IETF": mention that there was an IETF consensus.

Hoffman                 Expires October 19, 2015               [Page 86]
Internet-Draft                  XML2RFCv3                     April 2015

   o  "IRTF": mention that there was a research group consensus (where
      the name of the research group is extracted from the <workgroup>
      element).

Appendix B.  The v3 Format and Processors

   This section describes topics that are specific to processors.  Note
   that there is some discussion of processors in the main body of the
   document as well.  For example, some elements have descriptions of
   how a processor might create output from the element.

   A processor has multiple roles.  The processor checks whether or not
   the input is valid XML; it also checks whether or not the input XML
   matches this format.  It may have one or more outputs, depending on
   the way that it is invoked.  It might convert the XML to different
   XML, or to a different representation such as HTML or plain text, or
   do no conversion at all.  It also might give diagnostic warnings
   about how to improve the input.

   In v2, the grammar was specified as a DTD.  In v3, the grammar is
   specified only as Relax Next Generation (RNG).  This means that
   processors need to work from the RNG, not from a DTD.  Some of the
   features of the v3 grammar cannot be specified as a DTD.

   This section differentiates between three types of processors:

   o  RFC Processor -- The processor used by the RFC Editor to process
      the input from one of the RFC streams, and to process XML produced
      during the RFC editing process.

   o  Draft Processor -- The processor used by the Internet Draft
      submission tool.  This processor will be defined in a different
      document.

   o  Private Processors -- There may be processors that are meant to
      run on the computers of authors.  These processors may be used to
      produce interim versions of the non-canonical representations so
      that authors can see how their XML might later be rendered; to
      create documents in representations different than those supported
      by the RFC Editor; to possibly create documents that are not meant
      to be Internet Drafts or RFCs; and to convert XML that has
      external information into XML that has that external information
      included.

   It is expected that a single piece of software will be used for both
   the RFC Processor and the Draft Processor, with different application
   settings to differentiate between them.  It is also expected that the
   same software could be used as a Private Processor; others might

Hoffman                 Expires October 19, 2015               [Page 87]
Internet-Draft                  XML2RFCv3                     April 2015

   create Private Processors independently, or using parts of, the
   software used by the RFC Editor.

   The RFC Processor and Draft Processor must have clear error
   reporting, giving more context than just a line number.  For example,
   the error messages will differentiate between errors in XML and those
   from the v3 format.

   It is expected that both the RFC Processor and the Draft Processor
   will have options to produce different types of output.  For example,
   they might have a "convert XML to XML" option that expands the XML
   entities in the output.

   The restrictions on the canonical XML for RFCs, as well as how the
   non-canonical formats will look, are described at <https://
   www.rfc-editor.org/rse/wiki/
   doku.php?id=design:format-and-content-rfcs>.

B.1.  Including External Text

   All XML processors for v3 are expected to support XInclude
   [XInclude].  XInclude specifies a processing model and syntax for
   general purpose inclusion of information that is either on the
   Internet or local to the user's computer.

   In the v3 syntax, XInclude is expressed as the <xi:include> element.
   To use this element, you need to include the "xi" namespace in the
   <rfc> element; that is, you need to specify

   xmlns:xi="http://www.w3.org/2001/XInclude"

   as one of the attributes in the <rfc> element.

   The most common way to use <xi:include> is to pull in references that
   are already formed as XML.  Currently, this can be done from
   xml2rfc.tools.ietf.org, but later is expected to be from the RFC
   Editor.  For example, if a document has three normative references,
   all RFCs, the document might contain:

   <references>
       <xi:include href="http://xml2rfc.tools.ietf.org/public/rfc/
          bibxml/reference.RFC.2119.xml"/>
       <xi:include href="http://xml2rfc.tools.ietf.org/public/rfc/
          bibxml/reference.RFC.4869.xml"/>
       <xi:include href="http://xml2rfc.tools.ietf.org/public/rfc/
          bibxml/reference.RFC.7169.xml"/>
   </references>

Hoffman                 Expires October 19, 2015               [Page 88]
Internet-Draft                  XML2RFCv3                     April 2015

   <xi:include> can be used anywhere an XML element could be used (but
   not where free text is used).  For example, if three Internet Drafts
   are all including a particular paragraph or section verbatim, that
   text can be kept either in a file or somewhere on the web, and be
   included with <xi:include>.  An example of pulling something from the
   local disk would be:

   <x:include href="file://home/chris/ietf/drafts/commontext.xml"/>

   In general, XInclude should be used instead of ENTITY references and
   XML Processor Instructions (PIs) that allow external inclusions.

B.2.  Anchors and IDs

   People writing and reading Internet Drafts and RFCs often want to
   make reference to specific locations in those documents.  In the case
   of RFC authors, it is common to want to reference another part of
   their document, such as "see Section 3.2 of this document".  Readers,
   on the other hand, want to reference part of documents that they
   didn't write, such as "see Section 3.2 of RFC 6949".  The XML
   vocabulary in this document attempts to support both sets of people.

   Authors can leave anchors in a document that can later be used for
   references with the "anchor" attribute.  Anchors can be included in
   the following elements: <artwork>, <aside>, <blockquote>, <cref>,
   <figure>, <li>, <reference>, <referencegroup>, <section>,
   <sourcecode>, <t>, and <table>.  The author can then refer to that
   anchor in the "target" attribute of the <xref> element.

   Readers can refer to any element that has an "anchor" attribute by
   that attribute.  Note, however, that most of the time, elements won't
   have anchors.  In the common case, the reader wants to refer to an
   element that does not have an "anchor" attribute, but that element
   has "pn" attribute.

   Processors add the "pn" attribute to many elements during processing.
   This attribute and its value are automatically generated by the
   processor if the attribute is not there; if the attribute is already
   there, the processor may replace the value.

B.2.1.  Overlapping Values

   In the HTML representation of this XML vocabulary, both anchors and
   "pn" attributes will be used in the "id" attributes of elements.
   Thus, there can be no overlap between the names entered in "anchor"
   attributes, in "slugifiedName" attributes, and those that are
   generated for the "pn" attributes.  Also, there are some values for
   the "anchor" values that are reserved for sections, and those

Hoffman                 Expires October 19, 2015               [Page 89]
Internet-Draft                  XML2RFCv3                     April 2015

   sections can only have those anchor values.

   The following rules prevent this overlap:

   o  "pn" for regular sections always has the format "s-nnn", where
      "nnn" is the section or appendix number.  For example, this would
      be "s-2.1.3" for Section 2.1.3 and "s-a" for Appendix A.  For the
      <abstract> element, it is always "s-abstract".  For the <note>
      element, it is always "s-note-nnn", where "nnn" is a sequential
      value.

   o  "pn" for <figure> elements always has the format "f-nnn", where
      "nnn" is the figure number.  For example, this would be "f-5" for
      Figure 5.

   o  "pn" for <table> elements always has the format "t-nnn", where
      "nnn" is the figure number.  For example, this would be "t-5" for
      Table 5.

   o  "pn" for all elements not listed above always has the format
      "p-nnn-mmm", where "nnn" is the section number and "mmm" is the
      relative position in the section.  For example, this would be
      "p-2.1.3-7" for the seventh part number in Section 2.1.3.

   o  "slugifiedName" always has the format "n-ttt", where "ttt" is the
      text of the name after slugification.  For example, this would be
      "n-protocol-overview" for the name "Protocol Overview".  The
      actual conversions done in slugification will be specified at a
      later time.

   o  Anchors must never overlap with any of the above.  The easiest way
      to assure that is to not pick an anchor name that starts with a
      single letter followed by a hyphen.  If an anchor does overlap
      with one of the types of names above, the processor will reject
      the document.

Appendix C.  Relax NG Schema

   The following is the RelaxNG schema for the v3 format.

   namespace a = "http://relaxng.org/ns/compatibility/annotations/1.0"
   namespace ns1 = "http://www.w3.org/2000/svg"

   # xml2rfc Version 3 grammar

   rfc =
     element rfc {

Hoffman                 Expires October 19, 2015               [Page 90]
Internet-Draft                  XML2RFCv3                     April 2015

       attribute number { text }?,
       [ a:defaultValue = "" ] attribute obsoletes { text }?,
       [ a:defaultValue = "" ] attribute updates { text }?,
       attribute category { text }?,
       attribute consensus { "no" | "yes" | "false" | "true" }?,
       attribute seriesNo { text }?,
       attribute ipr {
         "full2026"
         | "noDerivativeWorks2026"
         | "none"
         | "full3667"
         | "noModification3667"
         | "noDerivatives3667"
         | "full3978"
         | "noModification3978"
         | "noDerivatives3978"
         | "trust200811"
         | "noModificationTrust200811"
         | "noDerivativesTrust200811"
         | "trust200902"
         | "noModificationTrust200902"
         | "noDerivativesTrust200902"
         | "pre5378Trust200902"
       }?,
       attribute iprExtract { xsd:IDREF }?,
       [ a:defaultValue = "IETF" ]
       attribute submissionType {
         "IETF" | "IAB" | "IRTF" | "independent"
       }?,
       attribute docName { text }?,
       [ a:defaultValue = "no" ]
       attribute sortRefs { "true" | "false" }?,
       [ a:defaultValue = "yes" ]
       attribute symRefs { "true" | "false" }?,
       [ a:defaultValue = "yes" ]
       attribute tocInclude { "true" | "false" }?,
       [ a:defaultValue = "3" ] attribute tocDepth { text }?,
       attribute finalizedTime { text }?,
       link*,
       front,
       middle,
       back?
     }

   link =
     element link {
       attribute href { text },
       attribute rel { text }?

Hoffman                 Expires October 19, 2015               [Page 91]
Internet-Draft                  XML2RFCv3                     April 2015

     }

   front =
     element front {
       title,
       author+,
       date?,
       area*,
       workgroup*,
       keyword*,
       abstract?,
       seriesInfo*,
       note*,
       boilerplate?
     }

   title =
     element title {
       attribute abbrev { text }?,
       attribute ascii { text }?,
       text
     }

   author =
     element author {
       attribute initials { text }?,
       attribute asciiInitials { text }?,
       attribute surname { text }?,
       attribute asciiSurname { text }?,
       attribute fullname { text }?,
       attribute role { "editor" }?,
       attribute asciiFullname { text }?,
       organization?,
       address?
     }

   organization =
     element organization {
       attribute abbrev { text }?,
       attribute ascii { text }?,
       text
     }

   address =
     element address { postal?, phone?, facsimile?, email?, uri? }

   postal =
     element postal {

Hoffman                 Expires October 19, 2015               [Page 92]
Internet-Draft                  XML2RFCv3                     April 2015

       (city | code | country | region | street)* | postalLine+
     }

   street =
     element street {
       attribute ascii { text }?,
       text
     }

   city =
     element city {
       attribute ascii { text }?,
       text
     }

   region =
     element region {
       attribute ascii { text }?,
       text
     }

   code =
     element code {
       attribute ascii { text }?,
       text
     }

   country = element country { text }

   postalLine =
     element postalLine {
       attribute ascii { text }?,
       text
     }

   phone = element phone { text }

   facsimile = element facsimile { text }

   email =
     element email {
       attribute ascii { text }?,
       text
     }

   uri = element uri { text }

   date =

Hoffman                 Expires October 19, 2015               [Page 93]
Internet-Draft                  XML2RFCv3                     April 2015

     element date {
       attribute day { text }?,
       attribute month { text }?,
       attribute year { text }?,
       empty
     }

   area = element area { text }

   workgroup = element workgroup { text }

   keyword = element keyword { text }

   abstract =
     element abstract {
       attribute pn { text }?,
       (dl | ol | t | ul)+
     }

   note =
     element note {
       attribute title { text }?,
       name,
       attribute pn { text }?,
       [ a:defaultValue = "no" ]
       attribute removeInRFC { "true" | "false" }?,
       (dl | ol | t | ul)+
     }

   boilerplate = element boilerplate { section+ }

   middle = element middle { section+ }

   section =
     element section {
       attribute anchor { xsd:ID }?,
       attribute title { text }?,
       [ a:defaultValue = "yes" ]
       attribute numbered { "true" | "false" }?,
       [ a:defaultValue = "default" ]
       attribute toc { "include" | "exclude" | "default" }?,
       [ a:defaultValue = "no" ]
       attribute removeInRFC { "true" | "false" }?,
       attribute pn { text }?,
       name?,
       (artwork
        | aside
        | blockquote

Hoffman                 Expires October 19, 2015               [Page 94]
Internet-Draft                  XML2RFCv3                     April 2015

        | dl
        | figure
        | iref
        | ol
        | sourcecode
        | t
        | table
        | texttable
        | ul)*,
       section*
     }

   name =
     element name {
       attribute slugifiedName { text }?,
       (text | cref | eref | tt | xref)*
     }

   t =
     element t {
       attribute anchor { xsd:ID }?,
       attribute hangText { text }?,
       attribute pn { text }?,
       [ a:defaultValue = "false" ]
       attribute keepWithNext { "false" | "true" }?,
       [ a:defaultValue = "false" ]
       attribute keepWithPrevious { "false" | "true" }?,
       (text
        | bcp14
        | cref
        | em
        | eref
        | iref
        | \list
        | spanx
        | strong
        | sub
        | sup
        | tt
        | vspace
        | xref)*
     }

   aside =
     element aside {
       attribute anchor { xsd:ID }?,
       attribute pn { text }?,
       (artwork | dl | figure | iref | \list | ol | t | table | ul)*

Hoffman                 Expires October 19, 2015               [Page 95]
Internet-Draft                  XML2RFCv3                     April 2015

     }

   blockquote =
     element blockquote {
       attribute anchor { xsd:ID }?,
       attribute pn { text }?,
       attribute cite { text }?,
       attribute quotedFrom { text }?,
       ((artwork | dl | figure | ol | sourcecode | t | ul)+
        | (text
           | bcp14
           | cref
           | em
           | eref
           | iref
           | strong
           | sub
           | sup
           | tt
           | xref)+)
     }

   \list =
     element list {
       [ a:defaultValue = "empty" ] attribute style { text }?,
       attribute hangIndent { text }?,
       attribute counter { text }?,
       t+
     }

   ol =
     element ol {
       [ a:defaultValue = "1" ] attribute style { text }?,
       [ a:defaultValue = "1" ] attribute start { text }?,
       attribute group { text }?,
       [ a:defaultValue = "normal" ]
       attribute spacing { "normal" | "compact" }?,
       li+
     }

   ul =
     element ul {
       [ a:defaultValue = "normal" ]
       attribute spacing { "normal" | "compact" }?,
       [ a:defaultValue = "false" ]
       attribute empty { "false" | "true" }?,
       li+
     }

Hoffman                 Expires October 19, 2015               [Page 96]
Internet-Draft                  XML2RFCv3                     April 2015

   li =
     element li {
       attribute anchor { xsd:ID }?,
       attribute pn { text }?,
       ((artwork | dl | figure | ol | sourcecode | t | ul)+
        | (text
           | bcp14
           | cref
           | em
           | eref
           | iref
           | strong
           | sub
           | sup
           | tt
           | xref)+)
     }

   dl =
     element dl {
       [ a:defaultValue = "normal" ]
       attribute spacing { "normal" | "compact" }?,
       [ a:defaultValue = "true" ]
       attribute hanging { "false" | "true" }?,
       (dt, dd)+
     }

   dt =
     element dt {
       attribute anchor { xsd:ID }?,
       attribute pn { text }?,
       (text
        | bcp14
        | cref
        | em
        | eref
        | iref
        | strong
        | sub
        | sup
        | tt
        | xref)*
     }

   dd =
     element dd {
       (artwork | dl | figure | ol | sourcecode | t | ul)+
       | (text

Hoffman                 Expires October 19, 2015               [Page 97]
Internet-Draft                  XML2RFCv3                     April 2015

          | bcp14
          | cref
          | em
          | eref
          | iref
          | strong
          | sub
          | sup
          | tt
          | xref)+
     }

   xref =
     element xref {
       attribute target { xsd:IDREF },
       [ a:defaultValue = "false" ]
       attribute pageno { "true" | "false" }?,
       [ a:defaultValue = "default" ]
       attribute format { "counter" | "title" | "none" | "default" }?,
       (attribute section { text },
        attribute relative { text }?,
        attribute sectionFormat { text }?)?,
       text
     }

   eref =
     element eref {
       attribute target { text },
       text
     }

   iref =
     element iref {
       attribute item { text },
       [ a:defaultValue = "" ] attribute subitem { text }?,
       [ a:defaultValue = "false" ]
       attribute primary { "true" | "false" }?,
       empty
     }

   cref =
     element cref {
       attribute anchor { xsd:ID }?,
       attribute source { text }?,
       [ a:defaultValue = "true" ]
       attribute display { "true" | "false" }?,
       (text | em | eref | strong | sub | sup | tt | xref)*
     }

Hoffman                 Expires October 19, 2015               [Page 98]
Internet-Draft                  XML2RFCv3                     April 2015

   tt =
     element tt {
       (text
        | bcp14
        | cref
        | em
        | eref
        | iref
        | strong
        | sub
        | sup
        | xref)*
     }

   strong =
     element strong {
       (text | bcp14 | cref | em | eref | iref | sub | sup | tt | xref)*
     }

   em =
     element em {
       (text
        | bcp14
        | cref
        | eref
        | iref
        | strong
        | sub
        | sup
        | tt
        | xref)*
     }

   sub =
     element sub {
       (text | bcp14 | cref | em | eref | iref | strong | tt | xref)*
     }

   sup =
     element sup {
       (text | bcp14 | cref | em | eref | iref | strong | tt | xref)*
     }

   spanx =
     element spanx {
       [ a:defaultValue = "preserve" ]
       attribute xml:space { "default" | "preserve" }?,
       [ a:defaultValue = "emph" ] attribute style { text }?,

Hoffman                 Expires October 19, 2015               [Page 99]
Internet-Draft                  XML2RFCv3                     April 2015

       text
     }

   vspace =
     element vspace {
       [ a:defaultValue = "0" ] attribute blankLines { text }?,
       empty
     }

   figure =
     element figure {
       attribute anchor { xsd:ID }?,
       [ a:defaultValue = "" ] attribute title { text }?,
       [ a:defaultValue = "false" ]
       attribute suppress-title { "true" | "false" }?,
       attribute src { text }?,
       [ a:defaultValue = "left" ]
       attribute align { "left" | "center" | "right" }?,
       [ a:defaultValue = "" ] attribute alt { text }?,
       [ a:defaultValue = "" ] attribute width { text }?,
       [ a:defaultValue = "" ] attribute height { text }?,
       attribute pn { text }?,
       name?,
       iref*,
       preamble?,
       (artwork | sourcecode)+,
       postamble?
     }

   table =
     element table {
       attribute anchor { xsd:ID }?,
       attribute pn { text }?,
       name?,
       iref*,
       thead?,
       tbody+,
       tfoot?
     }

   preamble =
     element preamble {
       (text
        | bcp14
        | cref
        | em
        | eref
        | iref

Hoffman                 Expires October 19, 2015              [Page 100]
Internet-Draft                  XML2RFCv3                     April 2015

        | spanx
        | strong
        | sub
        | sup
        | tt
        | xref)*
     }

   artwork =
     element artwork {
       attribute xml:space { text }?,
       [ a:defaultValue = "" ] attribute name { text }?,
       [ a:defaultValue = "" ] attribute type { text }?,
       attribute src { text }?,
       [ a:defaultValue = "left" ]
       attribute align { "left" | "center" | "right" }?,
       [ a:defaultValue = "" ] attribute alt { text }?,
       [ a:defaultValue = "" ] attribute width { text }?,
       [ a:defaultValue = "" ] attribute height { text }?,
       attribute anchor { xsd:ID }?,
       attribute pn { text }?,
       (text* | svg)
     }

   svg =
     element ns1:svg {
       attribute * { text }*,
       anything
     }

   anything =
     element * {
       attribute * { text }*,
       anything*
     }

   sourcecode =
     element sourcecode {
       [ a:defaultValue = "" ] attribute name { text }?,
       [ a:defaultValue = "" ] attribute type { text }?,
       attribute src { text }?,
       attribute anchor { xsd:ID }?,
       attribute pn { text }?,
       text
     }

   thead = element thead { tr+ }

Hoffman                 Expires October 19, 2015              [Page 101]
Internet-Draft                  XML2RFCv3                     April 2015

   tbody = element tbody { tr+ }

   tfoot = element tfoot { tr+ }

   tr =
     element tr {
       [ a:defaultValue = "0" ] attribute border { text }?,
       (td | th)+
     }

   td =
     element td {
       [ a:defaultValue = "0" ] attribute border { text }?,
       [ a:defaultValue = "0" ] attribute colspan { text }?,
       [ a:defaultValue = "0" ] attribute rowspan { text }?,
       [ a:defaultValue = "left" ]
       attribute align { "left" | "center" | "right" }?,
       (t+
        | (text
           | artwork
           | bcp14
           | br
           | cref
           | dl
           | em
           | eref
           | figure
           | iref
           | ol
           | sourcecode
           | strong
           | sub
           | sup
           | tt
           | ul
           | xref)+)
     }

   th =
     element th {
       [ a:defaultValue = "0" ] attribute border { text }?,
       [ a:defaultValue = "0" ] attribute colspan { text }?,
       [ a:defaultValue = "0" ] attribute rowspan { text }?,
       [ a:defaultValue = "left" ]
       attribute align { "left" | "center" | "right" }?,
       (t+
        | (text
           | artwork

Hoffman                 Expires October 19, 2015              [Page 102]
Internet-Draft                  XML2RFCv3                     April 2015

           | bcp14
           | br
           | cref
           | dl
           | em
           | eref
           | figure
           | iref
           | ol
           | sourcecode
           | strong
           | sub
           | sup
           | tt
           | ul
           | xref)+)
     }

   postamble =
     element postamble {
       (text
        | bcp14
        | cref
        | em
        | eref
        | iref
        | spanx
        | strong
        | sub
        | sup
        | tt
        | xref)*
     }

   texttable =
     element texttable {
       attribute anchor { xsd:ID }?,
       [ a:defaultValue = "" ] attribute title { text }?,
       [ a:defaultValue = "false" ]
       attribute suppress-title { "true" | "false" }?,
       [ a:defaultValue = "center" ]
       attribute align { "left" | "center" | "right" }?,
       [ a:defaultValue = "full" ]
       attribute style { "all" | "none" | "headers" | "full" }?,
       name?,
       preamble?,
       ttcol+,
       c*,

Hoffman                 Expires October 19, 2015              [Page 103]
Internet-Draft                  XML2RFCv3                     April 2015

       postamble?
     }

   ttcol =
     element ttcol {
       attribute width { text }?,
       [ a:defaultValue = "left" ]
       attribute align { "left" | "center" | "right" }?,
       (cref | eref | iref | xref | text)*
     }

   c =
     element c {
       (text
        | bcp14
        | cref
        | em
        | eref
        | iref
        | spanx
        | strong
        | sub
        | sup
        | tt
        | xref)*
     }

   bcp14 = element bcp14 { text }

   br = element br { empty }

   back = element back { displayreference*, references*, section* }

   displayreference =
     element displayreference {
       attribute target { xsd:IDREF },
       attribute to { text }
     }

   references =
     element references {
       attribute anchor { xsd:ID }?,
       attribute title { text }?,
       attribute pn { text }?,
       name?,
       (reference | referencegroup)*
     }

Hoffman                 Expires October 19, 2015              [Page 104]
Internet-Draft                  XML2RFCv3                     April 2015

   reference =
     element reference {
       attribute anchor { xsd:ID },
       attribute target { text }?,
       [ a:defaultValue = "true" ]
       attribute quoteTitle { "true" | "false" }?,
       front,
       (annotation | format | refcontent | seriesInfo)*
     }

   referencegroup =
     element referencegroup {
       attribute anchor { xsd:ID },
       reference+
     }

   seriesInfo =
     element seriesInfo {
       attribute name { text },
       attribute value { text },
       attribute asciiName { text }?,
       attribute asciiValue { text }?,
       empty
     }

   format =
     element format {
       attribute target { text }?,
       attribute type { text },
       attribute octets { text }?,
       empty
     }

   annotation =
     element annotation {
       attribute ascii { text }?,
       (text
        | bcp14
        | cref
        | em
        | eref
        | iref
        | spanx
        | strong
        | sub
        | sup
        | tt
        | xref)*

Hoffman                 Expires October 19, 2015              [Page 105]
Internet-Draft                  XML2RFCv3                     April 2015

     }

   refcontent =
     element refcontent {
       attribute ascii { text }?,
       (text | bcp14 | em | strong | sub | sup | tt)*
     }

   start = rfc

Appendix D.  Schema Differences from v2

   The following is a non-normative comparison of the v3 format to the
   v2 format.  A "-" indicates lines removed from the v2 schema, and a
   "+" indicates lines added to the v3 schema.

     namespace a =
     "http://relaxng.org/ns/compatibility/annotations/1.0"
   + namespace ns1 = "http://www.w3.org/2000/svg"

   + # xml2rfc Version 3 grammar
     rfc =
       element rfc {
         attribute number { text }?,
         [ a:defaultValue = "" ] attribute obsoletes { text }?,
         [ a:defaultValue = "" ] attribute updates { text }?,
   -     attribute category { "std" | "bcp" | "info" | "exp" |
   - "historic" }?,
   -     attribute consensus { "no" | "yes" }?,
   +     attribute category { text }?,
   +     attribute consensus { "no" | "yes" | "false" | "true" }?,
         attribute seriesNo { text }?,
         attribute ipr {
           "full2026"
           | "noDerivativeWorks2026"
           | "none"
           | "full3667"
           | "noModification3667"
           | "noDerivatives3667"
           | "full3978"
           | "noModification3978"
           | "noDerivatives3978"
           | "trust200811"
           | "noModificationTrust200811"
           | "noDerivativesTrust200811"
           | "trust200902"

Hoffman                 Expires October 19, 2015              [Page 106]
Internet-Draft                  XML2RFCv3                     April 2015

           | "noModificationTrust200902"
           | "noDerivativesTrust200902"
           | "pre5378Trust200902"
         }?,
         attribute iprExtract { xsd:IDREF }?,
         [ a:defaultValue = "IETF" ]
         attribute submissionType {
           "IETF" | "IAB" | "IRTF" | "independent"
         }?,
         attribute docName { text }?,
   -     [ a:defaultValue = "en" ] attribute xml:lang { text }?,
   +     [ a:defaultValue = "no" ]
   +     attribute sortRefs { "true" | "false" }?,
   +     [ a:defaultValue = "yes" ]
   +     attribute symRefs { "true" | "false" }?,
   +     [ a:defaultValue = "yes" ]
   +     attribute tocInclude { "true" | "false" }?,
   +     [ a:defaultValue = "3" ] attribute tocDepth { text }?,
   +     attribute finalizedTime { text }?,
   +     link*,
         front,
         middle,
         back?
       }
   + link =
   +   element link {
   +     attribute href { text },
   +     attribute rel { text }?
   +   }
     front =
       element front {
   -     title, author+, date, area*, workgroup*, keyword*, abstract?,
   - note*
   +     title,
   +     author+,
   +     date?,
   +     area*,
   +     workgroup*,
   +     keyword*,
   +     abstract?,
   +     seriesInfo*,
   +     note*,
   +     boilerplate?
       }
     title =
       element title {
         attribute abbrev { text }?,
   +     attribute ascii { text }?,

Hoffman                 Expires October 19, 2015              [Page 107]
Internet-Draft                  XML2RFCv3                     April 2015

         text
       }
     author =
       element author {
         attribute initials { text }?,
   +     attribute asciiInitials { text }?,
         attribute surname { text }?,
   +     attribute asciiSurname { text }?,
         attribute fullname { text }?,
         attribute role { "editor" }?,
   +     attribute asciiFullname { text }?,
         organization?,
         address?
       }
     organization =
       element organization {
         attribute abbrev { text }?,
   +     attribute ascii { text }?,
   +     text
   +   }
   + address =
   +   element address { postal?, phone?, facsimile?, email?, uri? }
   + postal =
   +   element postal {
   +     (city | code | country | region | street)* | postalLine+
   +   }
   + street =
   +   element street {
   +     attribute ascii { text }?,
   +     text
   +   }
   + city =
   +   element city {
   +     attribute ascii { text }?,
   +     text
   +   }
   + region =
   +   element region {
   +     attribute ascii { text }?,
   +     text
   +   }
   + code =
   +   element code {
   +     attribute ascii { text }?,
         text
       }
   - address = element address { postal?, phone?, facsimile?, email?,
   - uri? }

Hoffman                 Expires October 19, 2015              [Page 108]
Internet-Draft                  XML2RFCv3                     April 2015

   - postal = element postal { street+, (city | region | code |
   - country)* }
   - street = element street { text }
   - city = element city { text }
   - region = element region { text }
   - code = element code { text }
     country = element country { text }
   + postalLine =
   +   element postalLine {
   +     attribute ascii { text }?,
   +     text
   +   }
     phone = element phone { text }
     facsimile = element facsimile { text }
   - email = element email { text }
   + email =
   +   element email {
   +     attribute ascii { text }?,
   +     text
   +   }
     uri = element uri { text }
     date =
       element date {
         attribute day { text }?,
         attribute month { text }?,
         attribute year { text }?,
         empty
       }
     area = element area { text }
     workgroup = element workgroup { text }
     keyword = element keyword { text }
   - abstract = element abstract { t+ }
   + abstract =
   +   element abstract {
   +     attribute pn { text }?,
   +     (dl | ol | t | ul)+
   +   }
     note =
       element note {
   -     attribute title { text },
   -     t+
   +     attribute title { text }?,
   +     name,
   +     attribute pn { text }?,
   +     [ a:defaultValue = "no" ]
   +     attribute removeInRFC { "true" | "false" }?,
   +     (dl | ol | t | ul)+
       }

Hoffman                 Expires October 19, 2015              [Page 109]
Internet-Draft                  XML2RFCv3                     April 2015

   + boilerplate = element boilerplate { section+ }
     middle = element middle { section+ }
     section =
       element section {
         attribute anchor { xsd:ID }?,
   -     attribute title { text },
   +     attribute title { text }?,
   +     [ a:defaultValue = "yes" ]
   +     attribute numbered { "true" | "false" }?,
         [ a:defaultValue = "default" ]
         attribute toc { "include" | "exclude" | "default" }?,
   -     (t | figure | texttable | iref)*,
   +     [ a:defaultValue = "no" ]
   +     attribute removeInRFC { "true" | "false" }?,
   +     attribute pn { text }?,
   +     name?,
   +     (artwork
   +      | aside
   +      | blockquote
   +      | dl
   +      | figure
   +      | iref
   +      | ol
   +      | sourcecode
   +      | t
   +      | table
   +      | texttable
   +      | ul)*,
         section*
       }
   + name =
   +   element name {
   +     attribute slugifiedName { text }?,
   +     (text | cref | eref | tt | xref)*
   +   }
     t =
       element t {
         attribute anchor { xsd:ID }?,
         attribute hangText { text }?,
   +     attribute pn { text }?,
   +     [ a:defaultValue = "false" ]
   +     attribute keepWithNext { "false" | "true" }?,
   +     [ a:defaultValue = "false" ]
   +     attribute keepWithPrevious { "false" | "true" }?,
         (text
   -      | \list
   -      | figure
   -      | xref

Hoffman                 Expires October 19, 2015              [Page 110]
Internet-Draft                  XML2RFCv3                     April 2015

   +      | bcp14
   +      | cref
   +      | em
          | eref
          | iref
   -      | cref
   +      | \list
          | spanx
   -      | vspace)*
   +      | strong
   +      | sub
   +      | sup
   +      | tt
   +      | vspace
   +      | xref)*
   +   }
   + aside =
   +   element aside {
   +     attribute anchor { xsd:ID }?,
   +     attribute pn { text }?,
   +     (artwork | dl | figure | iref | \list | ol | t | table | ul)*
   +   }
   + blockquote =
   +   element blockquote {
   +     attribute anchor { xsd:ID }?,
   +     attribute pn { text }?,
   +     attribute cite { text }?,
   +     attribute quotedFrom { text }?,
   +     ((artwork | dl | figure | ol | sourcecode | t | ul)+
   +      | (text
   +         | bcp14
   +         | cref
   +         | em
   +         | eref
   +         | iref
   +         | strong
   +         | sub
   +         | sup
   +         | tt
   +         | xref)+)
       }
     \list =
       element list {
   -     attribute style { text }?,
   +     [ a:defaultValue = "empty" ] attribute style { text }?,
         attribute hangIndent { text }?,
         attribute counter { text }?,
         t+

Hoffman                 Expires October 19, 2015              [Page 111]
Internet-Draft                  XML2RFCv3                     April 2015

       }
   + ol =
   +   element ol {
   +     [ a:defaultValue = "1" ] attribute style { text }?,
   +     [ a:defaultValue = "1" ] attribute start { text }?,
   +     attribute group { text }?,
   +     [ a:defaultValue = "normal" ]
   +     attribute spacing { "normal" | "compact" }?,
   +     li+
   +   }
   + ul =
   +   element ul {
   +     [ a:defaultValue = "normal" ]
   +     attribute spacing { "normal" | "compact" }?,
   +     [ a:defaultValue = "false" ]
   +     attribute empty { "false" | "true" }?,
   +     li+
   +   }
   + li =
   +   element li {
   +     attribute anchor { xsd:ID }?,
   +     attribute pn { text }?,
   +     ((artwork | dl | figure | ol | sourcecode | t | ul)+
   +      | (text
   +         | bcp14
   +         | cref
   +         | em
   +         | eref
   +         | iref
   +         | strong
   +         | sub
   +         | sup
   +         | tt
   +         | xref)+)
   +   }
   + dl =
   +   element dl {
   +     [ a:defaultValue = "normal" ]
   +     attribute spacing { "normal" | "compact" }?,
   +     [ a:defaultValue = "true" ]
   +     attribute hanging { "false" | "true" }?,
   +     (dt, dd)+
   +   }
   + dt =
   +   element dt {
   +     attribute anchor { xsd:ID }?,
   +     attribute pn { text }?,
   +     (text

Hoffman                 Expires October 19, 2015              [Page 112]
Internet-Draft                  XML2RFCv3                     April 2015

   +      | bcp14
   +      | cref
   +      | em
   +      | eref
   +      | iref
   +      | strong
   +      | sub
   +      | sup
   +      | tt
   +      | xref)*
   +   }
   + dd =
   +   element dd {
   +     (artwork | dl | figure | ol | sourcecode | t | ul)+
   +     | (text
   +        | bcp14
   +        | cref
   +        | em
   +        | eref
   +        | iref
   +        | strong
   +        | sub
   +        | sup
   +        | tt
   +        | xref)+
   +   }
     xref =
       element xref {
         attribute target { xsd:IDREF },
   -     [ a:defaultValue = "false" ] attribute pageno { "true" |
   - "false" }?,
   +     [ a:defaultValue = "false" ]
   +     attribute pageno { "true" | "false" }?,
         [ a:defaultValue = "default" ]
         attribute format { "counter" | "title" | "none" | "default"
     }?,
   +     (attribute section { text },
   +      attribute relative { text }?,
   +      attribute sectionFormat { text }?)?,
         text
       }
     eref =
       element eref {
         attribute target { text },
         text
       }
     iref =
       element iref {

Hoffman                 Expires October 19, 2015              [Page 113]
Internet-Draft                  XML2RFCv3                     April 2015

         attribute item { text },
         [ a:defaultValue = "" ] attribute subitem { text }?,
         [ a:defaultValue = "false" ]
         attribute primary { "true" | "false" }?,
         empty
       }
     cref =
       element cref {
         attribute anchor { xsd:ID }?,
         attribute source { text }?,
   -     text
   +     [ a:defaultValue = "true" ]
   +     attribute display { "true" | "false" }?,
   +     (text | em | eref | strong | sub | sup | tt | xref)*
   +   }
   + tt =
   +   element tt {
   +     (text
   +      | bcp14
   +      | cref
   +      | em
   +      | eref
   +      | iref
   +      | strong
   +      | sub
   +      | sup
   +      | xref)*
   +   }
   + strong =
   +   element strong {
   +     (text | bcp14 | cref | em | eref | iref | sub | sup | tt |
   + xref)*
   +   }
   + em =
   +   element em {
   +     (text
   +      | bcp14
   +      | cref
   +      | eref
   +      | iref
   +      | strong
   +      | sub
   +      | sup
   +      | tt
   +      | xref)*
   +   }
   + sub =
   +   element sub {

Hoffman                 Expires October 19, 2015              [Page 114]
Internet-Draft                  XML2RFCv3                     April 2015

   +     (text | bcp14 | cref | em | eref | iref | strong | tt | xref)*
   +   }
   + sup =
   +   element sup {
   +     (text | bcp14 | cref | em | eref | iref | strong | tt | xref)*
       }
     spanx =
       element spanx {
         [ a:defaultValue = "preserve" ]
         attribute xml:space { "default" | "preserve" }?,
         [ a:defaultValue = "emph" ] attribute style { text }?,
         text
       }
     vspace =
       element vspace {
         [ a:defaultValue = "0" ] attribute blankLines { text }?,
         empty
       }
     figure =
       element figure {
         attribute anchor { xsd:ID }?,
         [ a:defaultValue = "" ] attribute title { text }?,
         [ a:defaultValue = "false" ]
         attribute suppress-title { "true" | "false" }?,
         attribute src { text }?,
         [ a:defaultValue = "left" ]
         attribute align { "left" | "center" | "right" }?,
         [ a:defaultValue = "" ] attribute alt { text }?,
         [ a:defaultValue = "" ] attribute width { text }?,
         [ a:defaultValue = "" ] attribute height { text }?,
   +     attribute pn { text }?,
   +     name?,
         iref*,
         preamble?,
   -     artwork,
   +     (artwork | sourcecode)+,
         postamble?
       }
   + table =
   +   element table {
   +     attribute anchor { xsd:ID }?,
   +     attribute pn { text }?,
   +     name?,
   +     iref*,
   +     thead?,
   +     tbody+,
   +     tfoot?
   +   }

Hoffman                 Expires October 19, 2015              [Page 115]
Internet-Draft                  XML2RFCv3                     April 2015

     preamble =
   -   element preamble { (text | xref | eref | iref | cref | spanx)* }
   +   element preamble {
   +     (text
   +      | bcp14
   +      | cref
   +      | em
   +      | eref
   +      | iref
   +      | spanx
   +      | strong
   +      | sub
   +      | sup
   +      | tt
   +      | xref)*
   +   }
     artwork =
       element artwork {
   -     [ a:defaultValue = "preserve" ]
   -     attribute xml:space { "default" | "preserve" }?,
   +     attribute xml:space { text }?,
         [ a:defaultValue = "" ] attribute name { text }?,
         [ a:defaultValue = "" ] attribute type { text }?,
         attribute src { text }?,
         [ a:defaultValue = "left" ]
         attribute align { "left" | "center" | "right" }?,
         [ a:defaultValue = "" ] attribute alt { text }?,
         [ a:defaultValue = "" ] attribute width { text }?,
         [ a:defaultValue = "" ] attribute height { text }?,
   -     text*
   +     attribute anchor { xsd:ID }?,
   +     attribute pn { text }?,
   +     (text* | svg)
   +   }
   + svg =
   +   element ns1:svg {
   +     attribute * { text }*,
   +     anything
   +   }
   + anything =
   +   element * {
   +     attribute * { text }*,
   +     anything*
   +   }
   + sourcecode =
   +   element sourcecode {
   +     [ a:defaultValue = "" ] attribute name { text }?,
   +     [ a:defaultValue = "" ] attribute type { text }?,

Hoffman                 Expires October 19, 2015              [Page 116]
Internet-Draft                  XML2RFCv3                     April 2015

   +     attribute src { text }?,
   +     attribute anchor { xsd:ID }?,
   +     attribute pn { text }?,
   +     text
   +   }
   + thead = element thead { tr+ }
   + tbody = element tbody { tr+ }
   + tfoot = element tfoot { tr+ }
   + tr =
   +   element tr {
   +     [ a:defaultValue = "0" ] attribute border { text }?,
   +     (td | th)+
   +   }
   + td =
   +   element td {
   +     [ a:defaultValue = "0" ] attribute border { text }?,
   +     [ a:defaultValue = "0" ] attribute colspan { text }?,
   +     [ a:defaultValue = "0" ] attribute rowspan { text }?,
   +     [ a:defaultValue = "left" ]
   +     attribute align { "left" | "center" | "right" }?,
   +     (t+
   +      | (text
   +         | artwork
   +         | bcp14
   +         | br
   +         | cref
   +         | dl
   +         | em
   +         | eref
   +         | figure
   +         | iref
   +         | ol
   +         | sourcecode
   +         | strong
   +         | sub
   +         | sup
   +         | tt
   +         | ul
   +         | xref)+)
   +   }
   + th =
   +   element th {
   +     [ a:defaultValue = "0" ] attribute border { text }?,
   +     [ a:defaultValue = "0" ] attribute colspan { text }?,
   +     [ a:defaultValue = "0" ] attribute rowspan { text }?,
   +     [ a:defaultValue = "left" ]
   +     attribute align { "left" | "center" | "right" }?,
   +     (t+

Hoffman                 Expires October 19, 2015              [Page 117]
Internet-Draft                  XML2RFCv3                     April 2015

   +      | (text
   +         | artwork
   +         | bcp14
   +         | br
   +         | cref
   +         | dl
   +         | em
   +         | eref
   +         | figure
   +         | iref
   +         | ol
   +         | sourcecode
   +         | strong
   +         | sub
   +         | sup
   +         | tt
   +         | ul
   +         | xref)+)
       }
     postamble =
   -   element postamble { (text | xref | eref | iref | cref | spanx)*
   +   element postamble {
   +     (text
   +      | bcp14
   +      | cref
   +      | em
   +      | eref
   +      | iref
   +      | spanx
   +      | strong
   +      | sub
   +      | sup
   +      | tt
   +      | xref)*
     }
     texttable =
       element texttable {
         attribute anchor { xsd:ID }?,
         [ a:defaultValue = "" ] attribute title { text }?,
         [ a:defaultValue = "false" ]
         attribute suppress-title { "true" | "false" }?,
         [ a:defaultValue = "center" ]
         attribute align { "left" | "center" | "right" }?,
         [ a:defaultValue = "full" ]
         attribute style { "all" | "none" | "headers" | "full" }?,
   +     name?,
         preamble?,
         ttcol+,

Hoffman                 Expires October 19, 2015              [Page 118]
Internet-Draft                  XML2RFCv3                     April 2015

         c*,
         postamble?
       }
     ttcol =
       element ttcol {
         attribute width { text }?,
         [ a:defaultValue = "left" ]
         attribute align { "left" | "center" | "right" }?,
   -     text
   +     (cref | eref | iref | xref | text)*
   +   }
   + c =
   +   element c {
   +     (text
   +      | bcp14
   +      | cref
   +      | em
   +      | eref
   +      | iref
   +      | spanx
   +      | strong
   +      | sub
   +      | sup
   +      | tt
   +      | xref)*
   +   }
   + bcp14 = element bcp14 { text }
   + br = element br { empty }
   + back = element back { displayreference*, references*, section* }
   + displayreference =
   +   element displayreference {
   +     attribute target { xsd:IDREF },
   +     attribute to { text }
       }
   - c = element c { (text | xref | eref | iref | cref | spanx)* }
   - back = element back { references*, section* }
     references =
       element references {
   -     [ a:defaultValue = "References" ] attribute title { text }?,
   -     reference+
   +     attribute anchor { xsd:ID }?,
   +     attribute title { text }?,
   +     attribute pn { text }?,
   +     name?,
   +     (reference | referencegroup)*
       }
     reference =
       element reference {

Hoffman                 Expires October 19, 2015              [Page 119]
Internet-Draft                  XML2RFCv3                     April 2015

         attribute anchor { xsd:ID },
         attribute target { text }?,
   +     [ a:defaultValue = "true" ]
   +     attribute quoteTitle { "true" | "false" }?,
         front,
   -     seriesInfo*,
   -     format*,
   -     annotation*
   +     (annotation | format | refcontent | seriesInfo)*
   +   }
   + referencegroup =
   +   element referencegroup {
   +     attribute anchor { xsd:ID },
   +     reference+
       }
     seriesInfo =
       element seriesInfo {
         attribute name { text },
         attribute value { text },
   +     attribute asciiName { text }?,
   +     attribute asciiValue { text }?,
         empty
       }
     format =
       element format {
         attribute target { text }?,
         attribute type { text },
         attribute octets { text }?,
         empty
       }
     annotation =
   -   element annotation { (text | xref | eref | iref | cref |
   - spanx)* }
   +   element annotation {
   +     attribute ascii { text }?,
   +     (text
   +      | bcp14
   +      | cref
   +      | em
   +      | eref
   +      | iref
   +      | spanx
   +      | strong
   +      | sub
   +      | sup
   +      | tt
   +      | xref)*
   +   }

Hoffman                 Expires October 19, 2015              [Page 120]
Internet-Draft                  XML2RFCv3                     April 2015

   + refcontent =
   +   element refcontent {
   +     attribute ascii { text }?,
   +     (text | bcp14 | em | strong | sub | sup | tt)*
   +   }
     start = rfc

Index

   A
      abbrev attribute
         in organization element  39
         in title element  64
      abstract element  10, 90
         inside front  32
         pn attribute  11
      address element  11, 90
         inside author  17
      align attribute
         in artwork element  14
         in figure element  30
         in td element  61
         in texttable element  75
         in th element  63
         in ttcol element  76
      alt attribute
         in artwork element  14
         in figure element  30
      anchor attribute
         in artwork element  14
         in aside element  16
         in blockquote element  20
         in cref element  22
         in dt element  27
         in figure element  30
         in li element  34
         in reference element  42
         in referencegroup element  43
         in references element  43
         in section element  49
         in sourcecode element  53
         in t element  58
         in table element  59
         in texttable element  75
      annotation element  11, 90
         ascii attribute  12
         inside reference  42

Hoffman                 Expires October 19, 2015              [Page 121]
Internet-Draft                  XML2RFCv3                     April 2015

      anything element  90
      application/rfc+xml Media Type  78
      area element  12, 90
         inside front  31
      artwork element  12, 90
         align attribute  14
         alt attribute  14
         anchor attribute  14
         height attribute  14
         inside aside  16
         inside blockquote  19
         inside dd  24
         inside figure  30
         inside li  33
         inside section  48
         inside td  60
         inside th  62
         name attribute  14
         pn attribute  14
         src attribute  15
         type attribute  15
         width attribute  15
         xml:space attribute  16
      ascii attribute
         in annotation element  12
         in city element  21
         in code element  21
         in email element  28
         in organization element  39
         in postalLine element  40
         in refcontent element  41
         in region element  44
         in street element  54
         in title element  64
      asciiFullname attribute
         in author element  17
      asciiInitials attribute
         in author element  17
      asciiName attribute
         in seriesInfo element  50
      asciiSurname attribute
         in author element  17
      asciiValue attribute
         in seriesInfo element  51
      aside element  16, 90
         anchor attribute  16
         inside section  48
         pn attribute  16

Hoffman                 Expires October 19, 2015              [Page 122]
Internet-Draft                  XML2RFCv3                     April 2015

      Attributes
         abbrev  39, 64
         align  14, 30, 61, 63, 75-76
         alt  14, 30
         anchor  14, 16, 20, 22, 27, 30, 34, 42-43, 49, 53, 58-59, 75
         ascii  12, 21, 28, 39-41, 44, 54, 64
         asciiFullname  17
         asciiInitials  17
         asciiName  50
         asciiSurname  17
         asciiValue  51
         blankLines  77
         border  61, 63, 65
         category  44
         cite  20
         colspan  61, 63
         consensus  44
         counter  72
         day  23
         display  22
         docName  45
         empty  66
         finalizedTime  45
         format  68
         fullname  17
         group  37
         hangIndent  72
         hanging  26
         hangText  58
         height  14, 30
         href  35
         initials  17
         ipr  45
         iprExtract  46
         item  32
         keepWithNext  58
         keepWithPrevious  58
         month  24
         name  14, 51, 53
         number  46
         numbered  49
         obsoletes  46
         octets  72
         pageno  69
         pn  11, 14, 16, 20, 27, 30, 34, 37, 44, 49, 53, 59
         primary  32
         quotedFrom  20
         quoteTitle  42

Hoffman                 Expires October 19, 2015              [Page 123]
Internet-Draft                  XML2RFCv3                     April 2015

         rel  35
         relative  69
         removeInRFC  37, 49
         role  18
         rowspan  61, 63
         section  69
         sectionFormat  69
         seriesNo  46
         slugifiedName  36
         sortRefs  46
         source  23
         spacing  26, 37, 66
         src  15, 30, 53
         start  38
         style  38, 73-75
         subitem  33
         submissionType  47
         suppress-title  30, 76
         surname  18
         symRefs  47
         target  25, 29, 42, 70, 72
         title  31, 37, 44, 49, 76
         to  25
         toc  50
         tocDepth  47
         tocInclude  47
         type  15, 53, 72
         updates  48
         value  51
         width  15, 31, 77
         xml:space  16, 74
         year  24
      author element  16, 90
         asciiFullname attribute  17
         asciiInitials attribute  17
         asciiSurname attribute  17
         fullname attribute  17
         initials attribute  17
         inside front  31
         role attribute  18
         surname attribute  18

   B
      back element  18, 90
         inside rfc  44
      bcp14 element  18, 90
         inside annotation  11
         inside blockquote  19

Hoffman                 Expires October 19, 2015              [Page 124]
Internet-Draft                  XML2RFCv3                     April 2015

         inside c  71
         inside dd  24
         inside dt  27
         inside em  28
         inside li  34
         inside postamble  73
         inside preamble  74
         inside refcontent  41
         inside strong  55
         inside sub  56
         inside sup  56
         inside t  57
         inside td  60
         inside th  62
         inside tt  65
      blankLines attribute
         in vspace element  77
      blockquote element  19, 90
         anchor attribute  20
         cite attribute  20
         inside section  48
         pn attribute  20
         quotedFrom attribute  20
      boilerplate element  20, 90
         inside front  32
      border attribute
         in td element  61
         in th element  63
         in tr element  65
      br element  20, 90
         inside td  60
         inside th  62

   C
      c element  71, 90
         inside texttable  75
      category attribute
         in rfc element  44
      cite attribute
         in blockquote element  20
      city element  21, 90
         ascii attribute  21
         inside postal  40
      code element  21, 90
         ascii attribute  21
         inside postal  40
      colspan attribute
         in td element  61

Hoffman                 Expires October 19, 2015              [Page 125]
Internet-Draft                  XML2RFCv3                     April 2015

         in th element  63
      consensus attribute
         in rfc element  44
      counter attribute
         in list element  72
      country element  21, 90
         inside postal  40
      cref element  21, 90
         anchor attribute  22
         display attribute  22
         inside annotation  11
         inside blockquote  19
         inside c  71
         inside dd  24
         inside dt  27
         inside em  28
         inside li  34
         inside name  36
         inside postamble  73
         inside preamble  74
         inside strong  55
         inside sub  56
         inside sup  56
         inside t  57
         inside td  60
         inside th  62
         inside tt  65
         inside ttcol  76
         source attribute  23

   D
      date element  23, 90
         day attribute  23
         inside front  31
         month attribute  24
         year attribute  24
      day attribute
         in date element  23
      dd element  24, 90
         inside dl  26
      display attribute
         in cref element  22
      displayreference element  25, 90
         inside back  18
         target attribute  25
         to attribute  25
      dl element  26, 90
         hanging attribute  26

Hoffman                 Expires October 19, 2015              [Page 126]
Internet-Draft                  XML2RFCv3                     April 2015

         inside abstract  10
         inside aside  16
         inside blockquote  19
         inside dd  24
         inside li  33
         inside note  36
         inside section  48
         inside td  60
         inside th  62
         spacing attribute  26
      docName attribute
         in rfc element  45
      dt element  27, 90
         anchor attribute  27
         inside dl  26
         pn attribute  27

   E
      Elements
         abstract  10, 32
         address  11, 17
         annotation  11, 42
         area  12, 31
         artwork  12, 16, 19, 24, 30, 33, 48, 60, 62
         aside  16, 48
         author  16, 31
         back  18, 44
         bcp14  11, 18-19, 24, 27-28, 34, 41, 55-57, 60, 62, 65, 71,
            73-74
         blockquote  19, 48
         boilerplate  20, 32
         br  20, 60, 62
         c  71, 75
         city  21, 40
         code  21, 40
         country  21, 40
         cref  11, 19, 21, 24, 27-28, 34, 36, 55-57, 60, 62, 65, 71,
            73-74, 76
         date  23, 31
         dd  24, 26
         displayreference  18, 25
         dl  10, 16, 19, 24, 26, 33, 36, 48, 60, 62
         dt  26-27
         em  11, 19, 22, 25, 27, 34, 41, 55-57, 60, 62, 65, 71, 73-74
         email  11, 28
         eref  11, 19, 22, 25, 27-29, 34, 36, 55-57, 60, 62, 65, 71,
            73-74, 76
         facsimile  11, 71

Hoffman                 Expires October 19, 2015              [Page 127]
Internet-Draft                  XML2RFCv3                     April 2015

         figure  16, 19, 24, 29, 33, 48, 60, 62
         format  42, 72
         front  31, 42, 44
         iref  11, 16, 19, 25, 27-29, 32, 34, 48, 55-57, 59-60, 62, 65,
            71, 73-74, 76
         keyword  31, 33
         li  33, 37, 66
         link  34, 44
         list  16, 57, 72
         middle  35, 44
         name  29, 35-36, 43, 48, 59, 75
         note  32, 36
         ol  10, 16, 19, 24, 33, 36-37, 48, 60, 63
         organization  17, 39
         phone  11, 39
         postal  11, 40
         postalLine  40
         postamble  30, 73, 75
         preamble  29, 73, 75
         refcontent  40, 42
         reference  41, 43
         referencegroup  42-43
         references  18, 43
         region  40, 44
         rfc  44
         section  18, 20, 35, 48-49
         seriesInfo  32, 42, 50
         sourcecode  19, 24, 30, 33, 48, 52, 61, 63
         spanx  12, 57, 71, 73-74
         street  40, 54
         strong  12, 20, 22, 25, 27-28, 34, 41, 54, 56-57, 61, 63, 65,
            71, 73-74
         sub  12, 20, 22, 25, 27-28, 34, 41, 55, 57, 61, 63, 65, 71,
            73-74
         sup  12, 20, 22, 25, 27-28, 34, 41, 55-57, 61, 63, 65, 71,
            73-74
         svg  14, 70
         t  10, 16, 19, 24, 33, 36, 48, 57, 60, 62, 72
         table  16, 49, 59
         tbody  59-60
         td  60, 64
         texttable  49, 75
         tfoot  59, 62
         th  62, 64
         thead  59, 64
         title  31, 64
         tr  60, 62, 64
         tt  12, 20, 22, 25, 27-28, 34, 36, 41, 55-58, 61, 63, 65, 71,

Hoffman                 Expires October 19, 2015              [Page 128]
Internet-Draft                  XML2RFCv3                     April 2015

            73-74
         ttcol  75-76
         ul  10, 16, 19, 24, 33, 36, 49, 61, 63, 66
         uri  11, 66
         vspace  58, 77
         workgroup  31, 67
         xref  12, 20, 22, 25, 27-28, 34, 36, 55-58, 61, 63, 65, 67, 71,
            73-74, 76
      em element  27, 90
         inside annotation  11
         inside blockquote  19
         inside c  71
         inside cref  22
         inside dd  25
         inside dt  27
         inside li  34
         inside postamble  73
         inside preamble  74
         inside refcontent  41
         inside strong  55
         inside sub  56
         inside sup  57
         inside t  57
         inside td  60
         inside th  62
         inside tt  65
      email element  28, 90
         ascii attribute  28
         inside address  11
      empty attribute
         in ul element  66
      eref element  29, 90
         inside annotation  11
         inside blockquote  19
         inside c  71
         inside cref  22
         inside dd  25
         inside dt  27
         inside em  28
         inside li  34
         inside name  36
         inside postamble  73
         inside preamble  74
         inside strong  55
         inside sub  56
         inside sup  57
         inside t  57
         inside td  60

Hoffman                 Expires October 19, 2015              [Page 129]
Internet-Draft                  XML2RFCv3                     April 2015

         inside th  62
         inside tt  65
         inside ttcol  76
         target attribute  29

   F
      facsimile element  71, 90
         inside address  11
      figure element  29, 90
         align attribute  30
         alt attribute  30
         anchor attribute  30
         height attribute  30
         inside aside  16
         inside blockquote  19
         inside dd  24
         inside li  33
         inside section  48
         inside td  60
         inside th  62
         pn attribute  30
         src attribute  30
         suppress-title attribute  30
         title attribute  31
         width attribute  31
      finalizedTime attribute
         in rfc element  45
      format attribute
         in xref element  68
      format element  72, 90
         inside reference  42
         octets attribute  72
         target attribute  72
         type attribute  72
      front element  31, 90
         inside reference  42
         inside rfc  44
      fullname attribute
         in author element  17

   G
      group attribute
         in ol element  37

   H
      hangIndent attribute
         in list element  72
      hanging attribute

Hoffman                 Expires October 19, 2015              [Page 130]
Internet-Draft                  XML2RFCv3                     April 2015

         in dl element  26
      hangText attribute
         in t element  58
      height attribute
         in artwork element  14
         in figure element  30
      href attribute
         in link element  35

   I
      initials attribute
         in author element  17
      ipr attribute
         '*2026'  85
         '*3667'  85
         '*3978'  85
         '*trust200811'  85
         '*trust200902'  83
         'noDerivativesTrust200902'  84
         'noModificationTrust200902'  84
         'pre5378Trust200902'  84
         'trust200902'  84
         in rfc element  45
      iprExtract attribute
         in rfc element  46
      iref element  32, 90
         inside annotation  11
         inside aside  16
         inside blockquote  19
         inside c  71
         inside dd  25
         inside dt  27
         inside em  28
         inside figure  29
         inside li  34
         inside postamble  73
         inside preamble  74
         inside section  48
         inside strong  55
         inside sub  56
         inside sup  57
         inside t  57
         inside table  59
         inside td  60
         inside th  62
         inside tt  65
         inside ttcol  76
         item attribute  32

Hoffman                 Expires October 19, 2015              [Page 131]
Internet-Draft                  XML2RFCv3                     April 2015

         primary attribute  32
         subitem attribute  33
      item attribute
         in iref element  32

   K
      keepWithNext attribute
         in t element  58
      keepWithPrevious attribute
         in t element  58
      keyword element  33, 90
         inside front  31

   L
      li element  33, 90
         anchor attribute  34
         inside ol  37
         inside ul  66
         pn attribute  34
      link element  34, 90
         href attribute  35
         inside rfc  44
         rel attribute  35
      list element  72, 90
         counter attribute  72
         hangIndent attribute  72
         inside aside  16
         inside t  57
         style attribute  73

   M
      Media Type
         application/rfc+xml  78
      middle element  35, 90
         inside rfc  44
      month attribute
         in date element  24

   N
      name attribute
         in artwork element  14
         in seriesInfo element  51
         in sourcecode element  53
      name element  35, 90
         inside figure  29
         inside note  36
         inside references  43
         inside section  48

Hoffman                 Expires October 19, 2015              [Page 132]
Internet-Draft                  XML2RFCv3                     April 2015

         inside table  59
         inside texttable  75
         slugifiedName attribute  36
      note element  36, 90
         inside front  32
         pn attribute  37
         removeInRFC attribute  37
         title attribute  37
      number attribute
         in rfc element  46
      numbered attribute
         in section element  49

   O
      obsoletes attribute
         in rfc element  46
      octets attribute
         in format element  72
      ol element  37, 90
         group attribute  37
         inside abstract  10
         inside aside  16
         inside blockquote  19
         inside dd  24
         inside li  33
         inside note  36
         inside section  48
         inside td  60
         inside th  63
         spacing attribute  37
         start attribute  38
         style attribute  38
      organization element  39, 90
         abbrev attribute  39
         ascii attribute  39
         inside author  17

   P
      pageno attribute
         in xref element  69
      phone element  39, 90
         inside address  11
      pn attribute
         in abstract element  11
         in artwork element  14
         in aside element  16
         in blockquote element  20
         in dt element  27

Hoffman                 Expires October 19, 2015              [Page 133]
Internet-Draft                  XML2RFCv3                     April 2015

         in figure element  30
         in li element  34
         in note element  37
         in references element  44
         in section element  49
         in sourcecode element  53
         in t element  59
         in table element  59
      postal element  40, 90
         inside address  11
      postalLine element  40, 90
         ascii attribute  40
         inside postal  40
      postamble element  73, 90
         inside figure  30
         inside texttable  75
      preamble element  73, 90
         inside figure  29
         inside texttable  75
      primary attribute
         in iref element  32

   Q
      quotedFrom attribute
         in blockquote element  20
      quoteTitle attribute
         in reference element  42

   R
      refcontent element  40, 90
         ascii attribute  41
         inside reference  42
      reference element  41, 90
         anchor attribute  42
         inside referencegroup  43
         inside references  43
         quoteTitle attribute  42
         target attribute  42
      referencegroup element  42, 90
         anchor attribute  43
         inside references  43
      references element  43, 90
         anchor attribute  43
         inside back  18
         pn attribute  44
         title attribute  44
      region element  44, 90
         ascii attribute  44

Hoffman                 Expires October 19, 2015              [Page 134]
Internet-Draft                  XML2RFCv3                     April 2015

         inside postal  40
      rel attribute
         in link element  35
      relative attribute
         in xref element  69
      removeInRFC attribute
         in note element  37
         in section element  49
      rfc element  44, 90
         category attribute  44
         consensus attribute  44
         docName attribute  45
         finalizedTime attribute  45
         ipr attribute  45
         iprExtract attribute  46
         number attribute  46
         obsoletes attribute  46
         seriesNo attribute  46
         sortRefs attribute  46
         submissionType attribute  47
         symRefs attribute  47
         tocDepth attribute  47
         tocInclude attribute  47
         updates attribute  48
      role attribute
         in author element  18
      rowspan attribute
         in td element  61
         in th element  63

   S
      section attribute
         in xref element  69
      section element  48, 90
         anchor attribute  49
         inside back  18
         inside boilerplate  20
         inside middle  35
         inside section  49
         numbered attribute  49
         pn attribute  49
         removeInRFC attribute  49
         title attribute  49
         toc attribute  50
      sectionFormat attribute
         in xref element  69
      seriesInfo element  50, 90
         asciiName attribute  50

Hoffman                 Expires October 19, 2015              [Page 135]
Internet-Draft                  XML2RFCv3                     April 2015

         asciiValue attribute  51
         inside front  32
         inside reference  42
         name attribute  51
         value attribute  51
      seriesNo attribute
         in rfc element  46
      slugifiedName attribute
         in name element  36
      sortRefs attribute
         in rfc element  46
      source attribute
         in cref element  23
      sourcecode element  52, 90
         anchor attribute  53
         inside blockquote  19
         inside dd  24
         inside figure  30
         inside li  33
         inside section  48
         inside td  61
         inside th  63
         name attribute  53
         pn attribute  53
         src attribute  53
         type attribute  53
      spacing attribute
         in dl element  26
         in ol element  37
         in ul element  66
      spanx element  74, 90
         inside annotation  12
         inside c  71
         inside postamble  73
         inside preamble  74
         inside t  57
         style attribute  74
         xml:space attribute  74
      src attribute
         in artwork element  15
         in figure element  30
         in sourcecode element  53
      start attribute
         in ol element  38
      street element  54, 90
         ascii attribute  54
         inside postal  40
      strong element  54, 90

Hoffman                 Expires October 19, 2015              [Page 136]
Internet-Draft                  XML2RFCv3                     April 2015

         inside annotation  12
         inside blockquote  20
         inside c  71
         inside cref  22
         inside dd  25
         inside dt  27
         inside em  28
         inside li  34
         inside postamble  73
         inside preamble  74
         inside refcontent  41
         inside sub  56
         inside sup  57
         inside t  57
         inside td  61
         inside th  63
         inside tt  65
      style attribute
         in list element  73
         in ol element  38
         in spanx element  74
         in texttable element  75
      sub element  55, 90
         inside annotation  12
         inside blockquote  20
         inside c  71
         inside cref  22
         inside dd  25
         inside dt  27
         inside em  28
         inside li  34
         inside postamble  73
         inside preamble  74
         inside refcontent  41
         inside strong  55
         inside t  57
         inside td  61
         inside th  63
         inside tt  65
      subitem attribute
         in iref element  33
      submissionType attribute
         in rfc element  47
      sup element  56, 90
         inside annotation  12
         inside blockquote  20
         inside c  71
         inside cref  22

Hoffman                 Expires October 19, 2015              [Page 137]
Internet-Draft                  XML2RFCv3                     April 2015

         inside dd  25
         inside dt  27
         inside em  28
         inside li  34
         inside postamble  73
         inside preamble  74
         inside refcontent  41
         inside strong  55
         inside t  57
         inside td  61
         inside th  63
         inside tt  65
      suppress-title attribute
         in figure element  30
         in texttable element  76
      surname attribute
         in author element  18
      svg element  70, 90
         inside artwork  14
      symRefs attribute
         in rfc element  47

   T
      t element  57, 90
         anchor attribute  58
         hangText attribute  58
         inside abstract  10
         inside aside  16
         inside blockquote  19
         inside dd  24
         inside li  33
         inside list  72
         inside note  36
         inside section  48
         inside td  60
         inside th  62
         keepWithNext attribute  58
         keepWithPrevious attribute  58
         pn attribute  59
      table element  59, 90
         anchor attribute  59
         inside aside  16
         inside section  49
         pn attribute  59
      target attribute
         in displayreference element  25
         in eref element  29
         in format element  72

Hoffman                 Expires October 19, 2015              [Page 138]
Internet-Draft                  XML2RFCv3                     April 2015

         in reference element  42
         in xref element  70
      tbody element  60, 90
         inside table  59
      td element  60, 90
         align attribute  61
         border attribute  61
         colspan attribute  61
         inside tr  64
         rowspan attribute  61
      texttable element  75, 90
         align attribute  75
         anchor attribute  75
         inside section  49
         style attribute  75
         suppress-title attribute  76
         title attribute  76
      tfoot element  62, 90
         inside table  59
      th element  62, 90
         align attribute  63
         border attribute  63
         colspan attribute  63
         inside tr  64
         rowspan attribute  63
      thead element  64, 90
         inside table  59
      title attribute
         in figure element  31
         in note element  37
         in references element  44
         in section element  49
         in texttable element  76
      title element  64, 90
         abbrev attribute  64
         ascii attribute  64
         inside front  31
      to attribute
         in displayreference element  25
      toc attribute
         in section element  50
      tocDepth attribute
         in rfc element  47
      tocInclude attribute
         in rfc element  47
      tr element  64, 90
         border attribute  65
         inside tbody  60

Hoffman                 Expires October 19, 2015              [Page 139]
Internet-Draft                  XML2RFCv3                     April 2015

         inside tfoot  62
         inside thead  64
      tt element  65, 90
         inside annotation  12
         inside blockquote  20
         inside c  71
         inside cref  22
         inside dd  25
         inside dt  27
         inside em  28
         inside li  34
         inside name  36
         inside postamble  73
         inside preamble  74
         inside refcontent  41
         inside strong  55
         inside sub  56
         inside sup  57
         inside t  58
         inside td  61
         inside th  63
      ttcol element  76, 90
         align attribute  76
         inside texttable  75
         width attribute  77
      type attribute
         in artwork element  15
         in format element  72
         in sourcecode element  53

   U
      ul element  66, 90
         empty attribute  66
         inside abstract  10
         inside aside  16
         inside blockquote  19
         inside dd  24
         inside li  33
         inside note  36
         inside section  49
         inside td  61
         inside th  63
         spacing attribute  66
      updates attribute
         in rfc element  48
      uri element  66, 90
         inside address  11

Hoffman                 Expires October 19, 2015              [Page 140]
Internet-Draft                  XML2RFCv3                     April 2015

   V
      value attribute
         in seriesInfo element  51
      vspace element  77, 90
         blankLines attribute  77
         inside t  58

   W
      width attribute
         in artwork element  15
         in figure element  31
         in ttcol element  77
      workgroup element  67, 90
         inside front  31

   X
      xml:space attribute
         in artwork element  16
         in spanx element  74
      xref element  67, 90
         format attribute  68
         inside annotation  12
         inside blockquote  20
         inside c  71
         inside cref  22
         inside dd  25
         inside dt  27
         inside em  28
         inside li  34
         inside name  36
         inside postamble  73
         inside preamble  74
         inside strong  55
         inside sub  56
         inside sup  57
         inside t  58
         inside td  61
         inside th  63
         inside tt  65
         inside ttcol  76
         pageno attribute  69
         relative attribute  69
         section attribute  69
         sectionFormat attribute  69
         target attribute  70
      xref formats
         counter  68
         default  68

Hoffman                 Expires October 19, 2015              [Page 141]
Internet-Draft                  XML2RFCv3                     April 2015

         none  68
         title  68

   Y
      year attribute
         in date element  24

Author's Address

   Paul Hoffman
   VPN Consortium

   EMail: paul.hoffman@vpnc.org

Hoffman                 Expires October 19, 2015              [Page 142]