<?xml version='1.0' encoding='utf-8'?>
<rfc xmlns:xi="http://www.w3.org/2001/XInclude" version="3" category="std" consensus="true" docName="draft-klensin-idna-unicode-review-05" indexInclude="true" ipr="trust200902" number="8753" prepTime="2020-04-15T22:58:35" scripts="Common,Latin" sortRefs="false" submissionType="IETF" symRefs="true" tocDepth="3" tocInclude="true" updates="5892" xml:lang="en">
  <link href="https://datatracker.ietf.org/doc/draft-klensin-idna-unicode-review-05" rel="prev"/>
  <link href="https://dx.doi.org/10.17487/rfc8753" rel="alternate"/>
  <link href="urn:issn:2070-1721" rel="alternate"/>
  <front>
    <title abbrev="IDNA Unicode Reviews">Internationalized Domain Names for Applications (IDNA) Review for New Unicode Versions</title>
    <seriesInfo name="RFC" value="8753" stream="IETF"/>
    <author fullname="John C Klensin" initials="J." surname="Klensin">
      <organization showOnFrontPage="true"/>
      <address>
        <postal>
          <street>1770 Massachusetts Ave, Ste 322</street>
          <city>Cambridge</city>
          <region>MA</region>
          <code>02140</code>
          <country>United States of America</country>
        </postal>
        <phone>+1 617 245 1457</phone>
        <email>john-ietf@jck.com</email>
      </address>
    </author>
    <author fullname="Patrik Fältström" initials="P." surname="Fältström">
      <organization showOnFrontPage="true">Netnod</organization>
      <address>
        <postal>
          <street>Greta Garbos Väg 13</street>
          <city>Solna</city>
          <code>169 40</code>
          <country>Sweden</country>
        </postal>
        <phone>+46 70 6059051</phone>
        <email>paf@netnod.se</email>
      </address>
    </author>
    <date month="04" year="2020"/>
    <area>ART</area>
    <keyword>IDNA2008</keyword>
    <keyword>IDN</keyword>
    <keyword>Unicode Algorithmic Review</keyword>
    <keyword>Unicode Code Point Review</keyword>
    <keyword>IDNA Designated Expert</keyword>
    <abstract pn="section-abstract">
      <t pn="section-abstract-1">The standards for Internationalized Domain Names in
         Applications (IDNA)
         require a review of each new version of Unicode to determine
         whether incompatibilities with prior versions or other issues
         exist and, where appropriate, to allow the IETF to decide on
         the trade-offs between compatibility with prior IDNA versions
         and compatibility with Unicode going forward.  That
         requirement, and its relationship to tables maintained by
         IANA, has caused significant confusion in the past.  This
         document makes adjustments to the review procedure based on experience
         and updates IDNA, specifically RFC 5892, to reflect those
         changes and to clarify the various relationships involved.  It
	 also makes other minor adjustments to align that document
	 with experience.  </t>
    </abstract>
    <boilerplate>
      <section anchor="status-of-memo" numbered="false" removeInRFC="false" toc="exclude" pn="section-boilerplate.1">
        <name slugifiedName="name-status-of-this-memo">Status of This Memo</name>
        <t pn="section-boilerplate.1-1">
            This is an Internet Standards Track document.
        </t>
        <t pn="section-boilerplate.1-2">
            This document is a product of the Internet Engineering Task Force
            (IETF).  It represents the consensus of the IETF community.  It has
            received public review and has been approved for publication by
            the Internet Engineering Steering Group (IESG).  Further
            information on Internet Standards is available in Section 2 of 
            RFC 7841.
        </t>
        <t pn="section-boilerplate.1-3">
            Information about the current status of this document, any
            errata, and how to provide feedback on it may be obtained at
            <eref target="https://www.rfc-editor.org/info/rfc8753" brackets="none"/>.
        </t>
      </section>
      <section anchor="copyright" numbered="false" removeInRFC="false" toc="exclude" pn="section-boilerplate.2">
        <name slugifiedName="name-copyright-notice">Copyright Notice</name>
        <t pn="section-boilerplate.2-1">
            Copyright (c) 2020 IETF Trust and the persons identified as the
            document authors. All rights reserved.
        </t>
        <t pn="section-boilerplate.2-2">
            This document is subject to BCP 78 and the IETF Trust's Legal
            Provisions Relating to IETF Documents
            (<eref target="https://trustee.ietf.org/license-info" brackets="none"/>) in effect on the date of
            publication of this document. Please review these documents
            carefully, as they describe your rights and restrictions with
            respect to this document. Code Components extracted from this
            document must include Simplified BSD License text as described in
            Section 4.e of the Trust Legal Provisions and are provided without
            warranty as described in the Simplified BSD License.
        </t>
      </section>
    </boilerplate>
    <toc>
      <section anchor="toc" numbered="false" removeInRFC="false" toc="exclude" pn="section-toc.1">
        <name slugifiedName="name-table-of-contents">Table of Contents</name>
        <ul bare="true" empty="true" indent="2" spacing="compact" pn="section-toc.1-1">
          <li pn="section-toc.1-1.1">
            <t keepWithNext="true" pn="section-toc.1-1.1.1"><xref derivedContent="1" format="counter" sectionFormat="of" target="section-1"/>.  <xref derivedContent="" format="title" sectionFormat="of" target="name-introduction">Introduction</xref></t>
          </li>
          <li pn="section-toc.1-1.2">
            <t keepWithNext="true" pn="section-toc.1-1.2.1"><xref derivedContent="2" format="counter" sectionFormat="of" target="section-2"/>.  <xref derivedContent="" format="title" sectionFormat="of" target="name-brief-history-of-idna-versi">Brief History of IDNA Versions, the Review Requirement, and RFC 5982</xref></t>
          </li>
          <li pn="section-toc.1-1.3">
            <t pn="section-toc.1-1.3.1"><xref derivedContent="3" format="counter" sectionFormat="of" target="section-3"/>.  <xref derivedContent="" format="title" sectionFormat="of" target="name-the-review-model">The Review Model</xref></t>
            <ul bare="true" empty="true" indent="2" spacing="compact" pn="section-toc.1-1.3.2">
              <li pn="section-toc.1-1.3.2.1">
                <t keepWithNext="true" pn="section-toc.1-1.3.2.1.1"><xref derivedContent="3.1" format="counter" sectionFormat="of" target="section-3.1"/>.  <xref derivedContent="" format="title" sectionFormat="of" target="name-review-model-part-i-algorit">Review Model Part I: Algorithmic Comparison</xref></t>
              </li>
              <li pn="section-toc.1-1.3.2.2">
                <t pn="section-toc.1-1.3.2.2.1"><xref derivedContent="3.2" format="counter" sectionFormat="of" target="section-3.2"/>.  <xref derivedContent="" format="title" sectionFormat="of" target="name-review-model-part-ii-new-co">Review Model Part II: New Code Point Analysis</xref></t>
              </li>
            </ul>
          </li>
          <li pn="section-toc.1-1.4">
            <t pn="section-toc.1-1.4.1"><xref derivedContent="4" format="counter" sectionFormat="of" target="section-4"/>.  <xref derivedContent="" format="title" sectionFormat="of" target="name-idna-assumptions-and-curren">IDNA Assumptions and Current Practice</xref></t>
          </li>
          <li pn="section-toc.1-1.5">
            <t pn="section-toc.1-1.5.1"><xref derivedContent="5" format="counter" sectionFormat="of" target="section-5"/>.  <xref derivedContent="" format="title" sectionFormat="of" target="name-derived-tables-published-by">Derived Tables Published by IANA</xref></t>
          </li>
          <li pn="section-toc.1-1.6">
            <t pn="section-toc.1-1.6.1"><xref derivedContent="6" format="counter" sectionFormat="of" target="section-6"/>.  <xref derivedContent="" format="title" sectionFormat="of" target="name-editorial-clarification-to-">Editorial Clarification to RFC 5892</xref></t>
          </li>
          <li pn="section-toc.1-1.7">
            <t pn="section-toc.1-1.7.1"><xref derivedContent="7" format="counter" sectionFormat="of" target="section-7"/>.  <xref derivedContent="" format="title" sectionFormat="of" target="name-iana-considerations">IANA Considerations</xref></t>
          </li>
          <li pn="section-toc.1-1.8">
            <t pn="section-toc.1-1.8.1"><xref derivedContent="8" format="counter" sectionFormat="of" target="section-8"/>.  <xref derivedContent="" format="title" sectionFormat="of" target="name-security-considerations">Security Considerations</xref></t>
          </li>
          <li pn="section-toc.1-1.9">
            <t pn="section-toc.1-1.9.1"><xref derivedContent="9" format="counter" sectionFormat="of" target="section-9"/>.  <xref derivedContent="" format="title" sectionFormat="of" target="name-references">References</xref></t>
            <ul bare="true" empty="true" indent="2" spacing="compact" pn="section-toc.1-1.9.2">
              <li pn="section-toc.1-1.9.2.1">
                <t pn="section-toc.1-1.9.2.1.1"><xref derivedContent="9.1" format="counter" sectionFormat="of" target="section-9.1"/>.  <xref derivedContent="" format="title" sectionFormat="of" target="name-normative-references">Normative References</xref></t>
              </li>
              <li pn="section-toc.1-1.9.2.2">
                <t pn="section-toc.1-1.9.2.2.1"><xref derivedContent="9.2" format="counter" sectionFormat="of" target="section-9.2"/>.  <xref derivedContent="" format="title" sectionFormat="of" target="name-informative-references">Informative References</xref></t>
              </li>
            </ul>
          </li>
          <li pn="section-toc.1-1.10">
            <t pn="section-toc.1-1.10.1"><xref derivedContent="Appendix A" format="default" sectionFormat="of" target="section-appendix.a"/>.  <xref derivedContent="" format="title" sectionFormat="of" target="name-summary-of-changes-to-rfc-5">Summary of Changes to RFC 5892</xref></t>
          </li>
          <li pn="section-toc.1-1.11">
            <t pn="section-toc.1-1.11.1"><xref derivedContent="Appendix B" format="default" sectionFormat="of" target="section-appendix.b"/>.  <xref derivedContent="" format="title" sectionFormat="of" target="name-background-and-rationale-fo">Background and Rationale for Expert Review Procedure for New Code Point Analysis</xref></t>
          </li>
          <li pn="section-toc.1-1.12">
            <t pn="section-toc.1-1.12.1"><xref derivedContent="" format="none" sectionFormat="of" target="section-appendix.c"/><xref derivedContent="" format="title" sectionFormat="of" target="name-acknowledgments">Acknowledgments</xref></t>
          </li>
          <li pn="section-toc.1-1.13">
            <t pn="section-toc.1-1.13.1"><xref derivedContent="" format="none" sectionFormat="of" target="section-appendix.d"/><xref derivedContent="" format="title" sectionFormat="of" target="name-authors-addresses">Authors' Addresses</xref></t>
          </li>
        </ul>
      </section>
    </toc>
  </front>
  <middle>
    <section numbered="true" toc="include" removeInRFC="false" pn="section-1">
      <name slugifiedName="name-introduction">Introduction</name>
      <t pn="section-1-1">The standards for Internationalized Domain Names in
         Applications (IDNA) require a review of each new version of
         Unicode to determine whether incompatibilities with prior
         versions or other issues exist and, where appropriate, to
         allow the IETF to decide on the trade-offs between
         compatibility with prior IDNA versions and compatibility
         with Unicode <xref target="Unicode" format="default" sectionFormat="of" derivedContent="Unicode"/> going forward.  That
         requirement, and its relationship to tables maintained by
         IANA, has caused significant confusion in the past
		 (see <xref target="ReviewModel" format="default" sectionFormat="of" derivedContent="Section 3"/> and
		 <xref target="IDNA-Assumptions" format="default" sectionFormat="of" derivedContent="Section 4"/> for additional discussion
		 of the question of appropriate decisions and the history of
		 these reviews).
		 This
         document makes adjustments to the review procedure based on
         nearly a decade of experience and updates IDNA, specifically
         the document that specifies the relationship between Unicode
         code points and IDNA derived properties
         <xref target="RFC5892" format="default" sectionFormat="of" derivedContent="RFC5892"/>, to reflect those
         changes and to clarify the various relationships involved.  </t>
      <t pn="section-1-2"> This specification does not change the requirement that
		 registries at all levels of the DNS tree take
		 responsibility for the labels they insert in the DNS,
		 a level of responsibility that requires allowing only a
		 subset of the code points and strings allowed by the IDNA
		 protocol itself.  That requirement is discussed in more
		 detail in a companion document
		 <xref target="I-D.klensin-idna-rfc5891bis" format="default" sectionFormat="of" derivedContent="RegRestr"/>.</t>
      <t pn="section-1-3"> Terminology note: In this document, "IDNA" refers to the
         current version as described
         in <xref target="RFC5890" format="default" sectionFormat="of" derivedContent="RFC5890">RFC 5890</xref> and subsequent
         documents and sometimes known as "IDNA2008".  Distinctions
         between it and the earlier version are explicit only where
         they are necessary for understanding the relationships
         involved, e.g., in <xref target="History" format="default" sectionFormat="of" derivedContent="Section 2"/>.</t>
    </section>
    <section anchor="History" numbered="true" toc="include" removeInRFC="false" pn="section-2">
      <name slugifiedName="name-brief-history-of-idna-versi">Brief History of IDNA Versions, the Review Requirement, and RFC 5982</name>
      <t pn="section-2-1">The original, now-obsolete, version of IDNA, commonly known
          as "IDNA2003"  <xref target="RFC3490" format="default" sectionFormat="of" derivedContent="RFC3490"/>
        <xref target="RFC3491" format="default" sectionFormat="of" derivedContent="RFC3491"/>, was defined in terms of a profile
          of a collection of IETF-specific
          tables <xref target="RFC3454" format="default" sectionFormat="of" derivedContent="RFC3454"/> that specified the usability
          of each Unicode code point with IDNA.  Because the tables
          themselves were normative, they were intrinsically tied to a
          particular version of Unicode.  As Unicode evolved, the 
          IDNA2003 standard would have required the creation of a 
          new profile for each new version of Unicode, or the 
          tables would have fallen further and further behind.</t>
      <t pn="section-2-2"> When IDNA2003 was superseded by the
          current version, known as IDNA2008 <xref target="RFC5890" format="default" sectionFormat="of" derivedContent="RFC5890"/>, a
          different strategy, one that was property-based rather than
          table-based, was adopted for a number of reasons, of which
          the reliance on normative
          tables was not dominant <xref target="RFC4690" format="default" sectionFormat="of" derivedContent="RFC4690"/>.
          In the IDNA2008 model, the use of normative tables was
          replaced by a set of procedures and rules that operated on
          Unicode properties <xref target="Unicode-properties" format="default" sectionFormat="of" derivedContent="Unicode-properties"/> and
          a few internal definitions to determine the category and
          status, and hence an IDNA-specific "derived property", for
          any given code point.
          Those rules are, in principle, independent of Unicode
          versions.  They can be applied to any version of Unicode, at
          least from approximately version 5.0 forward, to yield
          an appropriate set of derived properties.  However, the
          working group that defined IDNA2008 recognized that not all
          of the Unicode properties were completely stable and that,
          because the criteria for new code points and property
          assignment used by the Unicode Consortium might not
          precisely align with the needs of IDNA, there were
          possibilities of incompatible changes to the derived property
          values.
          More specifically, there could be changes that would make
          previously disallowed labels valid, previously valid labels
          disallowed, or that would be disruptive to IDNA's defining
          rule structure.
          Consequently, IDNA2008 provided for an
          expert review of each new version of Unicode with the
          possibility of providing exceptions to the rules for
          particular new code points, code points whose properties had
          changed, and newly discovered issues with the IDNA2008
          collection of rules.  When problems were identified, the
          reviewer was expected to notify the IESG.  The
          assumption was that the IETF would review the situation and
          modify IDNA2008 as needed, most likely by adding exceptions
          to preserve backward
          compatibility (see <xref target="AlgorReview" format="default" sectionFormat="of" derivedContent="Section 3.1"/>).</t>
      <t pn="section-2-3"> For the convenience of the community, IDNA2008 also
          provided that IANA would maintain copies of calculated tables
          resulting from each review, showing the derived properties
          for each code point.  Those tables were expected to be
          helpful, especially to those without the facilities to
          easily compute derived properties themselves.  Experience
          with the community and those tables has shown that they have
          been confused with the normative tables of IDNA2003: the
          IDNA2008 tables published by IANA have never been normative,
          and statements about IDNA2008 being out of date with regard
          to some Unicode version because the IANA tables have not
          been updated are incorrect or meaningless.</t>
    </section>
    <section anchor="ReviewModel" numbered="true" toc="include" removeInRFC="false" pn="section-3">
      <name slugifiedName="name-the-review-model">The Review Model</name>
      <t pn="section-3-1"> While the text has sometimes been interpreted differently,
         IDNA2008 actually calls for two types of review when a new
         Unicode version is introduced.  One is an algorithmic
         comparison of the set of derived properties calculated from
         the new version of Unicode to the derived properties
         calculated from the previous one to determine whether
         incompatible changes have occurred.  The other is a review of
         newly assigned code points to determine whether any of them
         require special treatment (e.g., assignment of what IDNA2008
         calls contextual rules) and whether any of them violate any of
         the assumptions underlying the IDNA2008 derived property
         calculations.  Any of the cases of either review might
         require either per-code point exceptions or
         other adjustments to the rules for deriving properties
         that are part of RFC 5892.  The subsections below
         provide a revised specification for the review procedure.</t>
      <t pn="section-3-2"> Unless the IESG or the designated expert team concludes that there
		 are special problems or unusual circumstances, these reviews
		 will be performed only for major Unicode versions (those
		 numbered NN.0, e.g., 12.0)
		 and not for minor updates (e.g., 12.1). </t>
      <t pn="section-3-3"> As can be seen in the detailed descriptions in the
		 following subsections, proper review will require a team of
		 experts that has both broad and specific skills in reviewing
		 Unicode characters and their properties in relation to both
		 the written standards and operational needs.  The IESG will
		 need to appoint experts who can draw on the broader
		 community to obtain the necessary skills for particular
		 situations.  See the
		 IANA Considerations (<xref target="IANA" format="default" sectionFormat="of" derivedContent="Section 7"/>) for details.</t>
      <section anchor="AlgorReview" numbered="true" toc="include" removeInRFC="false" pn="section-3.1">
        <name slugifiedName="name-review-model-part-i-algorit">Review Model Part I: Algorithmic Comparison</name>
        <t pn="section-3.1-1">Section <xref target="RFC5892" section="5.1" sectionFormat="bare" format="default" derivedLink="https://rfc-editor.org/rfc/rfc5892#section-5.1" derivedContent="RFC5892"/> 
            of RFC 5892 is the description of the process
            for creating the initial IANA tables.  It is noteworthy
            that, while it can be read as strongly implying new
            reviews and new tables for versions of Unicode after 5.2,
            it does not explicitly specify those reviews or, e.g., the
            timetable for completing them.  It also indicates that
            incompatibilities are to be "flagged for the IESG" but
            does not specify exactly what the IESG is to do about them
            and when.  For reasons related to the other type of review
            and discussed below, only one review was
            completed, documented <xref target="RFC6452" format="default" sectionFormat="of" derivedContent="RFC6452"/>, and a set
            of corresponding new tables installed.  That review, which was for
            Unicode 6.0, found only three incompatibilities; the
            consensus was to ignore them (not create exceptions in
            IDNA2008) and to remain consistent with computations based on
            current (Unicode 6.0) properties rather than preserving
            backward compatibility within IDNA.    The 2018 review
            (for Unicode 11.0 and versions in between it and 6.0)
            <xref target="I-D.faltstrom-unicode12" format="default" sectionFormat="of" derivedContent="IDNA-Unicode12"/> also concluded that
            Unicode compatibility, rather than IDNA backward
            compatibility, should be maintained.  That decision was
            partially driven by the long period between reviews and
            the concern that table calculations by others in the
            interim could result in unexpected incompatibilities if
            derived property definitions were then changed.
            See <xref target="IDNA-Assumptions" format="default" sectionFormat="of" derivedContent="Section 4"/> for further
            discussion of these preferences. </t>
      </section>
      <section anchor="CodePointReview" numbered="true" toc="include" removeInRFC="false" pn="section-3.2">
        <name slugifiedName="name-review-model-part-ii-new-co">Review Model Part II: New Code Point Analysis</name>
        <t pn="section-3.2-1">
   The second type of review, which is not clearly explained in 
   RFC 5892, is intended to identify cases in which newly added or 
   recently discovered problematic code points violate the design 
   assumptions of IDNA, to identify defects in those assumptions, or 
   to identify inconsistencies (from an IDNA perspective) with 
   Unicode commitments about assignment, properties, and stability of 
   newly added code points. One example of this type of review was 
   the discovery of new code points after Unicode 7.0 that were 
   potentially visually equivalent, in the same script, to 
   previously available code point sequences <xref target="IAB-Unicode7-2015" format="default" sectionFormat="of" derivedContent="IAB-Unicode7-2015"/>
          <xref target="I-D.klensin-idna-5892upd-unicode70" format="default" sectionFormat="of" derivedContent="IDNA-Unicode7"/>.</t>
        <t pn="section-3.2-2">
   Because multiple perspectives on Unicode and writing systems are 
   required, this review will not be successful unless it is done by 
   a team.  Finding one all-knowing expert is improbable, and a 
   single expert is unlikely to produce an adequate analysis.
			Rather than any single expert being the sole source of
			analysis, the designated expert (DE) team needs to understand
			that there will always be gaps in their knowledge, to
			know what they  don't know, and to work to find the
			expertise that each review requires.  It is also
			important that the DE team maintains close contact with
			the Area Directors (ADs) and that the ADs remain aware of the
			team's changing needs, examining and adjusting the team's
			membership over time, with periodic reexamination at least
			annually.
			It should also be recognized that, if this
            review identifies a problem, that problem is likely to
            be complex and/or involve multiple trade-offs.  Actions to
            deal with it are likely to be disruptive (although perhaps
            not to large communities of users), or to leave 
            security risks (opportunities for attacks and inadvertent
            confusion as expected matches do not occur), or to cause excessive
            reliance on registries understanding and taking
            responsibility for what they are registering <xref target="RFC5894" format="default" sectionFormat="of" derivedContent="RFC5894"/>
          <xref target="I-D.klensin-idna-rfc5891bis" format="default" sectionFormat="of" derivedContent="RegRestr"/>.  The
            latter, while a requirement of IDNA, has often not worked
            out well in the past.</t>
        <t pn="section-3.2-3">Because resolution of problems identified by this part of
            the review may take some time even if that resolution is
            to add additional contextual rules or to disallow one or more
            code points, there will be cases in which it will be
            appropriate to publish the results of the algorithmic
            review and to provide IANA with corresponding tables, with
            warnings about code points whose status is uncertain until
            there is IETF consensus about how to proceed.
			The affected code points should be considered unsafe and
			identified as "under review" in the IANA tables until
			final derived properties are assigned. </t>
      </section>
    </section>
    <section anchor="IDNA-Assumptions" numbered="true" toc="include" removeInRFC="false" pn="section-4">
      <name slugifiedName="name-idna-assumptions-and-curren">IDNA Assumptions and Current Practice</name>
      <t pn="section-4-1"> At the time the IDNA2008 documents were written, the
          assumption was that, if new versions of Unicode introduced
          incompatible changes, the Standard would be updated to preserve
          backward compatibility for users of IDNA.  For most
          purposes, this would be done by adding to the table of
          exceptions associated with Rule G <xref target="RFC5892a" format="default" sectionFormat="of" derivedContent="RFC5892a"/>.
      </t>
      <t pn="section-4-2">This has not been the practice in the reviews completed
          subsequent to Unicode 5.2,  as
          discussed in <xref target="ReviewModel" format="default" sectionFormat="of" derivedContent="Section 3"/>.
          Incompatibilities were identified in Unicode 6.0
          <xref target="RFC6452" format="default" sectionFormat="of" derivedContent="RFC6452"/> and in the cumulative review
          leading to tables for Unicode 11.0
          <xref target="I-D.faltstrom-unicode11" format="default" sectionFormat="of" derivedContent="IDNA-Unicode11"/>.
          In all of those cases, the decision was made to maintain
          compatibility with Unicode properties rather than with prior
          versions of IDNA.</t>
      <t pn="section-4-3">	If an algorithmic review detects changes in Unicode
	after version 12.0 that would break compatibility with
	derived properties associated with prior versions of
	Unicode or changes that would preserve compatibility
	within IDNA at the cost of departing from current
	Unicode specifications, those changes must be captured
	in documents expected to be published as Standards Track
	RFCs so that the IETF can review those changes
        and maintain a historical record.</t>
      <t pn="section-4-4"> The community has now made decisions and updated tables
		  for Unicode 6.0 <xref target="RFC6452" format="default" sectionFormat="of" derivedContent="RFC6452"/>, done catch-up
		  work between it and 
		  Unicode 11.0 <xref target="I-D.faltstrom-unicode11" format="default" sectionFormat="of" derivedContent="IDNA-Unicode11"/>,
		  and completed the review and tables for
		  Unicode 12.0 <xref target="I-D.faltstrom-unicode12" format="default" sectionFormat="of" derivedContent="IDNA-Unicode12"/>.  The
		  decisions made in those cases were driven by preserving
		  consistency with Unicode and Unicode property changes for
		  reasons most clearly explained
		  by the IAB <xref target="IAB-Unicode-2018" format="default" sectionFormat="of" derivedContent="IAB-Unicode-2018"/>.  
	These actions were not only at variance with the language
	in RFC 5892 but were also inconsistent with commitments to
	the registry and user communities to ensure that IDN labels
	that were once valid under IDNA2008 would remain valid, and
	previously invalid labels would remain invalid, except for
	those labels that were invalid because they contained
	unassigned code points.</t>
      <t pn="section-4-5"> This document restores and clarifies that original language
		  and intent: absent extremely strong evidence on a
		  per-code point basis that preserving
		  the validity status of possible existing (or prohibited)
		  labels would cause significant harm, Unicode changes that
		  would affect IDNA derived properties are to be reflected in
		  IDNA exceptions that preserve the status of those labels.
		  There is one partial exception to this principle.  If the
		  new code point
		  analysis (see <xref target="CodePointReview" format="default" sectionFormat="of" derivedContent="Section 3.2"/>) concludes
		  that some code 
		  points or collections of code points should be further
		  analyzed, those code points, and labels including them,
		  should be considered unsafe and used only with extreme caution
		  because the conclusions of the analysis may change their
		  derived property values and status.</t>
    </section>
    <section anchor="IANATables" numbered="true" toc="include" removeInRFC="false" pn="section-5">
      <name slugifiedName="name-derived-tables-published-by">Derived Tables Published by IANA</name>
      <t pn="section-5-1"> As discussed above, RFC 5892 specified that derived
          property tables be provided via an IANA registry.  Perhaps
          because most IANA registries are considered normative and
          authoritative, that registry has been the source of
          considerable confusion, including the incorrect assumption that the
          absence of published tables for versions of Unicode later
          than 6.0 meant that IDNA could not be used with later
          versions.
          That position was raised in multiple ways, not all of them
          consistent, especially in the ICANN
          context <xref target="ICANN-LGR-SLA" format="default" sectionFormat="of" derivedContent="ICANN-LGR-SLA"/>. </t>
      <t pn="section-5-2"> If the changes specified in this document are not
          successful in significantly mitigating the confusion about
          the status of the tables published by IANA, serious
          consideration should be given to eliminating those tables
          entirely.</t>
    </section>
    <section anchor="ApplyErratum" numbered="true" toc="include" removeInRFC="false" pn="section-6">
      <name slugifiedName="name-editorial-clarification-to-">Editorial Clarification to RFC 5892</name>
      <t pn="section-6-1"> This section updates RFC 5892 to provide fixes for known
	  applicable errata and omissions.  In particular, verified RFC Editor
          Erratum 3312 <xref target="Err3312" format="default" sectionFormat="of" derivedContent="Err3312"/> provides a
          clarification to Appendix <xref target="RFC5892" section="A" sectionFormat="bare" format="default" derivedLink="https://rfc-editor.org/rfc/rfc5892#appendix-A" derivedContent="RFC5892"/> 
          and <xref target="RFC5892" section="A.1" sectionFormat="bare" format="default" derivedLink="https://rfc-editor.org/rfc/rfc5892#appendix-A.1" derivedContent="RFC5892"/> in RFC 5892.
	  That clarification is incorporated below.</t>
      <ol spacing="normal" type="1" start="1" pn="section-6-2">
        <li pn="section-6-2.1" derivedCounter="1.">
          <t pn="section-6-2.1.1"> In Appendix <xref target="RFC5892" section="A" sectionFormat="bare" format="default" derivedLink="https://rfc-editor.org/rfc/rfc5892#appendix-A" derivedContent="RFC5892"/>, add a new paragraph after the paragraph
             that begins "The code point...".  The new paragraph
             should read: </t>
          <blockquote pn="section-6-2.1.2">
             For the rule to be evaluated to True for the label, it <bcp14>MUST</bcp14> be
             evaluated separately for every occurrence of the code point in the
             label; each of those evaluations must result in True.</blockquote>
        </li>
        <li pn="section-6-2.2" derivedCounter="2.">
          <t pn="section-6-2.2.1"> In Appendix <xref target="RFC5892" section="A.1" sectionFormat="bare" format="default" derivedLink="https://rfc-editor.org/rfc/rfc5892#appendix-A.1" derivedContent="RFC5892"/>, replace the "Rule Set" by
          </t>
          <sourcecode type="pseudocode" markers="false" pn="section-6-2.2.2">
     Rule Set:
       False;
       If Canonical_Combining_Class(Before(cp)) .eq. Virama
             Then True;
       If cp .eq. \u200C And
              RegExpMatch((Joining_Type:{L,D})(Joining_Type:T)*cp
         (Joining_Type:T)*(Joining_Type:{R,D})) Then True;</sourcecode>
        </li>
      </ol>
    </section>
    <section anchor="IANA" numbered="true" toc="include" removeInRFC="false" pn="section-7">
      <name slugifiedName="name-iana-considerations">IANA Considerations</name>
      <t pn="section-7-1"> For the algorithmic review described in
		 <xref target="AlgorReview" format="default" sectionFormat="of" derivedContent="Section 3.1"/>, the IESG is to appoint a
		 designated expert <xref target="RFC8126" format="default" sectionFormat="of" derivedContent="RFC8126"/> with appropriate
		 expertise to conduct the review and to supply derived property
		 tables to IANA.  As provided in <xref target="RFC8126" section="5.2" sectionFormat="of" format="default" derivedLink="https://rfc-editor.org/rfc/rfc8126#section-5.2" derivedContent="RFC8126">the Guidelines
		 for Writing IANA Considerations</xref>, the
		 designated expert is expected to consult additional sources
		 of expertise as needed.  For the code point review, the expertise
		 will be supplied by an IESG-designated expert team as
		 discussed in <xref target="CodePointReview" format="default" sectionFormat="of" derivedContent="Section 3.2"/> and
		 <xref target="ExpertRationale" format="default" sectionFormat="of" derivedContent="Appendix B"/>.  In both
		 cases, the experts should draw on the expertise of other
		 members of the community as needed.  In particular, and
		 especially if there is no overlap of the people holding the
		 various roles, coordination with the IAB-appointed liaison
		 to the Unicode Consortium will be essential to mitigate
		 possible errors due to confusion.</t>
      <t pn="section-7-2">As discussed in <xref target="IANATables" format="default" sectionFormat="of" derivedContent="Section 5"/>, 
         IANA has modified the IDNA tables collection 
         <xref target="IANA-IDNA-Tables" format="default" sectionFormat="of" derivedContent="IANA-IDNA-Tables"/> by identifying
         them clearly as non-normative, so that  
         a "current" or "correct" version of those tables is not implied, and by
         pointing to this document for an explanation.  
         IANA has published tables supplied by the IETF for all
         Unicode versions through 11.0, retaining all older
         versions and making them available.  Newer tables will
         be constructed as specified in this document and then
         made available by IANA.  IANA has changed the 
         title of that registry from "IDNA Parameters", which is
         misleading, to "IDNA Rules and Derived Property Values". </t>
      <t pn="section-7-3"> The "Note" in that registry says:
      </t>
      <blockquote pn="section-7-4">
        <t pn="section-7-4.1">IDNA does not require that applications and
        libraries, either for registration/storage or lookup,
        support any particular version of Unicode.  Instead,
        they are required to use derived property values based
        on calculations associated with whatever version of
        Unicode they are using elsewhere in the application or
        library.  For the convenience of application and
        library developers and others, the IETF has supplied,
        and IANA maintains, derived property tables for
        several version of Unicode as listed below.  It should
        be stressed that these are not normative in that, in
        principle, an application can do its own calculations
        and these tables can change as IETF understanding
        evolves.   By contrast, the list of code points
        requiring contextual rules and the associated rules are
        normative and should be treated as updates to the list
        in RFC 5892.</t>
      </blockquote>
      <t pn="section-7-5"> As long as the intent is preserved, the text of that 
       note may be changed in the future at IANA's discretion.</t>
      <t pn="section-7-6"> IANA's attention is called to the introduction, in
			<xref target="CodePointReview" format="default" sectionFormat="of" derivedContent="Section 3.2"/>, of a temporary "under
			review" category to the PVALID, DISALLOWED, etc., entries
			in the tables.</t>
    </section>
    <section anchor="Security" numbered="true" toc="include" removeInRFC="false" pn="section-8">
      <name slugifiedName="name-security-considerations">Security Considerations</name>
      <t pn="section-8-1">Applying the procedures described in this document and
         understanding of the clarifications it provides should reduce
         confusion about IDNA requirements.  Because past confusion
         has provided opportunities for bad behavior, the effect of
         these changes should improve Internet security to at least
         some small extent. </t>
      <t pn="section-8-2"> Because of the preference to keep the derived property
         value stable (as specified in RFC 5892 and
         discussed in <xref target="IDNA-Assumptions" format="default" sectionFormat="of" derivedContent="Section 4"/>), the
         algorithm used to calculate those derived properties does
         change as explained in <xref target="ReviewModel" format="default" sectionFormat="of" derivedContent="Section 3"/>. If
         these changes are not taken into account, the derived
         property value will change, and the implications might have
         negative consequences, in some cases with security
         implications. For example, changes in the calculated derived
         property value for a code point from either DISALLOWED to
         PVALID or from PVALID to DISALLOWED can cause changes in
         label interpretation that would be visible and confusing to
         end users and might enable attacks. </t>
    </section>
  </middle>
  <back>
    <displayreference target="I-D.klensin-idna-5892upd-unicode70" to="IDNA-Unicode7"/>
    <displayreference target="I-D.faltstrom-unicode12" to="IDNA-Unicode12"/>
    <displayreference target="I-D.faltstrom-unicode11" to="IDNA-Unicode11"/>
    <displayreference target="I-D.klensin-idna-rfc5891bis" to="RegRestr"/>
    <references pn="section-9">
      <name slugifiedName="name-references">References</name>
      <references pn="section-9.1">
        <name slugifiedName="name-normative-references">Normative References</name>
        <reference anchor="IANA-IDNA-Tables" target="https://www.iana.org/assignments/idna-tables" quoteTitle="true" derivedAnchor="IANA-IDNA-Tables">
          <front>
            <title>IDNA Rules and Derived Property Values</title>
            <author>
              <organization showOnFrontPage="true">IANA</organization>
            </author>
          </front>
        </reference>
        <reference anchor="RFC5892" target="https://www.rfc-editor.org/info/rfc5892" quoteTitle="true" derivedAnchor="RFC5892">
          <front>
            <title>The Unicode Code Points and Internationalized Domain Names for Applications (IDNA)</title>
            <author initials="P." surname="Faltstrom" fullname="P. Faltstrom" role="editor">
              <organization showOnFrontPage="true"/>
            </author>
            <date year="2010" month="August"/>
            <abstract>
              <t>This document specifies rules for deciding whether a code point, considered in isolation or in context, is a candidate for inclusion in an Internationalized Domain Name (IDN).  </t>
              <t>It is part of the specification of Internationalizing Domain Names in Applications 2008 (IDNA2008).  [STANDARDS-TRACK]</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="5892"/>
          <seriesInfo name="DOI" value="10.17487/RFC5892"/>
        </reference>
        <reference anchor="RFC5892a" target="https://www.rfc-editor.org/rfc/rfc5892.txt" quoteTitle="true" derivedAnchor="RFC5892a">
          <front>
            <title>The Unicode Code Points and Internationalized Domain Names for Applications (IDNA)</title>
            <author initials="P." surname="Faltstrom" role="editor">
              <organization showOnFrontPage="true"/>
              <address/>
            </author>
            <date year="2010" month="August"/>
          </front>
          <seriesInfo name="RFC" value="5892"/>
          <refcontent>Section 2.7</refcontent>
        </reference>
        <reference anchor="RFC8126" target="https://www.rfc-editor.org/info/rfc8126" quoteTitle="true" derivedAnchor="RFC8126">
          <front>
            <title>Guidelines for Writing an IANA Considerations Section in RFCs</title>
            <author initials="M." surname="Cotton" fullname="M. Cotton">
              <organization showOnFrontPage="true"/>
            </author>
            <author initials="B." surname="Leiba" fullname="B. Leiba">
              <organization showOnFrontPage="true"/>
            </author>
            <author initials="T." surname="Narten" fullname="T. Narten">
              <organization showOnFrontPage="true"/>
            </author>
            <date year="2017" month="June"/>
            <abstract>
              <t>Many protocols make use of points of extensibility that use constants to identify various protocol parameters.  To ensure that the values in these fields do not have conflicting uses and to promote interoperability, their allocations are often coordinated by a central record keeper.  For IETF protocols, that role is filled by the Internet Assigned Numbers Authority (IANA).</t>
              <t>To make assignments in a given registry prudently, guidance describing the conditions under which new values should be assigned, as well as when and how modifications to existing values can be made, is needed.  This document defines a framework for the documentation of these guidelines by specification authors, in order to assure that the provided guidance for the IANA Considerations is clear and addresses the various issues that are likely in the operation of a registry.</t>
              <t>This is the third edition of this document; it obsoletes RFC 5226.</t>
            </abstract>
          </front>
          <seriesInfo name="BCP" value="26"/>
          <seriesInfo name="RFC" value="8126"/>
          <seriesInfo name="DOI" value="10.17487/RFC8126"/>
        </reference>
        <reference anchor="Unicode" target="http://www.unicode.org/versions/latest/" quoteTitle="true" derivedAnchor="Unicode">
          <front>
            <title>The Unicode Standard (Current Version)</title>
            <author>
              <organization showOnFrontPage="true">The Unicode Consortium</organization>
            </author>
          </front>
          <annotation>The link given will always access the current
           version of the Unicode Standard, independent of its version
           number or date.</annotation>
        </reference>
        <reference anchor="Unicode-properties" target="https://www.unicode.org/versions/Unicode11.0.0/" quoteTitle="true" derivedAnchor="Unicode-properties">
          <front>
            <title>The Unicode Standard Version 11.0</title>
            <author>
              <organization showOnFrontPage="true">The Unicode Consortium</organization>
            </author>
            <date year="2018"/>
          </front>
          <refcontent>Section 3.5</refcontent>
        </reference>
      </references>
      <references pn="section-9.2">
        <name slugifiedName="name-informative-references">Informative References</name>
        <reference anchor="Err3312" target="https://www.rfc-editor.org/errata/eid3312" quoteTitle="false" derivedAnchor="Err3312">
          <front>
            <title>Erratum ID 3312</title>
            <author>
              <organization showOnFrontPage="true">RFC Errata</organization>
            </author>
          </front>
          <refcontent>RFC 5892</refcontent>
        </reference>
        <reference anchor="IAB-Unicode-2018" target="https://www.iab.org/documents/correspondence-reports-documents/2018-2/iab-statement-on-identifiers-and-unicode/" quoteTitle="true" derivedAnchor="IAB-Unicode-2018">
          <front>
            <title>IAB Statement on Identifiers and Unicode</title>
            <author>
              <organization showOnFrontPage="true">Internet Architecture Board (IAB)</organization>
            </author>
            <date year="2018" month="March" day="15"/>
          </front>
        </reference>
        <reference anchor="IAB-Unicode7-2015" target="https://www.iab.org/documents/correspondence-reports-documents/2015-2/iab-statement-on-identifiers-and-unicode-7-0-0/" quoteTitle="true" derivedAnchor="IAB-Unicode7-2015">
          <front>
            <title>IAB Statement on Identifiers and Unicode 7.0.0</title>
            <author>
              <organization showOnFrontPage="true">Internet Architecture Board (IAB)</organization>
            </author>
            <date year="2015" month="February" day="11"/>
          </front>
        </reference>
        <reference anchor="ICANN-LGR-SLA" target="https://www.icann.org/public-comments/proposed-iana-sla-lgr-idn-tables-2019-06-10-en" quoteTitle="true" derivedAnchor="ICANN-LGR-SLA">
          <front>
            <title>Proposed IANA SLAs for Publishing LGRs/IDN Tables</title>
            <author>
              <organization showOnFrontPage="true">Internet Corporation for Assigned Names and Numbers (ICANN)</organization>
            </author>
            <date year="2019" month="June" day="10"/>
          </front>
        </reference>
        <reference anchor="I-D.klensin-idna-5892upd-unicode70" quoteTitle="true" target="https://tools.ietf.org/html/draft-klensin-idna-5892upd-unicode70-05" derivedAnchor="IDNA-Unicode7">
          <front>
            <title>IDNA Update for Unicode 7.0 and Later Versions</title>
            <author initials="J" surname="Klensin" fullname="John Klensin">
              <organization showOnFrontPage="true"/>
            </author>
            <author initials="P" surname="Faltstrom" fullname="Patrik Faltstrom">
              <organization showOnFrontPage="true"/>
            </author>
            <date month="October" day="8" year="2017"/>
            <abstract>
              <t>The current version of the IDNA specifications anticipated that each new version of Unicode would be reviewed to verify that no changes had been introduced that required adjustments to the set of rules and, in particular, whether new exceptions or backward compatibility adjustments were needed.  The review for Unicode 7.0.0 first identified a potentially problematic new code point and then a much more general and difficult issue with Unicode normalization.  This specification discusses those issues and proposes updates to IDNA and, potentially, the way the IETF handles comparison of identifiers more generally, especially when there is no associated language or language identification.  It also applies an editorial clarification to RFC 5892 that was the subject of an earlier erratum and updates RFC 5894 to point to the issues involved.</t>
            </abstract>
          </front>
          <seriesInfo name="Internet-Draft" value="draft-klensin-idna-5892upd-unicode70-05"/>
          <format type="TXT" target="http://www.ietf.org/internet-drafts/draft-klensin-idna-5892upd-unicode70-05.txt"/>
          <refcontent>Work in Progress</refcontent>
        </reference>
        <reference anchor="I-D.faltstrom-unicode11" quoteTitle="true" target="https://tools.ietf.org/html/draft-faltstrom-unicode11-08" derivedAnchor="IDNA-Unicode11">
          <front>
            <title>IDNA2008 and Unicode 11.0.0</title>
            <author initials="P" surname="Faltstrom" fullname="Patrik Faltstrom">
              <organization showOnFrontPage="true"/>
            </author>
            <date month="March" day="11" year="2019"/>
            <abstract>
              <t>This document describes the changes between Unicode 6.3.0 and Unicode 11.0.0 in the context of IDNA2008.  Some additions and changes have been made in the Unicode Standard that affect the values produced by the algorithm IDNA2008 specifies.  Although IDNA2008 allows adding exceptions to the algorithm for backward compatibility; however, this document does not add any such exceptions.  This document provides the necessary tables to IANA to make its database consisstent with Unicode 11.0.0.  To improve understanding, this document describes systems that are being used as alternatives to those that conform to IDNA2008.  TO BE REMOVED AT TIME OF PUBLICATION AS AN RFC:  This document is discussed on the i18nrp@ietf.org mailing list of the IETF.</t>
            </abstract>
          </front>
          <seriesInfo name="Internet-Draft" value="draft-faltstrom-unicode11-08"/>
          <format type="TXT" target="http://www.ietf.org/internet-drafts/draft-faltstrom-unicode11-08.txt"/>
          <refcontent>Work in Progress</refcontent>
        </reference>
        <reference anchor="I-D.faltstrom-unicode12" quoteTitle="true" target="https://tools.ietf.org/html/draft-faltstrom-unicode12-00" derivedAnchor="IDNA-Unicode12">
          <front>
            <title>IDNA2008 and Unicode 12.0.0</title>
            <author initials="P" surname="Faltstrom" fullname="Patrik Faltstrom">
              <organization showOnFrontPage="true"/>
            </author>
            <date month="March" day="11" year="2019"/>
            <abstract>
              <t>This document describes the changes between Unicode 6.3.0 and Unicode 12.0.0 in the context of IDNA2008.  Some additions and changes have been made in the Unicode Standard that affect the values produced by the algorithm IDNA2008 specifies.  Although IDNA2008 allows adding exceptions to the algorithm for backward compatibility; however, this document does not add any such exceptions.  This document provides the necessary tables to IANA to make its database consisstent with Unicode 12.0.0.  To improve understanding, this document describes systems that are being used as alternatives to those that conform to IDNA2008.  TO BE REMOVED AT TIME OF PUBLICATION AS AN RFC:  This document is discussed on the i18nrp@ietf.org mailing list of the IETF.</t>
            </abstract>
          </front>
          <seriesInfo name="Internet-Draft" value="draft-faltstrom-unicode12-00"/>
          <format type="TXT" target="http://www.ietf.org/internet-drafts/draft-faltstrom-unicode12-00.txt"/>
          <refcontent>Work in Progress</refcontent>
        </reference>
        <reference anchor="I-D.klensin-idna-rfc5891bis" quoteTitle="true" target="https://tools.ietf.org/html/draft-klensin-idna-rfc5891bis-05" derivedAnchor="RegRestr">
          <front>
            <title>Internationalized Domain Names in Applications (IDNA): Registry Restrictions and Recommendations</title>
            <author initials="J" surname="Klensin" fullname="John Klensin">
              <organization showOnFrontPage="true"/>
            </author>
            <author initials="A" surname="Freytag" fullname="Asmus Freytag">
              <organization showOnFrontPage="true"/>
            </author>
            <date month="August" day="29" year="2019"/>
            <abstract>
              <t>The IDNA specifications for internationalized domain names combine rules that determine the labels that are allowed in the DNS without violating the protocol itself and an assignment of responsibility, consistent with earlier specifications, for determining the labels that are allowed in particular zones.  Conformance to IDNA by registries and other implementations requires both parts.  Experience strongly suggests that the language describing those responsibilities was insufficiently clear to promote safe and interoperable use of the specifications and that more details and discussion of circumstances would have been helpful.  Without making any substantive changes to IDNA, this specification updates two of the core IDNA documents (RFCs 5890 and 5891) and the IDNA explanatory document (RFC 5894) to provide that guidance and to correct some technical errors in the descriptions.</t>
            </abstract>
          </front>
          <seriesInfo name="Internet-Draft" value="draft-klensin-idna-rfc5891bis-05"/>
          <format type="TXT" target="http://www.ietf.org/internet-drafts/draft-klensin-idna-rfc5891bis-05.txt"/>
          <refcontent>Work in Progress</refcontent>
        </reference>
        <reference anchor="RFC1766" target="https://www.rfc-editor.org/info/rfc1766" quoteTitle="true" derivedAnchor="RFC1766">
          <front>
            <title>Tags for the Identification of Languages</title>
            <author initials="H." surname="Alvestrand" fullname="H. Alvestrand">
              <organization showOnFrontPage="true"/>
            </author>
            <date year="1995" month="March"/>
            <abstract>
              <t>This document describes a language tag for use in cases where it is desired to indicate the language used in an information object. [STANDARDS-TRACK]</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="1766"/>
          <seriesInfo name="DOI" value="10.17487/RFC1766"/>
        </reference>
        <reference anchor="RFC3282" target="https://www.rfc-editor.org/info/rfc3282" quoteTitle="true" derivedAnchor="RFC3282">
          <front>
            <title>Content Language Headers</title>
            <author initials="H." surname="Alvestrand" fullname="H. Alvestrand">
              <organization showOnFrontPage="true"/>
            </author>
            <date year="2002" month="May"/>
            <abstract>
              <t>This document defines a "Content-language:" header, for use in cases where one desires to indicate the language of something that has RFC 822-like headers, like MIME body parts or Web documents, and an "Accept-Language:" header for use in cases where one wishes to indicate one's preferences with regard to language.  [STANDARDS-TRACK]</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="3282"/>
          <seriesInfo name="DOI" value="10.17487/RFC3282"/>
        </reference>
        <reference anchor="RFC3454" target="https://www.rfc-editor.org/info/rfc3454" quoteTitle="true" derivedAnchor="RFC3454">
          <front>
            <title>Preparation of Internationalized Strings ("stringprep")</title>
            <author initials="P." surname="Hoffman" fullname="P. Hoffman">
              <organization showOnFrontPage="true"/>
            </author>
            <author initials="M." surname="Blanchet" fullname="M. Blanchet">
              <organization showOnFrontPage="true"/>
            </author>
            <date year="2002" month="December"/>
            <abstract>
              <t>This document describes a framework for preparing Unicode text strings in order to increase the likelihood that string input and string comparison work in ways that make sense for typical users throughout the world.  The stringprep protocol is useful for protocol identifier values, company and personal names, internationalized domain names, and other text strings. This document does not specify how protocols should prepare text strings.  Protocols must create profiles of stringprep in order to fully specify the processing options.  [STANDARDS-TRACK]</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="3454"/>
          <seriesInfo name="DOI" value="10.17487/RFC3454"/>
        </reference>
        <reference anchor="RFC3490" target="https://www.rfc-editor.org/info/rfc3490" quoteTitle="true" derivedAnchor="RFC3490">
          <front>
            <title>Internationalizing Domain Names in Applications (IDNA)</title>
            <author initials="P." surname="Faltstrom" fullname="P. Faltstrom">
              <organization showOnFrontPage="true"/>
            </author>
            <author initials="P." surname="Hoffman" fullname="P. Hoffman">
              <organization showOnFrontPage="true"/>
            </author>
            <author initials="A." surname="Costello" fullname="A. Costello">
              <organization showOnFrontPage="true"/>
            </author>
            <date year="2003" month="March"/>
            <abstract>
              <t>Until now, there has been no standard method for domain names to use characters outside the ASCII repertoire.  This document defines internationalized domain names (IDNs) and a mechanism called Internationalizing Domain Names in Applications (IDNA) for handling them in a standard fashion.  IDNs use characters drawn from a large repertoire (Unicode), but IDNA allows the non-ASCII characters to be represented using only the ASCII characters already allowed in so-called host names today.  This backward-compatible representation is required in existing protocols like DNS, so that IDNs can be introduced with no changes to the existing infrastructure.  IDNA is only meant for processing domain names, not free text.  [STANDARDS-TRACK]</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="3490"/>
          <seriesInfo name="DOI" value="10.17487/RFC3490"/>
        </reference>
        <reference anchor="RFC3491" target="https://www.rfc-editor.org/info/rfc3491" quoteTitle="true" derivedAnchor="RFC3491">
          <front>
            <title>Nameprep: A Stringprep Profile for Internationalized Domain Names (IDN)</title>
            <author initials="P." surname="Hoffman" fullname="P. Hoffman">
              <organization showOnFrontPage="true"/>
            </author>
            <author initials="M." surname="Blanchet" fullname="M. Blanchet">
              <organization showOnFrontPage="true"/>
            </author>
            <date year="2003" month="March"/>
            <abstract>
              <t>This document describes how to prepare internationalized domain name (IDN) labels in order to increase the likelihood that name input and name comparison work in ways that make sense for typical users throughout the world.  This profile of the stringprep protocol is used as part of a suite of on-the-wire protocols for internationalizing the Domain Name System (DNS).  [STANDARDS-TRACK]</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="3491"/>
          <seriesInfo name="DOI" value="10.17487/RFC3491"/>
        </reference>
        <reference anchor="RFC3629" target="https://www.rfc-editor.org/info/rfc3629" quoteTitle="true" derivedAnchor="RFC3629">
          <front>
            <title>UTF-8, a transformation format of ISO 10646</title>
            <author initials="F." surname="Yergeau" fullname="F. Yergeau">
              <organization showOnFrontPage="true"/>
            </author>
            <date year="2003" month="November"/>
            <abstract>
              <t>ISO/IEC 10646-1 defines a large character set called the Universal Character Set (UCS) which encompasses most of the world's writing systems.  The originally proposed encodings of the UCS, however, were not compatible with many current applications and protocols, and this has led to the development of UTF-8, the object of this memo.  UTF-8 has the characteristic of preserving the full US-ASCII range, providing compatibility with file systems, parsers and other software that rely on US-ASCII values but are transparent to other values.  This memo obsoletes and replaces RFC 2279.</t>
            </abstract>
          </front>
          <seriesInfo name="STD" value="63"/>
          <seriesInfo name="RFC" value="3629"/>
          <seriesInfo name="DOI" value="10.17487/RFC3629"/>
        </reference>
        <reference anchor="RFC4690" target="https://www.rfc-editor.org/info/rfc4690" quoteTitle="true" derivedAnchor="RFC4690">
          <front>
            <title>Review and Recommendations for Internationalized Domain Names (IDNs)</title>
            <author initials="J." surname="Klensin" fullname="J. Klensin">
              <organization showOnFrontPage="true"/>
            </author>
            <author initials="P." surname="Faltstrom" fullname="P. Faltstrom">
              <organization showOnFrontPage="true"/>
            </author>
            <author initials="C." surname="Karp" fullname="C. Karp">
              <organization showOnFrontPage="true"/>
            </author>
            <author>
              <organization showOnFrontPage="true">IAB</organization>
            </author>
            <date year="2006" month="September"/>
            <abstract>
              <t>This note describes issues raised by the deployment and use of Internationalized Domain Names.  It describes problems both at the time of registration and for use of those names in the DNS.  It recommends that IETF should update the RFCs relating to IDNs and a framework to be followed in doing so, as well as summarizing and identifying some work that is required outside the IETF.  In particular, it proposes that some changes be investigated for the Internationalizing Domain Names in Applications (IDNA) standard and its supporting tables, based on experience gained since those standards were completed.  This memo provides information for the Internet community.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="4690"/>
          <seriesInfo name="DOI" value="10.17487/RFC4690"/>
        </reference>
        <reference anchor="RFC5646" target="https://www.rfc-editor.org/info/rfc5646" quoteTitle="true" derivedAnchor="RFC5646">
          <front>
            <title>Tags for Identifying Languages</title>
            <author initials="A." surname="Phillips" fullname="A. Phillips" role="editor">
              <organization showOnFrontPage="true"/>
            </author>
            <author initials="M." surname="Davis" fullname="M. Davis" role="editor">
              <organization showOnFrontPage="true"/>
            </author>
            <date year="2009" month="September"/>
            <abstract>
              <t>This document describes the structure, content, construction, and semantics of language tags for use in cases where it is desirable to indicate the language used in an information object.  It also describes how to register values for use in language tags and the creation of user-defined extensions for private interchange.  This document  specifies an Internet Best Current Practices for the Internet Community, and requests discussion and suggestions for improvements.</t>
            </abstract>
          </front>
          <seriesInfo name="BCP" value="47"/>
          <seriesInfo name="RFC" value="5646"/>
          <seriesInfo name="DOI" value="10.17487/RFC5646"/>
        </reference>
        <reference anchor="RFC5890" target="https://www.rfc-editor.org/info/rfc5890" quoteTitle="true" derivedAnchor="RFC5890">
          <front>
            <title>Internationalized Domain Names for Applications (IDNA): Definitions and Document Framework</title>
            <author initials="J." surname="Klensin" fullname="J. Klensin">
              <organization showOnFrontPage="true"/>
            </author>
            <date year="2010" month="August"/>
            <abstract>
              <t>This document is one of a collection that, together, describe the protocol and usage context for a revision of Internationalized Domain Names for Applications (IDNA), superseding the earlier version.  It describes the document collection and provides definitions and other material that are common to the set.  [STANDARDS-TRACK]</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="5890"/>
          <seriesInfo name="DOI" value="10.17487/RFC5890"/>
        </reference>
        <reference anchor="RFC5894" target="https://www.rfc-editor.org/info/rfc5894" quoteTitle="true" derivedAnchor="RFC5894">
          <front>
            <title>Internationalized Domain Names for Applications (IDNA): Background, Explanation, and Rationale</title>
            <author initials="J." surname="Klensin" fullname="J. Klensin">
              <organization showOnFrontPage="true"/>
            </author>
            <date year="2010" month="August"/>
            <abstract>
              <t>Several years have passed since the original protocol for Internationalized Domain Names (IDNs) was completed and deployed. During that time, a number of issues have arisen, including the need to update the system to deal with newer versions of Unicode.  Some of these issues require tuning of the existing protocols and the tables on which they depend.  This document provides an overview of a revised system and provides explanatory material for its components. This document is not an Internet Standards Track specification; it is published for informational purposes.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="5894"/>
          <seriesInfo name="DOI" value="10.17487/RFC5894"/>
        </reference>
        <reference anchor="RFC6452" target="https://www.rfc-editor.org/info/rfc6452" quoteTitle="true" derivedAnchor="RFC6452">
          <front>
            <title>The Unicode Code Points and Internationalized Domain Names for Applications (IDNA) - Unicode 6.0</title>
            <author initials="P." surname="Faltstrom" fullname="P. Faltstrom" role="editor">
              <organization showOnFrontPage="true"/>
            </author>
            <author initials="P." surname="Hoffman" fullname="P. Hoffman" role="editor">
              <organization showOnFrontPage="true"/>
            </author>
            <date year="2011" month="November"/>
            <abstract>
              <t>This memo documents IETF consensus for Internationalized Domain Names for Applications (IDNA) derived character properties related to the three code points, existing in Unicode 5.2, that changed property values when version 6.0 was released.  The consensus is that no update is needed to RFC 5892 based on the changes made in Unicode 6.0.  [STANDARDS-TRACK]</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="6452"/>
          <seriesInfo name="DOI" value="10.17487/RFC6452"/>
        </reference>
      </references>
    </references>
    <section numbered="true" toc="include" removeInRFC="false" pn="section-appendix.a">
      <name slugifiedName="name-summary-of-changes-to-rfc-5">Summary of Changes to RFC 5892</name>
      <t pn="section-appendix.a-1"> Other than the editorial correction specified in
		  <xref target="ApplyErratum" format="default" sectionFormat="of" derivedContent="Section 6"/>, all of the changes in this
		  document are concerned with the reviews for new versions of
		  Unicode and with the IANA Considerations in 
                  <xref target="RFC5892" section="5" sectionFormat="of" format="default" derivedLink="https://rfc-editor.org/rfc/rfc5892#section-5" derivedContent="RFC5892"/>,
		  particularly <xref target="RFC5892" section="5.1" sectionFormat="of" format="default" derivedLink="https://rfc-editor.org/rfc/rfc5892#section-5.1" derivedContent="RFC5892"/>.  Whether the changes
		  are substantive or merely clarifications may be somewhat in
		  the eye of the beholder, so the list below should not be
		  assumed to be comprehensive.  At a very high level, this document
		  clarifies that two types of review were intended and
		  separates them for clarity. This document also restores the original (but so
		  far unobserved) default for actions when code point derived
		  properties change.  For this reason, this document
		  effectively replaces <xref target="RFC5892" section="5.1" sectionFormat="of" format="default" derivedLink="https://rfc-editor.org/rfc/rfc5892#section-5.1" derivedContent="RFC5892"/> 
		  and adds or changes some text so that the
		  replacement makes better sense. </t>
      <t pn="section-appendix.a-2"> Changes or clarifications that may be considered important
		  include: 
      </t>
      <ul spacing="normal" bare="false" empty="false" pn="section-appendix.a-3">
        <li pn="section-appendix.a-3.1">Separated the new Unicode version review into two
				explicit parts and provided for different review
				methods and, potentially, asynchronous outcomes. </li>
        <li pn="section-appendix.a-3.2"> Specified a DE team, not a single designated expert, for the
				code point review.</li>
        <li pn="section-appendix.a-3.3"> Eliminated the de facto requirement for the (formerly
				single) designated expert to be the same person as the
				IAB's liaison to the Unicode Consortium, but called out
				the importance of coordination.</li>
        <li pn="section-appendix.a-3.4">
      Created the "Status" field in the IANA tables to inform the 
      community about specific potentially problematic code points. 
      This change creates the ability to add information about such 
      code points before IETF review is completed instead of having the review 
      process hold up the use of the new Unicode version.
