geneontology / minerva

BSD 3-Clause "New" or "Revised" License
6 stars 8 forks source link

Optimize minerva model diff #356

Open kltm opened 3 years ago

kltm commented 3 years ago

To all model responses, add a "diff" of the current (in-memory) state of the model versus the original (on-disk) version.

The purpose is to be able to hint clients on unsaved changes to model.

Details of format TBD.

goodb commented 3 years ago

Same clarification needed as here: https://github.com/geneontology/minerva/issues/355#issuecomment-714918395

A quick version of this would be the diff provided by ROBOT which is a list of differing OWL axioms. http://robot.obolibrary.org/diff

goodb commented 3 years ago

@kltm @lpalbou I have the robot diff function embedded in Minerva now for checking the differences between an edited model and the version of the model in the blazegraph store. It is currently set to throw its results (currently available as string, markdown, or html) into a simple string variable in the standard M3BatchResponse. If ROBOT were to add a json format, we could just plug that in here. Ping @jamesaoverton about that possibility. Will commit a change in a sec here..

jamesaoverton commented 3 years ago

ROBOT relies on https://github.com/balhoff/owl-diff, so it would probably be more effective to ping @balhoff :smile:

lpalbou commented 3 years ago

I have a meeting today with Tremayne where we will further specify those requirements and see if we need anything else. I will keep you posted later today

vanaukenk commented 2 years ago

@tmushayahama - okay to close this one?