I think the Mac got this right (before Mac OS X) and has since screwed it up. Every file had both a creator code and a type code. So, for every file, you would know which application created it and also which format it was.
So, double-clicking the file opened it in the application it was made in, but the Mac would also know which other applications could open that file.
Generic, standardized formats like "jpg" and "pdf", and
Application-specific formats like extension files or state files for your program, that you do not wish to share with competitors.