Subject: [media-types] Media Types Registration for application/wasm

From: Bradley Nelson <[email-masked]>
Date: Fri, 16 Mar 2018 01:28:44 +0000

Hi Media Types,

I'd like to file the follow mime type request:

Your Full Name
Required

*Bradley Nelson*

Your E-mail
Required

[email-masked] <[email-masked]>*

Please read the following questions carefully and provide complete answers.
Write "N/A" for mandatory answers that are not applicable.

Type Name
Required
What is the media type name?
See RFC 2046 §3, and RFC 2077.
*application*

Subtype Name
Required
What is the media subtype name?
*wasm*

Review the existing subtype names. See also RFC 2046, and RFC 6838, §3 and
§4.2. Note: Registrations in the standards tree must be approved by the
IESG or must correspond to a formal publication by a recognized standards
body.

Required Parameters
Required
Describe the required parameters.
*N/A*

See RFC 2046 §1, and RFC 6838 §4.3.
Optional Parameters
Required
Describe the optional parameters.

*N/A*

See RFC 2046 §1, and RFC 6838 §4.3.
Encoding Considerations
Required
 7-bit text
 8-bit text (this media type may require encoding on transports not capable
of handling 8-bit text)
* binary (this media type may require encoding on transports not capable of
handling binary)*
 framed (transport must provide framing information)

Additional notes (optional):
*N/A*

See RFC 2045 §6, and RFC 6838 §4.8.
Security Considerations
Required
Provide a discussion of the security considerations.

*The WebAssembly.compileStreaming and WebAssembly.instantiateStreaming APIs
enforce that the mime type is application/wasm so that we can ensure
non-wasm content isn't used to create modules.*

See RFC 6838 §4.6
Interoperability Considerations
Required
Provide a discussion of the interoperability considerations.

*The mime type is currently actively used in browsers that have shipped the
streaming APIs (Chrome, Firefox).*

See RFC 6838 §4.5
Published specification
Required
Provide references to the published specification.

*https://www.w3.org/TR/wasm-web-api-1/
<https://www.w3.org/TR/wasm-web-api-1/>*

See RFC 6838 §4.10
Application Usage
Required
Describe applications which use this media type.

*Ideally all applications that use WebAssembly (games, rich media, code
ported from languages other than JS, codecs, simulations) will use this
mime type.*

See RFC 6838 §4.5
Fragment Identifier Considerations
*Disallowed.*

See RFC 6838 §4.11
Restrictions on Usage
*N/A*

See RFC 6838 §4.9
Provisional Registrations
Standards tree applications only.

*Wasm has it's first public working draft but no final W3C REC yet.*
*I assume that means we need this?*

See RFC 6838 §5.2.1
Additional Information
Required
See RFC 6838, §4.12

Deprecated alias names for this type
*N/A*

 This field is required.
Magic number(s)
*0x6d736100 (i.e., '\0asm')*

This field is required.
File extension(s)

*.wasm*

Macintosh File Type Code(s)
*N/A*

 This field is required.
Object Identifier(s) or OID(s) — See RFC 1494
*N/A*

This field is required.
Intended Usage
Required
*This mime type would be used when applications include binary WebAssembly
modules for use as part of the application.*

Other Information & Comments

Contact Person
Provide the contact for further information. See RFC 6838 §5.5.

Contact Name
*Brad Nelson*

Contact Email Address

[email-masked] <[email-masked]>*

Author/Change Controller (for standards tree registrations, this is
typically the standards body)
*WebAssembly Working Group*

---

From: Chris Lilley <[email-masked]>
Date: Thu, 15 Mar 2018 21:41:51 -0400

On 3/15/2018 9:28 PM, Bradley Nelson wrote:
> *The WebAssembly.compileStreaming and WebAssembly.instantiateStreaming 
> APIs enforce that the mime type is application/wasm so that we can 
> ensure non-wasm content isn't used to create modules.
> *

I would suggest adding some text derived from the Web Assembly 
specification:

Code is validated and executes in a memory-safe, sandboxed environment 
preventing data corruption or security breaches. *
*

> *I assume that means we need this?*
Yes, it should be a provisional registration. Fold in any comments about 
the media type before you go to CR, then request the non-provisional 
registration after CR is published. You should not wait for final REC.

-- 
Chris Lilley
@svgeesus
Technical Director @ W3C
W3C Strategy Team, Core Web Design
W3C Architecture & Technology Team, Core Web & Media