<?xml version="1.0" encoding="UTF-8"?>
  <?xml-stylesheet type="text/xsl" href="rfc2629.xslt" ?>
  <!-- generated by https://github.com/cabo/kramdown-rfc2629 version 1.0.30 -->

<!DOCTYPE rfc SYSTEM "rfc2629.dtd" [
]>

<?rfc rfcedstyle="yes"?>
<?rfc toc="no"?>
<?rfc tocindent="yes"?>
<?rfc sortrefs="yes"?>
<?rfc symrefs="yes"?>
<?rfc strict="yes"?>
<?rfc comments="yes"?>
<?rfc inline="yes"?>
<?rfc text-list-symbols="-o*+"?>

<rfc ipr="trust200902" docName="draft-sheffer-ietf-rfc-annotations-00" category="info">

  <front>
    <title abbrev="RFC Annotations">Requesting Comments: Enabling Readers to Annotate RFCs</title>

    <author initials="Y." surname="Sheffer" fullname="Yaron Sheffer">
      <organization>Intuit</organization>
      <address>
        <email>yaronf.ietf@gmail.com</email>
      </address>
    </author>

    <date year="2016" month="June" day="25"/>

    <area>General</area>
    
    <keyword>Internet-Draft</keyword>

    <abstract>


<t>RFCs were initially intended as, literally, requests for comments. Since then,
they have turned into standards documents,
with a peculiar process to report errors and a highly
onerous process to actually
have the RFC modified/republished. Non-IETF participants are typically unaware of any way to provide
feedback to published RFCs, other than direct email to the listed authors.
This is very different from the way many web specifications are
developed today and arguably leads to the value of published RFCs diminishing over time.
This document proposes an experiment to remedy this situation through the deployment
of web annotations.</t>



    </abstract>


  </front>

  <middle>


<section anchor="introduction" title="Introduction">

<t>IETF participants use the term “RFC” on a daily basis. We all know that “RFC” stands for
“Request for Comments”. However the RFCs we publish are anything but requests for
comments. RFCs today are static documents that do not invite comments.
Acute readers who insist on providing
feedback will find the following text: “Information about the current status
of this document, any errata,
and how to provide feedback on it may be obtained at
http://www.rfc-editor.org/info/rfcXXXX.” Once on this page, they will only find the
email address
of a working group, which may long be defunct.</t>

<t>We can do better than that. This document proposes, as a process experiment <xref target="RFC3933"></xref>,
to enable web annotations on published RFCs. The target audience is non-IETF participants,
essentially the IETF’s customers.
We discuss the advantages of such a system and the risks
associated with it.</t>

<section anchor="conventions-used-in-this-document" title="Conventions used in this document">
<t>The key words “MUST”, “MUST NOT”, “REQUIRED”, “SHALL”, “SHALL NOT”, “SHOULD”,
“SHOULD NOT”, “RECOMMENDED”, “MAY”, and “OPTIONAL” in this document are to be
interpreted as described in <xref target="RFC2119" />.</t>

</section>
</section>
<section anchor="overview" title="Overview">

<t>We propose to enable, for an initial period of 1 year, annotations on published RFCs.
Document readers will be able to attach textual comments to published RFCs,
and these comments will be public, visible to all other readers who will also
be able to respond to them.</t>

