Skip to content

Metadata column column types and datasets#4637

Merged
joshmoore merged 21 commits intoome:metadata52from
joshmoore:populate_metadata_column_types
Jun 8, 2016
Merged

Metadata column column types and datasets#4637
joshmoore merged 21 commits intoome:metadata52from
joshmoore:populate_metadata_column_types

Conversation

@joshmoore
Copy link
Copy Markdown
Member

@joshmoore joshmoore commented May 9, 2016

This PR carries on from work by @emilroz (PR 120) which makes it possible to specify the column types for OMERO.tables when using populate_metadata.py to parse the csv files and adds support for datasets and projects as the target object for a metadata table.

emilroz and others added 15 commits May 9, 2016 09:14
Most methods for dataset loading and parsing were left unimplement.
Now a `Dataset:`-style object can be passed to populate_metadata.py
and images will be looked up by name. Note: there's a small bug with
name lookup that will be corrected separately.
The assumptions for well/imaging naming in a plate or screen
differ from those from image naming in a dataset since there's
no unique way to reference an image in a dataset like there is
well "A1" for example. This commit loosens some of those rules
to allow image columns and image name columns to work together
in the case of datasets. The assumption is that for population
the ID of the image in a dataset won't be known. Instead names
of images will be used as a unique identifier. Currently only
a warning is issued if the name is not unique.
In general, populate_metadata.py looks to be in line for a
refactoring. The number of if-clauses as well as the unhandled
cases (like no catch-all for unknown targets in delete) is
making this ever harder to work with.

All tests passing.
@joshmoore joshmoore force-pushed the populate_metadata_column_types branch from d6c620a to 0e784ba Compare May 9, 2016 07:53
joshmoore added 6 commits May 9, 2016 10:28
In order to allow Projects to smartly handle multiple images
with the same name (though not in the same dataset), the internals
of ValueResolver have been hidden within a ValueWrapper class.
ValueResolver chooses once which ValueWrapper to use internally
after which the various if/then blocks based on target object are
no longer necessary (needs further refactoring). There *are* still
if/then blocks basked on column-type. These could use some cleaning
but will likely remain to be necessary for multiple-dispatch style
handling.
@joshmoore
Copy link
Copy Markdown
Member Author

Merging for IDR-0.0.5

@joshmoore joshmoore merged commit e910a6b into ome:metadata52 Jun 8, 2016
@joshmoore joshmoore deleted the populate_metadata_column_types branch June 8, 2016 17:02
@manics manics mentioned this pull request Nov 7, 2016
@atarkowska
Copy link
Copy Markdown
Member

--rebased-to #5218

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants