Use Cases

We encourage users to post events happening in the community to the community events group on https://www.drupal.org.
ernestd's picture

Based on the principle explained in pending changes we consider different use cases that could happen in the collaborative edition. The server distinct the use cases depending on two parameters:
a) if the user has done any modification on the client side (add or delete content)
b) if the revision id of the document uploaded by the client is different than the revision id stored in the server, which means that somebody else has also updated the server content before.
Thus there are the following use cases (with plain descriptions):

  • case 1: client uploads diff. no changes in server
  • case 2: client checks but no diff to upload. no changes in server
  • case 3: client uploads diff. there are changes in server (modifications by others)
  • case 4: client checks but no diff to upload. there are changes in server (modifications by others)
  • And then two special cases:

  • case 5: client uploads diff but there is a collision (see Collision detection)
  • case 6: user still typing, whatever other cases are happening at that moment (see Stop typing)