<?xml version="1.0" encoding="utf-8"?>
<?xml-stylesheet type='text/xsl' href='rfc2629.xslt' ?>
<?rfc toc="yes"?>
<?rfc symrefs="yes"?>
<?rfc sortrefs="yes"?>
<?rfc compact="yes"?>
<?rfc subcompact="no" ?>
<?rfc comments="yes"?>
<?rfc inline="yes"?>
<?rfc linkmailto="no" ?>
<?rfc rfcedstyle="yes"?>
<?rfc-ext allow-markup-in-artwork="yes" ?>
<?rfc-ext include-references-in-index="yes" ?>

<!DOCTYPE rfc [
  <!ENTITY MAY "<bcp14 xmlns='http://purl.org/net/xml2rfc/ext'>MAY</bcp14>">
  <!ENTITY MUST "<bcp14 xmlns='http://purl.org/net/xml2rfc/ext'>MUST</bcp14>">
  <!ENTITY MUST-NOT "<bcp14 xmlns='http://purl.org/net/xml2rfc/ext'>MUST NOT</bcp14>">
  <!ENTITY OPTIONAL "<bcp14 xmlns='http://purl.org/net/xml2rfc/ext'>OPTIONAL</bcp14>">
  <!ENTITY RECOMMENDED "<bcp14 xmlns='http://purl.org/net/xml2rfc/ext'>RECOMMENDED</bcp14>">
  <!ENTITY REQUIRED "<bcp14 xmlns='http://purl.org/net/xml2rfc/ext'>REQUIRED</bcp14>">
  <!ENTITY SHALL "<bcp14 xmlns='http://purl.org/net/xml2rfc/ext'>SHALL</bcp14>">
  <!ENTITY SHALL-NOT "<bcp14 xmlns='http://purl.org/net/xml2rfc/ext'>SHALL NOT</bcp14>">
  <!ENTITY SHOULD "<bcp14 xmlns='http://purl.org/net/xml2rfc/ext'>SHOULD</bcp14>">
  <!ENTITY SHOULD-NOT "<bcp14 xmlns='http://purl.org/net/xml2rfc/ext'>SHOULD NOT</bcp14>">
  <!ENTITY mdash "&#8212;">
]>

<rfc xmlns:x="http://purl.org/net/xml2rfc/ext" obsoletes="2629" xmlns:ed="http://greenbytes.de/2002/rfcedit" ipr="trust200902" docName="draft-reschke-xml2rfc-08" category="info" submissionType="IAB" xml:lang="en">
  <x:feedback template="mailto:xml2rfc@ietf.org?subject={docname},%20%22{section}%22&amp;body=&lt;{ref}&gt;:"/>
	<front>
  <title abbrev="XML2RFC">The 'XML2RFC' version 2 Vocabulary</title>
  <author initials="J. F." surname="Reschke" fullname="Julian F. Reschke">
    <organization abbrev="greenbytes">greenbytes GmbH</organization>
    <address>
      <postal>
        <street>Hafenweg 16</street>
        <city>Muenster</city><region>NW</region><code>48155</code>
        <country>Germany</country>
      </postal>
      <email>julian.reschke@greenbytes.de</email>	
      <uri>http://greenbytes.de/tech/webdav/</uri>	
    </address>
  </author>

  <date year="2014" month="June" day="12"/>
  
  <abstract>
    <t>
      This document defines the 'XML2RFC' version 2 vocabulary; an XML-based
      language used for writing RFCs and Internet-Drafts.
    </t>
  </abstract>

  <note title="Editorial Note (To be removed by RFC Editor)">
    <t>
      Discussion of this draft takes place on the XML2RFC
      mailing list (xml2rfc@ietf.org), which has its home page at
      <eref target="https://www.ietf.org/mailman/listinfo/xml2rfc"/>.
    </t>
  </note>

  </front>

  <middle>
<section title="Introduction">
<t>
  This document describes version 2 ('v2') of the 'XML2RFC' vocabulary; an XML-based
  language ('Extensible Markup Language', <xref target="XML"/>) used for writing RFCs
  (<xref target="RFCSTYLE"/>) and Internet-Drafts (<xref target="IDGUIDE"/>).
</t>
<t>
  It obsoletes the original version ("v1") <xref target="RFC2629"/>, which
  contained the original language definition, and which was subsequently
  extended ("v2"). Furthermore, it discusses potential extensions in a future
  revision ("v3").
</t>
<t>
  Note that the vocabulary contains certain constructs that might not be
  used when generating the final text; however, they can provide useful
  data for other uses (such index generation, populating a keyword database, or
  syntax checks).
</t>

<section title="Syntax Notation" anchor="syntax.notation">
<t>
  The XML vocabulary here is defined in prose, based on the Relax NG schema 
  (<xref target="RNC"/>) contained in <xref target="schema"/> (specified in
  Relax NG Compact Notation, "RNC").
</t>
<t>  
  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).
</t>
</section>

</section>

<section xmlns:x="http://purl.org/net/xml2rfc/ext" title="Elements" anchor="elements">
<t>
  The sections below describe all elements and their attributes.
</t>
<t>  
  Note that attributes not labeled "mandatory" are optional.
</t>
<?BEGININC xml2rfcv2-spec.xml ?>
<!--THIS IS AN AUTOGENERATED FILE. DO NOT EDIT!-->


<!--abstract--><section xmlns:x="http://purl.org/net/xml2rfc/ext" title="&lt;abstract&gt;" anchor="element.abstract">
   <x:anchor-alias value="abstract"/>
   <iref item="Elements" subitem="abstract" primary="true"/>
   <iref item="abstract element" primary="true"/>
   <t>
     Contains the abstract of the document. The abstract ought to be self-contained
     and thus should not contain references or unexpanded abbreviations.
     See <xref target="RFCSTYLE" x:fmt="of" x:sec="4.3"/> for more information.
   </t>
   <t><!--AG-->This element appears as child element of: &lt;<x:ref>front</x:ref>&gt; (<xref target="element.front"/>).</t>
   <t anchor="element.abstract.contents"><!--AG-->
        Content model:
      </t>
        
   <t><!--AG-->
      <iref item="Elements" subitem="t"/>
      <iref item="t element" subitem="inside abstract"/>One or more &lt;<x:ref>t</x:ref>&gt; elements (<xref target="element.t"/>)</t>
      
</section>

<!--address-->
<section xmlns:x="http://purl.org/net/xml2rfc/ext" title="&lt;address&gt;" anchor="element.address">
   <x:anchor-alias value="address"/>
   <iref item="Elements" subitem="address" primary="true"/>
   <iref item="address element" primary="true"/>
   <t>
     Provides address information for the author.
   </t>
   <t><!--AG-->This element appears as child element of: &lt;<x:ref>author</x:ref>&gt; (<xref target="element.author"/>).</t>
   <t anchor="element.address.contents"><!--AG-->Content model:</t>
   <t><!--AG-->In this order:<list style="numbers">
        
         <t><!--AG-->
            <iref item="Elements" subitem="postal"/>
            <iref item="postal element" subitem="inside address"/>One optional &lt;<x:ref>postal</x:ref>&gt; element (<xref target="element.postal"/>)</t>
      
        
         <t><!--AG-->
            <iref item="Elements" subitem="phone"/>
            <iref item="phone element" subitem="inside address"/>One optional &lt;<x:ref>phone</x:ref>&gt; element (<xref target="element.phone"/>)</t>
      
        
         <t><!--AG-->
            <iref item="Elements" subitem="facsimile"/>
            <iref item="facsimile element" subitem="inside address"/>One optional &lt;<x:ref>facsimile</x:ref>&gt; element (<xref target="element.facsimile"/>)</t>
      
        
         <t><!--AG-->
            <iref item="Elements" subitem="email"/>
            <iref item="email element" subitem="inside address"/>One optional &lt;<x:ref>email</x:ref>&gt; element (<xref target="element.email"/>)</t>
      
        
         <t><!--AG-->
            <iref item="Elements" subitem="uri"/>
            <iref item="uri element" subitem="inside address"/>One optional &lt;<x:ref>uri</x:ref>&gt; element (<xref target="element.uri"/>)</t>
      
      </list>
   </t>
</section>

<!--annotation-->
<section xmlns:x="http://purl.org/net/xml2rfc/ext" title="&lt;annotation&gt;" anchor="element.annotation">
   <x:anchor-alias value="annotation"/>
   <iref item="Elements" subitem="annotation" primary="true"/>
   <iref item="annotation element" primary="true"/>
   <t>
      Provides additional prose augmenting a bibliographical reference.
   </t>
   <figure>
      <preamble>For instance:</preamble>
      <artwork type="example">
&lt;annotation&gt;
  Latest version available at &lt;eref
  target='http://www.w3.org/TR/xml'/&gt;.
&lt;/annotation&gt;
</artwork>
      <postamble>...will generate the text used in the reference for <xref target="XML"/>.</postamble>
   </figure>
   <t><!--AG-->This element appears as child element of: &lt;<x:ref>reference</x:ref>&gt; (<xref target="element.reference"/>).</t>
   <t anchor="element.annotation.contents"><!--AG-->
        Content model:
      </t>
   <t><!--AG-->In any order: <list style="symbols">
         <t><!--AG-->Text</t>
         <t><!--AG-->
            <iref item="Elements" subitem="xref"/>
            <iref item="xref element" subitem="inside annotation"/>&lt;<x:ref>xref</x:ref>&gt; elements (<xref target="element.xref"/>)</t>
         <t><!--AG-->
            <iref item="Elements" subitem="eref"/>
            <iref item="eref element" subitem="inside annotation"/>&lt;<x:ref>eref</x:ref>&gt; elements (<xref target="element.eref"/>)</t>
         <t><!--AG-->
            <iref item="Elements" subitem="iref"/>
            <iref item="iref element" subitem="inside annotation"/>&lt;<x:ref>iref</x:ref>&gt; elements (<xref target="element.iref"/>)</t>
         <t><!--AG-->
            <iref item="Elements" subitem="cref"/>
            <iref item="cref element" subitem="inside annotation"/>&lt;<x:ref>cref</x:ref>&gt; elements (<xref target="element.cref"/>)</t>
         <t><!--AG-->
            <iref item="Elements" subitem="spanx"/>
            <iref item="spanx element" subitem="inside annotation"/>&lt;<x:ref>spanx</x:ref>&gt; elements (<xref target="element.spanx"/>)</t>
      </list>
   </t>
</section>

<!--area-->
<section xmlns:x="http://purl.org/net/xml2rfc/ext" title="&lt;area&gt;" anchor="element.area">
   <x:anchor-alias value="area"/>
   <iref item="Elements" subitem="area" primary="true"/>
   <iref item="area element" primary="true"/>
   <t>
      Provides information about the IETF area to which this document relates
      (currently not used when generating documents).
   </t>
   <t>
      The value ought to be either the fullname or the abbreviation of one of
      the IETF areas as listed on <eref target="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".
   </t>
   <t><!--AG-->This element appears as child element of: &lt;<x:ref>front</x:ref>&gt; (<xref target="element.front"/>).</t>
   <t anchor="element.area.contents"><!--AG-->Content model: only text content.</t>
</section>

