OMI has several issues. Most importantly it's difficult to maintain and needlessly convoluted. It should reliably perform a handful of tasks and be less of everything else. @henhuy now has time time to address this in a radical rewrite. This issue is a meta level discussion space and collects things to be done.
@wingechr : you are warmly invited to ask for features, make structural remarks and get involved if you like. The goal is to have a tool that you and all of us enjoy using.
Broad plan:
base OMI's functions on the schema.json alone
Get rid of all the version and key specific classes and declutter the whole project
Write new functions and tests for validation and conversion
Things OMI should reliably do after the rewrite:
validate metadata json
validate that tables match metadata description
conversion of metadata from old to new (supported versions 1.5.2, 1.6 and 2.0)
return useful error messages
API can call OMI to validate uploads. Error messages (both from API itself and from OMI) should find their way back to the user.
Related info:
The oemetadata builder will also get an update.
OMI should be a helpful feature for the csv upload wizard. When dropping a csv file into the upload area, if it's reasonably structured, the OEP should be able to infer the structure and datatype from the first few lines and create a table. Limitations may apply.
OMI has several issues. Most importantly it's difficult to maintain and needlessly convoluted. It should reliably perform a handful of tasks and be less of everything else. @henhuy now has time time to address this in a radical rewrite. This issue is a meta level discussion space and collects things to be done.
@wingechr : you are warmly invited to ask for features, make structural remarks and get involved if you like. The goal is to have a tool that you and all of us enjoy using.
Broad plan:
Things OMI should reliably do after the rewrite:
Related info: