I have created the table and have some data for populating it
but the question is should we just quit using ns_guesstype
and maintain it all ourselves. I looked at the raw data
for ns_guesstype and it is wrong in some cases
(like .zip -> application/x-zip-compressed rather than
application/zip which iana lists) and is missing a lot of what people
really upload (all the MS mime types for example), and has
some DCI/AOL internal ones (or ones I have never seen anyway
like .ani mapping to application/x-navi-animation).
It can of course be overridden but maybe it would be
better to maintain our own.
Also, ftp://ftp.isi.edu/in-notes/iana/assignments/media-types/media-types
lists about a zillion mime types and I wonder if we should
just create most of them by default (which would mean tracking
down extensions for most of them).
Another issue is that as it stands I have defined the table as:
create table cr_extension_mime_type_map (
file_extension varchar(200)
constraint cr_mime_type_extension_map_pk
primary key,
mime_type varchar(200)
constraint cr_mime_ext_map_mime_type_ref
references cr_mime_types
);
which would mean a unique entry per extension. I know
it's not really valid but I think until we do the work
on the UI side to allow for chosing the correct mime type
it's probably better to enforce uniqueness.
The final one is that for some things I am not sure what the right generic extension to return would be when more than one is listed (the ext in cr_mime_types). An example being application/quicktime where both .qt and .mov are used.
Anyone want to figure it all out for me?