<!--artwork-->
<section xmlns:x="http://purl.org/net/xml2rfc/ext" title="&lt;artwork&gt;" anchor="element.artwork">
   <x:anchor-alias value="artwork"/>
   <iref item="Elements" subitem="artwork" primary="true"/>
   <iref item="artwork element" primary="true"/>
   <t>
      This element allows the inclusion of "artwork" into the document.
   </t>
   <t>
      &lt;artwork&gt; is the only element in the vocabulary that provides
      full control of horizontal whitespace and line breaks, and thus is
      used for a variety of things, such as:
      <list style="symbols">
         <t>diagrams ("line art"),</t>
         <t>source code,</t>
         <t>formal languages (such as ABNF or the RNC notation used in this document),</t>
         <t>complex tables, or</t>
         <t>protocol unit diagrams.</t>
      </list>
   </t>
   <t>
      Alternatively, the "src" attribute allows referencing an external graphics
      file, such as a bitmap or a vector drawing, using a URI. In this case, the textual
      content acts as fallback for output formats 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.
      Note that RFCs occasionally are published with enhanced diagrams;
      a recent example is <xref target="RFC5598"/>.
   </t>
   <t><!--AG-->This element appears as child element of: &lt;<x:ref>figure</x:ref>&gt; (<xref target="element.figure"/>).</t>
   <t anchor="element.artwork.contents"><!--AG-->
        Content model:
      </t>
        
   <t><!--AG-->Text</t>
      

   <!--artwork/@align-->
   <section title="'align' attribute" anchor="element.artwork.attribute.align" toc="exclude">
      <iref item="Attributes" subitem="align"/>
      <iref item="artwork element" subitem="align attribute"/>
      <iref item="align attribute" subitem="in artwork element"/>
      <t>
            Controls whether the artwork appears left (default), centered,
            or right.
         </t>
      <t><!--AG-->Allowed values: <list style="symbols">
            <t>"left" (default)</t>
            <t>"center"</t>
            <t>"right"</t>
         </list>
      </t>
   </section>

   <!--artwork/@alt-->
   <section title="'alt' attribute" anchor="element.artwork.attribute.alt" toc="exclude">
      <iref item="Attributes" subitem="alt"/>
      <iref item="artwork element" subitem="alt attribute"/>
      <iref item="alt attribute" subitem="in artwork element"/>
      <t>
            Alternative text description of the artwork (not just the caption).
         </t>
   </section>

   <!--artwork/@height-->
   <section title="'height' attribute" anchor="element.artwork.attribute.height" toc="exclude">
      <iref item="Attributes" subitem="height"/>
      <iref item="artwork element" subitem="height attribute"/>
      <iref item="height attribute" subitem="in artwork element"/>
      <t>
            The suggested height of the graphics included using the "src" attribute.
         </t>
      <t>
            This attribute is format-dependent and ought to be avoided.
         </t>
      <t>
            When generating HTML output, current implementations copy the attribute "as is".
            For other output formats it is usually ignored.
         </t>
   </section>

   <!--artwork/@name-->
   <section title="'name' attribute" anchor="element.artwork.attribute.name" toc="exclude">
      <iref item="Attributes" subitem="name"/>
      <iref item="artwork element" subitem="name attribute"/>
      <iref item="name attribute" subitem="in artwork element"/>
      <t>
            A filename suitable for the contents (such as for extraction to a local file).
         </t>
      <t>
            This attribute generally isn't used for document generation, but it can
            be helpful for other kinds of tools (such as automated syntax checkers
            which work by extracting the source code).
         </t>
   </section>

   <!--artwork/@src-->
   <section title="'src' attribute" anchor="element.artwork.attribute.src" toc="exclude">
      <iref item="Attributes" subitem="src"/>
      <iref item="artwork element" subitem="src attribute"/>
      <iref item="src attribute" subitem="in artwork element"/>
      <t>
            The URI of a graphics file.
         </t>
      <t>
            Note that this can be a "data" URI (<xref target="RFC2397"/>) as well, in which case the graphics
            file is wholly part of the XML file.
         </t>
   </section>

   <!--artwork/@type-->
   <section title="'type' attribute" anchor="element.artwork.attribute.type" toc="exclude">
      <iref item="Attributes" subitem="type"/>
      <iref item="artwork element" subitem="type attribute"/>
      <iref item="type attribute" subitem="in artwork element"/>
      <t>
            Specifies the type of the artwork.
         </t>
      <t>
            The value either is a well-known keyword (such as "abnf"), or
            an Internet Media Type (see <xref target="RFC2046"/>).
         </t>
      <t>
            How it is used depends on context and application. For instance, a formatter
            can attempt to syntax-highlight code in certain known languages.
         </t>
   </section>

   <!--artwork/@width-->
   <section title="'width' attribute" anchor="element.artwork.attribute.width" toc="exclude">
      <iref item="Attributes" subitem="width"/>
      <iref item="artwork element" subitem="width attribute"/>
      <iref item="width attribute" subitem="in artwork element"/>
      <t>
            The suggested width of the graphics included using the "src" attribute.
         </t>
      <t>
            This attribute is format-dependent and ought to be avoided.
         </t>
      <t>
            When generating HTML output, current implementations copy the attribute "as is".
            For other output formats it is usually ignored.
         </t>
   </section>

   <!--artwork/@xml:space-->
   <section title="'xml:space' attribute" anchor="element.artwork.attribute.xml-space" toc="exclude">
      <iref item="Attributes" subitem="xml:space"/>
      <iref item="artwork element" subitem="xml:space attribute"/>
      <iref item="xml:space attribute" subitem="in artwork element"/>
      <t>
            Determines whitespace handling.
         </t>
      <t>
            "preserve" is both the default value and the only meaningful
            setting anyway (because that's what the &lt;artwork&gt; element is for).
         </t>
      <t>
            See also <xref target="XML" x:fmt="of" x:sec="2.10" x:rel="#sec-white-space"/>.
         </t>
      <t><!--AG-->Allowed values: <list style="symbols">
            <t>"default"</t>
            <t>"preserve" (default)</t>
         </list>
      </t>
   </section>
</section>

<!--author-->
<section xmlns:x="http://purl.org/net/xml2rfc/ext" title="&lt;author&gt;" anchor="element.author">
   <x:anchor-alias value="author"/>
   <iref item="Elements" subitem="author" primary="true"/>
   <iref item="author element" primary="true"/>
   <t>
      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 (inside of &lt;<x:ref>reference</x:ref>&gt;).
   </t>
   <t>
      The &lt;author&gt; elements contained within the document's &lt;front&gt; element
      are used to fill the boilerplate, and also to generate the "Author's Address"
      section (see <xref target="RFCSTYLE" x:fmt="of" x:sec="4.12"/>).
   </t>
   <t>
      Note that an "author" can also be just an organization (by not specifying any
      of the name attributes, but adding the &lt;<x:ref>organization</x:ref>&gt;
      child element).
   </t>
   <t>
      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".
   </t>
   <t>
      See Section "Authors vs. Contributors" of <xref target="RFCPOLICY"/>
      for more information.
   </t>
   <t><!--AG-->This element appears as child element of: &lt;<x:ref>front</x:ref>&gt; (<xref target="element.front"/>).</t>
   <t anchor="element.author.contents"><!--AG-->Content model:</t>
   <t><!--AG-->In this order:<list style="numbers">
        
         <t><!--AG-->
            <iref item="Elements" subitem="organization"/>
            <iref item="organization element" subitem="inside author"/>One optional &lt;<x:ref>organization</x:ref>&gt; element (<xref target="element.organization"/>)</t>
      
        
         <t><!--AG-->
            <iref item="Elements" subitem="address"/>
            <iref item="address element" subitem="inside author"/>One optional &lt;<x:ref>address</x:ref>&gt; element (<xref target="element.address"/>)</t>
      
      </list>
   </t>

   <!--author/@fullname-->
   <section title="'fullname' attribute" anchor="element.author.attribute.fullname" toc="exclude">
      <iref item="Attributes" subitem="fullname"/>
      <iref item="author element" subitem="fullname attribute"/>
      <iref item="fullname attribute" subitem="in author element"/>
      <t>
            The full name (used in the automatically generated "Author's Address" section).
         </t>
   </section>

   <!--author/@initials-->
   <section title="'initials' attribute" anchor="element.author.attribute.initials" toc="exclude">
      <iref item="Attributes" subitem="initials"/>
      <iref item="author element" subitem="initials attribute"/>
      <iref item="initials attribute" subitem="in author element"/>
      <t>
            Author initials (used on the front page and in references).
         </t>
      <t>
            Initials should be provided as a whitespace separated list of
            pairs of a letter and a dot.
         </t>
   </section>

   <!--author/@role-->
   <section title="'role' attribute" anchor="element.author.attribute.role" toc="exclude">
      <iref item="Attributes" subitem="role"/>
      <iref item="author element" subitem="role attribute"/>
      <iref item="role attribute" subitem="in author element"/>
      <t>
            Specifies the role the author had in creating the document.
         </t>
      <t><!--AG-->Allowed values: <list style="symbols">
            <t>"editor"</t>
         </list>
      </t>
   </section>

   <!--author/@surname-->
   <section title="'surname' attribute" anchor="element.author.attribute.surname" toc="exclude">
      <iref item="Attributes" subitem="surname"/>
      <iref item="author element" subitem="surname attribute"/>
      <iref item="surname attribute" subitem="in author element"/>
      <t>
            The author's surname.
         </t>
   </section>
</section>

<!--back-->
<section xmlns:x="http://purl.org/net/xml2rfc/ext" title="&lt;back&gt;" anchor="element.back">
   <x:anchor-alias value="back"/>
   <iref item="Elements" subitem="back" primary="true"/>
   <iref item="back element" primary="true"/>
   <t>
      Contains the "back" part of the document: the references and appendices. In &lt;back&gt;,
      &lt;<x:ref>section</x:ref>&gt; elements indicate appendices.
   </t>
   <t><!--AG-->This element appears as child element of: &lt;<x:ref>rfc</x:ref>&gt; (<xref target="element.rfc"/>).</t>
   <t anchor="element.back.contents"><!--AG-->Content model:</t>
   <t><!--AG-->In this order:<list style="numbers">
        
         <t><!--AG-->
            <iref item="Elements" subitem="references"/>
            <iref item="references element" subitem="inside back"/>Optional &lt;<x:ref>references</x:ref>&gt; elements (<xref target="element.references"/>)</t>
      
        
         <t><!--AG-->
            <iref item="Elements" subitem="section"/>
            <iref item="section element" subitem="inside back"/>Optional &lt;<x:ref>section</x:ref>&gt; elements (<xref target="element.section"/>)</t>
      
      </list>
   </t>
</section>

<!--c-->
<section xmlns:x="http://purl.org/net/xml2rfc/ext" title="&lt;c&gt;" anchor="element.c">
   <x:anchor-alias value="c"/>
   <iref item="Elements" subitem="c" primary="true"/>
   <iref item="c element" primary="true"/>
   <t>
      Provides the content of a cell in a table.
   </t>
   <t><!--AG-->This element appears as child element of: &lt;<x:ref>texttable</x:ref>&gt; (<xref target="element.texttable"/>).</t>
   <t anchor="element.c.contents"><!--AG-->
        Content model:
      </t>
   <t><!--AG-->In any order: <list style="symbols">
         <t><!--AG-->Text</t>
         <t><!--AG-->
            <iref item="Elements" subitem="xref"/>
            <iref item="xref element" subitem="inside c"/>&lt;<x:ref>xref</x:ref>&gt; elements (<xref target="element.xref"/>)</t>
         <t><!--AG-->
            <iref item="Elements" subitem="eref"/>
            <iref item="eref element" subitem="inside c"/>&lt;<x:ref>eref</x:ref>&gt; elements (<xref target="element.eref"/>)</t>
         <t><!--AG-->
            <iref item="Elements" subitem="iref"/>
            <iref item="iref element" subitem="inside c"/>&lt;<x:ref>iref</x:ref>&gt; elements (<xref target="element.iref"/>)</t>
         <t><!--AG-->
            <iref item="Elements" subitem="cref"/>
            <iref item="cref element" subitem="inside c"/>&lt;<x:ref>cref</x:ref>&gt; elements (<xref target="element.cref"/>)</t>
         <t><!--AG-->
            <iref item="Elements" subitem="spanx"/>
            <iref item="spanx element" subitem="inside c"/>&lt;<x:ref>spanx</x:ref>&gt; elements (<xref target="element.spanx"/>)</t>
      </list>
   </t>
</section>

<!--city-->
<section xmlns:x="http://purl.org/net/xml2rfc/ext" title="&lt;city&gt;" anchor="element.city">
   <x:anchor-alias value="city"/>
   <iref item="Elements" subitem="city" primary="true"/>
   <iref item="city element" primary="true"/>
   <t>
      Gives the city name in a postal address.
   </t>
   <t><!--AG-->This element appears as child element of: &lt;<x:ref>postal</x:ref>&gt; (<xref target="element.postal"/>).</t>
   <t anchor="element.city.contents"><!--AG-->Content model: only text content.</t>
</section>

<!--code-->
<section xmlns:x="http://purl.org/net/xml2rfc/ext" title="&lt;code&gt;" anchor="element.code">
   <x:anchor-alias value="code"/>
   <iref item="Elements" subitem="code" primary="true"/>
   <iref item="code element" primary="true"/>
   <t>
      Gives the postal region code.
   </t>
   <t><!--AG-->This element appears as child element of: &lt;<x:ref>postal</x:ref>&gt; (<xref target="element.postal"/>).</t>
   <t anchor="element.code.contents"><!--AG-->Content model: only text content.</t>
</section>

<!--country-->
<section xmlns:x="http://purl.org/net/xml2rfc/ext" title="&lt;country&gt;" anchor="element.country">
   <x:anchor-alias value="country"/>
   <iref item="Elements" subitem="country" primary="true"/>
   <iref item="country element" primary="true"/>
   <t>
      Gives the country in a postal address.
   </t>
   <t><!--AG-->This element appears as child element of: &lt;<x:ref>postal</x:ref>&gt; (<xref target="element.postal"/>).</t>
   <t anchor="element.country.contents"><!--AG-->Content model: only text content.</t>
</section>

<!--cref-->
<section xmlns:x="http://purl.org/net/xml2rfc/ext" title="&lt;cref&gt;" anchor="element.cref">
   <x:anchor-alias value="cref"/>
   <iref item="Elements" subitem="cref" primary="true"/>
   <iref item="cref element" primary="true"/>
   <t>
      Represents a comment.
   </t>
   <t>
      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 format and settings of the formatter), or not at
      all (when generating an RFC).
   </t>
   <t><!--AG-->This element appears as child element of: &lt;<x:ref>annotation</x:ref>&gt; (<xref target="element.annotation"/>), &lt;<x:ref>c</x:ref>&gt; (<xref target="element.c"/>), &lt;<x:ref>postamble</x:ref>&gt; (<xref target="element.postamble"/>), &lt;<x:ref>preamble</x:ref>&gt; (<xref target="element.preamble"/>), and &lt;<x:ref>t</x:ref>&gt; (<xref target="element.t"/>).</t>
   <t anchor="element.cref.contents"><!--AG-->Content model: only text content.</t>

   <!--cref/@anchor-->
   <section title="'anchor' attribute" anchor="element.cref.attribute.anchor" toc="exclude">
      <iref item="Attributes" subitem="anchor"/>
      <iref item="cref element" subitem="anchor attribute"/>
      <iref item="anchor attribute" subitem="in cref element"/>
      <t>
        Document-wide unique identifier for this comment. The processor
        will auto-generate an identifier when none is given.
      </t>
      <t>
        The value needs to be a valid XML "Name" (<xref target="XML" x:fmt="of" x:sec="2.3" x:rel="#sec-common-syn"/>),
        additionally constrained to US-ASCII characters (<xref target="USASCII"/>).
      </t>
   </section>

   <!--cref/@source-->
   <section title="'source' attribute" anchor="element.cref.attribute.source" toc="exclude">
      <iref item="Attributes" subitem="source"/>
      <iref item="cref element" subitem="source attribute"/>
      <iref item="source attribute" subitem="in cref element"/>
      <t>
            Holds the "source" of a comment, such as the name or the initials
            of the person who made the comment.
         </t>
   </section>
</section>

<!--date-->
<section xmlns:x="http://purl.org/net/xml2rfc/ext" title="&lt;date&gt;" anchor="element.date">
   <x:anchor-alias value="date"/>
   <iref item="Elements" subitem="date" primary="true"/>
   <iref item="date element" primary="true"/>
   <t>
      Provides information about the publication date.
   </t>
   <t>
      Note that this element is used both for the boilerplate of the document
      being produced, and also inside bibliographic references.
   </t>
   <t>
      In the first case, it defines the publication date, which, when producing
      Internet-Drafts, will be used for computing the expiration date (see <xref target="IDGUIDE" x:fmt="of" x:sec="8" x:rel="#expiry"/>). When "year",
      "month" or "day" are left out, the processor will attempt to use the
      current system date if the attributes that are specified do match the system
      date.
   </t>
   <t>
      Note that in the first case, month names need to match the full (English) month name 
      ("January", "February", "March", "April", "May, "June", "July", "August",
      "September", "October", "November", or "December") in order for expiration
      calculations to work (some implementations might support additional
      formats, though).
   </t>
   <t>
      In the second case, 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.
   </t>
   <t><!--AG-->This element appears as child element of: &lt;<x:ref>front</x:ref>&gt; (<xref target="element.front"/>).</t>
   <t anchor="element.date.contents"><!--AG-->Content model: this element does not have any contents.</t>

   <!--date/@day-->
   <section title="'day' attribute" anchor="element.date.attribute.day" toc="exclude">
      <iref item="Attributes" subitem="day"/>
      <iref item="date element" subitem="day attribute"/>
      <iref item="day attribute" subitem="in date element"/>
      <t>
            Day of publication; this is a number.
         </t>
   </section>

   <!--date/@month-->
   <section title="'month' attribute" anchor="element.date.attribute.month" toc="exclude">
      <iref item="Attributes" subitem="month"/>
      <iref item="date element" subitem="month attribute"/>
      <iref item="month attribute" subitem="in date element"/>
      <t>
            Month of publication; this is the English name of the month.
         </t>
   </section>

   <!--date/@year-->
   <section title="'year' attribute" anchor="element.date.attribute.year" toc="exclude">
      <iref item="Attributes" subitem="year"/>
      <iref item="date element" subitem="year attribute"/>
      <iref item="year attribute" subitem="in date element"/>
      <t>
            Year of publication.
         </t>
   </section>
</section>

<!--email-->
<section xmlns:x="http://purl.org/net/xml2rfc/ext" title="&lt;email&gt;" anchor="element.email">
   <x:anchor-alias value="email"/>
   <iref item="Elements" subitem="email" primary="true"/>
   <iref item="email element" primary="true"/>
   <t>
      Provides an email address.
   </t>
   <t>
      The value is expected to be the scheme-specific part of a "mailto" URI
      (so does not include the prefix "mailto:"). See <xref target="RFC6068" x:fmt="of" x:sec="2"/> 
      for details.
   </t>
   <t><!--AG-->This element appears as child element of: &lt;<x:ref>address</x:ref>&gt; (<xref target="element.address"/>).</t>
   <t anchor="element.email.contents"><!--AG-->Content model: only text content.</t>
</section>

<!--eref-->
<section xmlns:x="http://purl.org/net/xml2rfc/ext" title="&lt;eref&gt;" anchor="element.eref">
   <x:anchor-alias value="eref"/>
   <iref item="Elements" subitem="eref" primary="true"/>
   <iref item="eref element" primary="true"/>
   <t>
      Represents an "external" link (as specified in the "target" attribute).
   </t>
   <t>
      If the element has text content, that content will be used. Otherwise, the value of the
      target attribute will be inserted in angle brackets (<xref target="RFC3986" x:fmt="," x:sec="C"/>).
   </t>
   <t><!--AG-->This element appears as child element of: &lt;<x:ref>annotation</x:ref>&gt; (<xref target="element.annotation"/>), &lt;<x:ref>c</x:ref>&gt; (<xref target="element.c"/>), &lt;<x:ref>postamble</x:ref>&gt; (<xref target="element.postamble"/>), &lt;<x:ref>preamble</x:ref>&gt; (<xref target="element.preamble"/>), and &lt;<x:ref>t</x:ref>&gt; (<xref target="element.t"/>).</t>
   <t anchor="element.eref.contents"><!--AG-->Content model: only text content.</t>

   <!--eref/@target-->
   <section title="'target' attribute (mandatory)" anchor="element.eref.attribute.target" toc="exclude">
      <iref item="Attributes" subitem="target"/>
      <iref item="eref element" subitem="target attribute"/>
      <iref item="target attribute" subitem="in eref element"/>
      <t>
            URI of the link target (see <xref target="RFC3986" x:fmt="of" x:sec="3"/>). 
         </t>
   </section>
</section>

<!--facsimile-->
<section xmlns:x="http://purl.org/net/xml2rfc/ext" title="&lt;facsimile&gt;" anchor="element.facsimile">
   <x:anchor-alias value="facsimile"/>
   <iref item="Elements" subitem="facsimile" primary="true"/>
   <iref item="facsimile element" primary="true"/>
   <t>
      Represents the phone number of a fax machine.
   </t>
   <t>
      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 <xref target="RFC3966" x:fmt="of" x:sec="3"/> 
      for details.
   </t>
   <t><!--AG-->This element appears as child element of: &lt;<x:ref>address</x:ref>&gt; (<xref target="element.address"/>).</t>
   <t anchor="element.facsimile.contents"><!--AG-->Content model: only text content.</t>
</section>

<!--figure-->
<section xmlns:x="http://purl.org/net/xml2rfc/ext" title="&lt;figure&gt;" anchor="element.figure">
   <x:anchor-alias value="figure"/>
   <iref item="Elements" subitem="figure" primary="true"/>
   <iref item="figure element" primary="true"/>
   <t>
      This element is used to represent a figure, consisting of an optional preamble,
      the actual figure, an optional postamble, and an optional title.
   </t>
   <t><!--AG-->This element appears as child element of: &lt;<x:ref>section</x:ref>&gt; (<xref target="element.section"/>), and &lt;<x:ref>t</x:ref>&gt; (<xref target="element.t"/>).</t>
   <t anchor="element.figure.contents"><!--AG-->Content model:</t>
   <t><!--AG-->In this order:<list style="numbers">
        
         <t><!--AG-->
            <iref item="Elements" subitem="iref"/>
            <iref item="iref element" subitem="inside figure"/>Optional &lt;<x:ref>iref</x:ref>&gt; elements (<xref target="element.iref"/>)</t>
      
        
         <t><!--AG-->
            <iref item="Elements" subitem="preamble"/>
            <iref item="preamble element" subitem="inside figure"/>One optional &lt;<x:ref>preamble</x:ref>&gt; element (<xref target="element.preamble"/>)</t>
      
         <t><!--AG-->
            <iref item="Elements" subitem="artwork"/>
            <iref item="artwork element" subitem="inside figure"/>One &lt;<x:ref>artwork</x:ref>&gt; element (<xref target="element.artwork"/>)</t>
        
         <t><!--AG-->
            <iref item="Elements" subitem="postamble"/>
            <iref item="postamble element" subitem="inside figure"/>One optional &lt;<x:ref>postamble</x:ref>&gt; element (<xref target="element.postamble"/>)</t>
      
      </list>
   </t>

   <!--figure/@align-->
   <section title="'align' attribute" anchor="element.figure.attribute.align" toc="exclude">
      <iref item="Attributes" subitem="align"/>
      <iref item="figure element" subitem="align attribute"/>
      <iref item="align attribute" subitem="in figure element"/>
      <t>
          Used to change the alignment of &lt;<x:ref>preamble</x:ref>&gt;
          and &lt;<x:ref>postamble</x:ref>&gt;.
      </t>
      <t> 
          Note: does not affect title or &lt;<x:ref>artwork</x:ref>&gt; alignment.
      </t>
      <t><!--AG-->Allowed values: <list style="symbols">
            <t>"left" (default)</t>
            <t>"center"</t>
            <t>"right"</t>
         </list>
      </t>
   </section>

   <!--figure/@alt-->
   <section title="'alt' attribute" anchor="element.figure.attribute.alt" toc="exclude">
      <iref item="Attributes" subitem="alt"/>
      <iref item="figure element" subitem="alt attribute"/>
      <iref item="alt attribute" subitem="in figure element"/>
      <t>
            Duplicates functionality available on &lt;artwork&gt;; avoid it.
         </t>
   </section>

   <!--figure/@anchor-->
   <section title="'anchor' attribute" anchor="element.figure.attribute.anchor" toc="exclude">
      <iref item="Attributes" subitem="anchor"/>
      <iref item="figure element" subitem="anchor attribute"/>
      <iref item="anchor attribute" subitem="in figure element"/>
      <t>
        Document-wide unique identifier for this figure.
      </t>
      <t>
        Furthermore, the presence of this attribute causes the figure to be numbered.
      </t>
      <t>
        The value needs to be a valid XML "Name" (<xref target="XML" x:fmt="of" x:sec="2.3" x:rel="#sec-common-syn"/>).
      </t>
   </section>

   <!--figure/@height-->
   <section title="'height' attribute" anchor="element.figure.attribute.height" toc="exclude">
      <iref item="Attributes" subitem="height"/>
      <iref item="figure element" subitem="height attribute"/>
      <iref item="height attribute" subitem="in figure element"/>
      <t>
            Duplicates functionality available on &lt;artwork&gt;; avoid it.
         </t>
   </section>

   <!--figure/@src-->
   <section title="'src' attribute" anchor="element.figure.attribute.src" toc="exclude">
      <iref item="Attributes" subitem="src"/>
      <iref item="figure element" subitem="src attribute"/>
      <iref item="src attribute" subitem="in figure element"/>
      <t>
            Duplicates functionality available on &lt;artwork&gt;; avoid it.
         </t>
   </section>

   <!--figure/@suppress-title-->
   <section title="'suppress-title' attribute" anchor="element.figure.attribute.suppress-title" toc="exclude">
      <iref item="Attributes" subitem="suppress-title"/>
      <iref item="figure element" subitem="suppress-title attribute"/>
      <iref item="suppress-title attribute" subitem="in figure element"/>
      <t>
            Figures that have an "anchor" attribute will automatically get
            an autogenerated title (such as "Figure 1"), even if the "title"
            attribute is absent. Setting this attribute to "true" will prevent this.
         </t>
      <t><!--AG-->Allowed values: <list style="symbols">
            <t>"true"</t>
            <t>"false" (default)</t>
         </list>
      </t>
   </section>

   <!--figure/@title-->
   <section title="'title' attribute" anchor="element.figure.attribute.title" toc="exclude">
      <iref item="Attributes" subitem="title"/>
      <iref item="figure element" subitem="title attribute"/>
      <iref item="title attribute" subitem="in figure element"/>
      <t>
          The title for the figure; this usually appears on a line after the figure.
      </t>
   </section>

   <!--figure/@width-->
   <section title="'width' attribute" anchor="element.figure.attribute.width" toc="exclude">
      <iref item="Attributes" subitem="width"/>
      <iref item="figure element" subitem="width attribute"/>
      <iref item="width attribute" subitem="in figure element"/>
      <t>
            Duplicates functionality available on &lt;artwork&gt;; avoid it.
         </t>
   </section>
</section>

<!--format-->
<section xmlns:x="http://purl.org/net/xml2rfc/ext" title="&lt;format&gt;" anchor="element.format">
   <x:anchor-alias value="format"/>
   <iref item="Elements" subitem="format" primary="true"/>
   <iref item="format element" primary="true"/>
   <t>
      Provides a link to an additional format variant for a reference. 
   </t>
   <t>
      Note that these additional links are neither used in published RFCs, nor
      supported by all tools. If the goal is to provide a single URI for
      a reference, the "target" attribute on &lt;<x:ref>reference</x:ref>&gt;
      can be used instead.
   </t>
   <t><!--AG-->This element appears as child element of: &lt;<x:ref>reference</x:ref>&gt; (<xref target="element.reference"/>).</t>
   <t anchor="element.format.contents"><!--AG-->Content model: this element does not have any contents.</t>

   <!--format/@octets-->
   <section title="'octets' attribute" anchor="element.format.attribute.octets" toc="exclude">
      <iref item="Attributes" subitem="octets"/>
      <iref item="format element" subitem="octets attribute"/>
      <iref item="octets attribute" subitem="in format element"/>
      <t>
            Octet length of linked-to document.
         </t>
   </section>

   <!--format/@target-->
   <section title="'target' attribute" anchor="element.format.attribute.target" toc="exclude">
      <iref item="Attributes" subitem="target"/>
      <iref item="format element" subitem="target attribute"/>
      <iref item="target attribute" subitem="in format element"/>
      <t>
            URI of document.
         </t>
   </section>

   <!--format/@type-->
   <section title="'type' attribute (mandatory)" anchor="element.format.attribute.type" toc="exclude">
      <iref item="Attributes" subitem="type"/>
      <iref item="format element" subitem="type attribute"/>
      <iref item="type attribute" subitem="in format element"/>
      <t>
            The type of the linked-to document, such as "TXT", "HTML", or "PDF".
         </t>
   </section>
</section>

<!--front-->
<section xmlns:x="http://purl.org/net/xml2rfc/ext" title="&lt;front&gt;" anchor="element.front">
   <x:anchor-alias value="front"/>
   <iref item="Elements" subitem="front" primary="true"/>
   <iref item="front element" primary="true"/>
   <t>
      Represent the "front matter": metadata (such as author information),
      abstract, and additional notes.
   </t>
   <t><!--AG-->This element appears as child element of: &lt;<x:ref>reference</x:ref>&gt; (<xref target="element.reference"/>), and &lt;<x:ref>rfc</x:ref>&gt; (<xref target="element.rfc"/>).</t>
   <t anchor="element.front.contents"><!--AG-->Content model:</t>
   <t><!--AG-->In this order:<list style="numbers">
         <t><!--AG-->
            <iref item="Elements" subitem="title"/>
            <iref item="title element" subitem="inside front"/>One &lt;<x:ref>title</x:ref>&gt; element (<xref target="element.title"/>)</t>
        
         <t><!--AG-->
            <iref item="Elements" subitem="author"/>
            <iref item="author element" subitem="inside front"/>One or more &lt;<x:ref>author</x:ref>&gt; elements (<xref target="element.author"/>)</t>
      
         <t><!--AG-->
            <iref item="Elements" subitem="date"/>
            <iref item="date element" subitem="inside front"/>One &lt;<x:ref>date</x:ref>&gt; element (<xref target="element.date"/>)</t>
        
         <t><!--AG-->
            <iref item="Elements" subitem="area"/>
            <iref item="area element" subitem="inside front"/>Optional &lt;<x:ref>area</x:ref>&gt; elements (<xref target="element.area"/>)</t>
      
        
         <t><!--AG-->
            <iref item="Elements" subitem="workgroup"/>
            <iref item="workgroup element" subitem="inside front"/>Optional &lt;<x:ref>workgroup</x:ref>&gt; elements (<xref target="element.workgroup"/>)</t>
      
        
         <t><!--AG-->
            <iref item="Elements" subitem="keyword"/>
            <iref item="keyword element" subitem="inside front"/>Optional &lt;<x:ref>keyword</x:ref>&gt; elements (<xref target="element.keyword"/>)</t>
      
        
         <t><!--AG-->
            <iref item="Elements" subitem="abstract"/>
            <iref item="abstract element" subitem="inside front"/>One optional &lt;<x:ref>abstract</x:ref>&gt; element (<xref target="element.abstract"/>)</t>
      
        
         <t><!--AG-->
            <iref item="Elements" subitem="note"/>
            <iref item="note element" subitem="inside front"/>Optional &lt;<x:ref>note</x:ref>&gt; elements (<xref target="element.note"/>)</t>
      
      </list>
   </t>
</section>

<!--iref-->
<section xmlns:x="http://purl.org/net/xml2rfc/ext" title="&lt;iref&gt;" anchor="element.iref">
   <x:anchor-alias value="iref"/>
   <iref item="Elements" subitem="iref" primary="true"/>
   <iref item="iref element" primary="true"/>
   <t>
      Provides terms for the document's index.
   </t>
   <t>
      Index entries can be either single items (when just the "item"
      attribute is given) or nested items (by specifying "subitem" as well).
   </t>
   <figure>
      <preamble>For instance:</preamble>
      <artwork type="example">
&lt;iref item="Grammar" subitem="item"/&gt;
</artwork>
      <postamble>will produce an index entry for "Grammar, item".</postamble>
   </figure>
   <t><!--AG-->This element appears as child element of: &lt;<x:ref>annotation</x:ref>&gt; (<xref target="element.annotation"/>), &lt;<x:ref>c</x:ref>&gt; (<xref target="element.c"/>), &lt;<x:ref>figure</x:ref>&gt; (<xref target="element.figure"/>), &lt;<x:ref>postamble</x:ref>&gt; (<xref target="element.postamble"/>), &lt;<x:ref>preamble</x:ref>&gt; (<xref target="element.preamble"/>), &lt;<x:ref>section</x:ref>&gt; (<xref target="element.section"/>), and &lt;<x:ref>t</x:ref>&gt; (<xref target="element.t"/>).</t>
   <t anchor="element.iref.contents"><!--AG-->Content model: this element does not have any contents.</t>

   <!--iref/@item-->
   <section title="'item' attribute (mandatory)" anchor="element.iref.attribute.item" toc="exclude">
      <iref item="Attributes" subitem="item"/>
      <iref item="iref element" subitem="item attribute"/>
      <iref item="item attribute" subitem="in iref element"/>
      <t>
            The item to include.
         </t>
   </section>

   <!--iref/@primary-->
   <section title="'primary' attribute" anchor="element.iref.attribute.primary" toc="exclude">
      <iref item="Attributes" subitem="primary"/>
      <iref item="iref element" subitem="primary attribute"/>
      <iref item="primary attribute" subitem="in iref element"/>
      <t>
            Setting this to "true" declares the occurrence as "primary",
            which might cause it to be highlighted in the index.
         </t>
      <t><!--AG-->Allowed values: <list style="symbols">
            <t>"true"</t>
            <t>"false" (default)</t>
         </list>
      </t>
   </section>

   <!--iref/@subitem-->
   <section title="'subitem' attribute" anchor="element.iref.attribute.subitem" toc="exclude">
      <iref item="Attributes" subitem="subitem"/>
      <iref item="iref element" subitem="subitem attribute"/>
      <iref item="subitem attribute" subitem="in iref element"/>
      <t>
            The subitem to include.
         </t>
   </section>
</section>

<!--keyword-->
<section xmlns:x="http://purl.org/net/xml2rfc/ext" title="&lt;keyword&gt;" anchor="element.keyword">
   <x:anchor-alias value="keyword"/>
   <iref item="Elements" subitem="keyword" primary="true"/>
   <iref item="keyword element" primary="true"/>
   <t>
      Specifies a keyword applicable to the document.
   </t>
   <t>
      Note that each element should only contain a single keyword; for multiple keywords, the
      element can simply be repeated.
   </t>
   <t>
      Keywords are used both in the RFC Index and in the metadata of generated
      document formats.
   </t>
   <t><!--AG-->This element appears as child element of: &lt;<x:ref>front</x:ref>&gt; (<xref target="element.front"/>).</t>
   <t anchor="element.keyword.contents"><!--AG-->Content model: only text content.</t>
</section>

<!--list-->
<section xmlns:x="http://purl.org/net/xml2rfc/ext" title="&lt;list&gt;" anchor="element.list">
   <x:anchor-alias value="list"/>
   <iref item="Elements" subitem="list" primary="true"/>
   <iref item="list element" primary="true"/>
   <t>
      Delineates a text list.
   </t>
   <t>
      Each list item is represented by a &lt;<x:ref>t</x:ref>&gt; element.
      The vocabulary currently does not directly support list items consisting
      of multiple paragraphs; if this is needed, &lt;<x:ref>vspace</x:ref>&gt;
      (<xref target="element.vspace"/>) can be used as workaround.
   </t>
   <t><!--AG-->This element appears as child element of: &lt;<x:ref>t</x:ref>&gt; (<xref target="element.t"/>).</t>
   <t anchor="element.list.contents"><!--AG-->
        Content model:
      </t>
        
   <t><!--AG-->
      <iref item="Elements" subitem="t"/>
      <iref item="t element" subitem="inside list"/>One or more &lt;<x:ref>t</x:ref>&gt; elements (<xref target="element.t"/>)</t>
      

   <!--list/@counter-->
   <section title="'counter' attribute" anchor="element.list.attribute.counter" toc="exclude">
      <iref item="Attributes" subitem="counter"/>
      <iref item="list element" subitem="counter attribute"/>
      <iref item="counter attribute" subitem="in list element"/>
      <t>
        This attribute holds a token that serves as an identifier for a counter.
        The intended use is continuation of lists.
      </t>
      <t>
        Note that this attribute functions only when the style attribute is
        using the "format..." syntax (<xref target="element.list.attribute.style"/>);
        otherwise, it is ignored.
      </t>
   </section>

   <!--list/@hangIndent-->
   <section title="'hangIndent' attribute" anchor="element.list.attribute.hangIndent" toc="exclude">
      <iref item="Attributes" subitem="hangIndent"/>
      <iref item="list element" subitem="hangIndent attribute"/>
      <iref item="hangIndent attribute" subitem="in list element"/>
      <t>
        For list styles with potentially wide labels, this attribute can
        override the default indentation level, measured in characters.
      </t>
      <t>
        Note that it only affects style with variable-width labels
        ("format..." and "hanging", see below), and it may not affect formats
        in which the list item text appears <spanx>below</spanx> the
        label.
      </t>
   </section>

   <!--list/@style-->
   <section title="'style' attribute" anchor="element.list.attribute.style" toc="exclude">
      <iref item="Attributes" subitem="style"/>
      <iref item="list element" subitem="style attribute"/>
      <iref item="style attribute" subitem="in list element"/>
      <t>
        This attribute is used to control the display of a list.
      </t>
      <t>
        The value of this attribute is inherited by any nested lists that do
        not have this attribute set. It may be set to:
      </t>
      <t>
         <iref item="list styles" subitem="empty" primary="true"/>
        "empty" (or not set)
        <list style="empty">
            <t>
            For unlabeled list items; it can also be used for indentation
            purposes (this is the default value).
          </t>
         </list>
      </t>
      <t>
         <iref item="list styles" subitem="hanging" primary="true"/>
        "hanging"
        <list style="empty">
            <t>
            For lists where the items are labeled with a piece of text.
          </t>
            <t>
            The label text is specified in the 'hangText' attribute of the &lt;<x:ref>t</x:ref>&gt;
            element (<xref target="element.t.attribute.hangText"/>).
          </t>
         </list>
      </t>
      <t>
         <iref item="list styles" subitem="letters" primary="true"/>
        "letters"
        <list style="empty">
            <t>
            For ordered lists using letters as labels (lowercase letters
            followed by a period; after "z", it rolls over to a two-letter
            format). For nested lists, processors usually flip between uppercase and lowercase.
          </t>
         </list>
      </t>
      <t>
         <iref item="list styles" subitem="numbers" primary="true"/>
        "numbers"
        <list style="empty">
            <t>
            For ordered lists using numbers as labels.
          </t>
         </list>
      </t>
      <t>
         <iref item="list styles" subitem="symbols" primary="true"/>
        "symbols"
        <list style="empty">
            <t>
            For unordered (bulleted) lists.
          </t>
            <t>
            The style of the bullets is chosen automatically be the processor
            (some implementations allow overriding the default using a
            processing instruction).
          </t>
         </list>
      </t>
      <t>
        And, finally:
      </t>
      <t>
         <iref item="list styles" subitem="format ..." primary="true"/>
        "format ..."
        <list style="empty">
            <t>
            For lists with customized labels, consisting of fixed text and
            an item counter in various formats.
          </t>
            <t>
            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.
          </t>
            <t>
            The following formats are supported:
            <list style="hanging">
                  <t hangText="%c">
                lowercase letters (a, b, c, etc.)
              </t>
                  <t hangText="%C">
                uppercase letters (A, B, C, etc.)
              </t>
                  <t hangText="%d">
                decimal numbers (1, 2, 3, etc.)
              </t>
                  <t hangText="%i">
                lowercase Roman numerals (i, ii, iii, etc.)
              </t>
                  <t hangText="%I">
                uppercase Roman numerals (I, II, III, etc.)
              </t>
                  <t hangText="%%">
                represents a percent sign
              </t>
               </list>
            </t>
            <t>
            Other formats are reserved for future use.
          </t>
            <t/>
         </list>
      </t>
   </section>
</section>

<!--middle-->
<section xmlns:x="http://purl.org/net/xml2rfc/ext" title="&lt;middle&gt;" anchor="element.middle">
   <x:anchor-alias value="middle"/>
   <iref item="Elements" subitem="middle" primary="true"/>
   <iref item="middle element" primary="true"/>
   <t>
      Represents the main content of the document.
   </t>
   <t><!--AG-->This element appears as child element of: &lt;<x:ref>rfc</x:ref>&gt; (<xref target="element.rfc"/>).</t>
   <t anchor="element.middle.contents"><!--AG-->
        Content model:
      </t>
        
   <t><!--AG-->
      <iref item="Elements" subitem="section"/>
      <iref item="section element" subitem="inside middle"/>One or more &lt;<x:ref>section</x:ref>&gt; elements (<xref target="element.section"/>)</t>
      
</section>

<!--note-->
<section xmlns:x="http://purl.org/net/xml2rfc/ext" title="&lt;note&gt;" anchor="element.note">
   <x:anchor-alias value="note"/>
   <iref item="Elements" subitem="note" primary="true"/>
   <iref item="note element" primary="true"/>
   <t>
      Creates an unnumbered section that appears after the abstract.
   </t>
   <t>
      It is usually used for additional information to reviewers (working
      group information, mailing list, ...), or for additional publication
      information such as "IESG Notes".
   </t>
   <t><!--AG-->This element appears as child element of: &lt;<x:ref>front</x:ref>&gt; (<xref target="element.front"/>).</t>
   <t anchor="element.note.contents"><!--AG-->
        Content model:
      </t>
        
   <t><!--AG-->
      <iref item="Elements" subitem="t"/>
      <iref item="t element" subitem="inside note"/>One or more &lt;<x:ref>t</x:ref>&gt; elements (<xref target="element.t"/>)</t>
      

   <!--note/@title-->
   <section title="'title' attribute (mandatory)" anchor="element.note.attribute.title" toc="exclude">
      <iref item="Attributes" subitem="title"/>
      <iref item="note element" subitem="title attribute"/>
      <iref item="title attribute" subitem="in note element"/>
      <t>
            The title of the note.
         </t>
   </section>
</section>

<!--organization-->
<section xmlns:x="http://purl.org/net/xml2rfc/ext" title="&lt;organization&gt;" anchor="element.organization">
   <x:anchor-alias value="organization"/>
   <iref item="Elements" subitem="organization" primary="true"/>
   <iref item="organization element" primary="true"/>
   <t>
      Specifies the affiliation of an author.
   </t>
   <t>
      This information appears in both the "Author's Address" section and
      on the front page (see <xref target="RFCSTYLE" x:fmt="," x:sec="4.1.1"/> for more information).
      If the value is long, an abbreviated variant can be specified in the
      "abbrev" attribute.
   </t>
   <t><!--AG-->This element appears as child element of: &lt;<x:ref>author</x:ref>&gt; (<xref target="element.author"/>).</t>
   <t anchor="element.organization.contents"><!--AG-->Content model: only text content.</t>

   <!--organization/@abbrev-->
   <section title="'abbrev' attribute" anchor="element.organization.attribute.abbrev" toc="exclude">
      <iref item="Attributes" subitem="abbrev"/>
      <iref item="organization element" subitem="abbrev attribute"/>
      <iref item="abbrev attribute" subitem="in organization element"/>
      <t>
            Abbreviated variant.
         </t>
   </section>
