Re: [Tools-discuss] xml2rfc in --v2 mode -- bug report?

Carsten Bormann <cabo@tzi.org> Sun, 12 June 2022 18:58 UTC

Return-Path: <cabo@tzi.org>
X-Original-To: tools-discuss@ietfa.amsl.com
Delivered-To: tools-discuss@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id 6559EC14CF0A; Sun, 12 Jun 2022 11:58:32 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -6.91
X-Spam-Level:
X-Spam-Status: No, score=-6.91 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, RCVD_IN_DNSWL_HI=-5, SPF_HELO_NONE=0.001, SPF_PASS=-0.001, T_SCC_BODY_TEXT_LINE=-0.01] autolearn=ham autolearn_force=no
Received: from mail.ietf.org ([50.223.129.194]) by localhost (ietfa.amsl.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id p3TLOaQJBUeG; Sun, 12 Jun 2022 11:58:30 -0700 (PDT)
Received: from gabriel-smtp.zfn.uni-bremen.de (gabriel-smtp.zfn.uni-bremen.de [IPv6:2001:638:708:32::15]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (2048 bits) server-digest SHA256) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id D62CDC14F72F; Sun, 12 Jun 2022 11:58:26 -0700 (PDT)
Received: from [192.168.217.118] (p5089ad4f.dip0.t-ipconnect.de [80.137.173.79]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by gabriel-smtp.zfn.uni-bremen.de (Postfix) with ESMTPSA id 4LLkVk2ZppzDCbd; Sun, 12 Jun 2022 20:58:22 +0200 (CEST)
Content-Type: text/plain; charset="utf-8"
Mime-Version: 1.0 (Mac OS X Mail 13.4 \(3608.120.23.2.7\))
From: Carsten Bormann <cabo@tzi.org>
In-Reply-To: <E022AAF289DF04D70F449FF7@PSB>
Date: Sun, 12 Jun 2022 20:58:22 +0200
Cc: Jay Daley <exec-director@ietf.org>, tools-discuss@ietf.org
X-Mao-Original-Outgoing-Id: 676753101.9464869-fbd203086778bfcb232a317b09774461
Content-Transfer-Encoding: quoted-printable
Message-Id: <5B8EC861-46AF-497A-88F1-8F1024F7EF81@tzi.org>
References: <B39D28F0353AE74800217ADC@PSB> <7EDFAAE2-3109-4D16-BC16-1A47DB365522@ietf.org> <E022AAF289DF04D70F449FF7@PSB>
To: John C Klensin <john-ietf@jck.com>
X-Mailer: Apple Mail (2.3608.120.23.2.7)
Archived-At: <https://mailarchive.ietf.org/arch/msg/tools-discuss/nHe7lpmOk4tMaDFnDR5lfzGwKa8>
Subject: Re: [Tools-discuss] xml2rfc in --v2 mode -- bug report?
X-BeenThere: tools-discuss@ietf.org
X-Mailman-Version: 2.1.39
Precedence: list
List-Id: IETF Tools Discussion <tools-discuss.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/tools-discuss>, <mailto:tools-discuss-request@ietf.org?subject=unsubscribe>
List-Archive: <https://mailarchive.ietf.org/arch/browse/tools-discuss/>
List-Post: <mailto:tools-discuss@ietf.org>
List-Help: <mailto:tools-discuss-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/tools-discuss>, <mailto:tools-discuss-request@ietf.org?subject=subscribe>
X-List-Received-Date: Sun, 12 Jun 2022 18:58:32 -0000

A couple of comments to some specifics:

> 
> Epsilon (and emacs) are "just" editors.  Their modes for
> handling XML are not aware of schema, just such fundamental
> --and essentially lexical-- issues as formatting, element
> matching, and so on. 

Emacs' nxml-mode can use a Relax-NG grammar (which is the usual way I edit RFCXML if I really really have to).

> (1) They would seem to lead to documents that are v2-v3 hybrids.
> I don't know how the current versions of xml2rfc would deal with
> that but, given assorted v2 elements and constructions that were
> deprecated in v3, I'd guess it would be very hard to get right
> and that going in that direction would be a bad idea.

One of the problems with RFC 7991 is that it doesn’t make explicit the relationship between authoring/contribution and publishing formats.  So there is tons of deprecated stuff in the published RFCs which is just needed to supply defaults to attributes that are deprecated in v3.
Of course a published RFC should be clean of that and conform to a publishing grammar, which should be related to, but not identical, to the contribution grammar.

> […] given the very

> large number of documents in the RFC Editor's collection in v2
> format

The RFC editor does not really deal in v2 RFCXML.
They can give out some v2 RFCXML that was used in the publishing of a pre-8650 RFC, but it is then the job of the author to:

> that, I assume, have not been converted to v3 and tested
> for consistency with the output produced,

I generally convert dusty XML decks to an authoring format (not v3, but kramdown-rfc) and then do an rfcdiff to the actual published RFC, tweaking the authoring format until the rfcdiff is empty (or just has some inevitable differences).

So this is not really a good argument in favor of:

> a decision to retire
> support for v2 should be taken only with great care (and, IMO,
> given the risks and tradeoffs, made only with IESG signoff after
> a community Last Call).  Until then, I believe the tools team
> and IETF staff have considerable responsibility for keeping
> version 2 supported.  I don't think a few spurious warning
> messages are a big deal unless they are a sign of things to
> come,

Which I agree wholeheartedly with until this:

> but, when the answer to a problem with constructions that
> are valid and well-documented under v2 is "convert to v3", that
> is not supporting v2 properly and as the community has a
> reasonable right to expect.  

Converting to v3 *is* the answer.
If we had infinite resources, we could spend some of the energy keeping v2 more alive than it is, but with 138 open issues, we’ll need to focus on keeping v3 alive.

To me, continuing to work on a document in v2 format really is a waste of time, unless there are some very specific reasons that we haven’t discussed here.
Convert to an authoring format, e.g., kramdown-rfc, mmark, or if it must be, RFCXMLv3, and take it from there.

We need some continued working v2 support in xml2rfc to do other things with pre-8650 contributions, but we don’t need to make it good enough for authoring RFCs, as these will be v3, and the earlier in the authoring process you can make the conversion, the less the pain and the better the results will be.

Grüße, Carsten