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

Paul Kyzivat <pkyzivat@alum.mit.edu> Sun, 26 November 2023 22:53 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 D22A1C14F747 for <rfc-interest@ietfa.amsl.com>; Sun, 26 Nov 2023 14:53:27 -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 O90zC-sRVJe9 for <rfc-interest@ietfa.amsl.com>; Sun, 26 Nov 2023 14:53:25 -0800 (PST)
Received: from NAM11-CO1-obe.outbound.protection.outlook.com (mail-co1nam11on2062e.outbound.protection.outlook.com [IPv6:2a01:111:f400:7eab::62e]) (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 98131C14F73F for <rfc-interest@rfc-editor.org>; Sun, 26 Nov 2023 14:53:25 -0800 (PST)
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=bXWDtrXpxqJeXwFEn005I753yMfmxUMTodOL8hOtKak/zyOeea/3Zt6GEISEDy1YUf4VwGrpVvqsmkKABEOM1wIbyFBqvbcxR6zRq+zscyJrSt0RqnwiAMqfzREsxQH5A5qMy07S7Sde3IMn/XLYQ0oqIJTTnRhkLztAhOso+kqD/pplV1uqD8Xq7ApFo9PSWPhD08eswcrlXgtXCzjP2v9FLOX0k6VxkvjceN2Pmm3J/LuTceSGhyk3V1hLUGwJ9eDszfWxLOXuR4TiTHZ81Rk+ATZ1O8ev07nbVbDQ1pEYI03EDrCS+yQApSGUop+tzSicvYBj7Ypoir+w3LsDCg==
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=CqpQ8+tloqI4oimOdE/D4JcvUUkrXXQnCnaOF8C4cOI=; b=eAI63rIn9aVjaXuJhlCQH7pU0/0vR6YPBHq1jJclL1yeTysS+vHKD3CeFRQRHpQTUGDaFAINAu34T2sWE8gpfnXO640fH5M5Vzh2DuAYDXxBCFrBUstdqs/wPc0Eo1KH0pI+LQrrOiY7AZR9bO+6HJj+OMY5UZaqqOkLkBN5j3AzS1/jJSTa+HTGBfgD9wO5t9eLQ4Ka3rQ4aKhx2JAbrk0i8yqchyhdPyJZOPE5fg166yzgoG1K9FLJgZOpPPZw6G4aIrzw43fxoxve+fIukBL1cv3Bxu6J3u9VX8w8AxRBU016WI1dj0s8q1cAQ15Cz7ExBLeBJTQmw2fvRoEdtg==
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=CqpQ8+tloqI4oimOdE/D4JcvUUkrXXQnCnaOF8C4cOI=; b=WgdY2ZMLF/Ezl8I1DXUjGRa8/2GThHe5U8ElMqa/c2H328CRxPaP98nHhiNkFvZ15c9x9JdAmFgnSiQslcOjaveQmeBI6Bfw4DM1hgpMHN6gC2Am3Nb0BsRF/1CsUCJE+fMZh2nD7LJIQ23IgxfLm0+dETN7GOVK4gN8uUyHRyU=
Received: from CY8PR02CA0003.namprd02.prod.outlook.com (2603:10b6:930:4d::10) by BN9PR12MB5354.namprd12.prod.outlook.com (2603:10b6:408:103::22) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.7025.27; Sun, 26 Nov 2023 22:53:22 +0000
Received: from CY4PEPF0000E9D6.namprd05.prod.outlook.com (2603:10b6:930:4d:cafe::96) by CY8PR02CA0003.outlook.office365.com (2603:10b6:930:4d::10) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.7025.27 via Frontend Transport; Sun, 26 Nov 2023 22:53:22 +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 CY4PEPF0000E9D6.mail.protection.outlook.com (10.167.241.80) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.7046.17 via Frontend Transport; Sun, 26 Nov 2023 22:53:21 +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 3AQMrI6a005230 (version=TLSv1/SSLv3 cipher=AES128-GCM-SHA256 bits=128 verify=NOT); Sun, 26 Nov 2023 17:53:20 -0500
Message-ID: <b9ba0201-13c6-420c-804a-180572083f02@alum.mit.edu>
Date: Sun, 26 Nov 2023 17:53:18 -0500
MIME-Version: 1.0
User-Agent: Mozilla Thunderbird
Content-Language: en-US
To: Carsten Bormann <cabo@tzi.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>
From: Paul Kyzivat <pkyzivat@alum.mit.edu>
In-Reply-To: <75157E6C-99B3-4E17-8FFD-57A1D55E0CD4@tzi.org>
Content-Type: text/plain; charset="UTF-8"; format="flowed"
Content-Transfer-Encoding: 8bit
X-EOPAttributedMessage: 0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: CY4PEPF0000E9D6:EE_|BN9PR12MB5354:EE_
X-MS-Office365-Filtering-Correlation-Id: f96a4eac-f7d3-4273-5111-08dbeed27d9e
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info: BMCL5zHkrLmLoQzXNxCOVLKIzh+NDkEExmA+dBrV8D27/JyhwIAmiOUXAEGI1aTMmjGS88+hBY0KowFBbQwzhF2YAvHJ7Ti19rQV4Tyd/3WV6MLXtXScgTONuYkw51at0oz05WdakZHwG7sw4Rj4pJ6e7hfPe7sb4ejpX3au0X9bZuKXq0gB8Ege1+1UP56HOfT86PYqKxIkfzvN84TToA5TiQDaWCdqXZfz9cNl1mCrSRrEvYRq4qCXo9Y+KrHKT7mXn3TCbGnOlWf+Yjw++hr9PSzPnkC4/JOR8RSJFAkxJNqqWJxYxnhcUbMMoPO1q87cfqT3g9cJ2hcqquXCDXrQr3qT+F/0bpGFlHXHVpCTShtMaOU2JKP4gqb/dnpx63RfhDRdz3yaM37yX/g8WxRaAeKsRMJ70QK7/S1uFIZf1H9wBUtUWkZi3bTL71Xx+tSbcUfGIJ9X3q14kCYnh37Pb+lIoeWYCq1IFCpbRlgartS3RdMkiKJbX9e2AU/UP3H+vzeL0RJEAX8urJobci8BslFcGceAkAObjP1UsnhTOUfzxLaISA9hMGymtLFnMD7IdF3n5KcOabVeJCKq7M/GVuCOqOTNOUqTfAS0JF7vVC420V7QaNrSd2Yq6rGUIMBWcya/YbqgedyINafrB3XLcRezJ74r+3RhJLpPqmTQUsbGZhyPD0IkaQs1cDYVHbr/Ftli2KXLrBb2M5ijKby39DHyMBB+3bLBoylmNJTp+rEc3N0e+QRYe+Prygi1
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)(376002)(346002)(396003)(136003)(39860400002)(230922051799003)(64100799003)(1800799012)(82310400011)(451199024)(186009)(46966006)(36840700001)(31686004)(40480700001)(36860700001)(41300700001)(86362001)(31696002)(5660300002)(2906002)(75432002)(83380400001)(356005)(4326008)(8676002)(8936002)(70206006)(786003)(6916009)(70586007)(2616005)(53546011)(478600001)(956004)(316002)(26005)(336012)(82740400003)(41320700001)(7596003)(47076005)(43740500002); DIR:OUT; SFP:1101;
X-OriginatorOrg: alum.mit.edu
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 26 Nov 2023 22:53:21.7377 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: f96a4eac-f7d3-4273-5111-08dbeed27d9e
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: CY4PEPF0000E9D6.namprd05.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Anonymous
X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem
X-MS-Exchange-Transport-CrossTenantHeadersStamped: BN9PR12MB5354
Archived-At: <https://mailarchive.ietf.org/arch/msg/rfc-interest/eVhJHZiFOH7-YFrzYBlzbWQEG9o>
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: Sun, 26 Nov 2023 22:53:27 -0000

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.

	Thanks,
	Paul