</section>

<!--phone-->
<section xmlns:x="http://purl.org/net/xml2rfc/ext" title="&lt;phone&gt;" anchor="element.phone">
   <x:anchor-alias value="phone"/>
   <iref item="Elements" subitem="phone" primary="true"/>
   <iref item="phone element" primary="true"/>
   <t>
      Represents a phone number.
   </t>
   <t>
      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 <xref target="RFC3966" x:fmt="of" x:sec="3"/> 
      for details.
   </t>
   <t><!--AG-->This element appears as child element of: &lt;<x:ref>address</x:ref>&gt; (<xref target="element.address"/>).</t>
   <t anchor="element.phone.contents"><!--AG-->Content model: only text content.</t>
</section>

<!--postal-->
<section xmlns:x="http://purl.org/net/xml2rfc/ext" title="&lt;postal&gt;" anchor="element.postal">
   <x:anchor-alias value="postal"/>
   <iref item="Elements" subitem="postal" primary="true"/>
   <iref item="postal element" primary="true"/>
   <t>
      Contains child elements providing postal information.
   </t>
   <t><!--AG-->This element appears as child element of: &lt;<x:ref>address</x:ref>&gt; (<xref target="element.address"/>).</t>
   <t anchor="element.postal.contents"><!--AG-->Content model:</t>
   <t><!--AG-->In this order:<list style="numbers">
        
         <t><!--AG-->
            <iref item="Elements" subitem="street"/>
            <iref item="street element" subitem="inside postal"/>One or more &lt;<x:ref>street</x:ref>&gt; elements (<xref target="element.street"/>)</t>
      
         <t><!--AG-->In any order: <list style="symbols">
               <t><!--AG-->
                  <iref item="Elements" subitem="city"/>
                  <iref item="city element" subitem="inside postal"/>&lt;<x:ref>city</x:ref>&gt; elements (<xref target="element.city"/>)</t>
               <t><!--AG-->
                  <iref item="Elements" subitem="region"/>
                  <iref item="region element" subitem="inside postal"/>&lt;<x:ref>region</x:ref>&gt; elements (<xref target="element.region"/>)</t>
               <t><!--AG-->
                  <iref item="Elements" subitem="code"/>
                  <iref item="code element" subitem="inside postal"/>&lt;<x:ref>code</x:ref>&gt; elements (<xref target="element.code"/>)</t>
               <t><!--AG-->
                  <iref item="Elements" subitem="country"/>
                  <iref item="country element" subitem="inside postal"/>&lt;<x:ref>country</x:ref>&gt; elements (<xref target="element.country"/>)</t>
            </list>
         </t>
      </list>
   </t>
</section>

<!--postamble-->
<section xmlns:x="http://purl.org/net/xml2rfc/ext" title="&lt;postamble&gt;" anchor="element.postamble">
   <x:anchor-alias value="postamble"/>
   <iref item="Elements" subitem="postamble" primary="true"/>
   <iref item="postamble element" primary="true"/>
   <t>
      Gives text that appears at the bottom of a figure or table.
   </t>
   <t><!--AG-->This element appears as child element of: &lt;<x:ref>figure</x:ref>&gt; (<xref target="element.figure"/>), and &lt;<x:ref>texttable</x:ref>&gt; (<xref target="element.texttable"/>).</t>
   <t anchor="element.postamble.contents"><!--AG-->
        Content model:
      </t>
   <t><!--AG-->In any order: <list style="symbols">
         <t><!--AG-->Text</t>
         <t><!--AG-->
            <iref item="Elements" subitem="xref"/>
            <iref item="xref element" subitem="inside postamble"/>&lt;<x:ref>xref</x:ref>&gt; elements (<xref target="element.xref"/>)</t>
         <t><!--AG-->
            <iref item="Elements" subitem="eref"/>
            <iref item="eref element" subitem="inside postamble"/>&lt;<x:ref>eref</x:ref>&gt; elements (<xref target="element.eref"/>)</t>
         <t><!--AG-->
            <iref item="Elements" subitem="iref"/>
            <iref item="iref element" subitem="inside postamble"/>&lt;<x:ref>iref</x:ref>&gt; elements (<xref target="element.iref"/>)</t>
         <t><!--AG-->
            <iref item="Elements" subitem="cref"/>
            <iref item="cref element" subitem="inside postamble"/>&lt;<x:ref>cref</x:ref>&gt; elements (<xref target="element.cref"/>)</t>
         <t><!--AG-->
            <iref item="Elements" subitem="spanx"/>
            <iref item="spanx element" subitem="inside postamble"/>&lt;<x:ref>spanx</x:ref>&gt; elements (<xref target="element.spanx"/>)</t>
      </list>
   </t>
</section>

<!--preamble-->
<section xmlns:x="http://purl.org/net/xml2rfc/ext" title="&lt;preamble&gt;" anchor="element.preamble">
   <x:anchor-alias value="preamble"/>
   <iref item="Elements" subitem="preamble" primary="true"/>
   <iref item="preamble element" primary="true"/>
   <t>
      Gives text that appears at the top of a figure or table.
   </t>
   <t><!--AG-->This element appears as child element of: &lt;<x:ref>figure</x:ref>&gt; (<xref target="element.figure"/>), and &lt;<x:ref>texttable</x:ref>&gt; (<xref target="element.texttable"/>).</t>
   <t anchor="element.preamble.contents"><!--AG-->
        Content model:
      </t>
   <t><!--AG-->In any order: <list style="symbols">
         <t><!--AG-->Text</t>
         <t><!--AG-->
            <iref item="Elements" subitem="xref"/>
            <iref item="xref element" subitem="inside preamble"/>&lt;<x:ref>xref</x:ref>&gt; elements (<xref target="element.xref"/>)</t>
         <t><!--AG-->
            <iref item="Elements" subitem="eref"/>
            <iref item="eref element" subitem="inside preamble"/>&lt;<x:ref>eref</x:ref>&gt; elements (<xref target="element.eref"/>)</t>
         <t><!--AG-->
            <iref item="Elements" subitem="iref"/>
            <iref item="iref element" subitem="inside preamble"/>&lt;<x:ref>iref</x:ref>&gt; elements (<xref target="element.iref"/>)</t>
         <t><!--AG-->
            <iref item="Elements" subitem="cref"/>
            <iref item="cref element" subitem="inside preamble"/>&lt;<x:ref>cref</x:ref>&gt; elements (<xref target="element.cref"/>)</t>
         <t><!--AG-->
            <iref item="Elements" subitem="spanx"/>
            <iref item="spanx element" subitem="inside preamble"/>&lt;<x:ref>spanx</x:ref>&gt; elements (<xref target="element.spanx"/>)</t>
      </list>
   </t>
</section>

<!--reference-->
<section xmlns:x="http://purl.org/net/xml2rfc/ext" title="&lt;reference&gt;" anchor="element.reference">
   <x:anchor-alias value="reference"/>
   <iref item="Elements" subitem="reference" primary="true"/>
   <iref item="reference element" primary="true"/>
   <t>
      Represents a bibliographical reference.
   </t>
   <t><!--AG-->This element appears as child element of: &lt;<x:ref>references</x:ref>&gt; (<xref target="element.references"/>).</t>
   <t anchor="element.reference.contents"><!--AG-->Content model:</t>
   <t><!--AG-->In this order:<list style="numbers">
         <t><!--AG-->
            <iref item="Elements" subitem="front"/>
            <iref item="front element" subitem="inside reference"/>One &lt;<x:ref>front</x:ref>&gt; element (<xref target="element.front"/>)</t>
        
         <t><!--AG-->
            <iref item="Elements" subitem="seriesInfo"/>
            <iref item="seriesInfo element" subitem="inside reference"/>Optional &lt;<x:ref>seriesInfo</x:ref>&gt; elements (<xref target="element.seriesInfo"/>)</t>
      
        
         <t><!--AG-->
            <iref item="Elements" subitem="format"/>
            <iref item="format element" subitem="inside reference"/>Optional &lt;<x:ref>format</x:ref>&gt; elements (<xref target="element.format"/>)</t>
      
        
         <t><!--AG-->
            <iref item="Elements" subitem="annotation"/>
            <iref item="annotation element" subitem="inside reference"/>Optional &lt;<x:ref>annotation</x:ref>&gt; elements (<xref target="element.annotation"/>)</t>
      
      </list>
   </t>

   <!--reference/@anchor-->
   <section title="'anchor' attribute (mandatory)" anchor="element.reference.attribute.anchor" toc="exclude">
      <iref item="Attributes" subitem="anchor"/>
      <iref item="reference element" subitem="anchor attribute"/>
      <iref item="anchor attribute" subitem="in reference element"/>
      <t>
        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.
      </t>
      <t>
        The value needs to be a valid XML "Name" (<xref target="XML" x:fmt="of" x:sec="2.3" x:rel="#sec-common-syn"/>),
        additionally constrained to US-ASCII characters (<xref target="USASCII"/>).
      </t>
   </section>

   <!--reference/@target-->
   <section title="'target' attribute" anchor="element.reference.attribute.target" toc="exclude">
      <iref item="Attributes" subitem="target"/>
      <iref item="reference element" subitem="target attribute"/>
      <iref item="target attribute" subitem="in reference element"/>
      <t>
            Holds the URI for the reference.
         </t>
      <t>
            Note that depending on the &lt;<x:ref>seriesInfo</x:ref>&gt;
            element, a URI might not be needed, nor desirable, as it can 
            be automatically generated (for instance, for RFCs).
         </t>
   </section>
</section>

<!--references-->
<section xmlns:x="http://purl.org/net/xml2rfc/ext" title="&lt;references&gt;" anchor="element.references">
   <x:anchor-alias value="references"/>
   <iref item="Elements" subitem="references" primary="true"/>
   <iref item="references element" primary="true"/>
   <t>
      Contains a set of bibliographical references.
   </t>
   <t>
      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 <xref target="RFCSTYLE" x:fmt="of" x:sec="4.8.6"/>).
      This vocabulary supports the split with the "title" attribute.
   </t>
   <t><!--AG-->This element appears as child element of: &lt;<x:ref>back</x:ref>&gt; (<xref target="element.back"/>).</t>
   <t anchor="element.references.contents"><!--AG-->
        Content model:
      </t>
        
   <t><!--AG-->
      <iref item="Elements" subitem="reference"/>
      <iref item="reference element" subitem="inside references"/>One or more &lt;<x:ref>reference</x:ref>&gt; elements (<xref target="element.reference"/>)</t>
      

   <!--references/@title-->
   <section title="'title' attribute" anchor="element.references.attribute.title" toc="exclude">
      <iref item="Attributes" subitem="title"/>
      <iref item="references element" subitem="title attribute"/>
      <iref item="title attribute" subitem="in references element"/>
      <t>
            Provides the title for the References section (defaulting to
            "References").
         </t>
      <t>
            In general, the title should be either "Normative References" or
            "Informative References".
         </t>
   </section>
</section>

<!--region-->
<section xmlns:x="http://purl.org/net/xml2rfc/ext" title="&lt;region&gt;" anchor="element.region">
   <x:anchor-alias value="region"/>
   <iref item="Elements" subitem="region" primary="true"/>
   <iref item="region element" primary="true"/>
   <t>
      Provides the region name in a postal address.
   </t>
   <t><!--AG-->This element appears as child element of: &lt;<x:ref>postal</x:ref>&gt; (<xref target="element.postal"/>).</t>
   <t anchor="element.region.contents"><!--AG-->Content model: only text content.</t>
</section>

<!--rfc-->
<section xmlns:x="http://purl.org/net/xml2rfc/ext" title="&lt;rfc&gt;" anchor="element.rfc">
   <x:anchor-alias value="rfc"/>
   <iref item="Elements" subitem="rfc" primary="true"/>
   <iref item="rfc element" primary="true"/>
   <t>
      This is the root element of the xml2rfc vocabulary.
   </t>
   <t>
      Processors distinguish between RFC mode ("number" attribute being
      present) and Internet-Draft mode ("docName" attribute being present):
      it is invalid to specify both. Setting neither "number" nor "docName" can be useful for
      producing other types of document but is out-of-scope for this specification.
   </t>
   <t anchor="element.rfc.contents"><!--AG-->Content model:</t>
   <t><!--AG-->In this order:<list style="numbers">
         <t><!--AG-->
            <iref item="Elements" subitem="front"/>
            <iref item="front element" subitem="inside rfc"/>One &lt;<x:ref>front</x:ref>&gt; element (<xref target="element.front"/>)</t>
         <t><!--AG-->
            <iref item="Elements" subitem="middle"/>
            <iref item="middle element" subitem="inside rfc"/>One &lt;<x:ref>middle</x:ref>&gt; element (<xref target="element.middle"/>)</t>
        
         <t><!--AG-->
            <iref item="Elements" subitem="back"/>
            <iref item="back element" subitem="inside rfc"/>One optional &lt;<x:ref>back</x:ref>&gt; element (<xref target="element.back"/>)</t>
      
      </list>
   </t>

   <!--rfc/@category-->
   <section title="'category' attribute" anchor="element.rfc.attribute.category" toc="exclude">
      <iref item="Attributes" subitem="category"/>
      <iref item="rfc element" subitem="category attribute"/>
      <iref item="category attribute" subitem="in rfc element"/>
      <t>
            Document category (see <xref target="attribute-category"/>).
         </t>
      <t><!--AG-->Allowed values: <list style="symbols">
            <t>"std"</t>
            <t>"bcp"</t>
            <t>"info"</t>
            <t>"exp"</t>
            <t>"historic"</t>
         </list>
      </t>
   </section>

   <!--rfc/@consensus-->
   <section title="'consensus' attribute" anchor="element.rfc.attribute.consensus" toc="exclude">
      <iref item="Attributes" subitem="consensus"/>
      <iref item="rfc element" subitem="consensus attribute"/>
      <iref item="consensus attribute" subitem="in rfc element"/>
      <t>
            Affects the generated boilerplate.
         </t>
      <t>
            See <xref target="RFC5741"/> for more information.
         </t>
      <t><!--AG-->Allowed values: <list style="symbols">
            <t>"no"</t>
            <t>"yes"</t>
         </list>
      </t>
   </section>

   <!--rfc/@docName-->
   <section title="'docName' attribute" anchor="element.rfc.attribute.docName" toc="exclude">
      <iref item="Attributes" subitem="docName"/>
      <iref item="rfc element" subitem="docName attribute"/>
      <iref item="docName attribute" subitem="in rfc element"/>
      <t>
            For Internet-Drafts, this specifies the draft name (which appears
            below the title).
         </t>
      <t>
            A processor should give an error if both the "docName" and "number"
            attributes are given in the &lt;rfc&gt; element.
      </t>
      <t>
            Note that the file extension is not part of the draft, so in
            general it should end with the current draft number ("-", plus two
            digits).
         </t>
      <t>
            Furthermore, it is good practice to disambiguate current editor
            copies from submitted drafts (for instance, by replacing the
            draft number with the string "latest").
         </t>
      <t>
            See <xref target="IDGUIDE" x:fmt="of" x:sec="7" x:rel="#naming"/>
            for further information.
         </t>
   </section>

   <!--rfc/@ipr-->
   <section title="'ipr' attribute" anchor="element.rfc.attribute.ipr" toc="exclude">
      <iref item="Attributes" subitem="ipr"/>
      <iref item="rfc element" subitem="ipr attribute"/>
      <iref item="ipr attribute" subitem="in rfc element"/>
      <t>
            Represents the Intellectual Property status of the document.
            See <xref target="attribute-ipr"/> for details.
         </t>
      <t><!--AG-->Allowed values: <list style="symbols">
            <t>"full2026"</t>
            <t>"noDerivativeWorks2026"</t>
            <t>"none"</t>
            <t>"full3667"</t>
            <t>"noModification3667"</t>
            <t>"noDerivatives3667"</t>
            <t>"full3978"</t>
            <t>"noModification3978"</t>
            <t>"noDerivatives3978"</t>
            <t>"trust200811"</t>
            <t>"noModificationTrust200811"</t>
            <t>"noDerivativesTrust200811"</t>
            <t>"trust200902"</t>
            <t>"noModificationTrust200902"</t>
            <t>"noDerivativesTrust200902"</t>
            <t>"pre5378Trust200902"</t>
         </list>
      </t>
   </section>

   <!--rfc/@iprExtract-->
   <section title="'iprExtract' attribute" anchor="element.rfc.attribute.iprExtract" toc="exclude">
      <iref item="Attributes" subitem="iprExtract"/>
      <iref item="rfc element" subitem="iprExtract attribute"/>
      <iref item="iprExtract attribute" subitem="in rfc element"/>
      <t>
            Identifies a single section within the document (by its 'anchor'
            attribute) for which extraction "as-is" is explicitly allowed (this
            is only relevant for historic values of the "ipr" attribute).
      </t>
   </section>

   <!--rfc/@number-->
   <section title="'number' attribute" anchor="element.rfc.attribute.number" toc="exclude">
      <iref item="Attributes" subitem="number"/>
      <iref item="rfc element" subitem="number attribute"/>
      <iref item="number attribute" subitem="in rfc element"/>
      <t>
            The number of the RFC to be produced.
         </t>
      <t>
            A processor should give an error if both the "docName" and "number"
            attributes are given in the &lt;rfc&gt; element.
         </t>
   </section>

   <!--rfc/@obsoletes-->
   <section title="'obsoletes' attribute" anchor="element.rfc.attribute.obsoletes" toc="exclude">
      <iref item="Attributes" subitem="obsoletes"/>
      <iref item="rfc element" subitem="obsoletes attribute"/>
      <iref item="obsoletes attribute" subitem="in rfc element"/>
      <t>
            A comma-separated list of RFC <spanx>numbers</spanx> or
            Internet-Draft names.
         </t>
      <t>
            Processors ought to parse the attribute value, so that incorrect
            references can be detected and, depending on output format, 
            hyperlinks can be generated. Also, the value ought to be reformatted
            to insert whitespace after each comma if not already present.
      </t>
   </section>

   <!--rfc/@seriesNo-->
   <section title="'seriesNo' attribute" anchor="element.rfc.attribute.seriesNo" toc="exclude">
      <iref item="Attributes" subitem="seriesNo"/>
      <iref item="rfc element" subitem="seriesNo attribute"/>
      <iref item="seriesNo attribute" subitem="in rfc element"/>
      <t>
            When producing a document within document series (such as "STD"):
            the number within that series.
         </t>
   </section>

   <!--rfc/@submissionType-->
   <section title="'submissionType' attribute" anchor="element.rfc.attribute.submissionType" toc="exclude">
      <iref item="Attributes" subitem="submissionType"/>
      <iref item="rfc element" subitem="submissionType attribute"/>
      <iref item="submissionType attribute" subitem="in rfc element"/>
      <t>
            The document stream.
         </t>
      <t>
            See <xref target="RFC5741" x:fmt="of" x:sec="2"/> for details.
         </t>
      <t><!--AG-->Allowed values: <list style="symbols">
            <t>"IETF" (default)</t>
            <t>"IAB"</t>
            <t>"IRTF"</t>
            <t>"independent"</t>
         </list>
      </t>
   </section>

   <!--rfc/@updates-->
   <section title="'updates' attribute" anchor="element.rfc.attribute.updates" toc="exclude">
      <iref item="Attributes" subitem="updates"/>
      <iref item="rfc element" subitem="updates attribute"/>
      <iref item="updates attribute" subitem="in rfc element"/>
      <t>
            A comma-separated list of RFC <spanx>numbers</spanx> or
            Internet-Draft names.
         </t>
      <t>
            Processors ought to parse the attribute value, so that incorrect
            references can be detected and, depending on output format, 
            hyperlinks can be generated. Also, the value ought to be reformatted
            to insert whitespace after each comma if not already present.
      </t>
   </section>

   <!--rfc/@xml:lang-->
   <section title="'xml:lang' attribute" anchor="element.rfc.attribute.xml-lang" toc="exclude">
      <iref item="Attributes" subitem="xml:lang"/>
      <iref item="rfc element" subitem="xml:lang attribute"/>
      <iref item="xml:lang attribute" subitem="in rfc element"/>
      <t>
            The natural language used in the document (defaults to "en").
         </t>
      <t>
            See <xref target="XML" x:fmt="of" x:sec="2.12" x:rel="#sec-lang-tag"/>
            for more information.
         </t>
   </section>
