[02:06:57] Call for input: Please can those of you who know languages or dialects other than English add tests at Z24144 that reflect your understanding of how your dialect should fetch labels in order if the dialect itself does not have a label (think Wikidata labels). So, for example, I think Z24145 and Z24146 are right, I've added Z24148 but it's debateable whether en should [02:06:57] be included [02:06:58] at the end (in desparation if mul is not filled). [02:09:54] I'd anticipate using this function as an input to Al's Z24114 which itself could be used by quite a few display functions. (re @u99of9: Call for input: Please can those of you who know languages or dialects other than English add tests at Z24144 that reflect your ...) [06:30:43] The choices to include "mul" or "en" are now options. (re @u99of9: Call for input: Please can those of you who know languages or dialects other than English add tests at Z24144 that reflect your ...) [06:42:31] Do you want us to add tests for how useful fallback would be, or how fallback is implemented in Wikidata right now? (re @u99of9: Call for input: Please can those of you who know languages or dialects other than English add tests at Z24144 that reflect your ...) [06:44:49] Go for your ideal fallback path. (re @Jan_ainali: Do you want us to add tests for how useful fallback would be, or how fallback is implemented in Wikidata right now?) [06:50:52] Is neither sv-se nor sv-fi in Wikifunctions yet? I am not sure if it's that or me lacking search skills. [06:54:24] Z1872 (re @Jan_ainali: Is neither sv-se nor sv-fi in Wikifunctions yet? I am not sure if it's that or me lacking search skills.) [06:54:57] Z1870 (re @Jan_ainali: Is neither sv-se nor sv-fi in Wikifunctions yet? I am not sure if it's that or me lacking search skills.) [06:57:30] wait, is that the same, it says "se-se"? (re @wikilinksbot: Z1872 – Northern Sami (Sweden)) [06:58:54] No. It's the Swedish locale for Swedish. To distinguish on words only used in Swedish in Sweden in contrast to Swedish in Finland (sv-fi) [07:01:31] Got it. I can't find that sorry, so maybe that's a phabricator task to add (re @Jan_ainali: No. sv-se is the Swedish locale for Swedish. To distinguish on words only used in Swedish in Sweden in contrast to Swedish in Fi...) [07:02:19] Usually, only sv is used, but I am imagining that, with time, users would like to make lexemes in Wikidata for the very few words that differ. [07:10:31] Okay, I think I managed to add a test for Swedish. [07:16:28] The validator isn't quite right, but I'm interested in how you got it that way. Did you set the object type of each item to string then paste a ZID in each? In the collapsed form it has rendered as language names, but not as actual languages. [07:17:00] I'm happy to fix btw, thanks for the crucial input. (re @u99of9: The validator isn't quite right, but I'm interested in how you got it that way. Did you set the object type of each item to stri...) [07:17:19] Yes. Was there any other way to do it? (If so, the UI didn't give me the clue.) (re @u99of9: The validator isn't quite right, but I'm interested in how you got it that way. Did you set the object type of each item to stri...) [07:22:51] I agree the UI is suboptimal here. In this case if you expand the "second list" dropdown, you'll see that it's initially "List items type"="Object", which you can change to =Natural Language. Then it's really easy to choose the languages in each item, either by starting to type their name/code/ZID. (re @Jan_ainali: Yes. Was there any other way to do it? (If so, the UI [07:22:51] didn't give me the clue.)) [07:25:47] This is great BTW, I had failed to appreciate that there may be a meaningful order to the list even after "mul". So my optional English was a bad idea. (re @Jan_ainali: Okay, I think I managed to add a test for Swedish.) [07:26:23] Oh. Yeah, that seems like a hidden option that should be expanded by default. (re @u99of9: I agree the UI is suboptimal here. In this case if you expand the "second list" dropdown, you'll see that it's initially "List i...) [07:27:57] Lists are super powerful, but have quite a few quirks. (re @Jan_ainali: Oh. Yeah, that seems like a hidden option that should be expanded by default.) [07:29:45] It just strikes me that the fallback chain I added are for Swedes, not for Swedish. So perhaps it should be adjusted by switching the order of en and de? de is closer in language similarity, but en is taught in school from 4th grade and forward. [07:32:17] Yeah, just squeezing in with Z24043 (9928 ms) 😎 (re @u99of9: It seems to work now (in English). Is this resolved?) [07:32:42] Like Q144@sv, Q144@de vs. Q144@en (re @Jan_ainali: It just strikes me that the fallback chain I added are for Swedes, not for Swedish. So perhaps it should be adjusted by switchin...) [07:38:39] (If only there were such a thing… but a bit of fuzziness in the tail should have little impact in practice.) (re @u99of9: Go for your language's ideal fallback path.) [07:38:47] Agreed. If we ever do get sv-se that choice might get even harder. (re @Jan_ainali: It just strikes me that the fallback chain I added are for Swedes, not for Swedish. So perhaps it should be adjusted by switchin...) [07:39:48] "consensus" instead of "ideal"? (re @Al: (If only there were such a thing… but a bit of fuzziness in the tail should have little impact in practice.)) [07:41:54] speaking of the tail, even if all of these are exhausted, your function or a wrapper could fall back to "first listed label" to ensure there is a result for almost every item (re @Al: (If only there were such a thing… but a bit of fuzziness in the tail should have little impact in practice.)) [07:44:12] I hope we’ll be able to have personalised fallback chains eventually. Before that, we could have selectable alternatives. (re @Jan_ainali: It just strikes me that the fallback chain I added are for Swedes, not for Swedish. So perhaps it should be adjusted by switchin...) [07:44:16] I did something similar for a user script for P2559, but really, when the text I get is in a script I can't read, it's more annoying than helpful (re @u99of9: speaking of the tail, even if all of these are exhausted, your function or a wrapper could fall back to "first listed label" to ...) [07:47:40] I think at that stage we could think about concatenating the results into a single string (with a shrug) 🤔 (re @u99of9: speaking of the tail, even if all of these are exhausted, your function or a wrapper could fall back to "first listed label" to ...) [07:47:59] Yes, as a next step, given that I can't do sv or even en-au programmatically, I'm considering making a Z14294. I guess the answers could be stored in a persistent list object for each language, which is echoed by the language's function? (re @Al: I hope we’ll be able to have personalised fallback chains eventually. Before that, we could have selectable alternatives.) [07:49:36] interesting idea. I had also wondered about prefixing with language codes, e.g. "[jp]". Maybe both? (re @Al: I think at that stage we could think about concatenating the results into a single string (with a shrug) 🤔) [07:52:00] Should I remove the "en" Boolean? and even maybe the "mul" Boolean? (re @u99of9: This is great BTW, I had failed to appreciate that there may be a meaningful order to the list even after "mul". So my optional ...) [07:53:47] Yes, it should follow whatever we want to do for a Z12 display function. I’ve set up a new filter (Z24139) so we can keep track of the language. (re @u99of9: interesting idea. I had also wondered about prefixing with language codes, e.g. "[jp]". Maybe both?) [07:55:57] Yes I did see that, thanks. We will also need a wrapper for each of these so that the parameter can be a QID reference instead of the item itself. (re @Al: Yes, it should follow whatever we want to do for a Z12 display function. I’ve set up a new filter (Z24139) so we can keep track ...) [08:02:48] If we must… I don’t really like that doubling up, but in the absence of union types… 🤷‍♂️ (re @u99of9: Yes I did see that, thanks. We will also need a wrapper for each of these so that the parameter can be a QID reference instead o...) [08:09:00] Maybe it just becomes a choice of tails? (re @u99of9: Should I remove the "en" Boolean? and even maybe the "mul" Boolean?) [08:37:55] I think I’ll just do Z11-list to string, concatenating mapped Z21583. Whether that format is a consensus, I rather doubt, but it’s best to keep it in the one place. (re @u99of9: interesting idea. I had also wondered about prefixing with language codes, e.g. "[jp]". Maybe both?) [08:43:23] Boolean though? Maybe "truncate after mul" to toggle non-linguistic desperation? (re @Al: Maybe it just becomes a choice of tails?) [08:46:53] Yes, this should be attached as part of our display-all-Types drive. (re @Al: I think I’ll just do Z11-list to string, concatenating mapped Z21583. Whether that format is a consensus, I rather doubt, but it...) [08:48:33] I’m thinking maybe “fuzzy after…” (however expressed), so we string the rest together (or the first n of them) in the result, beginning with (or after) the specified language. (re @u99of9: Boolean though? Maybe "truncate after mul" to toggle non-linguistic desperation?) [08:50:37] I don't catch you. Can you explain differently or give an example? (re @Al: I’m thinking maybe “fuzzy after…” (however expressed), so we string the rest together (or the first n of them) in the result, be...) [08:57:46] So… we were talking about the “desperation-default “ when we fall through all fallback languages and present some number of monolingual texts as a formatted string. Call that “fuzzy”. Now (maybe) we’re saying we can go fuzzy earlier in the sequence, so we effectively prioritise which languages get chosen for the fuzzy section (and the order in which they appear, if pr [08:57:47] [08:57:48] esent). (re @u99of9: I don't catch you. Can you explain differently or give an example?) [09:04:12] But this function only returns lists of languages. So is the effect of toggling this flag to truncate the list early (e.g. at "mul")? [09:09:46] I guess separate lists would be less confusing. It’s tempting to use the last specific language as the determinant of the “fuzzy” section, but I’m very unsure about that. (re @u99of9: But this function only returns lists of languages. So is the effect of toggling this flag to truncate the list early (e.g. at "m...) [09:18:33] …maybe there’s a fuzzy list for each specific language and we do a proper union across the whole set? 🤔 (re @Al: I guess separate lists would be less confusing. It’s tempting to use the last specific language as the determinant of the “fuzzy...) [09:19:46] What would the sv list return with and without your version of the flag? [09:27:00] I’m not sure. I think a list of lists…? It depends how we intend to interpret it. (re @u99of9: What would the sv list return with and without your version of the flag?) [09:31:36] For me that would be too much change for this function's signature. I still want it to return a single list of languages. Maybe it can serve up one of the lists that your list of lists needs. [09:40:19] Yes, that’s certainly where we need to end up. I’ll try and make sense of all this for the Project Chat later. 🤯 (re @u99of9: For me that would be too much change for this function's signature. I still want it to return a single list of languages. Maybe ...) [10:03:53] Another thing I just discovered: pope Nicholas IV (Q103625) died during Good Friday (Q40317) (re @Galder: so I tried to find other Popes who died on Easter, but having a function for that seems pretty complex! A minipoint if you can f...) [12:34:53] I copied this to [[Wikifunctions:Project chat#Language fallback]] (re @u99of9: Call for input: Please can those of you who know languages or dialects other than English add tests at Z24144 that reflect your ...)