- TermProposer-user can update/delete some term only if that term was created by that user
- TermReviewer-user can update some term only if that term is Unprocessed
- TermFinalizer-user can update some term only if that term is ProvisionallyProcessed
- TermProposer-user can update/delete some attribute only if that attribute was created by that user and all term(s) on that attribute's level are Unprocessed, so:
- If it's a term-level attribute - that term should be Unprocessed
- If it's a language-level attribute - all terms for that language should be Unprocessed
- If it's a termEntry-level attribute - all terms for that termEntry should be Unprocessed
- TermReviewer-user can update/delete some attribute only if all term(s) on that attribute's level are Unprocessed, so it's same as in point 4 but with no 'was created by that user'-requirement
- TermFinalizer-user can update/delete some attribute only if all term(s) on that attribute's level are ProvisionallyProcessed, so it's same as in point 5 but just other status used
|