</section>

<!--section-->
<section xmlns:x="http://purl.org/net/xml2rfc/ext" title="&lt;section&gt;" anchor="element.section">
   <x:anchor-alias value="section"/>
   <iref item="Elements" subitem="section" primary="true"/>
   <iref item="section element" primary="true"/>
   <t>
      Represents a section (when inside a &lt;middle&gt; element) or an appendix (when inside a
      &lt;back&gt; element).
   </t>
   <t>
      Sub-sections are created by nesting &lt;section&gt; elements inside &lt;section&gt; elements.
   </t>
   <t><!--AG-->This element appears as child element of: &lt;<x:ref>back</x:ref>&gt; (<xref target="element.back"/>), &lt;<x:ref>middle</x:ref>&gt; (<xref target="element.middle"/>), and &lt;<x:ref>section</x:ref>&gt; (<xref target="element.section"/>).</t>
   <t anchor="element.section.contents"><!--AG-->Content model:</t>
   <t><!--AG-->In this order:<list style="numbers">
         <t><!--AG-->In any order: <list style="symbols">
               <t><!--AG-->
                  <iref item="Elements" subitem="t"/>
                  <iref item="t element" subitem="inside section"/>&lt;<x:ref>t</x:ref>&gt; elements (<xref target="element.t"/>)</t>
               <t><!--AG-->
                  <iref item="Elements" subitem="figure"/>
                  <iref item="figure element" subitem="inside section"/>&lt;<x:ref>figure</x:ref>&gt; elements (<xref target="element.figure"/>)</t>
               <t><!--AG-->
                  <iref item="Elements" subitem="texttable"/>
                  <iref item="texttable element" subitem="inside section"/>&lt;<x:ref>texttable</x:ref>&gt; elements (<xref target="element.texttable"/>)</t>
               <t><!--AG-->
                  <iref item="Elements" subitem="iref"/>
                  <iref item="iref element" subitem="inside section"/>&lt;<x:ref>iref</x:ref>&gt; elements (<xref target="element.iref"/>)</t>
            </list>
         </t>
        
         <t><!--AG-->
            <iref item="Elements" subitem="section"/>
            <iref item="section element" subitem="inside section"/>Optional &lt;<x:ref>section</x:ref>&gt; elements (<xref target="element.section"/>)</t>
      
      </list>
   </t>

   <!--section/@anchor-->
   <section title="'anchor' attribute" anchor="element.section.attribute.anchor" toc="exclude">
      <iref item="Attributes" subitem="anchor"/>
      <iref item="section element" subitem="anchor attribute"/>
      <iref item="anchor attribute" subitem="in section element"/>
      <t>
        Document-wide unique identifier for this section.
      </t>
      <t>
        The value needs to be a valid XML "Name" (<xref target="XML" x:fmt="of" x:sec="2.3" x:rel="#sec-common-syn"/>).
      </t>
   </section>

   <!--section/@title-->
   <section title="'title' attribute (mandatory)" anchor="element.section.attribute.title" toc="exclude">
      <iref item="Attributes" subitem="title"/>
      <iref item="section element" subitem="title attribute"/>
      <iref item="title attribute" subitem="in section element"/>
      <t>
            The title of the section.
         </t>
   </section>

   <!--section/@toc-->
   <section title="'toc' attribute" anchor="element.section.attribute.toc" toc="exclude">
      <iref item="Attributes" subitem="toc"/>
      <iref item="section element" subitem="toc attribute"/>
      <iref item="toc attribute" subitem="in section element"/>
      <t>
            Determines whether the section is included in the Table Of Contents.
      </t>
      <t>
            The processor usually has defaults for whether a Table Of Contents
            will be produced at all, and sections of which maximal depth will 
            be included (frequently: 3). "include" and "exclude" allow overriding
            the processor's default behavior for the element they are specified
            on (they do not affect nested elements).
      </t>
      <t><!--AG-->Allowed values: <list style="symbols">
            <t>"include"</t>
            <t>"exclude"</t>
            <t>"default" (default)</t>
         </list>
      </t>
   </section>
</section>

<!--seriesInfo-->
<section xmlns:x="http://purl.org/net/xml2rfc/ext" title="&lt;seriesInfo&gt;" anchor="element.seriesInfo">
   <x:anchor-alias value="seriesInfo"/>
   <iref item="Elements" subitem="seriesInfo" primary="true"/>
   <iref item="seriesInfo element" primary="true"/>
   <t>
      Specifies the document series in which this document appears, and also
      specifies an identifier within that series.
   </t>
   <t><!--AG-->This element appears as child element of: &lt;<x:ref>reference</x:ref>&gt; (<xref target="element.reference"/>).</t>
   <t anchor="element.seriesInfo.contents"><!--AG-->Content model: this element does not have any contents.</t>

   <!--seriesInfo/@name-->
   <section title="'name' attribute (mandatory)" anchor="element.seriesInfo.attribute.name" toc="exclude">
      <iref item="Attributes" subitem="name"/>
      <iref item="seriesInfo element" subitem="name attribute"/>
      <iref item="name attribute" subitem="in seriesInfo element"/>
      <t>
            The name of the series.
         </t>
      <t>
            The following names trigger specific processing (such as for
            auto-generating links, and adding descriptions such as
            "work in progress"): "BCP", "FYI", "Internet-Draft", "RFC", and "STD".
         </t>
   </section>

   <!--seriesInfo/@value-->
   <section title="'value' attribute (mandatory)" anchor="element.seriesInfo.attribute.value" toc="exclude">
      <iref item="Attributes" subitem="value"/>
      <iref item="seriesInfo element" subitem="value attribute"/>
      <iref item="value attribute" subitem="in seriesInfo element"/>
      <t>
            The identifier within the series specified by the "name" attribute.
         </t>
      <t>
            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).
         </t>
   </section>
</section>

<!--spanx-->
<section xmlns:x="http://purl.org/net/xml2rfc/ext" title="&lt;spanx&gt;" anchor="element.spanx">
   <x:anchor-alias value="spanx"/>
   <iref item="Elements" subitem="spanx" primary="true"/>
   <iref item="spanx element" primary="true"/>
   <t>
      Wraps a piece of text, indicating special formatting styles.
   </t>
   <t>
      When generating plain text, processors usually emulate font changes
      using characters such as "*" and "_".
   </t>
   <t>
      The following styles are defined:
      <list style="hanging">
         <t hangText="emph">
          Simple emphasis (this is the default).
        </t>
         <t hangText="strong">
          Strong emphasis.
        </t>
         <t hangText="verb">
          "Verbatim" text (usually displayed usign a monospaced font face).
        </t>
      </list>
   </t>
   <t><!--AG-->This element appears as child element of: &lt;<x:ref>annotation</x:ref>&gt; (<xref target="element.annotation"/>), &lt;<x:ref>c</x:ref>&gt; (<xref target="element.c"/>), &lt;<x:ref>postamble</x:ref>&gt; (<xref target="element.postamble"/>), &lt;<x:ref>preamble</x:ref>&gt; (<xref target="element.preamble"/>), and &lt;<x:ref>t</x:ref>&gt; (<xref target="element.t"/>).</t>
   <t anchor="element.spanx.contents"><!--AG-->Content model: only text content.</t>

   <!--spanx/@style-->
   <section title="'style' attribute" anchor="element.spanx.attribute.style" toc="exclude">
      <iref item="Attributes" subitem="style"/>
      <iref item="spanx element" subitem="style attribute"/>
      <iref item="style attribute" subitem="in spanx element"/>
      <t>
          The style to be used (defaults to "emph").
      </t>
   </section>

   <!--spanx/@xml:space-->
   <section title="'xml:space' attribute" anchor="element.spanx.attribute.xml-space" toc="exclude">
      <iref item="Attributes" subitem="xml:space"/>
      <iref item="spanx element" subitem="xml:space attribute"/>
      <iref item="xml:space attribute" subitem="in spanx element"/>
      <t>
            Determines whitespace handling.
         </t>
      <t>
            According to the DTD, the default value is "preserve". Tests however
            show that it doesn't have any effect on processing; thus this
            attribute will be removed in future versions of the vocabulary.
         </t>
      <t>            
            See also <xref target="XML" x:fmt="of" x:sec="2.10" x:rel="#sec-white-space"/>.
         </t>
      <t><!--AG-->Allowed values: <list style="symbols">
            <t>"default"</t>
            <t>"preserve" (default)</t>
         </list>
      </t>
   </section>
</section>

<!--street-->
<section xmlns:x="http://purl.org/net/xml2rfc/ext" title="&lt;street&gt;" anchor="element.street">
   <x:anchor-alias value="street"/>
   <iref item="Elements" subitem="street" primary="true"/>
   <iref item="street element" primary="true"/>
   <t>
      Provides a street address.
   </t>
   <t><!--AG-->This element appears as child element of: &lt;<x:ref>postal</x:ref>&gt; (<xref target="element.postal"/>).</t>
   <t anchor="element.street.contents"><!--AG-->Content model: only text content.</t>
</section>

<!--t-->
<section xmlns:x="http://purl.org/net/xml2rfc/ext" title="&lt;t&gt;" anchor="element.t">
   <x:anchor-alias value="t"/>
   <iref item="Elements" subitem="t" primary="true"/>
   <iref item="t element" primary="true"/>
   <t>
      Contains a paragraph of text.
   </t>
   <t><!--AG-->This element appears as child element of: &lt;<x:ref>abstract</x:ref>&gt; (<xref target="element.abstract"/>), &lt;<x:ref>list</x:ref>&gt; (<xref target="element.list"/>), &lt;<x:ref>note</x:ref>&gt; (<xref target="element.note"/>), and &lt;<x:ref>section</x:ref>&gt; (<xref target="element.section"/>).</t>
   <t anchor="element.t.contents"><!--AG-->
        Content model:
      </t>
   <t><!--AG-->In any order: <list style="symbols">
         <t><!--AG-->Text</t>
         <t><!--AG-->
            <iref item="Elements" subitem="list"/>
            <iref item="list element" subitem="inside t"/>&lt;<x:ref>list</x:ref>&gt; elements (<xref target="element.list"/>)</t>
         <t><!--AG-->
            <iref item="Elements" subitem="figure"/>
            <iref item="figure element" subitem="inside t"/>&lt;<x:ref>figure</x:ref>&gt; elements (<xref target="element.figure"/>)</t>
         <t><!--AG-->
            <iref item="Elements" subitem="xref"/>
            <iref item="xref element" subitem="inside t"/>&lt;<x:ref>xref</x:ref>&gt; elements (<xref target="element.xref"/>)</t>
         <t><!--AG-->
            <iref item="Elements" subitem="eref"/>
            <iref item="eref element" subitem="inside t"/>&lt;<x:ref>eref</x:ref>&gt; elements (<xref target="element.eref"/>)</t>
         <t><!--AG-->
            <iref item="Elements" subitem="iref"/>
            <iref item="iref element" subitem="inside t"/>&lt;<x:ref>iref</x:ref>&gt; elements (<xref target="element.iref"/>)</t>
         <t><!--AG-->
            <iref item="Elements" subitem="cref"/>
            <iref item="cref element" subitem="inside t"/>&lt;<x:ref>cref</x:ref>&gt; elements (<xref target="element.cref"/>)</t>
         <t><!--AG-->
            <iref item="Elements" subitem="spanx"/>
            <iref item="spanx element" subitem="inside t"/>&lt;<x:ref>spanx</x:ref>&gt; elements (<xref target="element.spanx"/>)</t>
         <t><!--AG-->
            <iref item="Elements" subitem="vspace"/>
            <iref item="vspace element" subitem="inside t"/>&lt;<x:ref>vspace</x:ref>&gt; elements (<xref target="element.vspace"/>)</t>
      </list>
   </t>

   <!--t/@anchor-->
   <section title="'anchor' attribute" anchor="element.t.attribute.anchor" toc="exclude">
      <iref item="Attributes" subitem="anchor"/>
      <iref item="t element" subitem="anchor attribute"/>
      <iref item="anchor attribute" subitem="in t element"/>
      <t>
        Document-wide unique identifier for this paragraph.
      </t>
      <t>
        The value needs to be a valid XML "Name" (<xref target="XML" x:fmt="of" x:sec="2.3" x:rel="#sec-common-syn"/>).
      </t>
   </section>

   <!--t/@hangText-->
   <section title="'hangText' attribute" anchor="element.t.attribute.hangText" toc="exclude">
      <iref item="Attributes" subitem="hangText"/>
      <iref item="t element" subitem="hangText attribute"/>
      <iref item="hangText attribute" subitem="in t element"/>
      <t>
        Holds the label ("hanging text") for items in lists using the "hanging"
        style (see <xref target="element.list.attribute.style"/>).
      </t>
   </section>
</section>

<!--texttable-->
<section xmlns:x="http://purl.org/net/xml2rfc/ext" title="&lt;texttable&gt;" anchor="element.texttable">
   <x:anchor-alias value="texttable"/>
   <iref item="Elements" subitem="texttable" primary="true"/>
   <iref item="texttable element" primary="true"/>
   <t>
      Contains a table, consisting of an optional preamble, a header line,
      rows, an optional postamble, and an optional title.
   </t>
   <t>
      The number of columns in the table is determined by the number of
      &lt;<x:ref>ttcol</x:ref>&gt; elements. The number of rows in the table is
      determined by the number of &lt;<x:ref>c</x:ref>&gt; elements divided
      by the number of columns. There is no requirement that the number of
      &lt;<x:ref>c</x:ref>&gt; elements be evenly divisible by the number of
      columns.
   </t>
   <t><!--AG-->This element appears as child element of: &lt;<x:ref>section</x:ref>&gt; (<xref target="element.section"/>).</t>
   <t anchor="element.texttable.contents"><!--AG-->Content model:</t>
   <t><!--AG-->In this order:<list style="numbers">
        
         <t><!--AG-->
            <iref item="Elements" subitem="preamble"/>
            <iref item="preamble element" subitem="inside texttable"/>One optional &lt;<x:ref>preamble</x:ref>&gt; element (<xref target="element.preamble"/>)</t>
      
        
         <t><!--AG-->
            <iref item="Elements" subitem="ttcol"/>
            <iref item="ttcol element" subitem="inside texttable"/>One or more &lt;<x:ref>ttcol</x:ref>&gt; elements (<xref target="element.ttcol"/>)</t>
      
        
         <t><!--AG-->
            <iref item="Elements" subitem="c"/>
            <iref item="c element" subitem="inside texttable"/>Optional &lt;<x:ref>c</x:ref>&gt; elements (<xref target="element.c"/>)</t>
      
        
         <t><!--AG-->
            <iref item="Elements" subitem="postamble"/>
            <iref item="postamble element" subitem="inside texttable"/>One optional &lt;<x:ref>postamble</x:ref>&gt; element (<xref target="element.postamble"/>)</t>
      
      </list>
   </t>

   <!--texttable/@align-->
   <section title="'align' attribute" anchor="element.texttable.attribute.align" toc="exclude">
      <iref item="Attributes" subitem="align"/>
      <iref item="texttable element" subitem="align attribute"/>
      <iref item="align attribute" subitem="in texttable element"/>
      <t>
            Determines the horizontal alignment of the table.
         </t>
      <t><!--AG-->Allowed values: <list style="symbols">
            <t>"left"</t>
            <t>"center" (default)</t>
            <t>"right"</t>
         </list>
      </t>
   </section>

   <!--texttable/@anchor-->
   <section title="'anchor' attribute" anchor="element.texttable.attribute.anchor" toc="exclude">
      <iref item="Attributes" subitem="anchor"/>
      <iref item="texttable element" subitem="anchor attribute"/>
      <iref item="anchor attribute" subitem="in texttable element"/>
      <t>
        Document-wide unique identifier for this table.
      </t>
      <t>
        Furthermore, the presence of this attribute causes the table to be numbered.
      </t>
      <t>
        The value needs to be a valid XML "Name" (<xref target="XML" x:fmt="of" x:sec="2.3" x:rel="#sec-common-syn"/>).
      </t>
   </section>

   <!--texttable/@style-->
   <section title="'style' attribute" anchor="element.texttable.attribute.style" toc="exclude">
      <iref item="Attributes" subitem="style"/>
      <iref item="texttable element" subitem="style attribute"/>
      <iref item="style attribute" subitem="in texttable element"/>
      <t>
        Selects which borders should be drawn, where
        <list style="symbols">
            <t>
            "all" means borders around all table cells,
          </t>
            <t>
            "full" is like "all" except no horizontal lines between table
            rows (except below the column titles),
          </t>
            <t>
            "headers" adds just a separator between column titles and rows, and
          </t>
            <t>
            "none" means no borders at all.
          </t>
         </list>
      </t>
      <t><!--AG-->Allowed values: <list style="symbols">
            <t>"all"</t>
            <t>"none"</t>
            <t>"headers"</t>
            <t>"full" (default)</t>
         </list>
      </t>
   </section>

   <!--texttable/@suppress-title-->
   <section title="'suppress-title' attribute" anchor="element.texttable.attribute.suppress-title" toc="exclude">
      <iref item="Attributes" subitem="suppress-title"/>
      <iref item="texttable element" subitem="suppress-title attribute"/>
      <iref item="suppress-title attribute" subitem="in texttable element"/>
      <t>
            Tables that have an "anchor" attribute will automatically get
            an autogenerated title (such as "Table 1"), even if the "title"
            attribute is absent. Setting this attribute to "true" will prevent this.
      </t>
      <t><!--AG-->Allowed values: <list style="symbols">
            <t>"true"</t>
            <t>"false" (default)</t>
         </list>
      </t>
   </section>

   <!--texttable/@title-->
   <section title="'title' attribute" anchor="element.texttable.attribute.title" toc="exclude">
      <iref item="Attributes" subitem="title"/>
      <iref item="texttable element" subitem="title attribute"/>
      <iref item="title attribute" subitem="in texttable element"/>
      <t>
         The title for the table; this usually appears on a line below the table body.
      </t>
   </section>