</li>
        <li pn="section-appendix.a-3.5"> In part because Unicode is now on a regular one-year
				cycle rather than producing major and minor versions
				as needed, to avoid overloading the IETF's internationalization 
				resources, and to avoid generating and storing IANA
				tables for trivial changes (e.g., the single new code
				point in Unicode 12.1), the review procedure is
				applied only to major versions of Unicode unless
				exceptional circumstances arise and are identified.</li>
      </ul>
    </section>
    <section anchor="ExpertRationale" numbered="true" toc="include" removeInRFC="false" pn="section-appendix.b">
      <name slugifiedName="name-background-and-rationale-fo">Background and Rationale for Expert Review Procedure for New Code Point Analysis</name>
      <t pn="section-appendix.b-1"> The expert review procedure for new code point analysis described  
			 in <xref target="CodePointReview" format="default" sectionFormat="of" derivedContent="Section 3.2"/> is somewhat unusual compared to the examples
			 presented in the Guidelines for Writing
			 IANA Considerations <xref target="RFC8126" format="default" sectionFormat="of" derivedContent="RFC8126"/>.  This
			 appendix explains that choice and provides the
			 background for it.</t>
      <t pn="section-appendix.b-2">Development of specifications to support use of languages
			 and writing systems other than English (and Latin script)
			 -- so-called "internationalization" or "i18n" --
			 has always been problematic in the IETF, especially when
			 requirements go beyond simple coding of characters (e.g.,
			 <xref target="RFC3629" format="default" sectionFormat="of" derivedContent="RFC3629">RFC 3629</xref>) or simple
			 identification of languages (e.g., 
			 <xref target="RFC3282" format="default" sectionFormat="of" derivedContent="RFC3282">RFC 3282</xref> and the earlier
			 <xref target="RFC1766" format="default" sectionFormat="of" derivedContent="RFC1766">RFC 1766</xref>).  A good deal of
			 specialized knowledge is required, knowledge that comes
			 from multiple fields and that requires multiple
			 perspectives.   The work is not obviously more complex
			 than routing, especially if one assumes that routing work
			 requires a solid foundation in graph theory or network
			 optimization, or than security and cryptography, but
			 people working in those areas are drawn to the IETF and
			 people from the fields that bear on internationalization
			 typically are not.</t>
      <t pn="section-appendix.b-3"> As a result, we have often thought we
			 understood a problem, generated a specification or set of
			 specifications, but then have been surprised by
			 unanticipated (by the IETF) issues. We then needed to
			 tune and often revise our specification.
			 The language tag work that
			 started with RFC 1766 is a good example of this: broader
			 considerations and requirements led to later work and a
			 much more complex and finer-grained system
			 <xref target="RFC5646" format="default" sectionFormat="of" derivedContent="RFC5646"/>.</t>
      <t pn="section-appendix.b-4"> Work on IDNs further increased the difficulties because
			 many of the decisions that led to the current version of
			 IDNA require understanding the DNS, its constraints,
			 and, to at least some extent, the commercial market of 
			 domain names, including various ICANN efforts.</t>
      <t pn="section-appendix.b-5"> The net result of these factors is that it is extremely
			 unlikely that the IESG will ever find a designated expert
			 whose knowledge and understanding will include everything
			 that is required. </t>
      <t pn="section-appendix.b-6"> Consequently, <xref target="IANA" format="default" sectionFormat="of" derivedContent="Section 7"/> 
   and other discussions in this document 
   specify a DE team that is expected to have the broad perspective, 
   expertise, and access to information and community in order to 
   review new Unicode versions and to make consensus recommendations 
   that will serve the Internet well.  While we anticipate that the 
   team will have one or more leaders, the structure of the team differs 
   from the suggestions given in <xref target="RFC8126" section="5.2" sectionFormat="of" format="default" derivedLink="https://rfc-editor.org/rfc/rfc8126#section-5.2" derivedContent="RFC8126">the Guidelines
   for Writing IANA Considerations</xref>
   since neither the team's formation nor its consultation is left to 
   the discretion of the designated expert, nor is the designated 
   expert solely accountable to the community.  A team that contains 
   multiple perspectives is required, the team members are accountable 
   as a group, and any nontrivial recommendations require team consensus.  
   This also differs from the common practice in the IETF of
   "review teams" from which a single member is selected to
   perform a review: the principle for these reviews is team effort.</t>
    </section>
    <section anchor="Acknowledgments" numbered="false" toc="include" removeInRFC="false" pn="section-appendix.c">
      <name slugifiedName="name-acknowledgments">Acknowledgments</name>
      <t pn="section-appendix.c-1"> This document was inspired by extensive discussions within
         the I18N Directorate of the
         IETF Applications and Real-Time (ART) area in the first
         quarter of 2019 about sorting out the reviews for Unicode
         11.0 and 12.0.  Careful reviews by <contact fullname="Joel Halpern"/> and
		 text suggestions from <contact fullname="Barry Leiba"/> resulted in some
		 clarifications.</t>
      <t pn="section-appendix.c-2"> Thanks to <contact fullname="Christopher Wood"/> for catching some editorial
		 errors that persisted until rather late in the document's
		 life cycle and to <contact fullname="Benjamin Kaduk"/> for catching and raising a
		 number of questions during Last Call.  Some of the issues
		 they raised have been reflected in the document; others did not
		 appear to be desirable modifications after further discussion,
		 but the questions were definitely worth raising and
		 discussing.</t>
    </section>
    <section anchor="authors-addresses" numbered="false" removeInRFC="false" toc="include" pn="section-appendix.d">
      <name slugifiedName="name-authors-addresses">Authors' Addresses</name>
      <author fullname="John C Klensin" initials="J." surname="Klensin">
        <organization showOnFrontPage="true"/>
        <address>
          <postal>
            <street>1770 Massachusetts Ave, Ste 322</street>
            <city>Cambridge</city>
            <region>MA</region>
            <code>02140</code>
            <country>United States of America</country>
          </postal>
          <phone>+1 617 245 1457</phone>
          <email>john-ietf@jck.com</email>
        </address>
      </author>
      <author fullname="Patrik Fältström" initials="P." surname="Fältström">
        <organization showOnFrontPage="true">Netnod</organization>
        <address>
          <postal>
            <street>Greta Garbos Väg 13</street>
            <city>Solna</city>
            <code>169 40</code>
            <country>Sweden</country>
          </postal>
          <phone>+46 70 6059051</phone>
          <email>paf@netnod.se</email>
        </address>
      </author>
    </section>
  </back>
</rfc>
