[media-types] Proposal for "script" top-level Media Type

Aaron Franke <arnfranke@yahoo.com> Sun, 24 September 2023 23:35 UTC

Return-Path: <arnfranke@yahoo.com>
X-Original-To: media-types@ietfa.amsl.com
Delivered-To: media-types@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id 63E2CC15152B for <media-types@ietfa.amsl.com>; Sun, 24 Sep 2023 16:35:01 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -2.106
X-Spam-Level:
X-Spam-Status: No, score=-2.106 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_FROM=0.001, HTML_MESSAGE=0.001, RCVD_IN_DNSWL_NONE=-0.0001, RCVD_IN_MSPIKE_H2=-0.001, RCVD_IN_ZEN_BLOCKED_OPENDNS=0.001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001, T_SCC_BODY_TEXT_LINE=-0.01, URIBL_DBL_BLOCKED_OPENDNS=0.001, URIBL_ZEN_BLOCKED_OPENDNS=0.001] autolearn=ham autolearn_force=no
Authentication-Results: ietfa.amsl.com (amavisd-new); dkim=pass (2048-bit key) header.d=yahoo.com
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 0zXTRM9-Axk0 for <media-types@ietfa.amsl.com>; Sun, 24 Sep 2023 16:34:56 -0700 (PDT)
Received: from sonic306-22.consmr.mail.ne1.yahoo.com (sonic306-22.consmr.mail.ne1.yahoo.com [66.163.189.84]) (using TLSv1.3 with cipher TLS_AES_128_GCM_SHA256 (128/128 bits) key-exchange X25519 server-signature RSA-PSS (2048 bits) server-digest SHA256) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id ACC15C14CE27 for <media-types@ietf.org>; Sun, 24 Sep 2023 16:34:51 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=yahoo.com; s=s2048; t=1695598490; bh=khbjIFEtg4iSLAdg1Uq74fKXmXdJCeFAkwMhtYnbqzw=; h=Date:From:Reply-To:To:Subject:References:From:Subject:Reply-To; b=O0EUREk900nExDwu9bDUT1cFJ8mMQdaKyG/H+uqLaXPBtwi5/imjRlEJx1D4CwaDeBZlfTT6fb9bG0kyww/FnMFdori+qP3tQsC3tKatpy2qzQ9WxrwGjQHSLIsvTCL1IXf/6bB8dE3AUgTtUzpvuQKdg5NYnNAoOn/kgL10TxMwvoL39qZpSsvmK5hQHuDBfBaMOM+fFZonaIHv7oOYrX0vBiwEU2/GPD2HLlLaLlGpaETLULOa2gryjPAYKsO9FtZQ2eUmje5Nt/X05QjRkn6Xqzol5ngko2w+pmpBilWP/rFMUYR54oo0nyN8FzRbUv1TIh1aq/HtcIpt+lUGKg==
X-SONIC-DKIM-SIGN: v=1; a=rsa-sha256; c=relaxed/relaxed; d=yahoo.com; s=s2048; t=1695598490; bh=5uw9B+Q0Lx/FX4QoHz1AO5Wd0QQlu0p5caUyHuCdrrP=; h=X-Sonic-MF:Date:From:To:Subject:From:Subject; b=HbsJZPCd/BMrB7Vkg++E0f2o9alWcif2yMz86ncdBlBJEpBbDC05Dv/q3URat2/GkYLrFs7VEnPsj+BtHi4C64l614/ICldOv9MOumrzUBIKItzUolUMXLE7J08gAVEg6ur/WxSMm/H1H9Dc2U1PYQwY8+XatrKRpVX/QM8FY+svsQmKXfE+71s5eWkTe9kGsQmAYvRZU8FkL7ss01/WwKr+vEuEERKCiYkcnTS/XNPI84zf0QQ9g9ghjE4UC3Raunwg9S55KV2sslcZIZ+JDgiDyqz1PJ66YgDO7EMYJvyqaQixrT5xZnfExp+dqYiSamzCkolKWKwNR1wD9PogmQ==
X-YMail-OSG: ABI2xAQVM1kRw1MgK9.tXndzDeda_i3ccNRsKqwKIoVTxQKXziDA0RUhyqg1gPU Uj9ne5Qmt.8GAPaiTLkQuq_5COluL3wUmgve97pVm.VRnul7TI6gHOpntv7IRGsNjvG45ymRnUk8 3q9JXAkkGHkReKGHr1w3WZIQb1VyjbsSJ1n3e_kBUpllCe9p9yWTkr2TRtRZeKEZjbxUnAVxU68V E83wAMIEg0OngZctz45FkH9tJEFCemChFuJrEnJcGpBcdqRUZ3nVziIR7JvzNb0_JrqJHsiuIke2 O4wq3CfOmGJEViv4xbWY_.kB0d4WH2EHuG2f38DgTr4EAdPBZv8_ModW8VsjAsXKH2MVxvNUTys0 3Bh51ew4rMAd1PFJeY2lwjlGO1TGmr4Kq8BCIiuudPnC6f_2GRon6Yi7SBzBP.xF1iSwe_XhA4Xs K0p1FHhze9f3hgUJ8.QH_Rj_uOahCTrosFjf3lAQGYLp4D1BnW.q9Gf29w8noB9EQ68P.5OTeARw NGAvW592aV0.AiZMjkdAfX40AnbujQtYBUnvNF2eATM7RbgPBfMvEsEnGCkqSw71vl6ljntIy3lO qJoVO.bIYe.jf0WxK76BLUfyNqeXJCRUKnbHW.f5W1TqlXnHvBn6Bju6lwJyinlGCACJDr6.WOBi ySofg0z13_3gQzPONRRXIG_I_GNnNicV3emUFhlyCR8wKrCNg5tRBTgEKRRVjscX_6UbScOeIpZ3 M8jPtmmAj7KSP3zmGCWzfw.KOQl3zvoS65iOLr6_r3m7_OoNj2nAwZaISAC7C8Ne0BbWrvckf1O2 DqiLqiV3NZurmGGMthu6vxf4MDAOJjUEQQtR6FOyGJ9IwbtFYY.FxhXY6uWN0kFSPvbJsGdXIwif _vB3SdoQ5ViiHMYyVwT1HePNiFbx6ODSlwfYXvOWLTUxJ.0ZzobKfAkwP1rPzr11tMlH3X9NM.zt 6tHl6G8eY7z0vrYqSx7yONu6pmCiqTXgRIcMucs0aXV8K8RaBtZPAnCQwdFGRS75O.4i4t7_21SP q4XUspIB3AyCQ1fx1eR67yrIvBhoorm5SSfMAgxr2gD3bSo77d10Ex.W5BiO090rbs6YwBHQJpDV 2hKVu6qgbSBJKDdL53Yy0TgOPTPYsqqmMNVudLYvPDCSkAcVdmHlWCZ7ZA.5f_U_tu3ovu4DlIjo X7mABg7B8h9A0tLRZnDjDV2qkK89hmNqueQ1THXqEx8QC4pw5fuUtBZi6aVjuDy7wqTgcgvlnqE7 4JM1Qa9BLFCL_JClX83ep_eR1JCbJH4N.iIX9VCaKqP7NVSPE0M3ny0AvHh70NHtAzJLOcGZhGSP ACwRbslAi3syGh2OFCNS4ximwiBR5D.tPxGj06au4WzK5QFHW9cZArofV0.JJUB7u.4T96D_R8fV Bnr944RjerO0RHYOBCIgpZkJNn.rEoS9ESjNCHeAGJHr4LTwHEeBrtEm0GuOStU37Wwvem5nf9SV 7iSyZrUAKeAC5DtwUflEunKoKKVKOwXS4NHfc5xOtumEnHF2KMNJSj06jUDeOtiGTrTEK.6mRxAj aU8XfVnszNlHg_aq.SA5V1gROHGQRfXvCaBsG_5G9AiV.UKEihEJUdkjfd8ZazZFcnEOArN3smfv JgPvokA1MV2ISaML6gsUlsNeFiP6bLjiUUB2gZcQ49wzotWTuA9VtWAqKD.Y7HJ91ZUgiA.Cm9to .l0d7k62BypBDWsV9VexxggtkgTGId4.rgzaFmDxMliuFRsS8FhjZ9L0bd8bjLXvC5LYvyv9ugfR kng0J62sY6dq6dKUPEnwJUyCBZEWnXT6qfMZgCpxHiB_3VJtsjDX3Kvqovyt224fZrGqKk.xnpzP .X3vXU948COXGpUJ5gshCYsZ_FhYfRpXUYaMGPbdu5_LnWPF8eLG6hT5IxmwKTklLn7CaUVfU5u9 pHLnwy8JTkArHDCbEz_feDhcTOcN307TamQsNKXc1jxdgbf5ThUvwb99ahW6YJ7RNSvTScce0jc7 A0zNxTfoLIWCNtxz2tFq2P7DvMKT5tnEQILZoYFGxQxjROLB0t.zOmQ8NSlRfKMR6pPU5z9BVj7k RWOTZp4bUOcgiX4ZSNr2EgCRhbQZcYlOaLZ9g5cMBD1lpiFfG.NOEMTQ38rUcFJiNTlOR._6Hc2r h0wzX0GiLfPj4bEYCwiEz_m7S_D89_LyhgWbQnB1gHTdfUGw23tY7fAYSaRwqfP7WSk1UfOuBM2P SnwHgA4aTKy.gijoD14ELus7nx2DN9u6hnAR5pbPqn4TlzYOYDVg-
X-Sonic-MF: <arnfranke@yahoo.com>
X-Sonic-ID: 9260fd71-4ddf-4f08-9b92-d8d34d743284
Received: from sonic.gate.mail.ne1.yahoo.com by sonic306.consmr.mail.ne1.yahoo.com with HTTP; Sun, 24 Sep 2023 23:34:50 +0000
Date: Sun, 24 Sep 2023 23:34:48 +0000
From: Aaron Franke <arnfranke@yahoo.com>
Reply-To: Aaron Franke <arnfranke@yahoo.com>
To: "media-types@ietf.org" <media-types@ietf.org>
Message-ID: <224864559.1510816.1695598488441@mail.yahoo.com>
MIME-Version: 1.0
Content-Type: multipart/alternative; boundary="----=_Part_1510815_807065560.1695598488439"
References: <224864559.1510816.1695598488441.ref@mail.yahoo.com>
X-Mailer: WebService/1.1.21797 YMailNorrin
Archived-At: <https://mailarchive.ietf.org/arch/msg/media-types/0dOZnueb0Yb3FAzgMO_EMl3nBaQ>
Subject: [media-types] Proposal for "script" top-level Media Type
X-BeenThere: media-types@ietf.org
X-Mailman-Version: 2.1.39
Precedence: list
List-Id: "IANA mailing list for reviewing Media Type \(MIME Type, Content Type\) registration requests." <media-types.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/media-types>, <mailto:media-types-request@ietf.org?subject=unsubscribe>
List-Archive: <https://mailarchive.ietf.org/arch/browse/media-types/>
List-Post: <mailto:media-types@ietf.org>
List-Help: <mailto:media-types-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/media-types>, <mailto:media-types-request@ietf.org?subject=subscribe>
X-List-Received-Date: Sun, 24 Sep 2023 23:35:01 -0000