</section>

<!--title-->
<section xmlns:x="http://purl.org/net/xml2rfc/ext" title="&lt;title&gt;" anchor="element.title">
   <x:anchor-alias value="title"/>
   <iref item="Elements" subitem="title" primary="true"/>
   <iref item="title element" primary="true"/>
   <t>
      Represents the document title.
   </t>
   <t>
      When this element appears in the &lt;front&gt; element of the current document,
      the title might also appear in page headers or footers. If it's long
      (~40 characters), the "abbrev" attribute is used to specify an
      abbreviated variant.
   </t>
   <t><!--AG-->This element appears as child element of: &lt;<x:ref>front</x:ref>&gt; (<xref target="element.front"/>).</t>
   <t anchor="element.title.contents"><!--AG-->Content model: only text content.</t>

   <!--title/@abbrev-->
   <section title="'abbrev' attribute" anchor="element.title.attribute.abbrev" toc="exclude">
      <iref item="Attributes" subitem="abbrev"/>
      <iref item="title element" subitem="abbrev attribute"/>
      <iref item="abbrev attribute" subitem="in title element"/>
      <t>
            Specifies an abbreviated variant of the document title.
         </t>
   </section>
</section>

<!--ttcol-->
<section xmlns:x="http://purl.org/net/xml2rfc/ext" title="&lt;ttcol&gt;" anchor="element.ttcol">
   <x:anchor-alias value="ttcol"/>
   <iref item="Elements" subitem="ttcol" primary="true"/>
   <iref item="ttcol element" primary="true"/>
   <t>
      Contains a column heading in a table.
   </t>
   <t><!--AG-->This element appears as child element of: &lt;<x:ref>texttable</x:ref>&gt; (<xref target="element.texttable"/>).</t>
   <t anchor="element.ttcol.contents"><!--AG-->Content model: only text content.</t>

   <!--ttcol/@align-->
   <section title="'align' attribute" anchor="element.ttcol.attribute.align" toc="exclude">
      <iref item="Attributes" subitem="align"/>
      <iref item="ttcol element" subitem="align attribute"/>
      <iref item="align attribute" subitem="in ttcol element"/>
      <t>
            Determines the horizontal alignment within the table column.
         </t>
      <t><!--AG-->Allowed values: <list style="symbols">
            <t>"left" (default)</t>
            <t>"center"</t>
            <t>"right"</t>
         </list>
      </t>
   </section>

   <!--ttcol/@width-->
   <section title="'width' attribute" anchor="element.ttcol.attribute.width" toc="exclude">
      <iref item="Attributes" subitem="width"/>
      <iref item="ttcol element" subitem="width attribute"/>
      <iref item="width attribute" subitem="in ttcol element"/>
      <t>
         The desired column width (as integer 0..100 followed by "%").
      </t>
   </section>
</section>

<!--uri-->
<section xmlns:x="http://purl.org/net/xml2rfc/ext" title="&lt;uri&gt;" anchor="element.uri">
   <x:anchor-alias value="uri"/>
   <iref item="Elements" subitem="uri" primary="true"/>
   <iref item="uri element" primary="true"/>
   <t>
      Contains a web address associated with the author.
   </t>
   <t>
      The contents should be a valid URI (see <xref target="RFC3986" x:fmt="of" x:sec="3"/>). 
   </t>
   <t><!--AG-->This element appears as child element of: &lt;<x:ref>address</x:ref>&gt; (<xref target="element.address"/>).</t>
   <t anchor="element.uri.contents"><!--AG-->Content model: only text content.</t>
</section>

<!--vspace-->
<section xmlns:x="http://purl.org/net/xml2rfc/ext" title="&lt;vspace&gt;" anchor="element.vspace">
   <x:anchor-alias value="vspace"/>
   <iref item="Elements" subitem="vspace" primary="true"/>
   <iref item="vspace element" primary="true"/>
   <t>
      This element can be used to force the inclusion of a single line break
      or multiple blank lines.
   </t>
   <t>
      Note that this is a purely presentational element and thus its use ought
      to be avoided.
   </t>
   <t><!--AG-->This element appears as child element of: &lt;<x:ref>t</x:ref>&gt; (<xref target="element.t"/>).</t>
   <t anchor="element.vspace.contents"><!--AG-->Content model: this element does not have any contents.</t>

   <!--vspace/@blankLines-->
   <section title="'blankLines' attribute" anchor="element.vspace.attribute.blankLines" toc="exclude">
      <iref item="Attributes" subitem="blankLines"/>
      <iref item="vspace element" subitem="blankLines attribute"/>
      <iref item="blankLines attribute" subitem="in vspace element"/>
      <t>
        Number of blank lines to be inserted, where "0" indicates
        a single line break (defaults to "0").
      </t>
      <t>
        For paged output formats, no additional blank lines should be generated
        after a page break.
      </t>
   </section>
</section>

<!--workgroup-->
<section xmlns:x="http://purl.org/net/xml2rfc/ext" title="&lt;workgroup&gt;" anchor="element.workgroup">
   <x:anchor-alias value="workgroup"/>
   <iref item="Elements" subitem="workgroup" primary="true"/>
   <iref item="workgroup element" primary="true"/>
   <t>
      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).
   </t>
   <t>
      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 &lt;<x:ref>rfc</x:ref>&gt; element
      (<xref target="element.rfc.attribute.submissionType"/>).
   </t>
   <t><!--AG-->This element appears as child element of: &lt;<x:ref>front</x:ref>&gt; (<xref target="element.front"/>).</t>
   <t anchor="element.workgroup.contents"><!--AG-->Content model: only text content.</t>
</section>

<!--xref-->
<section xmlns:x="http://purl.org/net/xml2rfc/ext" title="&lt;xref&gt;" anchor="element.xref">
   <x:anchor-alias value="xref"/>
   <iref item="Elements" subitem="xref" primary="true"/>
   <iref item="xref element" primary="true"/>
   <t>
      Inserts a reference to a different part of a document.
   </t>
   <t>
      The generated text depends on whether the &lt;xref&gt; is empty
      (in which case the processor will try to generate a meaningful text
      fragment), and the nature of the referenced document part.
   </t>
   <t>   
      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 &lt;<x:ref>t</x:ref>&gt; 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.
   </t>
   <t>
      <cref>This needs to be expanded with examples and with a discussion
      how the autogenerated text differs when &lt;xref&gt; is not empty</cref>
   </t>
   <t><!--AG-->This element appears as child element of: &lt;<x:ref>annotation</x:ref>&gt; (<xref target="element.annotation"/>), &lt;<x:ref>c</x:ref>&gt; (<xref target="element.c"/>), &lt;<x:ref>postamble</x:ref>&gt; (<xref target="element.postamble"/>), &lt;<x:ref>preamble</x:ref>&gt; (<xref target="element.preamble"/>), and &lt;<x:ref>t</x:ref>&gt; (<xref target="element.t"/>).</t>
   <t anchor="element.xref.contents"><!--AG-->Content model: only text content.</t>

   <!--xref/@format-->
   <section title="'format' attribute" anchor="element.xref.attribute.format" toc="exclude">
      <iref item="Attributes" subitem="format"/>
      <iref item="xref element" subitem="format attribute"/>
      <iref item="format attribute" subitem="in xref element"/>
      <t>
        This attribute is used to control the format of the generated 
        reference text.
      </t>
      <t>
         <iref item="xref formats" subitem="counter" primary="true"/>
        "counter"
        <list style="empty">
            <t>
            Inserts a counter, such as the number of a section, figure, or
            table.
          </t>
         </list>
      </t>
      <t>
         <iref item="xref formats" subitem="default" primary="true"/>
        "default"
        <list style="empty">
            <t>
            Inserts a text fragment that describes the referenced part 
            completely, such as "Section 2", "Table 4", or "[XML]".
          </t>
         </list>
      </t>
      <t>
         <iref item="xref formats" subitem="none" primary="true"/>
        "none"
        <list style="empty">
            <t>
            There will be no auto-generated text.
          </t>
         </list>
      </t>
      <t>
         <iref item="xref formats" subitem="title" primary="true"/>
        "title"
        <list style="empty">
            <t>
            Inserts a title for the referenced element (usually obtained from
            the referenced element's "title" attribute; some processors
            also use the &lt;title&gt; child element or a &lt;reference&gt;
            target).
          </t>
         </list>
      </t>
      <t><!--AG-->Allowed values: <list style="symbols">
            <t>"counter"</t>
            <t>"title"</t>
            <t>"none"</t>
            <t>"default" (default)</t>
         </list>
      </t>
   </section>

   <!--xref/@pageno-->
   <section title="'pageno' attribute" anchor="element.xref.attribute.pageno" toc="exclude">
      <iref item="Attributes" subitem="pageno"/>
      <iref item="xref element" subitem="pageno attribute"/>
      <iref item="pageno attribute" subitem="in xref element"/>
      <t>
            Unused.
         </t>
      <t>
            It's unclear what the purpose of this attribute is; processors
            seem to ignore it and it never was documented.
         </t>
      <t><!--AG-->Allowed values: <list style="symbols">
            <t>"true"</t>
            <t>"false" (default)</t>
         </list>
      </t>
   </section>

   <!--xref/@target-->
   <section title="'target' attribute (mandatory)" anchor="element.xref.attribute.target" toc="exclude">
      <iref item="Attributes" subitem="target"/>
      <iref item="xref element" subitem="target attribute"/>
      <iref item="target attribute" subitem="in xref element"/>
      <t>
        Identifies the document component being referenced.
      </t>
      <t>
        The value needs to match the value of the "anchor" attribute of another
        element in the document.
      </t>
   </section>
</section>
<?ENDINC xml2rfcv2-spec.xml ?>
</section>

<section title="Escaping for use in XML" anchor="escaping">
<t>
  Text in XML can not use the literal characters "&lt;" and "&amp;", as they
  have special meaning to the XML processor (starting entities, elements, etc.).
  Usually, these characters will need to be substituted by "&amp;lt;" and
  "&amp;amp;" (see <xref target="XML" x:sec="4.6" x:rel="#sec-predefined-ent" x:fmt="of"/>).
</t>
<t>
  "&gt;" does not require escaping, unless it appears in the sequence "]]&gt;"
  (which indicates the end of a CDATA section, see below).
</t>
<t>
  Escaping the indivual characters can be a lot of work (when done manually), 
  and also messes up alignment in artwork. Another approach to escaping is
  to use CDATA sections (<xref target="XML" x:sec="2.7" x:rel="#sec-cdata-sect" x:fmt=","/>).
  Within these, no further escaping is needed, except when the "end-of-CDATA"
  marker needs to be used (in that case, the CDATA section needs to be closed, 
  and a new one needs to be started).
</t>
</section>

<section title="Special Unicode Code Points" anchor="special.unicode.code.points">
<t>
  Although the current RFC format does not allow non-ASCII Unicode characters
  (<xref target="UNICODE"/>), some of them can be used to enforce certain
  behaviors of formatters.
</t>
<t>
  For instance:
</t>
<t>
  non-breaking space (U+00A0)
  <list>
    <t>
      Represents a space character where no line break should happen. This is
      frequenly used in titles (by excluding certain space characters from
      the line breaking algorithm, the processor will use the remaining
      whitespace ocurrences for line breaks).
    </t> 
  </list>
</t>
<t>
  non-breaking hyphen (U+2011)
  <list>
    <t>
      Similarly, this represents a hyphen character where nevertheless no
      line breaking ought to occur.
    </t>
  </list>
</t>
<t>
  word joiner (U+2060)
  <list>
    <t>
      Also called "zero width non-breaking space" &mdash; can be used to
      disallow line breaking between two non-whitespace characters.
    </t>
  </list>
</t>
<t>
  Note that in order to use these characters by name, they need to be 
  declared either in the Document Type Definition (DTD,
  <xref target="XML" x:sec="2.9" x:fmt="," x:rel="#sec-rmd"/>), or
  in the "internal subset" (<xref target="XML" x:sec="2.8" x:fmt="," x:rel="#sec-prolog-dtd"/>),
  like that:
</t>
<figure><artwork type="example">
&lt;?xml version="1.0"?>

&lt;!DOCTYPE rfc [

  &lt;!-- <spanx>declare nbsp and friends</spanx> -->
  &lt;!ENTITY nbsp    "&amp;#xa0;">
  &lt;!ENTITY nbhy    "&amp;#x2011;">
  &lt;!ENTITY wj      "&amp;#x2060;">
]>
</artwork></figure>
</section>

<section title="Including Files" anchor="including.files">
<t>
  This version of the vocabulary does not support an inclusion mechanism on
  it's own &mdash; thus, a document always needs to be self-contained.
</t>
<t>
  That being said, some processors do support file inclusion using
  processing instructions (<xref target="XML" x:fmt="of" x:sec="2.6" x:rel="#sec-pi"/>).
</t>
<t>
  Furthermore, XML itself allows inclusion of external content using the
  "internal subset" (<xref target="XML" x:fmt="of" x:sec="2.8" x:rel="#sec-prolog-dtd"/>).
  Unfortunately, this requires declaring the external data in the DTD upfront.
</t>
  <figure>
  <preamble>For instance:</preamble>
  <artwork type="example">
&lt;?xml version="1.0"?>

&lt;!DOCTYPE rfc [

  &lt;!-- <spanx>allow later RFC2616 reference using "&amp;rfc2616;"</spanx> -->
  &lt;!-- <spanx>the data will be fetched from xml.resource.org</spanx> -->
  &lt;!ENTITY rfc2616 PUBLIC
  "http://xml.resource.org/public/rfc/bibxml/reference.RFC.2616.xml">
]>
</artwork>
<postamble>...declares the entity "rfc2616", which then can be used in the "references" section:
</postamble></figure>
  <figure>
  <artwork type="example">
  &lt;references>
    &amp;rfc2616;
  &lt;/references>
</artwork></figure>
<t>
  Note that this mechanism only works for well-formed XML fragments; thus
  any plain text that would need to be escaped in XML can't be included as-is.
</t>
</section>

<section title="Internationalization Considerations" anchor="i18n.considerations">
<t>
  This format is based on <xref target="XML"/>, thus does not have any
  issues representing arbitrary Unicode <xref target="UNICODE"/> characters in text content.
</t>
<t>
  However, the current canonical RFC format is restricted to US-ASCII <xref target="USASCII"/>
  characters (<xref target="RFC2223" x:sec="3" x:fmt=","/>). Future versions are likely to relax this role, and it is
  expected that the vocabulary will be extended so that US-ACSII
  alternatives can be provided when that makes sense (for instance, in
  contact information).
</t>
</section>

<section title="Security Considerations" anchor="security.considerations">
<t>
  The "name" attribute on the &lt;<x:ref>artwork</x:ref>&gt; element
  (<xref target="element.artwork.attribute.name"/>)
  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 <xref target="RFC6266" x:fmt="of" x:sec="4.3"/> for
  more information.
</t>
<t>
  Furthermore, the nature of XML, plus vocabulary features such as typed artwork,
  make it attractive to extract content from documents for further
  processing, such for the purpose of checking syntax, or computing/verifying
  examples. In the latter case, care needs to be taken that only trusted
  content is processed.
</t>
<t>
  Furthermore, all security considerations related to XML processing are
  relevant as well (see <xref target="RFC3470" x:fmt="of" x:sec="7"/>).
</t>
</section>

<section title="IANA Considerations" anchor="iana.considerations">
<section title="Internet Media Type Registration">
<iref item="Media Type" subitem="application/rfc+xml" primary="true"/>
<iref item="application/rfc+xml Media Type" primary="true"/>
<t>
  IANA maintains the registry of Internet media types <xref target="BCP13"/>
  at <eref target="http://www.iana.org/assignments/media-types"/>.
</t>
<t>
  This document serves as the specification for the Internet media type
  "application/rfc+xml". The following is to be registered with IANA.
</t>
<t>
  <list style="hanging" x:indent="12em">
    <t hangText="Type name:">
      application
    </t>
    <t hangText="Subtype name:">
      rfc+xml
    </t>
    <t hangText="Required parameters:">
      There are no required parameters.
    </t>
    <t hangText="Optional parameters:">
      "charset": This parameter has identical semantics as the charset
      parameter of the "application/xml" media type specified in <xref target="RFC3023"/>.
    </t>
    <t hangText="Encoding considerations:">
      Identical to those of "application/xml" as described in <xref target="RFC3023" x:fmt="of" x:sec="3.2"/>.
    </t>
    <t hangText="Security considerations:">
      As defined in <xref target="security.considerations"/>. In addition, as
      this media type uses the "+xml" convention, it inherits the security
      considerations described in <xref target="RFC3023" x:fmt="of" x:sec="10"/>.
    </t>
    <t hangText="Interoperability considerations:">
      N/A
    </t>
    <t hangText="Published specification:">
      This specification.
    </t>
    <t hangText="Applications that use this media type:">
      Applications that either transform xml2rfc to output formats such
      as plain text or HTML, plus additional analysis tools.
    </t>
    <t hangText="Fragment identifier considerations:">
      The "anchor" attribute is used for assigning document-wide unique
      identifiers that can be uses as shorthand pointers, as described
      in <xref target="XPOINTER" x:fmt="of" x:sec="2.8" x:rel="#shorthand"/>.
    </t>
    <t hangText="Additional information:">
      <list style="hanging">
        <t hangText="Deprecated alias names for this type:">None.</t>
        <t hangText="Magic number(s):">As specified for "application/xml" in <xref target="RFC3023" x:fmt="of" x:sec="3.2"/>.</t>
        <t hangText="File extension(s):">.xml or .rfcxml when disambiguation from other XML files is needed</t>
        <t hangText="Macintosh file type code(s):">TEXT</t>
      </list>
    </t>
    <t hangText="Person &amp; email address to contact for further information:">
      See Authors Section.
    </t>
    <t hangText="Intended usage:">
      COMMON
    </t>
    <t hangText="Restrictions on usage:">
      N/A
    </t>
    <t hangText="Author:">
      See Authors Section.
    </t>
    <t hangText="Change controller:">
      RFC Series Editor (rse@rfc-editor.org)
    </t>
  </list>
