[Json] Advice on registering JSON Lines (not JSON) as IANA Media Type

"Hlavina, Wratko (NIH/NLM/NCBI) [E]" <whlavina@ncbi.nlm.nih.gov> Wed, 30 December 2020 16:58 UTC

Return-Path: <whlavina@ncbi.nlm.nih.gov>
X-Original-To: json@ietfa.amsl.com
Delivered-To: json@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id A9BA13A09D6 for <json@ietfa.amsl.com>; Wed, 30 Dec 2020 08:58:21 -0800 (PST)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -1.999
X-Spam-Level:
X-Spam-Status: No, score=-1.999 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_EF=-0.1, HTML_MESSAGE=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=nih.gov header.b=XPldl+ox; dkim=pass (1024-bit key) header.d=nih.onmicrosoft.com header.b=RrcvTlgK
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 Tv5rzc2w2fsX for <json@ietfa.amsl.com>; Wed, 30 Dec 2020 08:58:19 -0800 (PST)
Received: from nihcesxwayst03.hub.nih.gov (nihcesxwayst03.hub.nih.gov [165.112.13.34]) (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 E83FF3A09CD for <json@ietf.org>; Wed, 30 Dec 2020 08:58:18 -0800 (PST)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=nih.gov; i=@nih.gov; q=dns/txt; s=NIH; t=1609347499; x=1640883499; h=from:to:cc:subject:date:message-id:mime-version; bh=MhLB9aQUtRqaz7KX3BhcsFh+KAPelaCD1EAJVCaiBiA=; b=XPldl+ox7+NDFhJx3NsAQgChnNm9goGYNZ2ZnICL6GNS0UgIrIAs6ys9 +s5jDpaNlKoDSrAUv0xG3XrKMgJEf+kvRm8qRrnVZz2ajLj06wWBhz2GZ Ho5Ye4wKwzCMm3kHxUdMD6jxrRymVRsVB9dcF2WpUtK/mzZT55h+CZ36K nwHHpkLyasECmhC9H3m8xng+gg/ZGqy+cWsml6mDdA0uQVDwgryl7VX10 oz0WOwBSERE5RysA9/lNUWGNt6qGzDDjs4yMnFEsQJbVYTWHgGrWGWCeR QIH8YEfUAl8IcxuoVyrC1IQGQRDguutRNPmoNYTwQGUCuoZlNXT94eQnu g==;
IronPort-SDR: OX396idLvRZEQ/eBjSPXf8OqYzPksN+PZVxgYGIHe8uQ6n/r/75DvquvcP6K59MNg02OWf6sF9 jUDQNQAk7WJA==
X-SBRS-Extended: Low
X-IronPortListener: ces-out
X-IronPort-AV: E=Sophos;i="5.78,461,1599537600"; d="scan'208,217";a="173744711"
Received: from nihexs1.nih.gov (HELO mail.nih.gov) ([165.112.194.61]) by nihcesxwayst03.hub.nih.gov with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 30 Dec 2020 11:58:14 -0500
Received: from NIHEXS4.nih.gov (165.112.194.64) by nihexs1.nih.gov (165.112.194.61) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.1.2106.2; Wed, 30 Dec 2020 11:58:14 -0500
Received: from GCC02-DM3-obe.outbound.protection.outlook.com (165.112.194.6) by NIHEXS4.nih.gov (165.112.194.64) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.1.2106.2 via Frontend Transport; Wed, 30 Dec 2020 11:58:14 -0500
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=AKHzFD7UjZ4UxBI1IW2DJPuFpHKyhpAH4M0gOWm47ciQqtswyE4bli70br2NFIYZb/3fbjtsJhbf58ZzpcpHJH8u8xWfEudpQCi9fKP3Hm/B/GrbY3OZRcJq8J9SNngmydFiUkJctlSz9iZZYRK9P5tc7fw0bnIwXB5Q0JEUIIAYzZFJct/gUTANuLenwelAYoh1mp9qQXUNCqhz0XehIHgvU6Sk4gKUhrJnh1u77U4S9UemDk/N/OESZMElfp8+QoRD27TD57BxOA6YnOuGjByUE6pf+VliBUnqT3/gxKrvhiJu8s0XfjGbd5Sx1Po8PhhN0ZkC+f+xkU6ap7DBaA==
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-SenderADCheck; bh=MhLB9aQUtRqaz7KX3BhcsFh+KAPelaCD1EAJVCaiBiA=; b=SQoTPzssGA3Sy9iAyFm5ASyN4iq3VPijtkYQJaMm7YG8KIhuYdbvoD+lgUHrqCdnko+XZ5sGgw6+/NXEsksKfR/7RGMr7gWdjVJ2McNm2gsoJOTxcHMQN/JLTlE1mM93uCvXtu/pMq341RwHyaHbl9UmjN/5whku/fxFCkgn2hJeXtZoaiA9iUdr8tv9bTd6Z8uc0bKkX9MPP73qMwuBRptFcNGMELEXzJtyLhdKCGQdllwGKFO2iuKMElj1ySckEI01uS6cdOc7ll1RFAGBVCu6VbTEmL/UobBMcXrWOPjpa7dSSfQ3jWyZzue93vC0ZzWjecaBIlLsB+YFZdPKvQ==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=ncbi.nlm.nih.gov; dmarc=pass action=none header.from=ncbi.nlm.nih.gov; dkim=pass header.d=ncbi.nlm.nih.gov; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=nih.onmicrosoft.com; s=selector2-nih-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=MhLB9aQUtRqaz7KX3BhcsFh+KAPelaCD1EAJVCaiBiA=; b=RrcvTlgKIOwIOYJqf11z44AemYuEAFoLHn5+2Zx+gsII2bsmw+8ckmQYgkptS5eNd8VN+5OUmcEt3UKbufiyoS7mQb4YSVqCY9yjutg21S34XY30BfUsxGH/1Gmnqdrlr8mPAsS9mP2+5uOelk3jGG37eZXpdYjeyzNYwZC0VLU=
Received: from BLAPR09MB6339.namprd09.prod.outlook.com (2603:10b6:208:2a1::11) by BLAPR09MB6963.namprd09.prod.outlook.com (2603:10b6:208:289::7) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.3721.19; Wed, 30 Dec 2020 16:58:13 +0000
Received: from BLAPR09MB6339.namprd09.prod.outlook.com ([fe80::49f2:f934:a918:d20]) by BLAPR09MB6339.namprd09.prod.outlook.com ([fe80::49f2:f934:a918:d20%3]) with mapi id 15.20.3700.031; Wed, 30 Dec 2020 16:58:13 +0000
From: "Hlavina, Wratko (NIH/NLM/NCBI) [E]" <whlavina@ncbi.nlm.nih.gov>
To: "douglas@crockford.com" <douglas@crockford.com>, "nico@cryptonector.com" <nico@cryptonector.com>
CC: "json@ietf.org" <json@ietf.org>
Thread-Topic: Advice on registering JSON Lines (not JSON) as IANA Media Type
Thread-Index: AdbeyuV5xouXWbmCTX6b72mjxOeeVw==
Date: Wed, 30 Dec 2020 16:58:13 +0000
Message-ID: <BLAPR09MB63395A1C761AF08DF0F47688AED70@BLAPR09MB6339.namprd09.prod.outlook.com>
Accept-Language: en-US
Content-Language: en-US
X-MS-Has-Attach:
X-MS-TNEF-Correlator:
authentication-results: crockford.com; dkim=none (message not signed) header.d=none;crockford.com; dmarc=none action=none header.from=ncbi.nlm.nih.gov;
x-originating-ip: [130.14.8.148]
x-ms-publictraffictype: Email
x-ms-office365-filtering-correlation-id: 056a3042-50db-4ed9-1a90-08d8ace4187f
x-ms-traffictypediagnostic: BLAPR09MB6963:
x-microsoft-antispam-prvs: <BLAPR09MB69639CCF15952E82B0E15941AED70@BLAPR09MB6963.namprd09.prod.outlook.com>
x-ms-oob-tlc-oobclassifiers: OLM:9508;
x-ms-exchange-senderadcheck: 1
x-microsoft-antispam: BCL:0;
x-microsoft-antispam-message-info: gYc814/BHYjhNfi0rTizX6yRfrRUa3oLGrVrVgBPmNKy7La21qJypzk01uP6kzWvyJEG4I6vVfP88IJtWoHT7Jb3Zc7ZaYt2V5JqeiMSD5qXzV9lC6i1WzhOMO76tNZupkQLEZuQHpIdJ/CPX9Hy9EyKn6TDm9q/U3bV8v6ba7d/Ehx86clJc7lSeg6mIOztTqJZZXnVUxgqS5lYLLVDvgZNeBl/Cfj6fLPupn3kkqtGmUiSNjZ3T7nohmTTzD5jva2RS2LIxKhNEez5BLxXcrm0Gvsh6ZdlBOWJgKe3pROwI5LVlJH4zj+5iToWdXvCwy7u2R0Oe1RU9VrQ/7oyg4Gd5tGwBlQwyruk1eqknVFa6KRKM5BXZMNBmL+p+eflVx6u/KS5QPk24m8ubJdmo4wJSU7LE5CaryKbSwGl8jk1FxEUSum0xL4rc0LqNsszjjs9CFgaLc0ocf0+4mCG3kOsh2Lxg2K9jLiTBB5lK6c1/Wq9tKopG5lR/OcgD+MhZ7JhfoljTFJ87rAQXeXKLstd7YbXdKvw1zsirri4lwQ=
x-forefront-antispam-report: CIP:255.255.255.255; CTRY:; LANG:en; SCL:1; SRV:; IPV:NLI; SFV:NSPM; H:BLAPR09MB6339.namprd09.prod.outlook.com; PTR:; CAT:NONE; SFS:(4636009)(376002)(396003)(39860400002)(136003)(366004)(346002)(66476007)(52536014)(76116006)(316002)(966005)(71200400001)(7696005)(66556008)(64756008)(186003)(55016002)(66446008)(110136005)(4326008)(478600001)(66946007)(6506007)(9686003)(8676002)(2906002)(8936002)(86362001)(166002)(83080400002)(5660300002)(83380400001)(33656002)(26005)(493534005); DIR:OUT; SFP:1102;
x-ms-exchange-antispam-messagedata: NmMM7C5L2JYxfIvm8YFj+STAJ9yiseAsa3gdTNqldHGjRT25ypZ0a4O7P8MIDywvD5cwP88Pm4z82uuZqzAhYpPa8d3D6vQGmZeXDctRMGEWKShdtzed6Fj3hU/vERwR4cyN0LhKsRaeOxzfDwNyZnzQfMDeLMdyfjRp6KSXcEmMipUjlR1kvlmI844YJxsXys13cppyL97z9aWKIT7CLE3x/jlJrC/Yi166NafgZHycFMFTYgkbBpSfQsZUmvqS5XDlXL8JEA5q2P3iuMoXERABX7Ycu6J4EU2OFC7V0TLvvygxEAowNyKwqIAkkodNq8BKK1RxsMNpPSBnnXRpIb/VecCywk57bMeJqR79LGrplVwJ42S82SoASI2sxegTbULMWBlGkyLWIT67Oj0zNJ4VWD1p3CKTEQJHC4U02PriqxNf3kIswrcl20bQMhEqeTQ4GnELmNBtic+2cw4nEK+NkgORiUZ+09HjIiRvMQ3JlL4F19VAO0d7tjZK8AqCx8qBYr2BF623z93H22eJ3MqL03Z+VgaXm8wb6ollK78zryBb8fpmRsegyWU3lSxEitiddv8xJo71ERk8WTJHhevQZAAggj8G3VlXgCnmgy9ety5+ELWfNKp/KYNutZrVg5YjW6dUQ+2rAwZDwdiIdRj9UtEfBV7yY5KsRIYnzkQw16WgbbrhsPMfC/AygKSU45G2D7l/TZN/Tdjd2ign0miIX1Xf72ujKR3R27xNJr/Qsgp5S/y3/3WSNxep4ftkHeKFdl8w3yytLRscYqY1sEJ3AKeirivDnuflacNeyc/RewTnZ1MFrZDnth8APIetc9NjbDXz1cA7fQzgc8mrfhGLfiJHIUTTJsV/u+o1qwSpKKDliJK8AKlmtaLK0Q57V1ADcCDlfPE+GnWMOhkAcns0xjP0RJ7UfqaohON8F6SRsCN1mM40iFomMaodmiLvPP+8r7ZmctJZiZnyUktNLRkvLD+g4e3CRClbqc2kYqE=
x-ms-exchange-transport-forked: True
Content-Type: multipart/alternative; boundary="_000_BLAPR09MB63395A1C761AF08DF0F47688AED70BLAPR09MB6339namp_"
MIME-Version: 1.0
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-AuthSource: BLAPR09MB6339.namprd09.prod.outlook.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 056a3042-50db-4ed9-1a90-08d8ace4187f
X-MS-Exchange-CrossTenant-originalarrivaltime: 30 Dec 2020 16:58:13.4656 (UTC)
X-MS-Exchange-CrossTenant-fromentityheader: Hosted
X-MS-Exchange-CrossTenant-id: 14b77578-9773-42d5-8507-251ca2dc2b06
X-MS-Exchange-CrossTenant-mailboxtype: HOSTED
X-MS-Exchange-CrossTenant-userprincipalname: J5vyEYxyENq4LGv2TiCeGYgnmW7GRt+13FQ5PWzkGYAX1LTUAcA8mJCxnL3Osw/2DxbPTMSlpedVLUY09Wvjlg==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: BLAPR09MB6963
X-OriginatorOrg: ncbi.nlm.nih.gov
Archived-At: <https://mailarchive.ietf.org/arch/msg/json/dWMWD0JDa2HiUYjWjLjrQExeIx4>
X-Mailman-Approved-At: Wed, 30 Dec 2020 09:12:21 -0800
Subject: [Json] Advice on registering JSON Lines (not JSON) as IANA Media Type
X-BeenThere: json@ietf.org
X-Mailman-Version: 2.1.29
Precedence: list
List-Id: "JavaScript Object Notation \(JSON\) WG mailing list" <json.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/json>, <mailto:json-request@ietf.org?subject=unsubscribe>
List-Archive: <https://mailarchive.ietf.org/arch/browse/json/>
List-Post: <mailto:json@ietf.org>
List-Help: <mailto:json-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/json>, <mailto:json-request@ietf.org?subject=subscribe>
X-List-Received-Date: Wed, 30 Dec 2020 17:10:20 -0000

Hello, Mr. Crockford and Mr. Williams,

I understand you are listed as the authors for the "application/json" and "application/json-seq" IANA Media Types, respectively.
I would like to ask for your advice/help with a related file format, JSON Lines:

https://jsonlines.org

I think there is value in having this format registered as a Standards Tree IANA Media Type.
Per the RFC6838 process, this requires Expert Review and IETF/IESG approval.
Not being a member of those organizations, how can I encourage such registration?

Motivation:

Unfortunately, JSON Lines is not valid JSON (technically) and is different from JSON Text Sequences.
However, JSON Lines is a frequently used file format; for example, it is used by many database products, including Cloud services like AWS Athena, Snowflake, and others.

Since it is not valid JSON, using "application/json" as media type leads to processing failures and mishandling.
Since it uses the newline as separator, without RS Unicode Information Separator Two record separators, "application/json-seq" is not a substitute Media Type, and the ecosystem of tools do not, in general, support JSON Text Sequences format.

In principle, good JSON programming libraries should allow streamed processing of JSON content, both in emitting it and in reading it, but in practice, libraries for JSON tend to require an entire JSON object to be held in memory.
Since HTTP emits one response per request, this implies only a single JSON object per response, if using "application/json" as Media Type; this is problematic for large data.

In my experience, JSON Lines has become a very useful and conventional file format, since it interoperates well with Unix text utilities while remaining highly interoperable with many JSON tools.

Cf.:

  *   RFC6838
  *   https://www.iana.org/assignments/media-types/application/json
  *   https://www.iana.org/assignments/media-types/application/json-seq
  *   https://www.iana.org/assignments/media-types/application/ld+json
  *   https://stackoverflow.com/questions/51690624/json-lines-mime-type
  *   https://github.com/wardi/jsonlines/issues/9

--
Wratko HLAVINA
Sequence Curation, Organization, Enhancements (Technical Program Manager)
NCBI Building 45 Floor 4 Room AS13D-121
Slack: whlavina / Phone: 301-402-9730 / FAX: 301-480-2484 / Calendar: https://bit.ly/2QU2EGB