Skip to content

Commit bf2acff

Browse files
committed
feat: reserve MIME range
1 parent ace6268 commit bf2acff

File tree

1 file changed

+23
-0
lines changed

1 file changed

+23
-0
lines changed

README.md

Lines changed: 23 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -58,6 +58,29 @@ The first 127 bits are encoded as a single-byte varint, hence they are reserved
5858
- [Ruby](https://github.com/sleeplessbyte/ruby-multicodec)
5959
- [Add yours today!](https://github.com/multiformats/multicodec/edit/master/table.csv)
6060

61+
### Code Ranges
62+
63+
There are some reserved code ranges.
64+
65+
#### MIME Types
66+
67+
The range 0x200000 - 0x2fffff is reserved for MIME types. Specifically, we've
68+
reserved:
69+
70+
```
71+
Range 0x200000 - 0x20ffff: reserved for 'application/*' (there currently are ~1,300 subtypes)
72+
Range 0x210000 - 0x21ffff: reserved for 'audio/*' (there currently are ~150 subtypes)
73+
Range 0x220000 - 0x22ffff: reserved for 'font/*' (there currently are ~8 subtypes)
74+
Range 0x230000 - 0x23ffff: reserved for 'image/*' (there currently are ~60 subtypes)
75+
Range 0x240000 - 0x24ffff: reserved for 'message/*' (there currently are ~18 subtypes)
76+
Range 0x250000 - 0x25ffff: reserved for 'model/*' (there currently are ~24 subtypes)
77+
Range 0x260000 - 0x26ffff: reserved for 'multipart/*' (there currently are ~13 subtypes)
78+
Range 0x270000 - 0x27ffff: reserved for 'text/*' (there currently are ~71 subtypes)
79+
Range 0x280000 - 0x28ffff: reserved for 'video/*' (there currently are ~78 subtypes)
80+
```
81+
82+
Everything from 0x290000 to 0x2fffff is reserved for future media types.
83+
6184
## FAQ
6285

6386
> Why varints?

0 commit comments

Comments
 (0)