geneontology/noctua-models

Can model histories or change sets be viewed?

Closed this issue · 5 comments

Is there a way to track the history of changes that have been made to a model?

ref: http://noctua.berkeleybop.org/editor/graph/gomodel:586fc17a00001446

kltm commented

Short of going back and forth through the undo/redo stack (which gets wiped on save anyways), the models are saved on a 30-minute cycle into GitHub, giving half-hour snapshots of changes:

https://github.com/geneontology/noctua-models/commits/master/models/586fc17a00001446.ttl

In addition, all actions are time-stamped and person/group-stamped, so complete constructive action can be tracked on the current state of a model.

Thanks @kltm

So how can I use these codes in the commits links to see what the model looked like in Noctua on the given dates, or at least a preview of references? Is there a way to load the code for each date into Noctua to see the model? How do I know what annotations in this model changed between 11 Apr and 12 Apr, and then between 12 Apr and 18 May?

Atm the model appears to be broken (the entity is detached from all the functions and other individuals) and I seem to have no way of tracking what has happened to this model. So my only option seems to be to go back to the paper and to start making the annotations in this model from the beginning.

What if I decided to revert to an earlier version? Is there a way to do so?

cc @RLovering

kltm commented

I believe that the codes you're referring to are the literal TTL "turtle" representations of the OWL models.
To be blunt, unfortunately, while the github snapshots of the TTL files can serve as a record, there is currently no end-user mechanism to view, diff, recover, or playback a model. That said, all of these things can be done with various tools and with the intervention of administrators. We've been in discussion for some time about which of these options, when possible, should be made available to users in the public client. We'll be working more on these issues and hopefully get more features dealing with "meta-editing" in the near future. For example: geneontology/minerva#132

Haha, yes, it seems that this is what I mean since the link you pasted in previously appears to have the "turtle" extension!
Ok, I'll go back to the papers and try to repair the models, in which I've noticed this issue, but in the future it would be helpful to at least have a screenshot of what a model looked like on a specific date (from now on I'll certainly take one myself!). But ideally, a "history" tab would be great that would allow you to select and view a model, as it appeared on a specific date in the past. Plus an option to restore one of these previous versions, e.g. if necessary after a revision. I suppose this is somewhat similar to what you are suggesting in the 'minimal permanent history' in geneontology/minerva#132 . However, where you are looking at separate lines, a user might prefer a visual representation of the model with the specific change somehow highlighted on it. Or would this exceed the 'minimal' aspect of the history too much?

kltm commented

From a thread elsewhere, geneontology/minerva#132 could possibly be used as a base for visualizations for a model at different points in time. How robust or useful that would be in practice remains to be seen. As far as reversions go, we'll likely be depending on GitHub for things like that, with the toolkit being grabbing an old version of the model from GH, reinstantiating it, and deprecating or requesting deletion of the previous version.