Re: [rfc-i] getting SVG of RFC diagrams

Paul Kyzivat <pkyzivat@alum.mit.edu> Mon, 27 November 2023 17:22 UTC

Return-Path: <pkyzivat@alum.mit.edu>
X-Original-To: rfc-interest@ietfa.amsl.com
Delivered-To: rfc-interest@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id D894BC151081 for <rfc-interest@ietfa.amsl.com>; Mon, 27 Nov 2023 09:22:01 -0800 (PST)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -2.01
X-Spam-Level:
X-Spam-Status: No, score=-2.01 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, RCVD_IN_ZEN_BLOCKED_OPENDNS=0.001, SPF_PASS=-0.001, T_SCC_BODY_TEXT_LINE=-0.01] autolearn=ham autolearn_force=no
Authentication-Results: ietfa.amsl.com (amavisd-new); dkim=pass (1024-bit key) header.d=alum.mit.edu
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 xc49zWwHNIgo for <rfc-interest@ietfa.amsl.com>; Mon, 27 Nov 2023 09:22:00 -0800 (PST)
Received: from NAM10-BN7-obe.outbound.protection.outlook.com (mail-bn7nam10on20613.outbound.protection.outlook.com [IPv6:2a01:111:f400:7e8a::613]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id B1A9BC14E513 for <rfc-interest@rfc-editor.org>; Mon, 27 Nov 2023 09:22:00 -0800 (PST)
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=MhJmhkNQovLBplenECrDipu0cuGxznhhPZNRMKkOqpAIpYJiVnuGJvStpB+ZSlItbXeE2dL0sRxeFowrGM3nbPNzHDQecxbyYKMGrXtmcxB5jJODur15+t6551ZCuez3MUauQS59Ei+NN48MhmdeDJksrwoUicorxHsxVhJGiMGVIRuRaclS1WSbmWw8UoJGBkiQ2sdHATw6nfamAuoq2qf9h0qaJXKBfI/RKoppBjbb00LbvWH5KlJtGHSPT6xElJ57jr7WOEV2cfvrLpGm90VxrfxBfWDp5j9Oom8KnLqoc37EE8RO992siQvuhrMjmNR1c5rBz2Mn6vqQBInxAA==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1; bh=zMrPc7Z8g1GSzyRPoWmsK5dESZ0jU8d8pmYAOetBnsc=; b=aFwFF+CPcFJZJoSYw3oLYAL+7eWWEWIW09ifsNFfCZSVxQ58mhNy0wpuadd7Dvqtovhx7mj+B/cuykvQiy4Y8U0HCpJPnc+Ikj1ynCCnke2d+pKct1l6Jow6AixD3OpZkV3BM32TY0aUnOtA8gsI589+VVdOZeiFyVAUKnqctNav2PYIVy7MJ/y5l+1Iuc1wvlJLjmtcbVGG80rIuRpxUa3Fxy/32NqacQnYCd7eBgglkM0YnYKcRoYW0F1f5RaYfmAbTJnOGRjmSiJvkjJxNcZQmR1lALe8CKgzRthSC6zHPejO4fgB4uQ5UPvTWDy3wR25Xrnsp13dOrKNrFvi/w==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass (sender ip is 18.7.68.33) smtp.rcpttodomain=rfc-editor.org smtp.mailfrom=alum.mit.edu; dmarc=pass (p=none sp=none pct=100) action=none header.from=alum.mit.edu; dkim=none (message not signed); arc=none (0)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=alum.mit.edu; s=selector2; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=zMrPc7Z8g1GSzyRPoWmsK5dESZ0jU8d8pmYAOetBnsc=; b=L0wQfGce947NPASRm96GUaCJiffLs472pYKPcrQHAPaKu4OCQRg+jGpm3V00xulQYPSJc4ll2B4BvHBcuIi/tck73CfjFF+LfcVXeH3baaJNGG/zYvmAB2Z7ifQjguorcvL16c4dAzz3C1lBL5WH9O9B2hSlFEz36k00+7ACld8=
Received: from CY5PR15CA0197.namprd15.prod.outlook.com (2603:10b6:930:82::24) by SA0PR12MB4525.namprd12.prod.outlook.com (2603:10b6:806:92::10) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.7025.29; Mon, 27 Nov 2023 17:21:56 +0000
Received: from CY4PEPF0000E9D9.namprd05.prod.outlook.com (2603:10b6:930:82:cafe::ce) by CY5PR15CA0197.outlook.office365.com (2603:10b6:930:82::24) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.7025.29 via Frontend Transport; Mon, 27 Nov 2023 17:21:56 +0000
X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 18.7.68.33) smtp.mailfrom=alum.mit.edu; dkim=none (message not signed) header.d=none;dmarc=pass action=none header.from=alum.mit.edu;
Received-SPF: Pass (protection.outlook.com: domain of alum.mit.edu designates 18.7.68.33 as permitted sender) receiver=protection.outlook.com; client-ip=18.7.68.33; helo=outgoing-alum.mit.edu; pr=C
Received: from outgoing-alum.mit.edu (18.7.68.33) by CY4PEPF0000E9D9.mail.protection.outlook.com (10.167.241.77) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.7046.17 via Frontend Transport; Mon, 27 Nov 2023 17:21:55 +0000
Received: from [192.168.1.52] (c-73-143-251-114.hsd1.ma.comcast.net [73.143.251.114]) (authenticated bits=0) (User authenticated as pkyzivat@ALUM.MIT.EDU) by outgoing-alum.mit.edu (8.14.7/8.12.4) with ESMTP id 3ARHLoMY001591 (version=TLSv1/SSLv3 cipher=AES128-GCM-SHA256 bits=128 verify=NOT); Mon, 27 Nov 2023 12:21:54 -0500
Message-ID: <2f28226d-8531-4352-908b-30ca6ac18ab8@alum.mit.edu>
Date: Mon, 27 Nov 2023 12:21:49 -0500
MIME-Version: 1.0
User-Agent: Mozilla Thunderbird
Content-Language: en-US
To: Paul Hoffman <paul.hoffman@vpnc.org>
Cc: rfc-interest@rfc-editor.org
References: <310371.1700735021@dyas> <7C81D316-7D04-4941-BEE5-6AE8C96F0DE1@tzi.org> <D1F8F86E-80D7-4FC7-B7B5-32648ACB5D65@tzi.org> <MN2PR11MB3757AF8CCDF388BA5CECFE1AB9B8A@MN2PR11MB3757.namprd11.prod.outlook.com> <153bde12-5773-42ce-bfdf-392e4492c06b@gmx.de> <9D66A3A2-5516-4924-8B1E-420871D862C5@tzi.org> <8373b6b5-4a0a-4abb-8880-d618154b2f81@alum.mit.edu> <1F2DBD33-1553-4BBE-8ADB-115632C8373D@tzi.org> <d9b2052b-8f23-4cbf-99b8-9d2b85892fb4@alum.mit.edu> <75157E6C-99B3-4E17-8FFD-57A1D55E0CD4@tzi.org> <b9ba0201-13c6-420c-804a-180572083f02@alum.mit.edu> <8B573C04-4BDB-47B3-80B9-A2BE87A43AAF@vpnc.org>
From: Paul Kyzivat <pkyzivat@alum.mit.edu>
In-Reply-To: <8B573C04-4BDB-47B3-80B9-A2BE87A43AAF@vpnc.org>
Content-Type: text/plain; charset="UTF-8"; format="flowed"
Content-Transfer-Encoding: 7bit
X-EOPAttributedMessage: 0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: CY4PEPF0000E9D9:EE_|SA0PR12MB4525:EE_
X-MS-Office365-Filtering-Correlation-Id: c99f153a-fff7-4ba6-c0a5-08dbef6d5afa
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info: pTEZ4Y/jmvdPXiOeskdpfKsaWI8liUfuni642e0h6BmbXC4KD/yg0tpfFrDNNTzEswM6x0tUxtg3I1QTqt/jFgzVCNliea5QMgEkUUsMvu72Ay8T4BhxM7G6lV+uJ98QqNq0sS0tD2X4QbLrsMAN28LUA6HEUCcnk4B+aHyxqxJfdb4Cc7upqc122ZmEFzf9Opjwq8XJjWcnvMZO0eVjQ0otIMkiiHrDZq4w//XLRK3eudXFIhzVU4uNW4CgbGdSigY8xpq897UHdtOxAdO5zqm1NwysroWXvRobNE/n2j0ur2m+MzLLj/cl8SbDj9t6OkblJznqsWI087OXY/hiA6XkvtQX7UEdmbOu0byt8rDAlmoMWnFRgFMKGkfrdtyPBxKM99IKlUqUOnJAWXt9420Ao74uVLf69YYAPR2uK1AP6Zu9yvDWKxyEoDmr1P+RyHBYKrFOjsjcLCPqt2W5TlQTlZLWeST3mf39jYe3MmDdkfvTuiKJWi4JY5jRIDQ+hxk2nX9mNx70BajDThhsuP8MleIvpjEaVQIcPaMY0ky9LDVnZxV3o4PRrMsJUAh/TBiSvyVV+AvXxmvojtkbfZOK7tP1W/DriQHH93JxnEvO7T2HurQqmywAoM4qdNa1PWLRBguG6QQ8WUpz7L/gL+JFhKOPz585+PSkxCFZTetmNsLBcsw7DjaNbFL2Lrx9h4OlcKW+rVlOVG8kOZRQjKX8QV1UVrhLJoBCQCdE9Y/wFJA8Xpgv/Q5t4InVIZwlk0aYxgbiQ6LQ2trhrbhcTw==
X-Forefront-Antispam-Report: CIP:18.7.68.33; CTRY:US; LANG:en; SCL:1; SRV:; IPV:CAL; SFV:NSPM; H:outgoing-alum.mit.edu; PTR:outgoing-alum.mit.edu; CAT:NONE; SFS:(13230031)(346002)(39860400002)(396003)(376002)(136003)(230922051799003)(451199024)(1800799012)(64100799003)(186009)(82310400011)(36840700001)(46966006)(40470700004)(40480700001)(31686004)(956004)(2616005)(336012)(26005)(53546011)(478600001)(6666004)(7596003)(356005)(40460700003)(86362001)(31696002)(82740400003)(4326008)(5660300002)(2906002)(41300700001)(41320700001)(75432002)(36860700001)(47076005)(83380400001)(786003)(70586007)(70206006)(316002)(6916009)(8936002)(8676002)(43740500002); DIR:OUT; SFP:1101;
X-OriginatorOrg: alum.mit.edu
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 27 Nov 2023 17:21:55.4601 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: c99f153a-fff7-4ba6-c0a5-08dbef6d5afa
X-MS-Exchange-CrossTenant-Id: 3326b102-c043-408b-a990-b89e477d582f
X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=3326b102-c043-408b-a990-b89e477d582f; Ip=[18.7.68.33]; Helo=[outgoing-alum.mit.edu]
X-MS-Exchange-CrossTenant-AuthSource: CY4PEPF0000E9D9.namprd05.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Anonymous
X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem
X-MS-Exchange-Transport-CrossTenantHeadersStamped: SA0PR12MB4525
Archived-At: <https://mailarchive.ietf.org/arch/msg/rfc-interest/L3YR5imDDpe2WfdRn3xpVr5RLmc>
Subject: Re: [rfc-i] getting SVG of RFC diagrams
X-BeenThere: rfc-interest@rfc-editor.org
X-Mailman-Version: 2.1.39
Precedence: list
List-Id: "A list for discussion of the RFC series and RFC Editor functions." <rfc-interest.rfc-editor.org>
List-Unsubscribe: <https://mailman.rfc-editor.org/mailman/options/rfc-interest>, <mailto:rfc-interest-request@rfc-editor.org?subject=unsubscribe>
List-Archive: <https://mailarchive.ietf.org/arch/browse/rfc-interest/>
List-Post: <mailto:rfc-interest@rfc-editor.org>
List-Help: <mailto:rfc-interest-request@rfc-editor.org?subject=help>
List-Subscribe: <https://mailman.rfc-editor.org/mailman/listinfo/rfc-interest>, <mailto:rfc-interest-request@rfc-editor.org?subject=subscribe>
X-List-Received-Date: Mon, 27 Nov 2023 17:22:01 -0000

