Re: [Rswg] Making progress on RFC 7991-bis

Jay Daley <exec-director@ietf.org> Fri, 12 August 2022 11:42 UTC

Return-Path: <exec-director@ietf.org>
X-Original-To: rswg@ietfa.amsl.com
Delivered-To: rswg@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id 72F43C15C50A for <rswg@ietfa.amsl.com>; Fri, 12 Aug 2022 04:42:15 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -1.908
X-Spam-Level:
X-Spam-Status: No, score=-1.908 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, RCVD_IN_DNSWL_NONE=-0.0001, SPF_PASS=-0.001, T_SCC_BODY_TEXT_LINE=-0.01, URIBL_BLOCKED=0.001, URIBL_DBL_BLOCKED_OPENDNS=0.001, URIBL_ZEN_BLOCKED_OPENDNS=0.001] 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 SvLldxSGbs0X for <rswg@ietfa.amsl.com>; Fri, 12 Aug 2022 04:42:11 -0700 (PDT)
Received: from ietfx.amsl.com (ietfx.amsl.com [50.223.129.196]) (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 5B80AC15C511 for <rswg@rfc-editor.org>; Fri, 12 Aug 2022 04:42:11 -0700 (PDT)
Received: from localhost (localhost [127.0.0.1]) by ietfx.amsl.com (Postfix) with ESMTP id 4CD03427DB93; Fri, 12 Aug 2022 04:42:11 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
Received: from ietfx.amsl.com ([50.223.129.196]) by localhost (ietfx.amsl.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id SYPhzWD0VyKE; Fri, 12 Aug 2022 04:42:11 -0700 (PDT)
Received: from smtpclient.apple (host-92-27-125-209.static.as13285.net [92.27.125.209]) by ietfx.amsl.com (Postfix) with ESMTPSA id 9B3DE427DB91; Fri, 12 Aug 2022 04:42:10 -0700 (PDT)
Content-Type: text/plain; charset="utf-8"
Mime-Version: 1.0 (Mac OS X Mail 16.0 \(3696.120.41.1.1\))
From: Jay Daley <exec-director@ietf.org>
In-Reply-To: <0cd9894e-4b42-be44-8955-6fb9e991fac3@gmail.com>
Date: Fri, 12 Aug 2022 12:42:08 +0100
Cc: Eric Rescorla <ekr@rtfm.com>, rswg@rfc-editor.org
Content-Transfer-Encoding: quoted-printable
Message-Id: <0B367AF9-24D1-4158-90FF-0AD65E68F978@ietf.org>
References: <CABcZeBOCO52LKQyfOngrB8cXWRw18kyP5hjY0hUBf5k5xgvCrw@mail.gmail.com> <2D3F427C-DF73-41C5-8D6E-9667FC280381@ietf.org> <0cd9894e-4b42-be44-8955-6fb9e991fac3@gmail.com>
To: Brian E Carpenter <brian.e.carpenter@gmail.com>
X-Mailer: Apple Mail (2.3696.120.41.1.1)
Archived-At: <https://mailarchive.ietf.org/arch/msg/rswg/bQUGER0lcRRmc9Bgy0zna-odA-c>
Subject: Re: [Rswg] Making progress on RFC 7991-bis
X-BeenThere: rswg@rfc-editor.org
X-Mailman-Version: 2.1.39
Precedence: list
List-Id: "RFC Series Working Group \(RSWG\)" <rswg.rfc-editor.org>
List-Unsubscribe: <https://mailman.rfc-editor.org/mailman/options/rswg>, <mailto:rswg-request@rfc-editor.org?subject=unsubscribe>
List-Archive: <https://mailarchive.ietf.org/arch/browse/rswg/>
List-Post: <mailto:rswg@rfc-editor.org>
List-Help: <mailto:rswg-request@rfc-editor.org?subject=help>
List-Subscribe: <https://mailman.rfc-editor.org/mailman/listinfo/rswg>, <mailto:rswg-request@rfc-editor.org?subject=subscribe>
X-List-Received-Date: Fri, 12 Aug 2022 11:42:15 -0000

Brian

> On 11 Aug 2022, at 22:36, Brian E Carpenter <brian.e.carpenter@gmail.com> wrote:
> 
>> deprecation is only forward guidance that this feature will be removed in a future version.
> 
> Hate to repeat myself, but this implies a definition of "deprecate" that makes archived XML files invalid. For now we clearly do not have consensus that this is OK. (My comment yesterday on draft-hoffman-rfc7990-updates-01 effectively suggests a way to resolve this.)

I think we have a very different understanding of XML and XML grammars.

Once an XML document is published, the formal grammar is irrelevant.  This is because the sole purpose of that grammar is to define what XML is allowed in the document but once the document is published that discussion is over. What’s in it is what’s in it.  When people come to read/process/consume an XML RFC/i-D they do not need the grammar to do that as it does not contain any information that is not in the RFC/I-D.  So for me there is no concept of "invalid archived XML files".  

What matter when the document is published is ensuring that people can correctly read/process/consume a published document and that means having a well documented and consistent meaning for each XML element/attribute used.  If it’s not clear, this is because, at this point it is the published XML that is being consumed not the grammar.  A major problem to avoid here is if we were to have an inconsistent meaning, such as one set of RFCs where <foo> means "a suggested name" and another set where <foo> means "a prohibited name".  This is a problem irrespective of whether we have one and only one current grammar that RFCs are retrospectively adjusted to fit with, or whether we have 100 versioned grammars.

The one use case where "what if we introduce a new grammar that old documents would not validate against" actually matters is when published documents are used as the starting point for new documents.  I personally think the best approach here is to provide a conversion tool that is used by an individual at the time they start the new document and with them making manual decisions to adjust the conversion.  After all, that’s what we do for v2 to v3.  The alternative of pre-converting every XML I-D, unprepped RFC and prepped RFC seems highly unlikely to be more efficient.

Jay

> 
> Otherwise I think both of Jay's messages are very much to the point.
> 
> Regards
>   Brian Carpenter
> 
> On 12-Aug-22 02:57, Jay Daley wrote:
>>> On 2 Aug 2022, at 18:07, Eric Rescorla <ekr@rtfm.com> wrote:
>>> 
>>> 1. Do we need to publish the current de facto format as an
>>>    RFC or should it be in some other form such as an I-D
>>>    or a Web page?
>> I believe it should be an RFC because that forces a specific process on us whereby there is a lot of discussion, each new version incorporates a big set of changes and new versions are infrequent and well distributed.  By contrast, a web page or I-D would quickly become a much faster changing process with each new version having a small number of changes.  I see the former process as better for the following reasons:
>> 1.  As has been amply demonstrated, allowing a relatively quick, much less visible and non-consensus change process has got us into a mess.
>> 2.  Almost every change that might go into the grammar has a significant level of complexity and a full WG process is the best way to tease out that complexity and ensure that any changes are good changes.
>> 3.  We have never had an example of an urgent change needed to the grammar such that the RFC development process would be too slow.
>> 4.  We have many people in the community who still use v2 and even those who use v3 are using different versions depending on how up to date their xml2rfc is, and what files they copied into working directories when.  A slow running RFC process is the best fit to the way the community works whereas a fast changing process will increase this lack of cohesion.
>> 5.  If we want to move from the situation where we have only two tools (xml2rfc and Julian’s XSLT) that directly support the grammar, to an ecosystem of tools that do so, then an RFC is the best support of that from an implementer perspective.
>> 6.  One element of the mess has been identifying where the authoritative version of the grammar can be found.  Until recently that was the rnc source file as found in the subversion repository of the xml2rfc tool.  Now it is this file in GitHub https://raw.githubusercontent.com/ietf-tools/rfcxml-templates-and-schemas/main/rfc7991bis.rnc but other than us simply declaring that, there’s no way to always point to that.   If we have an RFC then that becomes the authoritative source.
>>>    2. Should we just publish the de facto format as-is
>>>    or should we make limited changes prior to the completion of
>>>    a more complete format document? If the latter, what process
>>>    should we use to vet those changes?
>> Sorry, this is a complex answer:
>> A.  Yes we must document the de facto grammar as is.  Please note that there are three parts to this:
>>   i.  The changes documented in https://www.ietf.org/archive/id/draft-levkowetz-xml2rfc-v3-implementation-notes-13.html
>>   ii.  The elements defined in the grammar that are not documented in any RFC such as <toc>
>>   iii.  There are a number of xml2rfc specific processing instructions (those of the form <?rfc … >) and these, while not strictly part of the grammar, were the only way to achieve things in v2 that can now be done in the v3 grammar and so were effectively obsoleted by RFC 7991 thought that was never explicitly stated. It would be very useful to have a simple statement that all xml2rfc specific PIs are now obsoleted because people are still confused by this.
>> B.  This new RFC should describe version "3.1" of the grammar, reflecting its backward compatibility rather than be also be numbered v3 or jump to v4.
>> C.  If the chairs think we can reasonably quickly get agreement on deprecating any features (such as the complex postal stuff) then that deprecation should follow the normal use of deprecation - the grammar feature remains and can be used as before and deprecation is only forward guidance that this feature will be removed in a future version.
>> D.  I would like to see this document formally rename "The xml2rfc vocabulary" to "RFCXML" reflecting the de facto renaming in the authoritative documentation and the discussion around that on the tools-discuss list.  I’ll post a separate message reminding people why this has happened and re-opening the discussion to see how this group feels about it.
>> Jay
>>> 
>>> - Pete and Eric (as chairs)
>>> 
> -- 
> rswg mailing list
> rswg@rfc-editor.org
> https://mailman.rfc-editor.org/mailman/listinfo/rswg

-- 
Jay Daley
IETF Executive Director
exec-director@ietf.org