Registering A Media Type, Part I
as part of my ongoing work to learn about how MIME media types are used w/ HTTP and other app-level protocols, i am going through the process of designing and registering a media type with the IANA standards body. along the way, i'm going to blog my experience. hopefully this will be helpful to others when they want to register their own custom media types.
design and document
the first thing i did was design and document a media type. for this exercise, i am using a simple media type i designed to support sharing state information between client and server for navigating simple mazes over HTTP. i posted documentation online at what the IANA suggests is a "stable" URL: Maze+XML. the exact details of this media type are not critical to the registration process except that it is in XML format (this will come up when i fill out the registration document).
read it and weep
all the details on how to go about registering your media type is covered in the snappy prose of RFC2048 and RFC4289; also know by the lyrical title "Multipurpose Internet Mail Extensions (MIME) Part Four: Registration Procedures." the IANA site lists both even though RFC2048 is obsoletd by RFC4289. neither of them are a "quick read", but, i found RFC2048 more helpful.
the most enlightening part of all this (for me) was Registration Trees and Subtype Names. that section describes the various ways a media type can be registered. to cut to the chase, the easiest way to go is to register under the Vendor tree as this does not require extensive IETF review. Instead, the application is reviewed for just the basic requirements and compliance. best of all the streamlined Vendor tree process usually takes only about two weeks.
the gist of the vendor tree spec is:
Registrations in the vendor tree will be distinguished by the leading facet "vnd.". That may be followed, at the discretion of the registration, by either a media type name from a well-known producer (e.g., "vnd.mudpie") or by an IANA-approved designation of the producer's name which is then followed by a media type or product designation (e.g., vnd.bigcompany.funnypictures).
that's what i decided to do.
then it's on to the application
once i have the media type documented and know i can register my media type within the vendor tree rather easily and quickly, it's on to the details of filling out the form and getting the ball rolling.
i'll cover the details of actual registration in the next installment.