WikiLex synchronisation issueshttps://git.en-root.org/Seb35/wikilex-sync/-/issues2020-01-08T12:55:17Zhttps://git.en-root.org/Seb35/wikilex-sync/-/issues/2Minimise diffs by trying to keep the statement identifier when for identical ...2020-01-08T12:55:17ZSeb35Minimise diffs by trying to keep the statement identifier when for identical ID identifiersWhen Wikibase presents a diff, it aligns values with the same statement identifier. Currently the only case where the statement identifier is kept is when only the rank is changed ([example for P22 (identifiant id DILA)](https://wikilex....When Wikibase presents a diff, it aligns values with the same statement identifier. Currently the only case where the statement identifier is kept is when only the rank is changed ([example for P22 (identifiant id DILA)](https://wikilex.seb35.fr/index.php?title=Q20615&diff=174916&oldid=20843)), and as a result most changed values are presented in a hard-to-read diff ([example for P39 (état)](https://wikilex.seb35.fr/index.php?title=Q97075&curid=97135&diff=174573&oldid=97303)).
It makes senses to keep statement identifiers more or less aligned with ID identifiers, which is the unit in LEGI database. This issue could possibly be solved together with #1.
There could exist race cases where a given value (v1) for some id (id2) changes from this existing value (s1 := v1 with id1 and id2) to another existing value (s2 := v2 with id3). In this case, I guess the result should be (s1 := v1 with id1) + (s2 := v2 with id2 and id3) and the diff is s1 -= id2, s2 += id2. The other solution is (s1 := v2 with id2 and id3) + (s2 := v1 with id id1), but the diff would be larger and is harder to understand: s1 -= v1, s1 += v2, s1 -= id1, s2 -= v2, s2 += v1, s2 -= id3.Seb35Seb35https://git.en-root.org/Seb35/wikilex-sync/-/issues/1ID identifiers in references are not correctly balanced when new values appear2020-01-08T12:46:04ZSeb35ID identifiers in references are not correctly balanced when new values appearOn items where a CID identifier corresponds to multiple ID identifiers, the corresponding ID identifier is written in each reference. But when new values are added in some property (e.g. the title changes and a new record is added in LEG...On items where a CID identifier corresponds to multiple ID identifiers, the corresponding ID identifier is written in each reference. But when new values are added in some property (e.g. the title changes and a new record is added in LEGI database), the references of old untouched values are not updated, they should.
See [this example Q36537](https://wikilex.seb35.fr/index.php?title=Q36537&curid=36597&diff=174917&oldid=36765) for eli:title (P32): the ID identifier references are not correctly balanced between the different values of the title.Seb35Seb35