Hello IETF,
https://www.iana.org/assignments/media-types/media-types.xhtml
IETF / IANA currently defines several top-level media types: application, audio, font, example, image, message, model, multipart, text, video, and the proposed haptics.

However, there is a major category missing: script. Currently scripts are split across the application and text top-level types.* Many scripts are text-based, but also many are not (such as visual scripting languages like Scratch or Unreal Blueprints), so not all scripts fit under the text type. Since "application/javascript" has been deprecated in favor of "text/javascript", this suggests that IETF / IANA wants to standardize scripts under "text", but this is not suitable for all types of scripts.
* Scripts make sense under "application", but that is very broad, while "script" would be much more descriptive. Scripts are unique in that they are intended to be executed somehow, they are not just blobs of application-specific data.
I propose adding a new "script" top-level Media Type. This may cause confusion in the short term since existing types would still be under "application" or "text", but in the long run it will be much more organized.* Note that most scripting and programming languages do not currently have Media Types registered with IETF / IANA, so now is the perfect time to standardize a "script" top-level type. While JavaScript and PostScript have registered Media Types, other languages like Python, Lua, Perl, PHP, C#, C++, Rust, shell scripts, and more do not. It would be great to register "script/python", "script/lua", etc as the Media Types for these formats.
* Should it exist, I would like to use "script" as the top-level Media Type for the visual scripting language being developed at The Mirror (the company I work at), and I would also like to use it for the GDScript programming language in Godot which currently does not have a registered Media Type (proposed value: "script/gdscript").

As far as I know, the process for submitting top-level media types has not yet been formalized, so I am writing this email as a proposal. I originally sent this to IANA and was told by Amanda Baber to contact the mediaman group about this. I have also read though draft-ietf-mediaman-toplevel-03, I do not know how to create a Standards Track RFC but I believe this meets the criteria laid out in the draft, the set of types that can be included under the proposed script type is very large and very straightforward (it's either a script in a programming language, or it's not), security is not a concern because JavaScript is already an example of a scripting language with a media type which shows distributing arbitrary scripts is a secure, valid, common, and desired use case, I as the proposer am able to implement this type in my applications, and it helps human understanding of the types. It does fail the negative criteria of "SHOULD NOT generate aliases for existing widely used types or subtypes" iff JavaScript is desired to be "script/javascript", however that is optional (we can keep it as "text/javascript" if desired). Also I see that this "must be done via standards-track RFC; no other mechanism can be used", so I would appreciate help with creating such an RFC.

Thank you for your consideration,

Aaron Franke
The Mirror Megaverse Inc & Godot Engine