Essentially there would have to be some form of version branching behind this, and merges etc. The alternative is as you say with locking which is really not preferrable.
Would instead it be possible to submit the edited version as a PM to the author, and the author is the one who can merge or reject the edit? Process could be like:
- I edit the wiki
- I click submit
- Owner gets a pm of the newer version of the wiki
- Owner can accept the new version – this would replace the original with the version in the PM
Owner can also reply to the submission in the PM and suggest modifications or reject it comepletely. User can still modify their submission by editing the PM – this remains as a “branch” and is only “merged” when the original author accepts it. When accepted the pm is archived(maybe also convered somehow into a more transparent format?)