Jakob_WMDE added a comment. |
Assumptions not (yet) explicitly mentioned in the ticket (T189129)
- lexemes with different lexical category or language cannot be merged
- merging of lemmas works like merging labels (identical ones ignored, others added to the target)
Conceptual Questions
- Do we create a new special page? Special:MergeLexemes? UX!?
- Do we create a new API endpoint? wblmergelexemes?
- What happens if one lexeme links to a form of the other lexeme? Do we abort the merge?
- What happens if a form has a subset of the representations of a form on the other lexeme? (e.g. en: colors, en-gb: colours vs only en:colors)
- What happens if a form has a subset of the grammatical features of a form on the other lexeme? (e.g. 1st person singular, nominative vs only 1st person singular)
To be tested
- What happens to statements that reference the Lexeme that got merged into the other? Does that magically work through redirects?
- Make sure statements linking to merged/"deleted" deleted forms does not explode?
Technical investigation starts here.
Item Merging
- API endpoint: Wikibase\Repo\Api\MergeItems
- Special page: Wikibase\Repo\Specials\SpecialMergeItems
- shared between API and special page: Wikibase\Repo\Interactors\ItemMergeInteractor
- ItemMergeInteractor basically does all the things
- loads entities from ID
- applies merge ChangeOps
- saves
- updates WatchList
- ChangeOpsMerge
- generates label, description, alias, sitelink and statement ChangeOps
- not great: validation happens sprinkled across methods (e.g. link check in generateStatementsChangeOps)
TASK DETAIL
EMAIL PREFERENCES
To: Jakob_WMDE
Cc: Addshore, Lydia_Pintscher, Pablo-WMDE, Lahi, Gq86, GoranSMilovanovic, QZanden, LawExplorer, Wikidata-bugs, aude, Darkdadaah, Mbch331
Cc: Addshore, Lydia_Pintscher, Pablo-WMDE, Lahi, Gq86, GoranSMilovanovic, QZanden, LawExplorer, Wikidata-bugs, aude, Darkdadaah, Mbch331
_______________________________________________ Wikidata-bugs mailing list Wikidata-bugs@lists.wikimedia.org https://lists.wikimedia.org/mailman/listinfo/wikidata-bugs