</t>
</section>
</section>

<section title="Acknowledgments" anchor="acknowledgements">
<t>
  Thanks to everybody who reviewed this document and provided feedback and/or
  specification text, in particular Brian Carpenter, Tony Hansen, Paul Hoffman,
  Henrik Levkowetz, Alice Russo, Tom Taylor, Jim Schaad, and Nico Williams.
</t>
<t>
  We also thank Marshall T. Rose for both the original design and the reference
  implementation of the "xml2rfc" formatter.
</t>
</section>

  </middle>
  <back>
  
<references title="Normative References">

  <reference anchor='XML' target='http://www.w3.org/TR/2008/REC-xml-20081126/'>
    <front>
      <title>Extensible Markup Language (XML) 1.0 (Fifth Edition)</title>
      <author fullname='Eve Maler' surname='Maler' initials='E.'/>
      <author fullname='Francois Yergeau' surname='Yergeau' initials='F.'/>
      <author fullname='Jean Paoli' surname='Paoli' initials='J.'/>
      <author fullname='Michael Sperberg-McQueen' surname='Sperberg-McQueen' initials='M.'/>
      <author fullname='Tim Bray' surname='Bray' initials='T.'/>
      <date year='2008' month='November' day='26'/>
    </front>
    <seriesInfo name='W3C Recommendation' value='REC-xml-20081126'/>
    <annotation>
      Latest version available at
      <eref target='http://www.w3.org/TR/xml'/>.
    </annotation>
  </reference>

</references>

<references title="Informative References">

  <reference anchor="BCP13">
    <front>
      <title>Media Type Specifications and Registration Procedures</title>
      <author initials="N." surname="Freed" fullname="Ned Freed"/>
      <author initials="J." surname="Klensin" fullname="John C. Klensin"/>
      <author initials="T." surname="Hansen" fullname="Tony Hansen"/>
      <date year="2013" month="January"/>
    </front>
    <seriesInfo name="BCP" value="13"/>
    <seriesInfo name="RFC" value="6838"/>
  </reference>

  <reference anchor='RFC2026'>
    <front>
      <title abbrev='Internet Standards Process'>The Internet Standards Process -- Revision 3</title>
      <author initials='S.' surname='Bradner' fullname='Scott O. Bradner'/>
      <date year='1996' month='October' />
    </front>
    <seriesInfo name='BCP' value='9' />
    <seriesInfo name='RFC' value='2026' />
  </reference>

  <reference anchor="RFC2046">
    <front>
      <title abbrev="Media Types">Multipurpose Internet Mail Extensions (MIME) Part Two: Media Types</title>
      <author initials="N." surname="Freed" fullname="Ned Freed"/>
      <author initials="N." surname="Borenstein" fullname="Nathaniel S. Borenstein"/>
      <date month="November" year="1996"/>
    </front>
    <seriesInfo name="RFC" value="2046"/>
  </reference>

  <reference anchor='RFC2223'>
    <front>
      <title>Instructions to RFC Authors</title>
      <author initials='J.' surname='Postel' fullname='Jon Postel'/>
      <author initials='J.K.' surname='Reynolds' fullname='Joyce K. Reynolds'/>
      <date year='1997' month='October' />
    </front>
    <seriesInfo name='RFC' value='2223' />
  </reference>

  <reference anchor='RFC2397'>
    <front>
      <title abbrev='The &quot;data&quot; URL scheme'>The &quot;data&quot; URL scheme</title>
      <author initials='L.' surname='Masinter' fullname='Larry Masinter'/>
      <date year='1998' month='August' />
    </front>
    <seriesInfo name='RFC' value='2397' />
  </reference>

  <reference anchor='RFC2629'>
    <front>
      <title>Writing I-Ds and RFCs using XML</title>
      <author initials='M.T.' surname='Rose' fullname='Marshall T. Rose' />
      <date month='June' year='1999' />
    </front>
    <seriesInfo name='RFC' value='2629' />
  </reference>

  <reference anchor="RFC3023">
    <front>
      <title>XML Media Types</title>
      <author initials="M." surname="Murata" fullname="Murata Makoto"/>
      <author initials="S." surname="St. Laurent" fullname="Simon St. Laurent"/>
      <author initials="D." surname="Kohn" fullname="Dan Kohn"/>
      <date year="2001" month="January"/>
    </front>
    <seriesInfo name="RFC" value="3023"/>
  </reference>

  <reference anchor="RFC3470">
    <front>
      <title>Guidelines for the Use of Extensible Markup Language (XML) within IETF Protocols</title>
      <author initials="S." surname="Hollenbeck" fullname="Scott Hollenbeck"/>
      <author initials="M." surname="Rose" fullname="Marshall T. Rose"/>
      <author initials="L." surname="Masinter" fullname="Larry Masinter"/>
      <date year="2003" month="January" day="23"/>
    </front>
    <seriesInfo name="BCP" value="70"/>
    <seriesInfo name="RFC" value="3470"/>
  </reference>

  <reference anchor='RFC3966'>
    <front>
      <title>The tel URI for Telephone Numbers</title>
      <author initials='H.' surname='Schulzrinne' fullname='H. Schulzrinne'/>
      <date year='2004' month='December' />
    </front>
    <seriesInfo name='RFC' value='3966' />
  </reference>

  <reference anchor="RFC3986">
   <front>
    <title abbrev='URI Generic Syntax'>Uniform Resource Identifier (URI): Generic Syntax</title>
    <author initials='T.' surname='Berners-Lee' fullname='Tim Berners-Lee'/>
    <author initials='R.' surname='Fielding' fullname='Roy T. Fielding'/>
    <author initials='L.' surname='Masinter' fullname='Larry Masinter'/>
    <date month='January' year='2005'></date>
   </front>
   <seriesInfo name="STD" value="66"/>
   <seriesInfo name="RFC" value="3986"/>
  </reference>

  <reference anchor='RFC5598'>
    <front>
    <title>Internet Mail Architecture</title>
    <author initials='D.' surname='Crocker' fullname='D. Crocker'/>
    <date year='2009' month='July' />
    </front>
    <seriesInfo name='RFC' value='5598' />
    <annotation>PDF version: <eref target="http://www.rfc-editor.org/rfc/rfc5598.pdf"/></annotation>
  </reference>

  <reference anchor='RFC5741'>
    <front>
      <title>RFC Streams, Headers, and Boilerplates</title>
      <author initials='L.' surname='Daigle' fullname='Leslie Daigle'/>
      <author initials='O.' surname='Kolkman' fullname='Olaf Kolkman'/>
      <date month='December' year='2009' />
    </front>
    <seriesInfo name='RFC' value='5741' />
  </reference>

  <reference anchor="RFC6068">
    <front>
      <title>The 'mailto' URI Scheme</title>
      <author initials="M." surname="Duerst" fullname="M. Duerst"/>
      <author initials="L." surname="Masinter" fullname="L. Masinter"/>
      <author initials="J." surname="Zawinski" fullname="J. Zawinski"/>
      <date year="2010" month="October"/>
    </front>
    <seriesInfo name="RFC" value="6068"/>
  </reference>

  <reference anchor="RFC6266">
    <front>
      <title>Use of the Content-Disposition Header Field in the Hypertext Transfer Protocol (HTTP)</title>
      <author initials="J. F." surname="Reschke" fullname="Julian F. Reschke"/>
      <date month="June" year="2011"/>
    </front>
    <seriesInfo name='RFC' value='6266' />
  </reference>

  <reference anchor="RNC" target="http://www.oasis-open.org/committees/relax-ng/compact-20021121.html">
    <front>
      <title>RELAX NG Compact Syntax</title>
      <author initials="J." surname="Clark" fullname="James Clark">
        <address>
          <email>jjc@jclark.com</email>
        </address>
      </author>
      <date month="November" year="2002" />
    </front>
    <seriesInfo name="OASIS" value=""/>
  </reference>

  <reference anchor="IDGUIDE" target="http://www.ietf.org/id-info/guidelines.html">
    <front>
      <title>Guidelines to Authors of Internet-Drafts</title>
      <author initials="R." surname="Housley" fullname="R. Housley"/>
      <date month="December" year="2010" />
    </front>
  </reference>

  <reference anchor="RFCPOLICY" target="http://www.rfc-editor.org/policy.html">
    <front>
      <title>RFC Editorial Guidelines and Procedures</title>
      <author>
        <organization>RFC Editor</organization>
      </author>
      <date month="February" year="2012" />
    </front>
  </reference>

  <reference anchor="RFCSTYLE">
    <front>
      <title>RFC Style Guide</title>
      <author initials="H." surname="Heather" fullname="Heather Flanagan"/>
      <author initials="S." surname="Ginoza" fullname="Sandy Ginoza"/>
      <date month="April" year="2014" />
    </front>
    <seriesInfo name="Internet-Draft" value="draft-iab-styleguide-02"/>
  </reference>

  <reference anchor="TLP2.0" target="http://trustee.ietf.org/license-info/IETF-TLP-2.htm">
    <front>
      <title>Legal Provisions Relating to IETF Documents</title>
      <author>
        <organization>IETF Trust</organization>
      </author>
      <date year="2009" month="February"/>
    </front>
  </reference>

  <reference anchor="TLP3.0" target="http://trustee.ietf.org/license-info/IETF-TLP-3.htm">
    <front>
      <title>Legal Provisions Relating to IETF Documents</title>
      <author>
        <organization>IETF Trust</organization>
      </author>
      <date year="2009" month="September"/>
    </front>
  </reference>
  
  <reference anchor="TLP4.0" target="http://trustee.ietf.org/license-info/IETF-TLP-4.htm">
    <front>
      <title>Legal Provisions Relating to IETF Documents</title>
      <author>
        <organization>IETF Trust</organization>
      </author>
      <date year="2009" month="December"/>
    </front>
  </reference>
  
  <reference anchor="UNICODE" target="http://www.unicode.org/versions/Unicode6.3.0/">
    <front>
      <title>The Unicode Standard, Version 6.3.0</title>
      <author>
        <organization>The Unicode Consortium</organization>
      </author>
      <date year="2013" month="September"/>
    </front>
  </reference>

  <reference anchor="USASCII">
    <front>
      <title>Coded Character Set -- 7-bit American Standard Code for Information Interchange</title>
      <author>
        <organization>American National Standards Institute</organization>
      </author>
      <date year="1986"/>
    </front>
    <seriesInfo name="ANSI" value="X3.4"/>
  </reference>
  
  <reference anchor='XINCLUDE'
             target='http://www.w3.org/TR/2006/REC-xinclude-20061115/'>
    <front>
      <title>XML Inclusions (XInclude) Version 1.0 (Second Edition)</title>
      <author fullname='Jonathan Marsh' surname='Marsh' initials='J.'/>
      <author fullname='David Orchard' surname='Orchard' initials='D.'/>
      <author fullname='Daniel Veillard' surname='Veillard' initials='D.'/>
      <date year='2006' month='November' day='15'/>
    </front>
    <seriesInfo name='W3C Recommendation' value='REC-xinclude-20061115'/>
    <annotation>
      Latest version available at
      <eref target='http://www.w3.org/TR/xinclude/'/>.
    </annotation>
  </reference>

  <reference anchor='XPOINTER' target='http://www.w3.org/TR/2003/REC-xptr-framework-20030325/'>
    <front>
      <title>XPointer Framework</title>
      <author fullname='Paul Grosso' surname='Grosso' initials='P.'/>
      <author fullname='Eve Maler' surname='Maler' initials='E.'/>
      <author fullname='Jonathan Marsh' surname='Marsh' initials='J.'/>
      <author fullname='Norman Walsh' surname='Walsh' initials='N.'/>
      <date year='2003' month='March' day='25'/>
    </front>
    <seriesInfo name='W3C Recommendation' value='REC-xptr-framework-20030325'/>
    <annotation>
      Latest version available at
      <eref target='http://www.w3.org/TR/xptr-framework/'/>.
    </annotation>
  </reference>

  <reference anchor='JING' target='http://www.thaiopensource.com/relaxng/jing.html'>
    <front>
      <title>Jing - A RELAX NG validator in Java</title>
      <author>
        <organization>Thai Open Source Software Center Ltd</organization>
      </author>
      <date year='2008'/>
    </front>
    <seriesInfo name='W3C Recommendation' value='REC-xptr-framework-20030325'/>
    <annotation>
      Downloads:
      <eref target='https://code.google.com/p/jing-trang/downloads/list'/>.
    </annotation>
  </reference>
</references>

<section title="Front Page Generation">

<section title="The /rfc/@category Attribute" anchor="attribute-category">
<t>
  For RFCs, the <spanx style="verb">category</spanx> determines the "maturity level"
  (see <xref target="RFC2026" x:fmt="of" x:sec="4"/>). The allowed values
  are "std" for "Standards Track", "bcp" for "BCP", "info" for "Informational",
  "exp" for "Experimental", and "historic" for "Historic".
</t>
<t>
  For Internet-Drafts, the category attribute is not needed, but will
  appear on the front page as "Intended Status". Supplying this information can 
  be useful to reviewers.
</t>
</section>

<section title="The /rfc/@ipr Attribute" anchor="attribute-ipr">
<t>
  This attribute value can take a long list of values, each of which describes an IPR policy for the document. 
  This attribute's values are not the result of a grand plan, but remain simply for historic
  reasons. Of these values, only a few are currently in use; all others are
  supported by the various tools for backwards compatibility with old source
  files.
</t>
<x:note>
  <t>
    <x:h>Note:</x:h> 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 <spanx style="verb">&lt;date&gt;</spanx> element
    when archiving the XML source of an Internet-Draft on the day of submission.
  </t>
</x:note>
<t>
  <spanx>Disclaimer: THIS ONLY PROVIDES IMPLEMENTATION INFORMATION. IF YOU NEED
  LEGAL ADVICE, PLEASE CONTACT A LAWYER.</spanx>
  For further information, refer to <eref target="http://trustee.ietf.org/docs/IETF-Copyright-FAQ.pdf"/>.
</t>
<t>
  For the current "Status Of This Memo" text, the <spanx style="verb">submissionType</spanx> attribute
  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. 
</t>


