phenoscape / Phenex

Phenex is an application for annotating character matrix files with ontology terms using the Entity-Quality syntax for describing phenotypes.
http://phenex.phenoscape.org/
MIT License
10 stars 3 forks source link

Named entity recognition #85

Closed calliem closed 8 years ago

calliem commented 8 years ago

The main changes are to the existing PhenexController and new SciGraphController.

balhoff commented 8 years ago

@calliem I gave it a try and it seems to be working! Nice job. I wonder if you have time for any refinements? I think it would be nice to let the curator choose to include the annotation, especially for the phenotypes. Currently they would have to do a lot of work just to undo the annotations they don't want. And since the results typically have multiple matches for both E and Q, the number of created rows is combinatorial (I tried this on Buckup_1998.xml). I think ideally we could add a new panel that shows the automated annotation result for a given character state. It could have a list of E results and a list of Q results. Make it a one click operation to add the E they want and the Q they want (well that's two clicks). So you would store the web service results attached to each character state rather than automatically adding new phenotypes.

An even bigger improvement would be to run the web service queries in the background and fill in the results as they come back. Currently the whole application blocks without an indication of what is going on. If doing them all asynchronously while the app is usable is too much work, you could instead put up a panel like is used at app launch while it is downloading ontologies.

cc @hlapp

hlapp commented 8 years ago

@balhoff good comments. Note that the functionality and UX has been reviewed by @wdahdul, and she found it OK. These are good suggestions, but I find it important that we prioritize UX suggestions according to feedback from actual users. I am not in favor of adding additional UI dialogs without first going through mockups and feedback rounds with the actual users.

According to @wdahdul the current way of blocking initially until the results are back will work fine in practice, because a curator would only do this once, before doing actual curation. So I would like to hear more from the actual users' side that filling in values in the background really would be a key improvement before devoting time to that. What we've heard so far is to the contrary.

In my opinion, and this is reconfirmed by feedback from @wdahdul, the main pending improvement with a tangible positive impact is allowing a persisted visual indicator of where "one left off" with manual review/tweaking. See #84.

balhoff commented 8 years ago

@hlapp that makes sense. In that case I do think that something should be shown while it is working. It should be very easy to show a panel like this while the app is blocked:

https://github.com/phenoscape/Phenex/blob/master/src/org/phenoscape/main/PhenexStartupTask.java#L124-L136

Put the work in doInBackground.

calliem commented 8 years ago

@balhoff I've added in a panel that blocks while the auto-filling is running.

Currently there is not a way to directly cancel or view incremental progress while the panel is up, but Hilmar and I discussed these as lower priority features.

balhoff commented 8 years ago

@calliem looks great! I think the activity indicator makes a big difference to avoid confusion about what's going on. Implementing canceling would be much more complicated; I agree it's a low priority.