Paul H,

On 11/26/23 6:07 PM, Paul Hoffman wrote:
> On 26 Nov 2023, at 14:53, Paul Kyzivat wrote:
> 
>> OK, it seems Carsten and I are in violent agreement.
>> Can we hear from some others here on rfc-interest on whether this is popular enough to pursue further? At some point it probably needs to be discussed on the tools list.
> 
> This discussion started with "I want to be able to extract $x" and veered into "the RPC should be making $x available to everyone for every RFC". A different path would be "it would be nice if I could extract $x from one or more RFCs locally".
> 
> Given that no one has asked the original question before now, it seems likely to only be needed by a small number (maybe less than a few dozen) people. Thus, a discoverable tool that does it might be better than making the RPC add the tool and the process for everyone.

Its already "possible" to extract this stuff, if you are sufficiently 
knowledgeable. At the most basic you can extract what you want from the 
xml using just a text editor.

We are discussing how to make it easier while requiring less specialized 
knowledge. What to do of course depends on what users we are trying to 
address. There are many potential uses for this capability.

My interest came from working on a bunch of sip documents that define 
syntax using ABNF. The core defining document for sip is RFC3261. Its 
ABNF is large self contained except it uses the ABNF core rules. It 
references SDP (RFC237) but their syntax is independent. There are quite 
a lot of follow on documents that extend and revise RFC3261 and/or 
RFC2327. Many of those contain new ABNF describing their extension as an 
addition/revision of the ABNF in prior documents.

Validating the ABNF of one of those documents requires extracting it 
from the document, then identifying (recursively) other documents 
containing referenced ABNF, extracting that, and merging all of that. 
Only then can the ABNF be validated.

This was sufficiently painful that it was rarely done. While I did it a 
few times, usually it was expedient to just validate the new ABNF and 
manually check that the undefined rules were defined in the referenced 
documents. Other sorts of possible errors such as conflicting 
definitions of rules could easy slip by.

I would like to see tooling that automatically validates ABNF when 
documents are submitted. Doing so would require a tool that extracts 
ABNF from already published documents. The same mechanisms would also be 
important for an implementer who wants to compile all the ABNF into a 
parser.

This automatic validation should of course extend to other sorts of 
sorcecode in document, such as json and yang. So tools to automatically 
extract that would also be needed.

So I see the current proposal as part of one step down this path to 
further tools.

	Thanks,
	Paul K