<section title="Current Values: '*trust200902'" anchor="attribute-ipr-current">
<iref item="ipr attribute" subitem="'*trust200902'"/>
<t>
  The name for these values refers to the "IETF TRUST Legal Provisions Relating 
  to IETF Documents", sometimes simply called the "TLP, that went into effect on February 15, 2009 (<xref target="TLP2.0"/>).
  Updates to this document were published on September 12, 2009 (<xref target="TLP3.0"/>)
  and on December 28, 2009 (<xref target="TLP4.0"/>),
  modifying the license for code components (see <eref target="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.
</t>
<t>  
  The tools will automatically produce the "correct" text depending on the
  document's date information (see above):
</t>
<texttable align="left">
  <ttcol>TLP</ttcol><ttcol>starting with publication date</ttcol>

  <c><xref target="TLP3.0"/></c>
  <c>2009-11-01</c>

  <c><xref target="TLP4.0"/></c>
  <c>2010-04-01</c>

</texttable> 


<section title="trust200902" anchor="attribute-ipr-trust200902">
<iref item="ipr attribute" subitem="'trust200902'"/>
<t>
  This should be the default, 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.
</t>
</section>

<section title="noModificationTrust200902" anchor="attribute-ipr-noModificationTrust200902">
<iref item="ipr attribute" subitem="'noModificationTrust200902'"/>
<t>
  This produces additional text from Section 6.c.i of the TLP:
</t>
<x:blockquote>
  <t>
    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.
  </t>
</x:blockquote>
<x:note>
  <t>
    <x:h>Note:</x:h> this clause is incompatible with RFCs that are published
    on the Standards Track.
  </t>
</x:note>
</section>

<section title="noDerivativesTrust200902" anchor="attribute-ipr-noDerivativesTrust200902">
<iref item="ipr attribute" subitem="'noDerivativesTrust200902'"/>
<t>
  This produces the additional text from Section 6.c.ii of the TLP:
</t>
<x:blockquote>
  <t>
    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.
  </t>
</x:blockquote>
<x:note>
  <t>
    <x:h>Note:</x:h> this clause is incompatible with RFCs.
  </t>
</x:note>
</section>

<section title="pre5378Trust200902" anchor="attribute-ipr-pre5378Trust200902">
<iref item="ipr attribute" subitem="'pre5378Trust200902'"/>
<t>
  This produces the additional text from Section 6.c.iii of the TLP, frequently
  called the "pre-5378 escape clause":
</t>
<x:blockquote>
  <t>
    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.
  </t>
</x:blockquote>
<t>
  See Section 4 of <eref target="http://trustee.ietf.org/docs/IETF-Copyright-FAQ.pdf"/>
  for further information about when to use this value.
</t>
<x:note>
  <t>
    <x:h>Note:</x:h> this text appears under "Copyright Notice", unless the 
    document was published before November 2009, in which case it appears
    under "Status Of This Memo".
  </t>
</x:note>
</section>
</section> 

<section title="Historic Values" anchor="attribute-ipr-historic">

<section title="Historic Values: '*trust200811'" anchor="attribute-ipr-200811">
<iref item="ipr attribute" subitem="'*trust200811'"/>
<t>
  The attribute values "<x:span anchor="attribute-ipr-trust200811">trust200811</x:span>",
  "<x:span anchor="attribute-ipr-noModificationTrust200811">noModificationTrust200811</x:span>" and
  "<x:span anchor="attribute-ipr-noDerivativesTrust200811">noDerivativesTrust200811</x:span>"
  are similar to their "trust200902" counterparts, except that they use text
  specified in <eref target="http://trustee.ietf.org/license-info/archive/IETF-Trust-License-Policy_11-10-08.pdf"/>.
</t>
</section>

<section title="Historic Values: '*3978'" anchor="attribute-ipr-3978">
<iref item="ipr attribute" subitem="'*3978'"/>
<t>
  The attribute values "<x:span anchor="attribute-ipr-full3978">full3978</x:span>",
  "<x:span anchor="attribute-ipr-noModification3978">noModification3978</x:span>" and
  "<x:span anchor="attribute-ipr-noDerivatives3978">noDerivatives3978</x:span>"
  are similar to their counterparts above, except that they use text
  specified in RFC 3978 (March 2005).
</t>
</section>

<section title="Historic Values: '*3667'" anchor="attribute-ipr-3667">
<iref item="ipr attribute" subitem="'*3667'"/>
<t>
  The attribute values "<x:span anchor="attribute-ipr-full3667">full3667</x:span>",
  "<x:span anchor="attribute-ipr-noModification3667">noModification3667</x:span>" and
  "<x:span anchor="attribute-ipr-noDerivatives3667">noDerivatives3667</x:span>"
  are similar to their counterparts above, except that they use text
  specified in RFC 3667 (February 2004).
</t>
</section>

<section title="Historic Values: '*2026'" anchor="attribute-ipr-2026">
<iref item="ipr attribute" subitem="'*2026'"/>
<t>
  The attribute values "<x:span anchor="attribute-ipr-full2026">full2026</x:span>" and
  "<x:span anchor="attribute-ipr-noDerivativeWorks2026">noDerivativeWorks2026</x:span>"
  are similar to their counterparts above, except that they use text
  specified in RFC 2026 (October 1996).
</t>
<t>
  The special value "<x:span anchor="attribute-ipr-none">none</x:span>"
  was also used back then, and denied the IETF any rights beyond publication
  as Internet-Draft.
</t>
</section>

</section>
</section>
</section>

<section title="Changes from RFC 2629 ('v1')" anchor="changes.from.rfc2629">
<t>
  <cref anchor="v1diff">See <eref target="http://greenbytes.de/tech/webdav/draft-reschke-xml2rfc-02.html#rfc.section.E"/>
  for a comparison of the schemata.</cref>
</t>

<section title="Removed Elements">
<t>
  The &lt;appendix&gt; element has been removed; to generate an appendix,
  place a &lt;<x:ref>section</x:ref>&gt; inside &lt;<x:ref>back</x:ref>&gt;.
</t>
</section>

<section title="Changed Defaults">
<t>
  Many attributes have lost their "default" value; this is to avoid having document
  semantics differ based on whether a DTD was specified and evaluated.
  Processors will handle absent values the way the default value was specified before.
</t>
</section>

<section title="Changed Elements">
<t>
  &lt;<x:ref>artwork</x:ref>&gt;: Has a set of new attributes:
  "name", "type", "src", "align", "alt", "width", and "height".
  (<xref target="element.artwork"/>)
</t>
<t>
  &lt;<x:ref>author</x:ref>&gt;: The &lt;<x:ref>organization</x:ref>&gt; element
  is now optional. The "role" attribute was added.
  (<xref target="element.author"/>)
</t>
<t>
  &lt;<x:ref>country</x:ref>&gt;: The requirement to use ISO 3166 codes was
  removed.
  (<xref target="element.country"/>)
</t>
<t>
  &lt;<x:ref>date</x:ref>&gt;: All attributes are now optional.
  (<xref target="element.date"/>)
</t>
<t>
  &lt;<x:ref>figure</x:ref>&gt;: Has a set of new attributes:
  "suppress-title", "src", "align", "alt", "width", and "height".
  (<xref target="element.figure"/>)
</t>
<t>
  &lt;<x:ref>iref</x:ref>&gt;: Has a new "primary" attribute.
  (<xref target="element.iref"/>)
</t>
<t>
  &lt;<x:ref>list</x:ref>&gt;: The "style" attribute isn't restricted to a set
  of enumerated values anymore. The "hangIndent" and "counter" attributes have
  been added.
  (<xref target="element.list"/>)
</t>
<t>
  &lt;<x:ref>rfc</x:ref>&gt;:  The "ipr" attribute has gained additional
  values.  The attributes "consensus", "iprExtract", "submissionType", and
  "xml:lang" have been added. 
  (<xref target="element.rfc"/>)
</t>
<t>
  &lt;<x:ref>reference</x:ref>&gt;:  &lt;<x:ref>annotation</x:ref>&gt; allows 
  adding prose to a reference. The "anchor" attribute has been made mandatory.
  (<xref target="element.reference"/>)
</t>
<t>
  &lt;<x:ref>references</x:ref>&gt;:  Can now appear multiple times, and
  carry a "title" attribute (so that normative and informative references
  can be split).
  (<xref target="element.references"/>)
</t>
<t>
  &lt;<x:ref>section</x:ref>&gt;:  The new "toc" attribute controls whether
  it will appear in the Table Of Contents. &lt;<x:ref>iref</x:ref>&gt;
  can now appear as direct child element.
  (<xref target="element.section"/>)
</t>
<t>
  &lt;<x:ref>t</x:ref>&gt;:  The "anchor" attribute can now be used as well,
  however there are restrictions on how they can be referred to.
  (<xref target="element.t"/>)
</t>
</section>

<section title="New Elements">
<t>
  The following elements have been added:
  &lt;<x:ref>annotation</x:ref>&gt; (<xref target="element.annotation"/>),
  &lt;<x:ref>c</x:ref>&gt; (<xref target="element.c"/>),
  &lt;<x:ref>cref</x:ref>&gt; (<xref target="element.cref"/>),
  &lt;<x:ref>format</x:ref>&gt; (<xref target="element.format"/>),
  &lt;<x:ref>spanx</x:ref>&gt; (<xref target="element.spanx"/>),
  &lt;<x:ref>texttable</x:ref>&gt; (<xref target="element.texttable"/>).
</t>
</section>
</section>

<section title="Relax NG Schema" anchor="schema">
<figure><artwork type="application/relax-ng-compact-syntax"><?BEGINESCAPEDINC xml2rfcv2.rnc.folded ?>
namespace a = "http://relaxng.org/ns/compatibility/annotations/1.0"

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 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 = "en" ] attribute xml:lang { text }?,
    front,
    middle,
    back?
  }
front =
  element front {
    title, author+, date, area*, workgroup*, keyword*, abstract?, 
note*
  }
title =
  element title {
    attribute abbrev { text }?,
    text
  }
author =
  element author {
    attribute initials { text }?,
    attribute surname { text }?,
    attribute fullname { text }?,
    attribute role { "editor" }?,
    organization?,
    address?
  }
organization =
  element organization {
    attribute abbrev { text }?,
    text
  }
address = element address { postal?, phone?, facsimile?, email?, 
uri? }
postal = element postal { street+, (city | region | code | country)* 
}
street = element street { text }
city = element city { text }
region = element region { text }
code = element code { text }
country = element country { text }
phone = element phone { text }
facsimile = element facsimile { text }
email = element email { text }
uri = element uri { text }
date =
  element date {
    attribute 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+ }
note =
  element note {
    attribute title { text },
    t+
  }
middle = element middle { section+ }
section =
  element section {
    attribute anchor { xsd:ID }?,
    attribute title { text },
    [ a:defaultValue = "default" ]
    attribute toc { "include" | "exclude" | "default" }?,
    (t | figure | texttable | iref)*,
    section*
  }
t =
  element t {
    attribute anchor { xsd:ID }?,
    attribute hangText { text }?,
    (text
     | \list
     | figure
     | xref
     | eref
     | iref
     | cref
     | spanx
     | vspace)*
  }
\list =
  element list {
    attribute style { text }?,
    attribute hangIndent { text }?,
    attribute counter { text }?,
    t+
  }
xref =
  element xref {
    attribute target { xsd:IDREF },
    [ a:defaultValue = "false" ] attribute pageno { "true" | "false" 
}?,
    [ a:defaultValue = "default" ]
    attribute format { "counter" | "title" | "none" | "default" }?,
    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 }?,
    text
  }
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 }?,
    iref*,
    preamble?,
    artwork,
    postamble?
  }
preamble =
  element preamble { (text | xref | eref | iref | cref | spanx)* }
artwork =
  element artwork {
    [ a:defaultValue = "preserve" ]
    attribute xml:space { "default" | "preserve" }?,
    [ 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*
  }
postamble =
  element postamble { (text | xref | eref | iref | cref | spanx)* }
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" }?,
    preamble?,
    ttcol+,
    c*,
    postamble?
  }
ttcol =
  element ttcol {
    attribute width { text }?,
    [ a:defaultValue = "left" ]
    attribute align { "left" | "center" | "right" }?,
    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+
  }
reference =
  element reference {
    attribute anchor { xsd:ID },
    attribute target { text }?,
    front,
    seriesInfo*,
    format*,
    annotation*
  }
seriesInfo =
  element seriesInfo {
    attribute name { text },
    attribute value { text },
    empty
  }
format =
  element format {
    attribute target { text }?,
    attribute type { text },
    attribute octets { text }?,
    empty
  }
annotation =
  element annotation { (text | xref | eref | iref | cref | spanx)* }
start = rfc
<?ENDESCAPEDINC xml2rfcv2.rnc.folded ?></artwork></figure>
<t>
  (This schema was derived from version 1.3.6 of the xml2rfc DTD ('Document Type
  Definition', <xref target="XML" x:fmt="," x:sec="2.8" x:rel='#sec-prolog-dtd'/>),
  available from <eref target="http://svn.tools.ietf.org/svn/tools/xml2rfc/vocabulary/v2/03/xml2rfcv2.dtd"/>).
</t>

<section title="Checking Validity" anchor="checking.validity">
<t>
  The validity of XML files can be checked with any tool that supports Relax NG
  (<xref target="RNC"/>). The reference implementation is the Java-based, open
  sourced "JING" (<xref target="JING"/>).
</t>
<t>
  To use JING, download the latest ZIP file from the downloads page
  (currently <eref target="https://code.google.com/p/jing-trang/downloads/detail?name=jing-20091111.zip"/>),
  extract the archive, copy "jing.jar" from the "bin" folder, and make
  sure Java is installed).
</t>
<t>
  To check a file "test.xml" using the RNC file "schema.rnc", run (from a command
  line prompt):
</t>
<figure><artwork type="example">
java -jar jing.jar -c schema.rnc test.xml
</artwork></figure>
<t>
  In good Unix tradition, no output means the file is valid.
</t>
</section>
</section>

<section title="Proposed Future Changes for 'v3'" anchor="proposed.future.changes">
<t>
  Discussion of "v3" changes takes place on the rfc-interest
  mailing list (rfc-interest@rfc-editor.org), which has its home page at
  <eref target="http://www.rfc-editor.org/mailman/listinfo/rfc-interest"/>.
  See also <eref target="https://www.rfc-editor.org/rse/wiki/doku.php?id=design:xml-tags"/> for a related Wiki page.
</t>
<section title="Contact Information" anchor="v3.contact.information">
<t>
  If contact information is changed to allow non-ASCII characters: add
  a place for a ASCII fallback (probably just for the author names).
</t>
<t>
  The content model for &lt;<x:ref>postal</x:ref>&gt; ought to be more strict
  to allow at most one of &lt;<x:ref>city</x:ref>&gt;, &lt;<x:ref>region</x:ref>&gt;,
  &lt;<x:ref>code</x:ref>&gt;, and &lt;<x:ref>country</x:ref>&gt;.
</t>
<t>
  It should be possible to have multiple &lt;<x:ref>email</x:ref>&gt; and
  &lt;<x:ref>uri</x:ref>&gt; elements (see also 
  <eref target="http://trac.tools.ietf.org/tools/xml2rfc/trac/ticket/36"/>).
</t>
<t>
  &lt;<x:ref>facsimile</x:ref>&gt; looks outdated, while a container for IM 
  (messaging) URIs is missing. Maybe this area needs to be aligned with vCard.
</t>
<t>
  <xref target="RFCSTYLE" x:fmt="of" x:sec="4.11"/> hints at a "Contributors"
  Section that could supply contact information similar to the one in the 
  auto-generated "Authors' Address" Section. Consider how to capture
  contributor contact information (probably not using &lt;<x:ref>author</x:ref>&gt;
  to avoid confusion). Furthermore, consider ways to augment the contact information
  section with prose.
</t>
</section>

<section title="Figures" anchor="v3.figures">
<t>
  Cleanup the set of overlapping attributes between &lt;<x:ref>figure</x:ref>&gt;
  and &lt;<x:ref>artwork</x:ref>&gt;.
</t>
<t>
  For artwork that consists of a sequence of items (such as messages in a protocol example),
  it would be good if a &lt;figure&gt; element could contain multiple &lt;artwork&gt;
  elements (to assist code to find good places for page breaks).
</t>
<t>
  Extend &lt;<x:ref>figure</x:ref>&gt; to support different types of artwork
  (such as by specifying certain type attribute values, see
  <eref target="http://greenbytes.de/tech/webdav/rfc2629xslt/rfc2629xslt.html#artwork.types"/>), and also avoid
  having to markup code (such as ABNF) as "artwork".
</t>
<t>
  It would be good if "code components" could be marked as such.
</t>
<t>  
  Finally, even in preformatted
  text use of markup could be useful to support (a) references, or (b) highlighting
  the important bits (<eref target="http://greenbytes.de/tech/webdav/rfc2629xslt/rfc2629xslt.html#ext-rfc2629.artwork"/>).
</t>
</section>

<section title="Linking" anchor="v3.linking">
<t>
  Extend &lt;<x:ref>xref</x:ref>&gt; so that subsection/anchors can be specified
  (see <eref target="http://greenbytes.de/tech/webdav/rfc2629xslt/rfc2629xslt.html#ext-rfc2629.xref"/>).
</t>
<t>
  Remove the "pageno" attribute which seems to be both undocumented and
  non-functional.
</t>
</section>

<section title="Lists" anchor="v3.lists">
<t>
  Allow multiple paragraphs in list items; eliminating the need to use
  &lt;<x:ref>vspace</x:ref>&gt; &mdash; this could be achieved by adding a list
  item container element ("&lt;lt&gt;", see <eref target="http://greenbytes.de/tech/webdav/rfc2629xslt/rfc2629xslt.html#ext.element.lt"/> and
  <eref target="http://www.ietf.org/mail-archive/web/xml2rfc/current/msg02010.html"/>).
</t>
<t>
  Add support for a "dictionary" style; eliminating the need to combine
  "hanging" with &lt;vspace&gt; to force new lines (see thread around
  <eref target="http://www.rfc-editor.org/pipermail/rfc-interest/2013-December/005876.html"/>).
</t>
</section>

<section title="References" anchor="v3.references">
<t>
  Allow overriding the "anchor" attribute of an included &lt;reference&gt; element.
</t>
<t>
  Add a way to add prose to a reference that avoids abuse of &lt;seriesInfo&gt;.
</t>
<t>
  Allow &lt;<x:ref>reference</x:ref>&gt;s that identify a document set such as a BCP.
</t>
<t>
  Deprecate or remove the &lt;<x:ref>format</x:ref>&gt; element; right now it's
  not used for the generation of the plain text document anyway.
</t>
<t>
  The "anchor" attribute is optional because it is not needed when using numeric
  references (symrefs processing instruction), and the reference actually is not
  in use. This is an edge case that doesn't need special support in the vocabulary
  and thus should be removed.
</t>
</section>

<section title="Archival Considerations" anchor="v3.archival.considerations">
<t>
  When this vocabulary becomes the canonical RFC format, it will need to be able
  to capture all generated information, such as section/figure/table numbers,
  plus any auto-generated boilerplate (copyright statements etc.).
</t>
</section>

<section title="Document Metadata" anchor="v3.document.metadata">
<t>
  Extend the concept of language tagging to at least examples and contact
  information to address potential japanese/chinese font confusion.
</t>
<t>
  Provide a way to indicate the intended level on the standards track.
</t>
<t>
  Include feedback information in a way so that generated documents
  can provide usable feedback links (see <eref target="http://greenbytes.de/tech/webdav/rfc2629xslt/rfc2629xslt.html#ext.element.feedback"/>).
</t>
</section>

<section title="Including Material" anchor="v3.include">
<t>
  As discussed in <xref target="including.files"/>, file inclusion currently
  uses out-of-the-box XML mechanisms or processor-specific directives.
</t>
<t>
  We need to decide whether the vocabulary should have its own inclusion
  mechanism, or whether it would be better to use a generic solution such
  as <xref target="XINCLUDE"/> instead.
</t>
</section>

<section title="Misc." anchor="v3.misc">
<t>
  Make the &lt;<x:ref>date</x:ref>&gt; element optional; all of its
  content is optional already.
</t>
<t>
  &lt;<x:ref>spanx</x:ref>&gt; has both a weird whitespace model ("preserve")
  and problematic styling. Consider to deprecate it in favor of elements
  such as &lt;b&gt;, &lt;i&gt;, and &lt;tt&gt;.
</t>
<t>
   Indented paragraphs currently can be created by abusing the &lt;<x:ref>list</x:ref>&gt;.
   It would be good to have a special element for this purpose.
</t>
<t>
   Provide a special element for inserting block quotes 
  (<eref target="http://greenbytes.de/tech/webdav/rfc2629xslt/rfc2629xslt.html#ext.element.blockquote"/>).
</t>
<t>
   The content model for &lt;<x:ref>cref</x:ref>&gt; should be extended to allow more
   flow elements, such as &lt;<x:ref>xref</x:ref>&gt; and &lt;<x:ref>eref</x:ref>&gt;.
</t>
<t>
   Section titles should really be elements, not attributes (this would allow
   them to contain markup).
</t>
<t>
   Text tables are currently very constrained. For instance, it would be
   good if alignment of headers and table cells could be de-coupled
   (<eref target="http://trac.tools.ietf.org/tools/xml2rfc/trac/ticket/69"/>).
</t>
<t>
   Counters are currently restricted to lists, figures, and tables. Maybe there
   should be a generic mechanism that is not directly tied to other elements
   (<eref target="http://trac.tools.ietf.org/tools/xml2rfc/trac/ticket/68"/>).
</t>
</section>

</section>

  </back>

</rfc>
