Re: [netmod] WG Last Call: draft-ietf-netmod-artwork-folding-02

Kent Watsen <> Mon, 27 May 2019 19:28 UTC

Return-Path: <>
Received: from localhost (localhost []) by (Postfix) with ESMTP id 8641B120094; Mon, 27 May 2019 12:28:24 -0700 (PDT)
X-Virus-Scanned: amavisd-new at
X-Spam-Flag: NO
X-Spam-Score: -1.898
X-Spam-Status: No, score=-1.898 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, RCVD_IN_DNSWL_NONE=-0.0001, SPF_HELO_NONE=0.001, SPF_NONE=0.001] autolearn=ham autolearn_force=no
Authentication-Results: (amavisd-new); dkim=pass (1024-bit key)
Received: from ([]) by localhost ( []) (amavisd-new, port 10024) with ESMTP id sOnv80jIfR7F; Mon, 27 May 2019 12:28:22 -0700 (PDT)
Received: from ( []) (using TLSv1.2 with cipher ECDHE-RSA-AES128-SHA256 (128/128 bits)) (No client certificate requested) by (Postfix) with ESMTPS id 9A1C512003F; Mon, 27 May 2019 12:28:22 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/simple; s=6gbrjpgwjskckoa6a5zn6fwqkn67xbtw;; t=1558985301; h=Content-Type:Mime-Version:Subject:From:In-Reply-To:Date:Cc:Content-Transfer-Encoding:Message-Id:References:To:Feedback-ID; bh=KGoH/bgOO0vNG9LFmJJONnRjGlOsMba2q+eREZDlj6k=; b=a8VX/0vUSccHi/YkjGUs04qQ6eQTr31eg/gOYKDjtN8875rO7cMyF6c9Z7kYg8St hbGHK9p5UUFJDUnU1nrk1BmAsiIvXPXQYdw9RJJwLcGF1LLSTEpxFp8cQmoLHq+KTUl YHuQmA0peaiy1dJSYR40v7OHMbxyDFt/NseHp6jc=
Content-Type: text/plain; charset="us-ascii"
Mime-Version: 1.0 (Mac OS X Mail 12.4 \(3445.104.11\))
From: Kent Watsen <>
In-Reply-To: <>
Date: Mon, 27 May 2019 19:28:21 +0000
Cc: Lou Berger <>, "" <>, "" <>
Content-Transfer-Encoding: quoted-printable
Message-ID: <>
References: <> <>
To: Martin Bjorklund <>
X-Mailer: Apple Mail (2.3445.104.11)
X-SES-Outgoing: 2019.05.27-
Archived-At: <>
Subject: Re: [netmod] WG Last Call: draft-ietf-netmod-artwork-folding-02
X-Mailman-Version: 2.1.29
Precedence: list
List-Id: NETMOD WG list <>
List-Unsubscribe: <>, <>
List-Archive: <>
List-Post: <>
List-Help: <>
List-Subscribe: <>, <>
X-List-Received-Date: Mon, 27 May 2019 19:28:25 -0000

Hi Martin,

Thanks for your review.

> I have reviewed draft-ietf-netmod-artwork-folding-02, and here are my
> comments:
> o  6
>  Perhaps:
>  OLD:
>   begins at the first non-
>   whitespace character on the following line.
>  NEW:
>   begins at the first character that is not a space character (' ')
>   on the following line.

Updated in my local copy.

>  The algorithm talks specifically about space (' ') rather than
>  whitespace.

True and, FWIW, this was the only instance of the word "whitespace" in the document.

However, I wonder if there might be an issue lurking here.  Already the algorithm eliminates the potential for TAB, and implicitly eliminates NL and CR through the use of the word "line", but I wonder if there are other characters that we wish to skip over... e.g. vertical tab?

> o  6.1
>  s/is exists/exists/


> o  6.1 / 6.2
>  6.2 says (correctly!):
>   It is RECOMMENDED for implementations to first attempt to fold
>   content using the single backslash strategy and, only in the unlikely
>   event that it cannot fold the input or the folding logic is unable to
>   cope with a contingency occurring on the desired folding column, then
>   fallback to the double backslash strategy.
>  But 6.1 says about the Single Backslash Strategy:
>   automation implementations are likely to encounter scenarios that
>   will produce errors without special care
>  So it 6.1 thinks it is likely that SBS won't work, but 6.2 says it
>  is unlikely.  IMO 6.2 is correct - it is extremely unlikely that SBS
>  won't work.

s/are likely to/may/

> o  7.1.2 / 7.2
>  I would prefer if the format is defined with descriptive text,
>  rather than with an algorithm.  It is the end result that matters,
>  not which algorithm an implementation uses to get to the result.
>  I suggest the algorithm is moved to an appendix, and/or a sentence
>  is added that explains that the algorithm is just an example.


   This section describes the process for folding and unfolding long
   lines when they are encountered in a single instance of text content.
   It is assumed that another process inserts/extracts the individual
   text content instances to/from an Internet-Draft or RFC.  For
   example, the `xiax` utility [xiax] does this.


   This section describes a process for folding and unfolding long lines
   when they are encountered in text content.

   The steps are complete, but implementations MAY achieve the same
   result in other ways.

   When a larger document contains multiple instances of text content
   that may need to be folded or unfolded, it is assumed that another
   process inserts/extracts the individual text content instances to/
   from the larger document prior to utilizing the algorithms described
   in this section.  For example, the `xiax` utility [xiax] does this.

>  Also expand the descriptive text in 7.1.2; I think that the text in
>  section 6 is probably enough.  However, there are some important
>  details buried in the desciption of the algorithm; specifically the
>  cases where SBS can't be used.

I looked at this for a little while, but didn't see how it could be improved.  Can you provide some text?

> o  7.2.1
>  I don't understand why there is a min limit of 46 characters for
>  folding to work.  If the only reason is for the non-normative script
>  to be able to center the header line, then I think this limitation
>  should be removed.  (I would even prefer less flexibility in the
>  header line syntax...)

This is because we never defined how to handle folding the header itself.  I wrote about this a while back and no-one seemed bothered by the limitation.   The effort/value ration isn't there.  The need to fold less than 69-characters is unlikely, and less than 46-characters seems even more so.

> o  7.2.1 / 7.2.2
>  I don't think the text should assume that folding/unfolding is
>  "automated".

Both sections clearly state that authors may do the equivalent manually, or do you mean that the word "automated" in these sections isn't adding much value and could/should be removed?

> o  7.2.1
>  Perhaps add to bullet 1:
>    If no such location can be found, then exit (this text content
>    cannot be folded)

Added in my local copy.

> o  7.2.2
>  s/maximum../maximum./

Fixed (in both locations)

> o  Appendix A
>  Consider using the command "tempfile" instead of /tmp/wip*

Used `mktemp -d` instead.

Kent // author