AC:
- wbeditentity allows adding and editing of Lexeme forms per the same business logic implemented in wbladdform & wbleditformelements
- forms can be editited as properties of Lexeme (using lexeme id [e.g. L1] as entity identifier to wbeditentity)
- individual forms can be editited as form entities (using form id [e.g. L1-F2] as entity identifier to wbeditentity)
- id is used instead of formId to identify forms inside wbeditentity (forms[]{ id: ... }), wbladdform, wbleditformelements
Info:
- Rename of formId to id was done for wblremoveform in T189673 / https://gerrit.wikimedia.org/r/#/c/422099/
- https://gerrit.wikimedia.org/r/#/c/424333/ fixed a bug, causing problems when removing forms at the same time as performing other entity edits ("change ops")
- RemoveFormConstraint::many() describes (parts of) a Lexeme entity, not only the forms part as the name suggests. To allow for more actions (add, edit), this should be split - e.g. a collection in RemoveFormConstraint::many(), and a LexemeConstraint that describes the properties and different (action) constraints for them