Perhaps we can compile the mimetype->interpretation map from some XML or JSON schemas, like we do for the ontologies, and have that be the authoritative place? For libzeitgeist I compile the ontology C-bindings from the Zeitgeist's Python module so there is no code dupe there. I could easily do the same for the mimetypes, but that requires a bit more structure in the mimetype spec than what is in Michal's proposal.
However doing all of this probably requires more work than I think we should put in for 0.3.4 at this point. I think the best route would be to either:
1) Defer this task for post 0.3.4, or
2) Make sure the implementation is done in a way so that we can add the extra introspection API for post 0.3.4 without breaking the mimetypes API from 0.3.4
I am not entirely sure which route I prefer, but I would hate to delay 0.3.4 more than we already have...
Perhaps we can compile the mimetype- >interpretation map from some XML or JSON schemas, like we do for the ontologies, and have that be the authoritative place? For libzeitgeist I compile the ontology C-bindings from the Zeitgeist's Python module so there is no code dupe there. I could easily do the same for the mimetypes, but that requires a bit more structure in the mimetype spec than what is in Michal's proposal.
However doing all of this probably requires more work than I think we should put in for 0.3.4 at this point. I think the best route would be to either:
1) Defer this task for post 0.3.4, or
2) Make sure the implementation is done in a way so that we can add the extra introspection API for post 0.3.4 without breaking the mimetypes API from 0.3.4
I am not entirely sure which route I prefer, but I would hate to delay 0.3.4 more than we already have...