<t>Specifically,
we recommend using the Hypothesis (https://hypothes.is/) system on our “tools” RFCs,
https://tools.ietf.org/html/rfcXXXX. We propose not to build any custom infrastructure around
this system but rather to use it as-is. When the experiment is done,
we will publish an experiment
report which will enable the IETF to decide whether this is of benefit for the
long term.</t>

</section>
<section anchor="advantages" title="Advantages">

<t>We foresee RFC annotations being used for a variety of purposes by RFC consumers, including:</t>

<t><list style="symbols">
  <t>Providing feedback on correctness and pointing out errors. This is a much easier
process than submitting errata, and as such would likely yield a larger number of corrections.</t>
  <t>Pointing out and even discussing implementation issues (annotation systems
allow a user to “reply” to another user’s comments).</t>
  <t>Linking to other standards and to implementations.</t>
  <t>Proposing ideas for and initiating discussion on “next generation” standards.</t>
</list></t>

<t>Other advantages are indirect:</t>

<t><list style="symbols">
  <t>Improving the appearance of RFCs, bringing them more in line with people’s expectations of web documents.</t>
  <t>Bringing in more people into the standards discussion, and eventually into the IETF.</t>
</list></t>

</section>
<section anchor="potential-risks" title="Potential Risks">

<t>The following section lists some of the issues and risks associated with this proposal,
along with a few concrete ways to mitigate some of them.</t>

<section anchor="annotations-can-be-improper-and-abusive" title="Annotations can be improper and abusive">

<t>From a legal perspective, IETF deals with user-generated content continuously (Internet
drafts, mailing lists, wikis), so we know how to solve the problem.</t>

<t>However there can be a reputation cost, and in extreme cases people
may be driven away from a document because of defacement.
We might need to apply some after-the-fact
moderation to annotations, similarly to what we have now on the IETF discussion list.</t>

</section>
<section anchor="ipr-issues-around-annotations" title="IPR issues around annotations">

<t>All public annotations made on Hypothesis are explicitly in the public domain.
See also the Hypothesis Terms
of Service, https://hypothes.is/terms-of-service/. Note that Hypothesis itself
is a non-profit organization.</t>

</section>
<section anchor="security-and-privacy" title="Security and Privacy">

<t>Before they can annotate any pages, users need to register into Hypothesis. Pseudonyms
are explicitly allowed, but an email address must be provided.
Hypothesis does not currently support any federated login such as OpenID.</t>

<t>The Hypothesis TOS declares that they do not track users of the service. As far as the
we have seen, they only deploy a Google Analytics cookie.</t>

<t>Issue: can the GA cookie be disabled for particular URLs?</t>

<t>All traffic between the user’s browser and Hypothesis is SSL-protected.</t>

</section>
<section anchor="long-term-retention-of-annotations" title="Long-term retention of annotations">

<t>If at the end of the experiment we choose to migrate to a different platform or to deploy
a private copy of Hypothesis, we should be able to use their documented API to retrieve
any extant annotations and store them into the new system.</t>

</section>
<section anchor="what-if-we-build-it-and-nobody-comes" title="What if we build it and nobody comes">

<t>This would constitute a failure of the experiment, but would not have any other ill effects.</t>

</section>
</section>
<section anchor="proposed-technical-solution" title="Proposed Technical Solution">

<t>Technically, to enable annotations we simply need to add one line to each RFC published
on the “tools” site:</t>

<t><spanx style="verb">
&lt;script async defer src="https://hypothes.is/embed.js"&gt;&lt;/script&gt;
</spanx></t>

<t>RFC authors and WG participants can be alerted whenever their documents are annotated
using RSS and Atom feeds such as:
https://hypothes.is/stream.rss?uri=https://tools.ietf.org/html/rfc1149.</t>

<t>The Hypothesis system is open source, which means that it can be adopted to our needs
during the experiment or later.</t>

</section>
<section anchor="trying-it-for-yourself" title="Trying it for Yourself">

<t><list style="symbols">
  <t>Go to https://hypothes.is/, paste a link, e.g. https://tools.ietf.org/html/rfc1149 and press Annotate.</t>
  <t>Now open the sidebar to view existing public annotations.</t>
  <t>Highlight some text and right-click it. You will need to sign up for an account
to create your own annotations.</t>
</list></t>

</section>


  </middle>

  <back>

    <references title='Normative References'>





<reference  anchor='RFC2119' target='http://www.rfc-editor.org/info/rfc2119'>
<front>
<title>Key words for use in RFCs to Indicate Requirement Levels</title>
<author initials='S.' surname='Bradner' fullname='S. Bradner'><organization /></author>
<date year='1997' month='March' />
<abstract><t>In many standards track documents several words are used to signify the requirements in the specification.  These words are often capitalized. This document defines these words as they should be interpreted in IETF documents.  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='14'/>
<seriesInfo name='RFC' value='2119'/>
<seriesInfo name='DOI' value='10.17487/RFC2119'/>
</reference>



<reference  anchor='RFC3933' target='http://www.rfc-editor.org/info/rfc3933'>
<front>
<title>A Model for IETF Process Experiments</title>
<author initials='J.' surname='Klensin' fullname='J. Klensin'><organization /></author>
<author initials='S.' surname='Dawkins' fullname='S. Dawkins'><organization /></author>
<date year='2004' month='November' />
<abstract><t>The IETF has designed process changes over the last ten years in one of two ways: announcement by the IESG, sometimes based on informal agreements with limited community involvement and awareness, and formal use of the same mechanism used for protocol specification. The first mechanism has often proven to be too lightweight, the second too heavyweight. </t><t> This document specifies a middle-ground approach to the system of making changes to IETF process, one that relies heavily on a &quot;propose and carry out an experiment, evaluate the experiment, and then establish permanent procedures based on operational experience&quot; model rather than those previously attempted.  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='93'/>
<seriesInfo name='RFC' value='3933'/>
<seriesInfo name='DOI' value='10.17487/RFC3933'/>
</reference>




    </references>



<section anchor="document-history" title="Document History">

<section anchor="draft-sheffer-ietf-rfc-annotations-00" title="draft-sheffer-ietf-rfc-annotations-00">

<t>Initial version.</t>

</section>
</section>


  </back>
</rfc>

