It's entirely probable this is my own inept user error, but if so, I haven't figured out what I'm doing wrong.

I'm misusing Drupal to manage annotation/classification of a data corpus of moderate size (approximately 6000 examples), for evaluation of a machine learning system. I've added all instances as Drupal nodes, and created an editable view, such that annotators can select the appropriate class for each instance from a dropdown, and save the set of newly-annotated nodes.

Naturally, the display is paginated, so annotators can work separately on limited segment of the ~6k examples. When the user clicks save, the response message indicates that the appropriate number of nodes was updated (25 in my initial design; 4 currently while I'm debugging this problem). And as an administrator, if I view all content, I can see the appropriate number of updated nodes. But, the updated nodes are not the ones the user just annotated! So far as I can tell, the system is choosing nodes at random (from the ~6k), and marking them as updated (without any real changes, since the user's selections were not on those nodes - the annotation field on the updated nodes remains as the original 'Not Specified' setting.

I've looked at the browser source for the editable table, and the Node IDs appear correct - and nowhere in that source do I see the nid's of the ones that are updated on save.

The view is filtered to only display unannotated nodes (it currently displays them in random order, via the Global:random sort, to distribute instances fairly between annotators, but I've tried it without the randomization and found the same behavior).

I'm at a loss. Any suggestions? Thanks in advance.

Comments

joachim’s picture

I've no idea if I've tried this with paging.

If it's not the paging, then it's quite probably the randomizing, as Drupal will be rebuilding the form when you submit it.

joachim’s picture

With just the pager it works for me. Therefore I suspect it's the random sort.

ajdunlop’s picture

Yes. Looks like it's the random sort; I was sure I tried it without that yesterday, but it works without that today. Oh well, it wasn't a good use case for Drupal anyway. Thanks for looking into it.