On 11/26/23 2:45 PM, Carsten Bormann wrote:
> Hi Paul,
> 
>>> I put in a proof of concept at
>>
>> This is a great proof of concept. It is very much like I was imagining.
> 
> Thank you.
> 
>> I'm not sure exactly how you are constructing the names of the parts. But the details of that can be bike shedded as needed.
> 
> File names should primarily come from the name= attributes of artwork/sourcecode.
> However, few authors fill these in (and some get it wrong, e.g., in RFC 8688).
> So, as a fallback, the code uses the slugifiedName= attribute created by the preptool (and, if that hasn’t be performed, it simulates the behavior of the preptool).
> 
> Multiple artwork/sourcecode with the same name= are aggregated (concatenated) under that name.
> That would be mostly wrong with the guessed filenames from slugifiedName=, so here the extractor appends -b, -c… in case of a collision.
> (Note that the slugifiedName= creation appends -2, -3…, so you might find a -2-b or so…)
> 
>> Question: are you actually extracting and storing all the pieces as a preprocessing step? Or is this virtual, where the pieces are extracted on demand?
> 
> In the PoC, this is done as preprocessing, essentially simply calling (an updated version of) kramdown-rfc-extract-sourcecode.
> 
>> If you are using a preprocessing step to extract the pieces, this could be made to work for docs prior to 8650 by using ad hoc techniques to extract the pieces from the .txt file. That could be done gradually on a demand basis. That would however require some sort of review process to ensure that is is done correctly.
> 
> I think that would be useful.
> I’m not sure about how a review process would work, but people already are using aex and similar tools to extract ABNF, so by focusing on these higher-value targets we could cover 80 % of the needs with 20 % of the work.
> 
> (If the review process would be too arduous, we might need to fall back to a community effort.)
> 
> Grüße, Carsten
>