[wasm] sqlite as rfc-spec'd web-interchange-format?

kai zhu <kaizhu256@gmail.com> Fri, 27 November 2020 00:09 UTC

Return-Path: <kaizhu256@gmail.com>
X-Original-To: ietf@ietfa.amsl.com
Delivered-To: ietf@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id 21CB23A0954 for <ietf@ietfa.amsl.com>; Thu, 26 Nov 2020 16:09:11 -0800 (PST)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -1.847
X-Spam-Level:
X-Spam-Status: No, score=-1.847 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, FREEMAIL_ENVFROM_END_DIGIT=0.25, FREEMAIL_FROM=0.001, HTML_MESSAGE=0.001, RCVD_IN_DNSWL_NONE=-0.0001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001, URIBL_BLOCKED=0.001] autolearn=ham autolearn_force=no
Authentication-Results: ietfa.amsl.com (amavisd-new); dkim=pass (2048-bit key) 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 pq2S-gjTiHgd for <ietf@ietfa.amsl.com>; Thu, 26 Nov 2020 16:09:09 -0800 (PST)
Received: from mail-vs1-xe2b.google.com (mail-vs1-xe2b.google.com [IPv6:2607:f8b0:4864:20::e2b]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id 5CACE3A0930 for <ietf@ietf.org>; Thu, 26 Nov 2020 16:09:09 -0800 (PST)
Received: by mail-vs1-xe2b.google.com with SMTP id m62so1698904vsd.3 for <ietf@ietf.org>; Thu, 26 Nov 2020 16:09:09 -0800 (PST)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=mime-version:from:date:message-id:subject:to; bh=mRtDk4oZE7m90nsRMTacwniO9UFWgdJ67UPs2jx6lS8=; b=hXcV8060ecJZtb05FQSXtIGFl3gk3l6ZnZ85fBN2N5rIL9P89dfz7kyb8Os7y/01Wi rMC8+wP7pltpSnVR6BfMD2J5lB9bEJaIGPlUG10G2MYjz/0naD9op+F9TVvLcbHrkL8G DB2YBptadVTwiIPT2H9t6hTHqHM3CUJsxMzw2lPgbmGKK9wTUvPj4vRjbE1r2NvS2KMu raPTOmwFvUIUK3sV1jTJmFH4/X6vNLUHq6R3iLpv3gMtfyyH8nRaTF+rfepmWYPaKTyZ Bv9OjmE0zQ/7YCR5NHUB/TfFfqR8JXzW5rtug1nksdEU+yszRmajOEctu5lJFm9u+Jdb beFg==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:mime-version:from:date:message-id:subject:to; bh=mRtDk4oZE7m90nsRMTacwniO9UFWgdJ67UPs2jx6lS8=; b=f87L4hus09Wgfttgaj51wJXvF93SlZXQ5aHzp/VED4SsGGofMUsQQ61ByHtjnXCb6Q KdPo+a9lU104mZ2EXOKIGbDr2OqvafdojpjTxyVLVQf82nKVIAFIk2FYA1eykm6hNUWu 7YZzLfE22JF5OhoHbFtdAexAXTbQ/6stog0VVCSlT+qAHRbvmrKogstUm+UUOu77GFGv vqbg09xl3GDUYtZuDL5s6ftteEca2itLXMV7H+kakh5N2dBWpBA2qgqUIUmMGNNa6xYY 2XyyxGuAsTqoMKKOouZ5KWTkM0gC8w+cr6bTYq/GAjGmo5rYa7Eeu8ZD1dnApy6m7s1y +ocw==
X-Gm-Message-State: AOAM532aofvxAhbbrp/3NQGtzybCu1ii1wpDR72G26nbXwQPARtryTV3 5vA2jlPkFi5EBQHs2VZRgc153ej2B8R6mhrdCKnSYnmxb+U=
X-Google-Smtp-Source: ABdhPJy4BsJmftGlMk9pTaKBHffie8Yz6InsJRmj77GvrZ2obD1/d85v5UvkBvbk/8TVrAuJcHKrmYj3Sta0JubfHBk=
X-Received: by 2002:a67:8bc5:: with SMTP id n188mr3584922vsd.25.1606435747828; Thu, 26 Nov 2020 16:09:07 -0800 (PST)
MIME-Version: 1.0
From: kai zhu <kaizhu256@gmail.com>
Date: Thu, 26 Nov 2020 18:08:57 -0600
Message-ID: <CALPJ4700ueNSZvBfRjsD82X6dkGxTO8RaJYXrs4uC2oH8MTa9A@mail.gmail.com>
Subject: [wasm] sqlite as rfc-spec'd web-interchange-format?
To: IETF Discussion Mailing List <ietf@ietf.org>
Content-Type: multipart/alternative; boundary="0000000000001a97d405b50b78fa"
Archived-At: <https://mailarchive.ietf.org/arch/msg/ietf/VxLrQtfPGJxSldS0u3yz-9bEf8Q>
X-BeenThere: ietf@ietf.org
X-Mailman-Version: 2.1.29
Precedence: list
List-Id: IETF-Discussion <ietf.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/ietf>, <mailto:ietf-request@ietf.org?subject=unsubscribe>
List-Archive: <https://mailarchive.ietf.org/arch/browse/ietf/>
List-Post: <mailto:ietf@ietf.org>
List-Help: <mailto:ietf-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/ietf>, <mailto:ietf-request@ietf.org?subject=subscribe>
X-List-Received-Date: Fri, 27 Nov 2020 00:12:08 -0000

i'm noob to mailing-list, and if you think there's more appropriate place
for subject, please let me know.

motivation:
as product-developer, i waste huge amount of time reinventing error-prone
serializers/revivers to exchange complex-datasets across web.
standardizing sqlite's file-format would reduce integration-headaches
between me / teammates / 3rd-parties, since we could more easily agree to
use wasm-sqlite's standard serializers/revivers (instead of everyone
reinventing their own for the web).

why sqlite as web-interchange-format?
1.
wasm-sqlite's serializers/revivers are opensource and accessible to
web-clients
2.
The [U.S.] Library of Congress Recommended Formats Statement (RFS) includes
SQLite as a preferred format for datasets
<https://www.loc.gov/preservation/resources/rfs/data.html>. [1]
3.
sqlite's last file-format (v4) remains stable and unchanged since 2006
4.
all sqlite file-formats since 2004 (v1, v2, v3, v4) are intended to be
forward-compatible with future sqlite releases
5.
sqlite is the "Most Widely Deployed and Used Database Engine" (and
perhaps second most widely deployed software library, after libz). [2]

the spec for sqlite's file-format is here [3].  i'm no expert at reading
it, but am wondering how feasible to translate it to an rfc-spec (minus the
journaling part)?

-kai

[1] Sustainability of Digital Formats: Planning for Library of Congress
Collections
https://www.loc.gov/preservation/digital/formats/fdd/fdd000461.shtml

[2] Most Widely Deployed and Used Database Engine
https://sqlite.org/mostdeployed.html

[3] Database File Format
https://sqlite.org/fileformat2.html