Re: [rfc-i] XInclude usage

tjw ietf <tjw.ietf@gmail.com> Thu, 05 August 2021 02:49 UTC

Return-Path: <rfc-interest-bounces@rfc-editor.org>
X-Original-To: ietfarch-rfc-interest-archive@ietfa.amsl.com
Delivered-To: ietfarch-rfc-interest-archive@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id 1D8DB3A1368; Wed, 4 Aug 2021 19:49:06 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -4.747
X-Spam-Level:
X-Spam-Status: No, score=-4.747 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DKIM_ADSP_CUSTOM_MED=0.001, DKIM_INVALID=0.1, DKIM_SIGNED=0.1, FREEMAIL_FORGED_FROMDOMAIN=0.249, FREEMAIL_FROM=0.001, HEADER_FROM_DIFFERENT_DOMAINS=0.001, HTML_MESSAGE=0.001, MAILING_LIST_MULTI=-1, MIME_QP_LONG_LINE=0.001, RCVD_IN_DNSWL_MED=-2.3, RCVD_IN_MSPIKE_H2=-0.001, SPF_PASS=-0.001, URIBL_BLOCKED=0.001] autolearn=ham autolearn_force=no
Authentication-Results: ietfa.amsl.com (amavisd-new); dkim=fail (2048-bit key) reason="fail (message has been altered)" header.d=gmail.com
Received: from mail.ietf.org ([4.31.198.44]) by localhost (ietfa.amsl.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id JYkzRraunS0I; Wed, 4 Aug 2021 19:49:01 -0700 (PDT)
Received: from rfc-editor.org (rfc-editor.org [4.31.198.49]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id 2A3583A1364; Wed, 4 Aug 2021 19:49:01 -0700 (PDT)
Received: from rfcpa.amsl.com (localhost [IPv6:::1]) by rfc-editor.org (Postfix) with ESMTP id C3288F4073B; Wed, 4 Aug 2021 19:48:33 -0700 (PDT)
X-Original-To: rfc-interest@rfc-editor.org
Delivered-To: rfc-interest@rfc-editor.org
Received: from localhost (localhost [127.0.0.1]) by rfc-editor.org (Postfix) with ESMTP id 6674AF4073B for <rfc-interest@rfc-editor.org>; Wed, 4 Aug 2021 19:48:32 -0700 (PDT)
X-Virus-Scanned: amavisd-new at rfc-editor.org
Authentication-Results: rfcpa.amsl.com (amavisd-new); dkim=pass (2048-bit key) header.d=gmail.com
Received: from rfc-editor.org ([127.0.0.1]) by localhost (rfcpa.amsl.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id 9e5PTCpG8IQP for <rfc-interest@rfc-editor.org>; Wed, 4 Aug 2021 19:48:28 -0700 (PDT)
Received: from mail-qt1-x82b.google.com (mail-qt1-x82b.google.com [IPv6:2607:f8b0:4864:20::82b]) by rfc-editor.org (Postfix) with ESMTPS id D72F6F4071D for <rfc-interest@rfc-editor.org>; Wed, 4 Aug 2021 19:48:27 -0700 (PDT)
Received: by mail-qt1-x82b.google.com with SMTP id m11so2907002qtx.7 for <rfc-interest@rfc-editor.org>; Wed, 04 Aug 2021 19:48:54 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=content-transfer-encoding:from:mime-version:subject:date:message-id :references:cc:in-reply-to:to; bh=pieFp+1Tz8vl/RcmB/JhbxytAjW/94Q/BQf+Pv1fKf4=; b=bPotPB5UGrJyR1I1gsoPvBivefNw+OYCeWCaIIlsMRcPPLJWF15aZt45V8YDfA4ovm I42dqKZ6hKzKZ9b8asAeQW7Z9Go3wfEBcP3nGJGmMuAvMvdD+9m5suTPi8OvzvJpxriI /r9IsEropBjM1NqIYN9ubUZrWqIPUD7pjY5HhXxMZFeIMd4Tz3Yl4nbf92sjbY3u7mGN 5WoUd2QcIMBGTnoQ6aGBbJmaUCvA1D+aR8VI92g5PcM385xC6H/vOv+PnpNFygbiC9j6 lysyKZEn3JEMTa2YiM5YjNVaduZo/rrby95Mx5IE9ueAs3MjeN+yMmJfkpFLheHCzLx2 5Mxg==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:content-transfer-encoding:from:mime-version :subject:date:message-id:references:cc:in-reply-to:to; bh=pieFp+1Tz8vl/RcmB/JhbxytAjW/94Q/BQf+Pv1fKf4=; b=aWnvENd8/MPR0Hc75+OEeuYkD8hcJvSa7Z/VPmLp3HLOHNpePgPPlHakOgxsKhV9tc RFB9/1wEyKgp++rHMnOEFKUX7wNYRhjTZdOp4dfPGmK9EWf61mhZqgFZFGwWfpf0V9w4 QHLQlQMXBNjtso/KXWDU8KzHqrZFkXQQKOK2CzOk/M6o8FKlHJVLTLQn+lus2X1lBcvb LPq/ocUbW23LZM5yzPvfB1bSN7Z65lXtZz4hy3s7JJvJCKKj+CuI0Tvno+SDxQD3COtv J88MlaVbR8WbFaFUTdKUbw25Zx20mpKXaev8Gzsw5JX2zthJyBhbnSBTZqV8S4MtV0VF TVJQ==
X-Gm-Message-State: AOAM530+c495doIiqALkEjZ1W9ZUiwIxZphAA8wpVlt4pL5uRXhRGRKZ vqMlVc3NF1osGnEKqrda+/0=
X-Google-Smtp-Source: ABdhPJyjTvaa91CIWjQl1j0DCP25saXebdkmSRNT78zR637F6DJCDtyLAQcq+uYhY/9i6P3SVjKMqg==
X-Received: by 2002:a05:622a:15c4:: with SMTP id d4mr2564847qty.350.1628131731770; Wed, 04 Aug 2021 19:48:51 -0700 (PDT)
Received: from smtpclient.apple (184-15-37-220.dr01.chtn.wv.frontiernet.net. [184.15.37.220]) by smtp.gmail.com with ESMTPSA id q10sm1752993qti.68.2021.08.04.19.48.51 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128); Wed, 04 Aug 2021 19:48:51 -0700 (PDT)
From: tjw ietf <tjw.ietf@gmail.com>
Mime-Version: 1.0 (1.0)
Date: Wed, 04 Aug 2021 22:48:50 -0400
Message-Id: <8CEC464C-08E1-40C0-B8EE-B81FAB57D3BF@gmail.com>
References: <798399E2-7B6B-44DE-97C4-B186219D3098@ietf.org>
In-Reply-To: <798399E2-7B6B-44DE-97C4-B186219D3098@ietf.org>
To: Jay Daley <jay@ietf.org>
X-Mailer: iPhone Mail (18G82)
Subject: Re: [rfc-i] XInclude usage
X-BeenThere: rfc-interest@rfc-editor.org
X-Mailman-Version: 2.1.29
Precedence: list
List-Id: "A list for discussion of the RFC series and RFC Editor functions." <rfc-interest.rfc-editor.org>
List-Unsubscribe: <https://www.rfc-editor.org/mailman/options/rfc-interest>, <mailto:rfc-interest-request@rfc-editor.org?subject=unsubscribe>
List-Archive: <http://www.rfc-editor.org/pipermail/rfc-interest/>
List-Post: <mailto:rfc-interest@rfc-editor.org>
List-Help: <mailto:rfc-interest-request@rfc-editor.org?subject=help>
List-Subscribe: <https://www.rfc-editor.org/mailman/listinfo/rfc-interest>, <mailto:rfc-interest-request@rfc-editor.org?subject=subscribe>
Cc: RFC Interest <rfc-interest@rfc-editor.org>
Content-Type: multipart/mixed; boundary="===============0621009063456291261=="
Errors-To: rfc-interest-bounces@rfc-editor.org
Sender: rfc-interest <rfc-interest-bounces@rfc-editor.org>


> On Aug 4, 2021, at 22:44, Jay Daley <jay@ietf.org> wrote:
> 
> Hi Peter
> 
> One of my high level concerns about RFC XML is that it should use a formally defined syntax and thereby support validation by a range of common XML tools, not just xml2rfc.  Another one is that if we’re going to use XML then we should use XML and not some custom simulacrum that looks like it but doesn’t walk like it, because then we lose the power of the many XML processing tools out there.

Strongly agree with jay here.  

RFCXML should not be some snowflake.  

Tim 



> 
> In that regard, imposing any limitations on XInclude is problematic because it means that either only xml2rfc can validate a document, or we need to define our own inclusion mechanism (e.g. RFCInclude) that can be validated.  My strong preference would therefore be not to limit XInclude as per your a., b. and c. below.  
> 
> I'm also not clear why we need to limit XInclude this way.  When XInclude is used, it introduces a double validation step, one before the XInclude is processed and one after it is processed.  This can’t really be avoided.  If XInclude is used incorrectly then the second validation will pick that up.  For example, DocBook does not include XInclude in its syntax [1] and only validates the XML that is constructed *after* any XInclude statements are processed and the contents inserted.   
> 
> However, we really should examine if we need XInclude or not.  A good example is the way we include IPR boilerplate, which is by an attribute not any form of XML inclusion.  (BTW By doing this we have effectively created two separate XML vocabularies, as Mark was highlighting, and forced the usage of our custom processor, xml2rfc, to get from one to the other).  We could take a similar approach for BibXML references and define a syntax whereby they are simply identified by name and our custom processor inserts them at the right stage.  We already have a 'database' of BibXML references that this name could be used as the key for and we could provide a mechanism for people to add new references to that if needed.
> 
> 
>>> On 5/08/2021, at 5:51 AM, Peter Saint-Andre <stpeter@mozilla.com> wrote:
>>> 
>>> Back in 2017, Julian Reschke asked [1] that we clarify the scope of
>>> XInclude [2] usage, to wit:
>>> 
>>> ###
>>> 
>>> 1. It should be clarified how much of XInclude needs to be supported.
>>> I'm mentioning this because RFC7991 says that includes can not happen
>>> where no elements are allowed, but XInclude allows inclusion of plain
>>> text as well.
>>> 
>>> 2. Is support of the xpointer attribute required?
>> 
>> see above
>> 
>> If so, do we have any
>> guidance how this will work when the document from which to include uses
>> xml2rfc format, and the pointer relies on the id-ness of an attribute?
> 
> I need to think this through more, but it would be useful to understand the use case given that RFCs are immutable, so is this only for I-Ds and why are people doing it?
> 
> [1]  http://www.sagehill.net/docbookxsl/ValidXinclude.html
> 
> Jay 
> 
>> 
>> ###
>> 
>> We discussed this recently [3] within the RFC XML and Style Guide Change
>> Management Team. Our understanding is that x:include is used primarily
>> or perhaps exclusively to pull in reference files structured as XML. In
>> order to keep things as simple as possible, my suggestion to the team
>> and to this list is as follows:
>> 
>> a. Limit the usage of XInclude to XML only (parse="xml"), not arbitrary
>> text (parse="text")
>> 
>> b. Don't support fallback [4]
>> 
>> c. Don't support XPointer [5]
>> 
>> I'm curious what others think.
>> 
>> Peter
>> 
>> [1] https://github.com/rfc-format/draft-iab-xml2rfc-v3-bis/issues/18 see
>> also https://github.com/rfc-format/draft-iab-xml2rfc-v3-bis/issues/128
>> [2] https://www.w3.org/TR/2006/REC-xinclude-20061115/
>> [3] https://codimd.ietf.org/cmt-20210726
>> [4] https://www.w3.org/TR/2006/REC-xinclude-20061115/#fallback
>> [5] https://www.w3.org/TR/2003/REC-xptr-framework-20030325/
>> 
>> _______________________________________________
>> rfc-interest mailing list
>> rfc-interest@rfc-editor.org
>> https://www.rfc-editor.org/mailman/listinfo/rfc-interest
>> 
> 
> -- 
> Jay Daley
> IETF Executive Director
> jay@ietf.org
> 
> _______________________________________________
> rfc-interest mailing list
> rfc-interest@rfc-editor.org
> https://www.rfc-editor.org/mailman/listinfo/rfc-interest
_______________________________________________
rfc-interest mailing list
rfc-interest@rfc-editor.org
https://www.rfc-editor.org/mailman/listinfo/rfc-interest